Vehicle: Unterschied zwischen den Versionen

Aus Makerpendium.de
(SetVehicleLocation und interessante Eigenheiten)
 
(Umstrukturiert für Vehicle allgemein, wird gleich verschoben.)
Zeile 1: Zeile 1:
''SetVehicleLocation'' ist ein [[Event]]-Befehl des [[RPG Maker 2000]] und [[RPG Maker 2003]]. Mit ihm kann die Position und die [[Maps|Map]] von in den [[RPG Maker]] eingebauten [[Vehicle|Fahrzeugen]] geändert werden. Der Befehl funktioniert auch, wenn die [[Party]] innerhalb des Fahrzeugs ist.
+
__NOTOC__
 +
'''Vehicle''' ist eine spezielle Form von Interaktionsobjekten auf [[Mapping|Maps]] neben gewöhnlichen [[Event]]s, die es in den meisten [[RPG Maker|RPG-Maker]]-Versionen für PC gibt. Seit dem [[RPG Maker 2000]] existieren mit Ausnahme von [[RPG Maker XP|RPGXP]] durchgehend mit je einem ''Boot'', ''Schiff'' und ''Flugschiff'' insgesamt drei Arten dieser auf Deutsch meist ''"Fahrzeuge"'' genannten Objekte. In sie einzusteigen, sowie sie wieder zu verlassen, wird genau wie das Ansprechen von Events mit der primären Aktionstaste ausgelöst.
  
== Teleportation mit Party im Fahrzeug ==
+
Die Aufgabe der beiden erstgenannten Fahrzeuge ist, die Spielerfigur über Wasserabschnitte auf einer ''Weltkarte'' zu führen, häufig wird dem ''Boot'' dabei verwehrt, sich über tiefe Gewässer zu bewegen, während das ''Flugschiff'' sich über alle oder die meisten Oberflächen bewegen kann und für gewöhnlich um einiges schneller unterwegs ist.
  
Wenn ein Teleport auf eine andere Map durchgeführt wird, während die Party im Fahrzeug ist, stürzt [[RPG_RT.exe]] in der Regel ab. Wenig bekannt ist, dass unter gewissen Bedingungen, ein Teleport auch mit Party im Fahrzeug (Vehicle-Teleport) möglich ist:
+
==RPG Maker 2000/2003==
 +
Im RPG Maker 2000 und [[RPG Maker 2003|2003]] könn jedem [[Terrain]] Eigenschaften dafür zugewiesen werden, welche Fahrzeuge sich auf ihnen bewegen dürfen und ob dem Flugschiff erlaubt ist, auf ihnen zu landen.
  
* Wenn ein [[Common Event]] den Vehicle Teleport durchführt, funktioniert er immer
+
===Teleport mit Fahrzeug===
* Wenn ein [[Event|Map Event]] den Vehicle Teleport durchführt, darf es kein paralleler Prozess sein und die Event ID am Anfang des Callstacks (also die ID des Map Events bei dem die Eventausführung losging, CallEvent fügt z.B. neue Events dem Callstack hinzu) muss auf der Zielmap existieren.
+
Wenn ein [[Teleport]] auf eine andere Map durchgeführt wird, während die Party im Fahrzeug ist, stürzt die [[RPG_RT.exe]] in der Regel ab. Wenig bekannt ist jedoch, dass unter gewissen Bedingungen ein Teleport auch mit Party im Fahrzeug möglich ist:
 +
*Wenn ein [[CommonEvent]] diesen Teleport durchführt, funktioniert er immer.
 +
*Ein [[Event|MapEvent]], das diesen Teleport durchführt, darf kein ''Paralleler Prozess'' sein, zudem muss ein Event mit der ID, das den aktuellen Event-CallStack ausgelöst hat, auf der Zielmap existieren.
  
== Vehicle-Teleport vs. Normaler Teleport ==
+
Wird eine dieser Bedingungen erfüllt, treten folgende Eigenheiten gegenüber einem normalen Teleport auf:
 +
*Es finden keine Übergänge ''(FadeIn, FadeOut)'' statt.
 +
*Normalerweise wird die Eventausführung unterbrochen, dann die neue Map geladen und die Eventausführung fortgesetzt, hier wird jedoch der Mapwechsel sofort ausgeführt, d.h. der nächste Befehl wird noch im selben Frame verarbeitet.
 +
*Ein normaler Teleport setzt die ID von noch laufenden Events der alten Map auf 0, hier bleibt die ID jedoch erhalten, d.h. ''ThisEvent''-Referenzen funktionieren weiterhin.
 +
*''Pictures'' werden nicht gelöscht, dies ist somit eine Möglichkeit, ohne [[RPG Maker 2003: Changelog|aktuelle RPG-Maker-2003-Version]] Pictures beim Mapwechsel nicht zu verlieren.
  
* Es findet kein Fade-In/Fade-Out statt
+
===Fahrzeug-ID -1===
* Im Gegensatz zu einem normalen Teleport wird nicht die Eventausführung unterbrochen, dann die Map geladen und die Eventausführung fortgesetzt, sondern der Mapwechsel ist sofort, d.h. der nächste Befehl wird noch im selben Frame ausgeführt.
+
Besonders in der japanischen Community ist eine Eigenheit des Eventbefehls zum Setzen einer Fahrzeugposition verbreitet, die sich zunutze macht, dass die systeminternen Event-IDs für die Spielerfigur (10001) und Fahrzeuge (10002, 10003, 10004) direkt aufeinanderfolgen. Wird z.B. über [[TKcode]] in [[TKool Bridge]] oder einem anderen [[:Kategorie:Tool|Tool]] der Befehl so manipuliert, dass er den Index ''-1'' statt einem Wert zwischen 0 und 2 referenziert, kann mit ihm stattdessen die Position und Map der Spielerfigur schlagartig geändert werden, ohne einen ''Teleport'' durchzuführen. Ein prägnantes Beispiel ist der Musikraum im Spiel [[Yume2kki]], welcher sehr regen Gebrauch von diesem Feature macht.
* Ein normaler Teleport setzt die ID von noch laufenden Events der alten Map auf 0, hier bleibt aber die ID erhalten, d.h. ThisEvent-Referenzen funktionieren weiterhin.
 
* [[Pictures|Picture]] werden nicht gelöscht, dies ist somit eine Möglichkeit, ohne aktuelle RPG Maker 2003 Version Pictures beim Mapwechsel nicht zu verlieren.
 
  
== Vehicle-Teleport mit Vehicle -1 ==
+
[[Kategorie:Technik]] [[Kategorie:RPG Maker 2000]] [[Kategorie:RPG Maker 2003]] [[Kategorie:RPG Maker VX]] [[Kategorie:RPG Maker VX Ace]] [[Kategorie:RPG Maker MV]]
 
 
Besonders in der japanischen Community ist noch eine Eigenheit des Befehls verbreitet: Neben den herkömmlichen Fahrzeugen kann mit externen Tools auch das zu teleportierende Fahrzeug auf -1 gesetzt werden. In diesem Fall passiert das Folgende: Wenn die Party in keinem Fahrzeug ist, ist die ID des aktuelles Fahrzeugs -1 und dies sorgt dafür, dass die Party direkt referenziert wird, d.h. die Party kann mit diesem Befehl auch teleportiert werden, wenn sie in keinem Fahrzeug ist. Dies macht den Befehl sehr mächtig, da es die einzige Möglichkeit ist, ohne Unterbrechung durch einen normalen Teleport auf der Selben, als auch auf andere Maps zu teleportieren. Ein prägnantes Beispiel ist der Musikraum im Spiel [[Yume2kki]], welcher sehr regen Gebrauch von diesem Feature macht.
 
 
 
 
 
 
 
[[Kategorie:2000]] [[Kategorie:2003]] [[Kategorie:Event]]
 

Version vom 13. Oktober 2019, 11:47 Uhr

Vehicle ist eine spezielle Form von Interaktionsobjekten auf Maps neben gewöhnlichen Events, die es in den meisten RPG-Maker-Versionen für PC gibt. Seit dem RPG Maker 2000 existieren mit Ausnahme von RPGXP durchgehend mit je einem Boot, Schiff und Flugschiff insgesamt drei Arten dieser auf Deutsch meist "Fahrzeuge" genannten Objekte. In sie einzusteigen, sowie sie wieder zu verlassen, wird genau wie das Ansprechen von Events mit der primären Aktionstaste ausgelöst.

Die Aufgabe der beiden erstgenannten Fahrzeuge ist, die Spielerfigur über Wasserabschnitte auf einer Weltkarte zu führen, häufig wird dem Boot dabei verwehrt, sich über tiefe Gewässer zu bewegen, während das Flugschiff sich über alle oder die meisten Oberflächen bewegen kann und für gewöhnlich um einiges schneller unterwegs ist.

RPG Maker 2000/2003

Im RPG Maker 2000 und 2003 könn jedem Terrain Eigenschaften dafür zugewiesen werden, welche Fahrzeuge sich auf ihnen bewegen dürfen und ob dem Flugschiff erlaubt ist, auf ihnen zu landen.

Teleport mit Fahrzeug

Wenn ein Teleport auf eine andere Map durchgeführt wird, während die Party im Fahrzeug ist, stürzt die RPG_RT.exe in der Regel ab. Wenig bekannt ist jedoch, dass unter gewissen Bedingungen ein Teleport auch mit Party im Fahrzeug möglich ist:

  • Wenn ein CommonEvent diesen Teleport durchführt, funktioniert er immer.
  • Ein MapEvent, das diesen Teleport durchführt, darf kein Paralleler Prozess sein, zudem muss ein Event mit der ID, das den aktuellen Event-CallStack ausgelöst hat, auf der Zielmap existieren.

Wird eine dieser Bedingungen erfüllt, treten folgende Eigenheiten gegenüber einem normalen Teleport auf:

  • Es finden keine Übergänge (FadeIn, FadeOut) statt.
  • Normalerweise wird die Eventausführung unterbrochen, dann die neue Map geladen und die Eventausführung fortgesetzt, hier wird jedoch der Mapwechsel sofort ausgeführt, d.h. der nächste Befehl wird noch im selben Frame verarbeitet.
  • Ein normaler Teleport setzt die ID von noch laufenden Events der alten Map auf 0, hier bleibt die ID jedoch erhalten, d.h. ThisEvent-Referenzen funktionieren weiterhin.
  • Pictures werden nicht gelöscht, dies ist somit eine Möglichkeit, ohne aktuelle RPG-Maker-2003-Version Pictures beim Mapwechsel nicht zu verlieren.

Fahrzeug-ID -1

Besonders in der japanischen Community ist eine Eigenheit des Eventbefehls zum Setzen einer Fahrzeugposition verbreitet, die sich zunutze macht, dass die systeminternen Event-IDs für die Spielerfigur (10001) und Fahrzeuge (10002, 10003, 10004) direkt aufeinanderfolgen. Wird z.B. über TKcode in TKool Bridge oder einem anderen Tool der Befehl so manipuliert, dass er den Index -1 statt einem Wert zwischen 0 und 2 referenziert, kann mit ihm stattdessen die Position und Map der Spielerfigur schlagartig geändert werden, ohne einen Teleport durchzuführen. Ein prägnantes Beispiel ist der Musikraum im Spiel Yume2kki, welcher sehr regen Gebrauch von diesem Feature macht.