• Login

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

1

Sunday, May 21st 2017, 6:47pm

[Offen] Pathfinding-Script Hilfe

Hallo! :D

Es geht um dieses Pathfinding-Script:
Laggles Pathfinder
Spoiler: erledigt
Terv schreibt unten, es wäre super und es hat die Möglichkeit "true" zurückzugeben, wenn ein Wegpunkt erreicht ist.
Wie funktioniert aber das PP-Event, welches Blizzard auf der zweiten Seite vorstellt:

Ruby Source code

1
2
3
4
5
6
7
8
#   In order to check if a character has a dynamic path calculation for a
#   target, use following script call:
#  
#     character.has_path_target?
#  
#   Example:
#    
#     if $game_map.events[23].has_path_target?

Kann mir das eine Variable umstellen? Also eine Variable auf eine bestimmte Zahl setzen?
Also wichtig ist mir, dass das Event mehrere Wegpunkte ablaufen kann und bei jedem Punkt eine Variable umgestellt wird, sobald er erreicht ist. :<
highlight to read

Dann habe ich noch folgendes Problem:
Wo und wie müsste ich einbauen, dass bitte auch noch ein Terrain-Tag beachtet werden sollte (also ein Event kann sich nur auf einem bestimmten TT bewegen)? Bitte nicht immer, sondern nur bei bestimmten Events. Also am Besten im pathfind-Aufruf, wo auch X und Y bestimmt wird. Also, wenn kein TT bestimmt wird, kann sich das Event frei bewegen, wenn ein TT im Pathfind-Aufruf bestimmt wird (in der Klammer) kann sich das Event nur auf einem bestimmten TT bewegen.
Geht das irgendwie und wenn ja wie? :D
Das Script ist sehr lang und ich weiß nicht, wo ich mit meinen Gedanken ansetzen soll ._. Das ist ja dann etwas komplexer, das in den Aufruf mit einzubauen :<


Ich würde mich über Hilfe wirklich sehr freuen! :D
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

This post has been edited 5 times, last edit by "Josey" (Jun 3rd 2020, 6:03pm)


Playm

RPG Studio Webmaster

  • Send private message

2

Monday, May 22nd 2017, 11:39pm

Ja, das geht.
Bauen wir es doch einfach mal ein und entwickeln während dessen die nötigen Grundlagen.

Nehmen wir einfach mal die Methode PathFinder.find(C_ID, TARGET[, RANGE[, PASSABLE]])

Ruby Source code

261
262
263
264
265
  def self.find(char, target, range = 0, pass = false)
    char, target = self.check_args(char, target, range, pass, false, true)
    self._find(char, target, true)
    return true
  end
und ergänzen deinen Wunschparameter:

Ruby Source code

261
262
263
264
265
  def self.find(char, target, range = 0, pass = false, bound_to_terrain = nil)
    char, target = self.check_args(char, target, range, pass, false, true)
    self._find(char, target, true)
    return true
  end
Fertig, jetzt kannst Du die Methode aufrufen und einen TerrainTag mitgeben:

Ruby Source code

1
PathFinder.find( 0, [15, 7], 0, false, 6)
Nagut. Der Parameter hat noch keinen Effekt. Aber kleine Schritte! Man kann ihn schonmal mitgeben. Jetzt sollte er vielleicht noch gespeichert werden. Diese Information sollte im Wegziel unserer Spielfigur gespeichert werden. Ich nehm das mal vorweg: Wir brauchen ein neues Attribut in der Klasse PathTarget. Weil wir (also Playm) faul sind, schreiben wir einfach ein Attribut in die Klasse dazu:

Ruby Source code

393
394
395
396
397
398
399
400
class PathTarget
 
  attr_reader :range
  attr_reader :pass
  attr_reader :dynamic
  attr_reader :immediate
  attr_accessor :terrain_condition
  # ...

Und dann können wir in der Methode find, das Attribut setzen:

Ruby Source code

261
262
263
264
265
266
  def self.find(char, target, range = 0, pass = false, bound_to_terrain = nil)
    char, target = self.check_args(char, target, range, pass, false, true)
    target.terrain_condition = bound_to_terrain # *neu*
    self._find(char, target, true)
    return true
  end
Und jetzt haben wir es geschafft, die Information, ob unsere Spielfigur nur über bestimmte Terrains laufen kann durch das ganze Script an die Stelle durchzureichen, an der sie benötigt wird. Die Methode calc_node. Dort können wir ab Zeile 358 steuern, wie der Weg gesucht werden soll.

Ruby Source code

358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
    PATH_DIRS.each {|dir|
        kx, ky = key[0] + dir[0], key[1] + dir[1]
        passable = false
        passable_checked = false
        if (kx - request.target.x).abs + (ky - request.target.y).abs <= request.target.range
          if request.target.pass
            passable = char.passable?(key[0], key[1], dir[2]*2)
            passable_checked = true
          else
            passable = true
          end
          if passable
            request.closed[kx, ky] = dir[2]
            found = true
            break
          end
        end
        if request.closed[kx, ky] == 0
          passable = char.passable?(key[0], key[1], dir[2]*2) if !passable_checked
          if passable
            request.open[[kx, ky, key[2] + 1]] = dir[2]
          end
        end}
Dort können wir mit request.target.terrain_condition gucken, ob eine Condition (0 bis 7) existiert, oder ob der Char sich frei bewegen darf (nil). Reicht dir das schon als Denkanstoß?

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

3

Tuesday, May 23rd 2017, 9:20am

Hi! :D
Ich hab mir jetzt alles durchgelesen und eingebaut und zumindest hab ich keinen Error erzeugt. Erfolg! XD
Und ja, ich weiß in etwa, wo das hinführen soll.
Ich frage dort irgendwo

Ruby Source code

1
2
3
4
5
6
7
8
9
10
if request.target.terrain_condition == 0..7 #(oder "n" und dann drüber "n = 0..7"?)
#dann beweg dich mal nur auf dem Terrain-Tag!
    if $game_map.terrain_tag(kx,ky) == #[was kommt hierhin? D:]
    #abfrage ob der nächste Schritt diesen Terrain-Tag hat dann schritt machen, ansonsten weitersuchen
   else
    #wie sag ich dem Ding, dass es weitersuchen soll? Oo
   end
else
#lauf wie du willst (hier käme also der normale if-Code hin)
end


Ich finde es unglaublich schwierig, weil in dem Script nichts vom Autor kommentiert wurde. Ich muss ständig schauen, wofür diese und jene variable steht und begreife teilweise gar nicht, was er da tut.
Zum Beispiel:
"request.target"
Oben wird "request" für eine andere Art von Pathfind genutzt als "find" hier unten steht "request" plötzlich für alle pathfind-Methoden? ><
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

4

Sunday, June 4th 2017, 3:44pm

Da anscheinend noch keine eindeutige Lösung für das Problem gibt hab ich mich mal rangesetzt und den TerrainTag Support eingefügt.

(Alle wichtigen Änderungen am Algorithmus habe ich mit "#Terrain Tag Support Start" gekennzeichnet)

Viel Spaß euch mit dem Addon : D

Spoiler

Ruby Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Lagless Path Finder by Blizzard
# Version: 1.23 - With Terrain Tag Support
# Type: Pathfinding System
# Date: 9.2.2013
# Date v1.01: 11.4.2013
# Date v1.1: 29.7.2013
# Date v1.2: 7.10.2013
# Date v1.21: 8.10.2013
# Date v1.22: 11.11.2013
# Date v1.23: 28.12.2016 (fix by KK20)
# Date v1.23 - TT Support: 06.2016 (by ITgenie98)
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#   
#  This work is protected by the following license:
# #----------------------------------------------------------------------------
# #  
# #  Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
# #  ( http://creativecommons.org/licenses/by-nc-sa/3.0/ )
# #  
# #  You are free:
# #  
# #  to Share - to copy, distribute and transmit the work
# #  to Remix - to adapt the work
# #  
# #  Under the following conditions:
# #  
# #  Attribution. You must attribute the work in the manner specified by the
# #  author or licensor (but not in any way that suggests that they endorse you
# #  or your use of the work).
# #  
# #  Noncommercial. You may not use this work for commercial purposes.
# #  
# #  Share alike. If you alter, transform, or build upon this work, you may
# #  distribute the resulting work only under the same or similar license to
# #  this one.
# #  
# #  - For any reuse or distribution, you must make clear to others the license
# #    terms of this work. The best way to do this is with a link to this web
# #    page.
# #  
# #  - Any of the above conditions can be waived if you get permission from the
# #    copyright holder.
# #  
# #  - Nothing in this license impairs or restricts the author's moral rights.
# #  
# #----------------------------------------------------------------------------
# 
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# 
# IMPORTANT NOTE:
# 
#   This Path Finder is a derived version of Blizz-ABS's original Path Finder.
#   If you are using Blizz-ABS, please remove this script. Blizz-ABS has a
#   Path Finder already built-in.
# 
# 
# Compatibility:
# 
#   99% compatible with SDK v1.x. 90% compatible with SDK v2.x. May cause
#   incompatibility issues with exotic map systems.
# 
# 
# Features:
# 
#   - calculates path from point A to point B on the map
#   - allows immediate calculation as well as path calculation requests that
#     are done over the course of a few frames in order to reduce lag
#   - supports dynamic calculation that is done every step to ensure the
#     character reaches its targets
#   - can assign other characters as targets so dynamic calculation with a
#     moving will cause the character to find the target regardless of his
#     changed position
# 
# new in v1.01:
#   - fixed attempted optimizations to work properly
# 
# new in v1.1:
#   - fixed a problem with how dyn_request is handled
#   - added PASSABLE parameter for all path finder functions to determine
#     how to behave when using the RANGE parameter
# 
# new in v1.2:
#   - added waypoints
#   - Game_Character#has_path_target? now returns true as well when using
#     target coordinates instead of a target character
# 
# new in v1.21:
#   - added option for loose movement when target cannot be reached
#   - added separate option for debug messages
# 
# new in v1.22:
#   - fixed a problem with waypoints when using range
# 
# new in v1.23:
#   - fixed a problem when DIRECTIONS_8_WAY is turned on
# 
# Instructions:
#   
# - Explanation:
#   
#   This script will allow your characters to walk from point A to point B,
#   navigating by themselves, finding the shortest path and all that without
#   you having to manually specify their moving route. They can also navigate
#   through dynamically changing environments or track a dynamically moving
#   target.
# 
# - Configuration:
# 
#   MAX_NODES_PER_FRAME - maximum number of node calculation per frame when
#                         using path requests instead of immediate calculations
#   DIRECTIONS_8_WAY    - if set to true, it will smooth out corner movement
#                         and use a diagonal movement step wherever possible
#                         (this does NOT mean that the path finder will do
#                         8-directional path finding!)
#   LOOSE_MOVEMENT      - if set to true, it will cause characters to continue
#                         moving when the target cannot be reached for some
#                         reason, following its last movement path (works only
#                         with "dyn" variants)
#   DEBUG_MESSAGES      - if set to true, it will display messages when paths
#                         can't be found
#   
# 
# - Script calls:
# 
#   This path finder offers you several script calls in order to designate path
#   finding to characters on the map. Following script calls are at your
#   disposal:
#   
#     PathFinder.find(C_ID, TARGET[, RANGE[, PASSABLE]])
#     PathFinder.request(C_ID, TARGET[, RANGE[, PASSABLE]])
#     PathFinder.dyn_find(C_ID, TARGET[, RANGE[, PASSABLE]])
#     PathFinder.dyn_request(C_ID, TARGET[, RANGE[, PASSABLE]])
# 
#   C_ID     - either an event ID, 0 for the player character or an actual
#              character (e.g. $game_map.events[ID])
#   TARGET   - an array with X,Y coordinates, an actual target character,
#              an array with arrays of X,Y waypoints or an array of actual
#              character waypoins
#   RANGE    - range within which the target should be located (greater than 0)
#   PASSABLE - when using a range, this is used to determine if the next tile
#              must be passable as well, false by default, used usually when
#              passability between 2 tiles isn't used
#   
#   This is how the 8 different script calls behave:
#   
#   - The "find" variants always calculate the path immediately.
#   - The "request" variants always request a path calculation to be done over
#     the course of several frames in order to avoid lag. Requesting paths for
#     multiple characters will cause the calculation to take longer as each
#     frame only a certain number of nodes is calculated (can be configured).
#     So if there are more characters requesting a path, naturally each one
#     will consume a part of the allowed node calculations every frame.
#   - The "dyn" variants (dynamic) will recalculate/request a calculation every
#     step in order to keep a path up to date with an ever-changing
#     environment. You won't need to use these calls if there are no moving
#     events on the map or if there are no environmental passability changes.
#   - When using a "dyn" variant, if actual coordinates (X, Y) are used, the
#     character will find its path to these fixed coordinates. If an actual
#     target character is being used, the path finder will track the character
#     instead of fixed coordinates. If the character changes its position, the
#     path calculation will attempt to find a path to the new position of the
#     target.
#   - Using "dyn_find" a lot, with many characters at the same time and/or for
#     long paths may cause performance issue and lag. Use it wisely.
#   - Using "dyn_request" is much more performance-friendly, but it will also
#     cause characters to "stop and think". This can also cause problems in a
#     constantly changing environment as the environment may change during the
#     few frames while the calculation is being done. Use it wisely.
#   - In order to queue multiple targets like waypoints, simply call any of the
#     functions as many times as you need.
#   
#   In order to cancel dynamic path calculation for a character, use following
#   script call:
#   
#     character.clear_path_target
#   
#   Example:
#     
#     $game_map.events[23].clear_path_target
#   
#   In order to check if a character has a dynamic path calculation for a
#   target, use following script call:
#   
#     character.has_path_target?
#   
#   Example:
#     
#     if $game_map.events[23].has_path_target?
#   
# 
# Notes:
# 
#   - This path finder is an implementation fo the A* Search Algorithm.
#   - The PathFinder module is being updated during the call of
#     $game_system.update. Keep this in mind if you are using specific exotic
#     scripts.
#   - When using the option LOOSE_MOVEMENT, keep in mind that it doesn't work
#     accurately with dyn_request, because request calculations aren't done
#     immediately like with dyn_find.
# 
# 
# If you find any bugs, please report them here:
# http://forum.chaos-project.com
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# START Configuration
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
module BlizzCFG
 
  MAX_NODES_PER_FRAME = 50
  DIRECTIONS_8_WAY = false
  LOOSE_MOVEMENT = false
  DEBUG_MESSAGES = false
 
  #bestimmt ob das ziel auch auf einem tile mit dem angegebenemterrain tag 
  #sein muss, oder ob am "Wegesrand" es gefunden werden kann
 
  #true if target must on same TerrainTag as the search call
  TARGET_MUST_HAVE_TT = true
 
end
 
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# END Configuration
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
$lagless_path_finder = 1.23
 
#==============================================================================
# module PathFinder
#==============================================================================
 
module Math
 
  def self.hypot_squared(x, y)
    return (x * x + y * y)
  end
 
end
 
#==============================================================================
# module PathFinder
#==============================================================================
 
module PathFinder
 
  PATH_DIRS = [[0, 1, 1], [-1, 0, 2], [1, 0, 3], [0, -1, 4]]
  DIR_DOWN_LEFT = [1, 2]
  DIR_LEFT_DOWN = [2, 1]
  DIR_DOWN_RIGHT = [1, 3]
  DIR_RIGHT_DOWN = [3, 1]
  DIR_LEFT_UP = [2, 4]
  DIR_UP_LEFT = [4, 2]
  DIR_RIGHT_UP = [3, 4]
  DIR_UP_RIGHT = [4, 3]
  DIR_OFFSETS = [[ 0, 0], [0, 1], [-1, 0], [1, 0], [0,-1], 
                 [-1, 1], [1, 1], [-1,-1], [1,-1]]
 
  @requests = {}
 
  def self.clear
    @requests = {}
  end
 
  def self.find(char, target, range = 0, pass = false, terrain_tag = nil)
    char, target = self.check_args(char, target, range, pass, false, true)
    target.terrain_condition = terrain_tag
    self._find(char, target, true)
    return true
  end
 
  def self.dyn_find(char, target, range = 0, pass = false, terrain_tag = nil)
    char, target = self.check_args(char, target, range, pass, true, true)
    target.terrain_condition = terrain_tag
    self._find(char, target, true)
    return true
  end
 
  def self.request(char, target, range = 0, pass = false, terrain_tag = nil)
    char, target = self.check_args(char, target, range, pass, false, false)
    target.terrain_condition = terrain_tag
    self._request(char, target, true)
    return true
  end
 
  def self.dyn_request(char, target, range = 0, pass = false, terrain_tag = nil)
    char, target = self.check_args(char, target, range, pass, true, false)
    target.terrain_condition = terrain_tag
    self._request(char, target, true)
    return true
  end
 
  def self.check_args(char, target, range, pass, dynamic, immediate)
    range = 0 if range == nil || range < 0
    if char.is_a?(Numeric)
      char = (char > 0 ? $game_map.events[char] : $game_player)
    end
    target = PathTarget.new(target, range, pass, dynamic, immediate)
    if $DEBUG && BlizzCFG::DEBUG_MESSAGES && char == nil
      p "Warning! Character to move does not exist!"
    end
    return [char, target]
  end
 
  def self._find(char, target, new = false)
    if @requests[char] == nil && (!char.has_path_target? || !new)
      @requests[char] = PathRequest.new(char.x, char.y, target)
      result = nil
      result = self.calc_node(char) while result == nil
      if $DEBUG && BlizzCFG::DEBUG_MESSAGES && result.size == 0
        p "Warning! Path Finder could not find path for character at (#{target.x},#{target.y})!"
      end
      if !BlizzCFG::LOOSE_MOVEMENT && target.dynamic
        char.set_found_step(result)
      else
        char.set_found_path(result)
      end
    end
    char.add_path_target(target) if new
  end
 
  def self._request(char, target, new = false)
    if @requests[char] == nil
      @requests[char] = PathRequest.new(char.x, char.y, target)
    end
    char.add_path_target(target) if new
  end
 
  def self.update
    @requests = {} if @requests == nil
    characters = @requests.keys
    count = BlizzCFG::MAX_NODES_PER_FRAME
    while characters.size > 0 && count > 0
      char = characters.shift
      dynamic = @requests[char].target.dynamic
      result = self.calc_node(char)
      if result != nil
        if !BlizzCFG::LOOSE_MOVEMENT && dynamic
          char.set_found_step(result)
        else
          char.set_found_path(result)
        end
      else
        characters.push(char)
      end
      count -= 1
    end
  end
 
  def self.calc_node(char)
    #puts("== calc_node ==")
    request = @requests[char]
    if request.open.size == 0
      @requests.delete(char)
      return []
    end
    found = false
    key = request.open.keys.min {|a, b|
        a[2] > b[2] ? 1 : (a[2] < b[2] ? -1 :
        (Math.hypot_squared(a[0] - request.target.x, a[1] - request.target.y) <=>
        Math.hypot_squared(b[0] - request.target.x, b[1] - request.target.y)))}
    request.closed[key[0], key[1]] = request.open[key]
    request.open.delete(key)
    kx, ky = 0, 0
    passable = false
    passable_checked = false
    PATH_DIRS.each {|dir|
        kx, ky = key[0] + dir[0], key[1] + dir[1]
        passable = false
        passable_checked = false
 
        if (kx - request.target.x).abs + (ky - request.target.y).abs <= request.target.range
          #ziel ist im umfeld
          #target is in range 
          if request.target.pass
            passable = char.passable?(key[0], key[1], dir[2]*2)
 
            #Terrain Tag Support Start
            if BlizzCFG::TARGET_MUST_HAVE_TT
              unless request.target.terrain_condition == nil
                unless $game_map.terrain_tag(kx, ky) == request.target.terrain_condition
                  passable = false
                end
              end
            end
            #Terrain Tag Support End
 
            passable_checked = true
          else
            passable = true
          end
          if passable
            request.closed[kx, ky] = dir[2]
            found = true
            break
          end
        end
        if request.closed[kx, ky] == 0
          passable = char.passable?(key[0], key[1], dir[2]*2) if !passable_checked
 
          #Terrain Tag Support Start
          unless request.target.terrain_condition == nil
            unless $game_map.terrain_tag(kx, ky) == request.target.terrain_condition
              passable = false
            end
          end
          #Terrain Tag Support End
 
          if passable
            request.open[[kx, ky, key[2] + 1]] = dir[2]
          end
        end}
    return nil if !found
    result = request.backtrack(kx, ky)
    @requests.delete(char)
    return result
  end
 
end
 
#==============================================================================
# PathTarget
#==============================================================================
 
class PathTarget
 
  attr_reader :range
  attr_reader :pass
  attr_reader :dynamic
  attr_reader :immediate
  attr_accessor :terrain_condition  #own
 
  def initialize(target, range, pass, dynamic, immediate)
    if target.is_a?(Game_Character)
      @char = target
    else
      @x, @y = target
    end
    @range = range
    @pass = pass
    @dynamic = dynamic
    @immediate = immediate
  end
 
  def x
    return (@char != nil ? @char.x : @x)
  end
 
  def y
    return (@char != nil ? @char.y : @y)
  end
 
end
 
#==============================================================================
# PathRequest
#==============================================================================
 
class PathRequest
 
  attr_reader :open
  attr_reader :closed
  attr_reader :sx
  attr_reader :sy
  attr_reader :target
 
  def initialize(sx, sy, target)
    @sx, @sy, @target = sx, sy, target
    @open = {[@sx, @sy, 0] => -1}
    @closed = Table.new($game_map.width, $game_map.height)
  end
 
  def backtrack(tx, ty)
    cx, cy, x, y, result = tx, ty, 0, 0, []
    loop do
      cx, cy = cx - x, cy - y
      break if cx == @sx && cy == @sy
      result.unshift(@closed[cx, cy])
      x, y = PathFinder::DIR_OFFSETS[@closed[cx, cy]]
    end
    return self.modify_8_way(result)
  end
 
  def modify_8_way(result)
    if BlizzCFG::DIRECTIONS_8_WAY
      result.each_index {|i|
          if result[i] != nil && result[i + 1] != nil
            case [result[i], result[i + 1]]
            when PathFinder::DIR_DOWN_LEFT, PathFinder::DIR_LEFT_DOWN
              result[i], result[i + 1] = 5, nil
            when PathFinder::DIR_DOWN_RIGHT, PathFinder::DIR_RIGHT_DOWN
              result[i], result[i + 1] = 6, nil
            when PathFinder::DIR_LEFT_UP, PathFinder::DIR_UP_LEFT
              result[i], result[i + 1] = 7, nil
            when PathFinder::DIR_RIGHT_UP, PathFinder::DIR_UP_RIGHT
              result[i], result[i + 1] = 8, nil
            end
          end}
      result.compact!
    end
    return result
  end
 
end
 
#==============================================================================
# Game_System
#==============================================================================
 
class Game_System
 
  alias update_lagless_path_finder_later update
  def update
    PathFinder.update
    update_lagless_path_finder_later
  end
 
end
 
#==============================================================================
# Game_Map
#==============================================================================
 
class Game_Map
 
  alias setup_lagless_path_finder_later setup
  def setup(map_id)
    PathFinder.clear
    setup_lagless_path_finder_later(map_id)
  end
 
end
 
#==============================================================================
# Game_Character
#==============================================================================
 
class Game_Character
 
  def add_path_target(target)
    @path_targets = [] if @path_targets == nil
    @path_targets.push(target)
  end
 
  def clear_path_target
    @path_targets = nil
  end
 
  def next_path_target
    if @path_targets.size <= 1
      self.clear_path_target
    else
      @path_targets.shift
    end
  end
 
  def has_path_target?
    return (@path_targets != nil && @path_targets.size > 0)
  end
 
  def set_found_path(path)
    return if path.size == 0
    route = RPG::MoveRoute.new
    route.repeat = false
    path.reverse.each {|dir| route.list.unshift(RPG::MoveCommand.new(dir))}
    self.force_move_route(route)
  end
 
  def set_found_step(path)
    return if path.size == 0
    route = RPG::MoveRoute.new
    route.repeat = false
    route.list.unshift(RPG::MoveCommand.new(path[0]))
    self.force_move_route(route)
  end
 
  alias update_lagless_path_finder_later update
  def update
    update_lagless_path_finder_later
    return if self.moving? || !self.has_path_target? || self.jumping?
    if (@x - @path_targets[0].x).abs + (@y - @path_targets[0].y).abs <=
        @path_targets[0].range
      self.next_path_target
      check = true
    else
      check = @path_targets[0].dynamic
    end
    if check && self.has_path_target?
      if @path_targets[0].immediate
        PathFinder._find(self, @path_targets[0])
      else
        PathFinder._request(self, @path_targets[0])
      end
    end
  end
 
end
highlight to read
  • Info

    Code 4 Life

    Humorvoller bis leicht verrückter Coder mit einer Vorliebe zu Kawaiien Katzen.
    Neko FTW

    (sobald ich kreativere Ideen hierfür hab pack ich das hier rein)
  • Sprachen

    Programmiersprachen:
    - C, C++, C#, Java, Ruby, Lua, Go, Rust

    Websprachen
    - JS, HTML, CSS, PHP

    (Natürlich alles zu 105% Perfekt. Wer bugs findet darf das neue feature bennennen ;))
  • Meep

    Do you like Cookies? Me too. *mapft kekse* :cookie3:

    Das Ziel eines Programmierers ist es, Software zu entwickeln die Bug-frei ist.
    Das Ziel des Universums ist, Menschen zu erschaffen die diese Software kaputt bekommen.
    Wäre es ein Wettrennen, würde das Universum gewinnen.

    Why wear Java developers glasses? Because they can't C#.
  • ITgenies aktuelle Arbeit

    Ich arbeite meist *etwas* chaotischer als andere. Das heißt bei mir:
    Projekt anfangen, Woche bis 2 Wochen arbeiten, Projekt vergessen, Wiederhole nach Monaten Vorgang

    - ICG / IngameCharsetGenerator Thread (v1.6 - Release)
    - Umsetzung eines eigenen Makers :3
    - Support bei den Skriptanfragen
  • ITgenies pausierten Projekte

    - Eigenes Jump n' Run (+ eigener Physik Engine)
    - Eigenes (umfangreiches) Strategie / Echtzeit Spiel
    - Eigene Website
    - Mit Acc System, Achievements, Leveln...
    - Remake Alter Games
    - N haufen Engines....
    - .... und anderen random Code '^' x3

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

5

Sunday, June 4th 2017, 4:53pm

Danke XD
Ich such mir mal raus, was geändert wurde, vielen Dank, dass du es extra markiert hast! :3 (Ich versuche nach und nach zu verstehen, wie Scripten funktioniert XD)
Sieht ja unglaublich kompliziert aus, funktioniert aber! :D
Vielen Dank, jetzt können meine NPCs von A nach B laufen und rennen nicht mehr die ganze Zeit am Bildschirmrand entland sondern benutzen die Wege XD

Ich kann englisch nicht so gut, kannst du mir in Deutsch erklären, was der Unterschied zwischen .find und .request ist? :3
Hab ich richtig verstanden, dass .request performanter ist? :3
Ich werde vor allem die dyn-Variante verwenden müssen, die die NPCs sich sonst vielleicht auf den Wegen im Weg stehen (aber ich lasse meistens nur so 2 oder 3 gleichzeitig laufen, das müsste noch gehen).
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

6

Sunday, June 4th 2017, 5:00pm

Ich hab auch noch nicht zu 100% verstanden wie das alles funktioniert (jmd sollte dem typen dokumentieren beibringen -_-)

Aber im grunde hast du recht _find sucht sofort nach dem weg ins ziel, und lässt dabei bei größeren maps den spieler einfrieren.
_request dagegen erstellt eine Anfrage (request) an das System welche das System bei jedem Update weiter ausführt.

Das problem mit dem blockieren könntest du auch simpel dadurch lösen (vorallem bei z.b. städten) das du die wege 2 tiles groß machst sodas sie immer aneinander vorbei laufen können (theoretisch)

Und kein ding helfe gerne :3
  • Info

    Code 4 Life

    Humorvoller bis leicht verrückter Coder mit einer Vorliebe zu Kawaiien Katzen.
    Neko FTW

    (sobald ich kreativere Ideen hierfür hab pack ich das hier rein)
  • Sprachen

    Programmiersprachen:
    - C, C++, C#, Java, Ruby, Lua, Go, Rust

    Websprachen
    - JS, HTML, CSS, PHP

    (Natürlich alles zu 105% Perfekt. Wer bugs findet darf das neue feature bennennen ;))
  • Meep

    Do you like Cookies? Me too. *mapft kekse* :cookie3:

    Das Ziel eines Programmierers ist es, Software zu entwickeln die Bug-frei ist.
    Das Ziel des Universums ist, Menschen zu erschaffen die diese Software kaputt bekommen.
    Wäre es ein Wettrennen, würde das Universum gewinnen.

    Why wear Java developers glasses? Because they can't C#.
  • ITgenies aktuelle Arbeit

    Ich arbeite meist *etwas* chaotischer als andere. Das heißt bei mir:
    Projekt anfangen, Woche bis 2 Wochen arbeiten, Projekt vergessen, Wiederhole nach Monaten Vorgang

    - ICG / IngameCharsetGenerator Thread (v1.6 - Release)
    - Umsetzung eines eigenen Makers :3
    - Support bei den Skriptanfragen
  • ITgenies pausierten Projekte

    - Eigenes Jump n' Run (+ eigener Physik Engine)
    - Eigenes (umfangreiches) Strategie / Echtzeit Spiel
    - Eigene Website
    - Mit Acc System, Achievements, Leveln...
    - Remake Alter Games
    - N haufen Engines....
    - .... und anderen random Code '^' x3

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

7

Sunday, June 4th 2017, 5:19pm

Die Wege sind auf jeden Fall mindestens 2 Tiles groß, aber ich habe gemerkt, wenn ich zwei losschicke, wollen alle beide den kürzesten Weg um die Kurve nehmen und ohne .dyn stehen die dann doof voreinander und wissen nicht, was sie tun sollen XD
Deswegen verwende ich auf jedenfall
PathFinder.dyn_, fragt sich nur, ob es einen unterschied macht, ob ich PathFinder.dyn_request oder PathFinder.dyn_find nehme XD°
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

8

Sunday, June 4th 2017, 5:23pm

Also bei mehreren würd ich sagen nimm dyn_request ist lag-freier ^^
Aber bei 2-3 sollte dyn_find noch keinen unterschied machen xD
  • Info

    Code 4 Life

    Humorvoller bis leicht verrückter Coder mit einer Vorliebe zu Kawaiien Katzen.
    Neko FTW

    (sobald ich kreativere Ideen hierfür hab pack ich das hier rein)
  • Sprachen

    Programmiersprachen:
    - C, C++, C#, Java, Ruby, Lua, Go, Rust

    Websprachen
    - JS, HTML, CSS, PHP

    (Natürlich alles zu 105% Perfekt. Wer bugs findet darf das neue feature bennennen ;))
  • Meep

    Do you like Cookies? Me too. *mapft kekse* :cookie3:

    Das Ziel eines Programmierers ist es, Software zu entwickeln die Bug-frei ist.
    Das Ziel des Universums ist, Menschen zu erschaffen die diese Software kaputt bekommen.
    Wäre es ein Wettrennen, würde das Universum gewinnen.

    Why wear Java developers glasses? Because they can't C#.
  • ITgenies aktuelle Arbeit

    Ich arbeite meist *etwas* chaotischer als andere. Das heißt bei mir:
    Projekt anfangen, Woche bis 2 Wochen arbeiten, Projekt vergessen, Wiederhole nach Monaten Vorgang

    - ICG / IngameCharsetGenerator Thread (v1.6 - Release)
    - Umsetzung eines eigenen Makers :3
    - Support bei den Skriptanfragen
  • ITgenies pausierten Projekte

    - Eigenes Jump n' Run (+ eigener Physik Engine)
    - Eigenes (umfangreiches) Strategie / Echtzeit Spiel
    - Eigene Website
    - Mit Acc System, Achievements, Leveln...
    - Remake Alter Games
    - N haufen Engines....
    - .... und anderen random Code '^' x3

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

9

Sunday, June 4th 2017, 5:35pm

Danke :3
Dann mach ich das so und schau, wie es sich in der Praxis bewährt :D
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

10

Thursday, May 10th 2018, 5:07pm

Nochmal eine Frage:
Angenommen, das Event findet keinen Weg von A nach B auf dem Terrain-Tag (zB Weg unterbrochen). Kann ich im System irgendwie einbauen, dass das Event dann nicht stoppen soll, sondern dann den Weg ohne TT finden soll, bis es wieder auf ein TT trifft?

Also: Event soll von A nach B laufen.
Ein Weg (TT 4) steht zur Verfügung. Der Weg wird von einem Stück Gras unterbrochen.
Event soll jetzt schnurstraks bis zum nächstliegenden TT4 laufen (zwei Tiles weiter), und dort wieder nur TT4 benutzen.

Geht sowas? o.o
Wenn nicht, gehe ich alle unterbrochenen Stellen von Hand durch und baue unsichtbare TT4s drüber XD
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

11

Saturday, June 9th 2018, 3:02pm

Wäre möglich aber ich glaube es wäre einfacher wenn du die ganzen Lücken einfach kurz mit TT4s belegst ^^

Weil dem Skript noch beizubringen wenn er keine TT4s findet, pathfinding zum nächstgelegenen TT4 zu nutzen würde sich wohl nur wenig lohnen... oder schlimmer noch: bugs produzieren.
  • Info

    Code 4 Life

    Humorvoller bis leicht verrückter Coder mit einer Vorliebe zu Kawaiien Katzen.
    Neko FTW

    (sobald ich kreativere Ideen hierfür hab pack ich das hier rein)
  • Sprachen

    Programmiersprachen:
    - C, C++, C#, Java, Ruby, Lua, Go, Rust

    Websprachen
    - JS, HTML, CSS, PHP

    (Natürlich alles zu 105% Perfekt. Wer bugs findet darf das neue feature bennennen ;))
  • Meep

    Do you like Cookies? Me too. *mapft kekse* :cookie3:

    Das Ziel eines Programmierers ist es, Software zu entwickeln die Bug-frei ist.
    Das Ziel des Universums ist, Menschen zu erschaffen die diese Software kaputt bekommen.
    Wäre es ein Wettrennen, würde das Universum gewinnen.

    Why wear Java developers glasses? Because they can't C#.
  • ITgenies aktuelle Arbeit

    Ich arbeite meist *etwas* chaotischer als andere. Das heißt bei mir:
    Projekt anfangen, Woche bis 2 Wochen arbeiten, Projekt vergessen, Wiederhole nach Monaten Vorgang

    - ICG / IngameCharsetGenerator Thread (v1.6 - Release)
    - Umsetzung eines eigenen Makers :3
    - Support bei den Skriptanfragen
  • ITgenies pausierten Projekte

    - Eigenes Jump n' Run (+ eigener Physik Engine)
    - Eigenes (umfangreiches) Strategie / Echtzeit Spiel
    - Eigene Website
    - Mit Acc System, Achievements, Leveln...
    - Remake Alter Games
    - N haufen Engines....
    - .... und anderen random Code '^' x3

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

12

Saturday, June 9th 2018, 8:45pm

Okay, alles klar, danke! :)
Dann füll ich die Lücken per Hand! :D
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

13

Monday, May 11th 2020, 12:16am

Erledigt
Spoiler
Ich brauch hier nochmal Hilfe bitte :<

Ich brauche hier eine Abfrage, ob der Weg überhaupt möglich ist:

Ruby Source code

1
2
3
4
5
6
7
  def self.dyn_request(char, x, y = nil, range = 0)
     tx, ty = x, y
    char, x, y, range = self.check_args(char, x, y, range)
    self._request(char, x, y, range, true)
    char.set_path_target(tx, ty, range, false)
    return true
  end


Der Charakter, der den unmöglichen Path gehen soll, stuckt einfach und rührt sich nicht mehr. Ich hätte gerne, dass stattdessen der Pathfinder abgebrochen wird (müsste mit

Ruby Source code

1
      character.clear_path_target
möglich sein?)


Ich hab versucht _find vor der Request aufzurufen, um die dortige Fehlermeldung auszunutzen (hätte dann das Debug entfernt und statt einem Print einen Switch eingebaut XD). Aber ich krieg eine Fehlermeldung :/
Das ist der Code, der aufgerufen wird:

Ruby Source code

1
2
3
4
5
6
7
8
9
10
11
12
    sx = @x - $game_map.events[id].x
    sy = @y - $game_map.events[id].y
 
    tx = $game_map.events[id].x
    ty = $game_map.events[id].y
 
    if sx == 0 and sy == 0
      return
    end
 
tid= $game_map.get_pm_event_id_by_name('Haustier')
PathFinder._find(tid, tx, ty, 1, true)


Fehlermeldung:
---------------------------
Script 'Pathfinder by Blizzard | edit StorMeye' line 274: NoMethodError occurred.

undefined method `x' for 1:Fixnum
---------------------------

Line 273-282:

Ruby Source code

1
2
3
4
5
6
7
8
9
10
  def self._find(char, x, y, range, dynamic)
    @requests[char] = PathRequest.new(char.x, char.y, x, y, range, dynamic)
    result = nil
    result = self.calc_node(char) while result == nil
    @requests.delete(char)
    if $DEBUG && result == []
      print "Warning! Path Finder could not find path for character at (#{x},#{y})!"
    end
    char.set_found_path(result)
  end
highlight to read
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

This post has been edited 4 times, last edit by "Josey" (May 16th 2020, 9:08pm)


Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

14

Friday, May 22nd 2020, 10:24pm

Nicht lachen XD
Ich hab was im Pathfindingscript gebaut. Das fragt erstmal ab, ob der Punkt erreichbar ist.
Ist er das nicht, wird überprüft, ob das aktuelle Schatzevent SelfSwitch C ON hat. Das bedeutet, dass dieser Schatz in einer Vase oder ähnliches steckt, weswegen der Punkt selber nicht erreichbar ist (Vase ist nicht through), diese Vase aber eventuell von woanders aus erreichbar ist.
Ist SSC OFF geht alles normal seinen Gang, das Script spuckt aus, dass die Koordeinate nicht erreichbar ist (Switch336).
Ist SSC aber ON, gehe ich alle Koordinaten um die Vase herum nochmal durch, ob diese per Pathfinding erreichbar wären (die Abfrage, ob diese Tiles passable sind, reicht hier nicht, denn die Vase könnte ja auch auf einem Dach stehen, weswegen zwar alle Tiles um sie herum betretbar wären, sie aber trotzdem nicht erreichbar ist).

Diese Berechnung lößt aber leider einen kleinen Lagg aus, wenn sie läuft.
Kann man einer gucken, ob das besser geht? :<
Spoiler

Ruby Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
  def self._find(char, x, y, range, dynamic)
    @requests[char] = PathRequest.new(char.x, char.y, x, y, range, dynamic)
    result = nil
    result = self.calc_node(char) while result == nil
    @requests.delete(char)
    #Kontrolliere, ob der Schatz vlt in einer Vase ist
    #Kontrolliere, ob die Vase (Felder daneben) erreichbar ist
    if result == [] #$DEBUG && result == []
     schatz = $game_variables[140]
     if $game_self_switches[[$game_map.map_id,schatz,'C']] == true # Schatz in Vase 
       x1 = x
       y1 = y
       new_x = x1
       new_y = y1 +1
       @requests[char] = PathRequest.new(char.x, char.y, new_x, new_y, range, dynamic)
       result = nil
       result = self.calc_node(char) while result == nil
       @requests.delete(char)
        if result == []
        new_x = x1 +1
        new_y = y1 
        @requests[char] = PathRequest.new(char.x, char.y, new_x, new_y, range, dynamic)
        result = nil
        result = self.calc_node(char) while result == nil
        @requests.delete(char)
         if result == []
         new_x = x1 
         new_y = y1 -1
         @requests[char] = PathRequest.new(char.x, char.y, new_x, new_y, range, dynamic)
         result = nil
         result = self.calc_node(char) while result == nil
         @requests.delete(char)
          if result == []
          new_x = x1 -1
          new_y = y1 
          @requests[char] = PathRequest.new(char.x, char.y, new_x, new_y, range, dynamic)
          result = nil
          result = self.calc_node(char) while result == nil
          @requests.delete(char)
           if result == []
              $game_switches[396] = true # Schatz nicht erreichbar
           end            
          end
         end
        end 
     end#SSC 
    $game_switches[395] = true # Schatz vlt nicht erreichbar?
    else
      char.set_found_path(result)
    end
  end
highlight to read
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Playm

RPG Studio Webmaster

  • Send private message

15

Wednesday, August 12th 2020, 4:42pm

Gibt es den Fall im Spiel, wo eine Vase mit Schatz drinnen einen Durchgang blockiert? Sonst wäre mein naiver Ansatz, dass das Pathfinding einfach Felder wo ein Event mit SelfSwitch_C drauf steht als passierbar wertet für seine Pfadberechnung.
Gibt es einen Link oder so, wo man sich das komplette Pathfinding-Script in der Form wie Du es nutzt ansehen kann, wenn man mal damit rumtesten möchte?

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

16

Wednesday, August 12th 2020, 10:46pm

Gibts per PN XD

Zwei Versionen:
- Einmal meine Lösung mit dem beschriebenen Lagg, aber alles andere funktioniert (Haustier).
- Ich hab den Tipp bekommen, die neue Version vom Laggless Pathfinder zu benutzen, da gibt es die "Range"-Einstellung. Damit sollte das theoretisch klappen. Tuts aber nicht (das Haustier bleibt beim Schatzsuchen manchmal einfach stehen, bis ich wieder in die Nähe davon gehe) (Scriptsammlung 4)

Deswegen überlege ich immer noch, ob meine Version nicht besser war XD
Du kannst dir gerne beide ansehen, wenn du mal Zeit hast :)
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Playm

RPG Studio Webmaster

  • Send private message

17

Friday, July 23rd 2021, 9:22pm

Quoted

Ich hab den Tipp bekommen, die neue Version vom Laggless Pathfinder zu benutzen, da gibt es die "Range"-Einstellung. Damit sollte das theoretisch klappen. Tuts aber nicht (das Haustier bleibt beim Schatzsuchen manchmal einfach stehen, bis ich wieder in die Nähe davon gehe)

Habe mir Version 1.3 von Blizzards Skript angesehen, da scheint kein Mechanismus enthalten zu sein, der das bewirkt. Ich vermute Du hast ein Skript drinnen, dass Events nicht updatet, wenn sie zu weit vom Player entfernt stehen? Das wird eher das Problem sein, vielleicht kannst Du dein Schatzsucher davon ausnehmen. Ansonsten scheint die Range-Option mit einer Range von 1 das zu sein, was Du brauchst. Aber gibt es die Range-Option nicht bereits in deiner Version? Welche Versionbenutzt Du denn? (der olle Playm guckt natürlich nicht in seine PN[1])

Sorry, dass ich jetzt ziemlich ins Blaue rate mit dem Post. Habe mich schon selber für Spam gemeldet, warte nur darauf, dass Lucy mich bannt. :pardon:



[1] habe all meine Motivation Dinge anzugucken bei Dämoneneseeles fünf-Stunden-Intro verloren :3

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

18

Monday, August 23rd 2021, 2:28pm

Hui, das könnte sein, dass es daran liegt. :D
Das Haustier-Event hängt bei meinem Party-Script mit drin, vlt liegts daran.
Ich würd gern nachsehen, aber ich krieg diesen Fehler bei allen XP-Ace-Projekten:

---------------------------
LOADER ERROR
---------------------------
The procedure entry point RGSSInitialize could not be located in the dynamic link library RGSS102E.dll
---------------------------


Was mach ich da jetzt? D:
An den Projekten hab ich nix verändert, aber ich benutze jetzt Windows 10, statt 8 :/





---------------
Zu dem hier nochmal:

Quoted

Sonst wäre mein naiver Ansatz, dass das Pathfinding einfach Felder wo ein Event mit SelfSwitch_C drauf steht als passierbar wertet für seine Pfadberechnung.

Wie krieg ich den Ansatz in mein Script oben rein? Das wär vermutlich die einfachste Methode.
Allerdings muss ich dann wieder dafür sorgen, dass der Schatzsucher immer ein Feld vor dem Schatz stehen bleibt und niemals drauf- das wär aber okay.
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Josey

Storyteller

  • "Josey" started this thread

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Send private message

19

Friday, February 4th 2022, 4:36pm

Hier hatte ich jetzt mit schmoggi letztes Jahr hinbekommen, dass meine Projekte wieder laufen und ich hatte gerade etwas Zeit und Muße, mich dran zu setzen und mal genauer aufzudröseln.
Es liegt nicht am Antilag oder so, das Haustier kommt dem Player nachgelaufen, auch wenn es außerhalb der Map ist (wenn ich es zB durch ein Labyrinth aufhalte und schonmal vorgehe).

Stehen bleibt es nur in einem Fall:
Das Haustier findet einen Schatz->läuft hin->lößt ihn aus->findet direkt von dort aus noch einen Schatz-> BLEIBT STEHEN

Hat es nur einen Schatz gefunden, lößt es ihn aus und kommt dann zum Player zurückgelaufen.
Stehe ich noch innerhalb der Range des Haustieres (7 Tiles, in denen sich das Haustier aufhalten soll, ansonsten soll es dem Player per Pathfinding nachrennen), läuft es alle gefundenen Schätze ab. Irgendwas funktioniert nicht, in dem Moment, wenn er einen zweiten Schatz findet, er stuckt dann irgendwie zwischen dem Befehl per Pathfind zum Player zurückzukehren (MP-Script, Laggles Pathfinder) und dem Befehl zum zweiten Schatz zu laufen (Haustierscript).

Ich befürchte, dass ich entweder einen Fehler im Pathfinder direkt, oder im Moonpearl-Script drin hab. :/
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Social bookmarks