Hiro-sofTs Branchtutorial für RM2000/2003!

Elemental
Verfügbare Informationen zu "Hiro-sofTs Branchtutorial für RM2000/2003!"

  • Qualität des Beitrags: 0 Sterne
  • Beteiligte Poster: Hiro-sofT - Koji
  • Forum: Elemental
  • aus dem Unterforum: Technik-Bereich
  • Antworten: 3
  • Forum gestartet am: Samstag 01.12.2007
  • Sprache: deutsch
  • Link zum Originaltopic: Hiro-sofTs Branchtutorial für RM2000/2003!
  • Letzte Antwort: vor 15 Jahren, 5 Monaten, 3 Tagen, 11 Stunden, 52 Minuten
  • Alle Beiträge und Antworten zu "Hiro-sofTs Branchtutorial für RM2000/2003!"

    Re: Hiro-sofTs Branchtutorial für RM2000/2003!

    Hiro-sofT - 08.11.2008, 13:46

    Hiro-sofTs Branchtutorial für RM2000/2003!


    Hallo und vielen Dank, das du dich für dieses Tutorial interessierst und das du dir die Zeit dazu nimmst, es durchzulesen, lies ihn dir gut durch, es stecken viele nützliche Dinge hier drinnen, vielleicht auch welche, die du vorher noch nicht kanntest, selbst ich selbst habe auch noch mal nachgelesen, geprüft und gestaunt. Dieses Tutorial ist natürlich Freeware b.z.w. nicht Illegal und er wurde von mir selbst geschrieben. Keine Bange also, nur falls du das Tutorial wo anders zeigen möchtest, postest oder sonst wo anders ausstellen oder editieren willst u.s.w. , bitte erwähne den Hauptautor dieses Tutorials (also mich) in deinen Credits.



    Beim RPG Maker 2000 heißt der Befehl nicht "Conditional Branch" sondern "Fork Condition". ~Cherry

    F: Was sind Branches eigentlich?
    A: Branches sind so was in der Art wie „Bedingungsanweisungen“ in einem Code, die überprüfen, das falls eine spezielle Voraussetzung erfüllt wird , das dann der Teil des Codes, welcher in Branch steht, ausgeführt wird, aber nicht, falls die Voraussetzung noch nicht erfüllt wurde (im Tutorial findest du viel mehr dazu, dies ist die Kurzform).

    F: Sind diese ein Muss für ein RMSpiel?
    A: Nein, sie müssen unbedingt nicht in einen Spiel eingemakert werden, ohne sie kann man auch eignende Spiele entwerfen.

    F: Ist es sinnvoll, sie zu nutzen?
    A: JA! Mit ihnen bist du in der Lage, besser eigene Kampfsysteme, Menüs, Minigames u.s.w. zu erstellen. Ohne sie gäbe es z.B. keine Trefferabfragen in selbst erstellten Kampfsystemen. Aber das ist noch nicht alles, es gibt noch viel mehr, was man mit ihnen anstellen kann. Probiere verschiedenes aus und du wirst sehen!

    F: Mal eine persönliche Frage, benutzt du diese selbst auch?
    A: Mein Hauptprojekt besteht aus 80% Branchcodes , von daher kennst du sicherlich meine Antwort, Ja und wie!



    So, fangen wir mal ganz klein an und schauen uns die Funktion „Conditional Branch“ genauer an. Keine Sorge, falls du am Anfang noch nichts verstehst, nachher zeige ich dir, wie man damit genauer umgeht. Hier erst mal ein kleines Bild, damit du dir ein Bild von diesen Kommando machen kannst. Das hier ist die erste von zwei Seiten .



    1. „Switch“ = An erster Stelle wird hier der Switch ausgewählt, danach ob ON oder OFF. Steht es auf ON, so muss der ausgewählte Switch aktiv sein, dann wird der Teil des Branches ausgeführt, sonst nicht! Steht an dieser Stelle allerdings „OFF“ , so muss dieser vorher deaktiviert sein
    2. „Variable“ = So wie bei dem Switches muss hier zuerst die Variable ausgewählt
    werden, wessen Zahl dann verglichen wird. Danach kannst du drunter zwischen „Number“ oder „Variable Refernce“ entscheiden:

    Number: Stelle eine konstante Zahl ein.
    Variable Refernce: Wähle hier eine andere Variable aus. Hier wird dann nämlich die
    Zahl der ausgewählten daneben stehenden Variable genommen.

    Da unter kann dann die Vergleichsvoraussetzung eingestellt werden. Je nach dem, ob das Ergebnis stimmt, wird der Branch aktiviert. Am besten zeig ich euch das mal mit Vergleichen. Falls da nun stehen sollte...

    Equal to:
    Beide Zahlen müssen gleich sein, damit dieser Branch aktiviert wird, also so:
    Variable 0001 „Zahl 9“ = Variable 0002 „Zahl 9“ – Branch ist nun aktiv!
    Oder mit Zahl:
    Variable 0001 „Zahl 9“ = „Zahl 9“ – Branch ist nun aktiv!

    Greater than or Equal to:
    Es müssen entweder beide Zahlen gleich sein oder die erstausgewählte Variable muss größer sein, als die zweite Zahl, damit dieser Branch aktiviert wird, also so:
    Variable 0001 „Zahl 9“ = Variable 0002 „Zahl 9“ – Branch ist nun aktiv!
    Variable 0001 „Zahl 19“ > Variable 0002 „Zahl 9“ – Branch ist nun aktiv!
    Oder mit Zahl:
    Variable 0001 „Zahl 9“ = „Zahl 9“ – Branch ist nun aktiv!

    Variable 0001 „Zahl 19“ > „Zahl 9“ – Branch ist nun aktiv!

    Less than or Equal to:
    Es müssen entweder beide Zahlen gleich sein oder die erstausgewählte Variable muss kleiner sein, als die zweite Zahl, damit dieser Branch aktiviert wird, also so:
    Variable 0001 „Zahl 9“ = Variable 0002 „Zahl 9“ – Branch ist nun aktiv!
    Variable 0001 „Zahl 3“ < Variable 0002 „Zahl 9“ – Branch ist nun aktiv!
    Oder mit Zahl:
    Variable 0001 „Zahl 9“ = „Zahl 9“ – Branch ist nun aktiv!
    Variable 0001 „Zahl 3“ <Zahl> Variable 0002 „Zahl 9“ – Branch ist nun aktiv!
    Oder mit Zahl:
    Variable 0001 „Zahl 19“ > „Zahl 9“ – Branch ist nun aktiv!

    Less than:
    Die erstausgewählte Variable muss größer sein, als die zweite Zahl, damit dieser Branch aktiviert wird, also so:
    Variable 0001 „Zahl 3“ < Variable 0002 „Zahl 9“ – Branch ist nun aktiv!
    Oder mit Zahl:
    Variable 0001 „Zahl 3“ <Zahl> 3Min 19Sec eingestellt - Branch ist nun aktiv!

    or less: Die Zeit von Timer 1 muss genau so viel oder weniger als die eingebende Zeit betragen, damit der Branch seinen Code ausführen kann...
    3Min 19Sec auf dem Timer = 3Min 19Sec eingestellt - Branch ist nun aktiv!
    4Min 49Sec auf dem Timer <3Min> 3Min 19Sec eingestellt - Branch ist nun aktiv!

    or less: Die Zeit von Timer 2 muss genau so viel oder weniger als die eingebende Zeit betragen, damit der Branch seinen Code ausführen kann...
    3Min 19Sec auf dem Timer = 3Min 19Sec eingestellt - Branch ist nun aktiv!
    4Min 49Sec auf dem Timer < 3Min 19Sec eingestellt - Branch ist nun aktiv!

    5. „Money is“ = Hier wird das Geld von dem Helden verglichen. Stelle zuerst deine Wunschsumme ein und dann, wie das verglichen werden soll...

    at least: Der Branch startet seinen Code, sobald du genau so viel oder mehr Geld dabei hast.

    less than: Der Branch startet seinen Code, sobald du weniger Geld dabei hast.

    Nun Seite 2...



    6. „Item“ = An dieser Stelle werden Items überprüft , wähle zuerst aus, ob...

    Party Possesses: Deine Heldentruppe muss den Gegenstand mindestens 1x bei sich haben. Hat sie diesen bei sich, so dann wird der Branch laufen. Doch er wird nicht laufen, solange du diesen Gegenstand noch nicht hast.
    Party Does Not Possesses: Deine Heldentruppe darf den Gegenstand nicht haben (kein einziges mal!). Hat sie ihn nicht, so wird dieser Branch aktiviert, wenn die Truppe den Gegenstand aber hat, so dann wird der Branch nicht laufen.

    Nachdem du dich dann darüber entschieden hast, ob sie ihn halten soll oder nicht, kannst du dahinter den Gegenstand auswählen.

    7. „Hero“ = Wähle zuerst hier den Helden aus, welcher betroffen sein soll, danach kannst du darunter entscheiden, was du prüfen möchtest von dem Helden. Es öffnet sich also ein neues Fenster, in dem folgendes zu sehen ist...



    Hero is in Party - Der Held muss in der Gruppe mit drinnen sein, damit dieser Branch funktioniert. Tut er dies aber nicht, so läuft der Branch nicht.

    Name is - Gebe deinen Wunschnamen in der Box rechts davon ein. Der Name des Helden muss nun mit dem Namen in der Box mit übereinstimmen, damit der Branch laufen kann. Ist der Gegenteil der Fall, ist der Branch deaktiviert.

    Level is at leas - Das Level von dem ausgewählten Helden muss mindestens dem Level, welchen du dahinter im Kasten einstellst, erreicht haben. Hat der das ausreichende Level, so wird dann dieser Branch aktiviert , falls der Held nicht das richtige Level hat, so dann wird der Branch deaktiviert bleiben.

    HP is at leas - Hier wird die HP des ausgewählten Helden überprüft. Gebe hier eine Zahl von 1 bis 9999 ein. Wenn der Held mindestens soviel HP hat wie du angeben hast, so dann wird sich der Branchcode aktivieren. Falls er weniger haben sollte, so bleibt der Branch deaktiviert.

    Can use the _______ Skill - Wähle einen Zauber deiner Wahl. Falls dein ausgewählter Held diesen Zauber beherrscht , so dann wird dieser Branch aktiv. Falls nicht, so bleibt der Branch deaktiviert.

    Has the Item _______ Equipped - Wähle einen Gegenstand aus, mit den der Held angeblich ausgerüstet sein soll. Ist er damit ausgerüstet, so dann beginnt der Branchcode zu funktionieren, falls nicht, so bleibt der Branch deaktiviert.

    Afflicted with ________ Condition - Suche dir eine Statusveränderung deiner Wahl aus, welche der Held haben muss, damit der Branch aktiv wird. Hat er sie allerdings nicht, so wird der Branch sich nicht aktivieren.

    8. „Sprite“ = Hier wird überprüft, in welche Richtung das Event schaut. Wähle zuerst das Wunschevent und dann die Wunschrichtung, z.B. könnte das so aussehen:
    o Sprite I Hero I is facing I Up
    Das bedeutet jetzt , das der Branch aktiviert wird, sobald der Held nach oben schaut, tut er dies aber nicht, so wird dann auch der Branch dann nicht aktiviert.

    9. „Party is Riding ____“ = Am diesem Punkt prüft der Branch, ob die Helden Gruppe mit welchen Fahrzeug fahren.

    Skiff - Wenn die Gruppe mit dem Floß gerade fährt, so dann wird dieser Branch aktiviert , falls sie es doch nicht tun sollten, so bleib der Branch aus.

    Ship - Wenn die Gruppe mit dem Schiff gerade fährt, so dann wird dieser Branch aktiviert , falls sie es doch nicht tun sollten, so bleib der Branch aus.

    Airship - Wenn die Gruppe mit dem Luftschiff gerade fährt, so dann wird dieser Branch aktiviert , falls sie es doch nicht tun sollten, so bleib der Branch aus.

    10. „Event was Started Using Actoin Key“ = Sobald du das Event mit der Entertaste ansprichst oder sonst wie das „Using Actoin Key“ auslöst (also damit startes, das der Code laufen soll), sodann wird der Branch angeschaltet. Falls es doch auf andere Weise seinen Code anfängt, so dann wird der Branch deaktiviert sein (Es wird, wenn das Event ein „Auto-Start“ oder ein „Parallel Process“ Event ist, gar nicht richtig funktionieren!)

    11. „BMG has Played Through Once“ = Sobald die gerade laufende Musik endet, so dann wird der Branch dann aktiviert, sonst nicht.

    12. „Option: Execute Custom Handler if Condition Not Met“ = Setze hier einen Harken hin um einzustellen, das etwas anderes passieren soll, falls der Branch, sich nicht aktiviert hat. Ist das Kästchen leer, so dann wird, falls der Branch deaktiviert sein sollte, der Branch total ignoriert, mit andern Worten, der Code geht einfach darum vorbei und läuft weiter.

    Also als erstes muss du wissen, das er so eingefügt wird wie jedes andere Kommando auch. Stelle zuerst die Art und die Vorraussetzung des Branches fest (Also eine aus Abschnitt 3). Wir benutzen jetzt mal einen Branch, welcher einen Switch benötig, um zu laufen und zwar Swtich Nummer [0221]. So sieht nun ein Branch aus...



    Re: Hiro-sofTs Branchtutorial für RM2000/2003!

    Hiro-sofT - 08.11.2008, 13:47

    Teil 2




    Grün: Start des Branches!
    Hier werden die Art und Voraussetzung des Branches festgelegt. Keine Sorge, du kannst dies natürlich immer jeder Zeit umändern, also keine Panik, falls du dich verklicken solltest.
    Blau: Code des Branches!
    Falls die Vorraussetzungen alle erfüllt wurden, so dann wird dieser Teil des Codes mit geladen. Du kannst hier natürlich alle Kommandos reinpacken, die du möchtest. Schreibe hier deine Codes z.B. , falls, wie im Beispiel oben, der Switch aktiv sein sollte, herein!
    Gelb: Anfang des alternativen Codes!
    Nur da, wenn du bei “Option: Execute Custom Handler if Condition Not Met” einen Harken gemacht hast! Hier beginnt der Code, der ausgelöst wird, falls die Voraussetzungen nicht erfüllt werden konnten!
    Rot: Alternativer Code!
    Nur da, wenn du bei “Option: Execute Custom Handler if Condition Not Met” einen Harken gemacht hast! Schreibe hier den alternativen Code hinein, der erfolgt, falls die Voraussetzungen nicht erfüllt werden konnten!
    Lila: Ende des Branches!
    Hier endet der Branch und danach folgen die nächsten Codes wie gewohnt darunter. Mehr brauche ich dazu wohl nicht sagen.

    So und nun, wie fangen wir an? Gute Frage, das kommt darauf an, was du jetzt damit machen willst. Doch zuerst zeige ich dir noch, wie man doppelte Branches macht. Zuerst machst du einen Branch, mit der Voraussetzung, das Swtich Nummer [0221] auf „ON“ sein muss. Gleich darin machst du einem Zweiten Branch, mit der Voraussetzung das der/die Held/Heldin „Lip“ in der Gruppe mit dabei sein muss, das sieht dann so aus...



    Nun, alles was dunkelgrün ist wird nun geladen, falls unser Switch 0221 auf On steht! Falls dieser auf Off steht, so dann wird das hellgrüne geladen des Codes statt des dunkelgrünen.
    Da der zweite Branch mit „Branch if Lip in the Party“ im „Switch“ Branch drinnen steht, falls dieser auf On sein sollte, so dann erfolgt nach dem einen ein zweiter Check. Wenn Lip in der Gruppe ist, dann wird der dunkelgelbe Teil ausgeführt, falls nicht, dann der hellgelbe. Danach endet unser zweiter Branch auch schon, welcher mitten im Code des ersten steht, und der erste Branchcode setzt nun seinen Weg fort, bis dieser zu Ende geht und dann der normale Makercode (in hellblau) wieder anfängt.

    Du kannst auch mehr als 2 Branches einfügen, 3, 4, 5 u.s.w... das ist ganz dir überlassen, Hauptsache, du findest dich darin noch zu recht.



    Hier findest du nun einige Beispiele, wofür man Branches gebrauchen kann. Schaue sie dir genau an, du könntest diese auch wunderbar für andere Dinge gebrauchen, allerdings solltest du sie nicht immer nur abkopieren , sondern auch versuchen, selber was zu machen.

    Tutorial 1. Truhen, verbessert mit Branches!

    So, nun wollen wir mal eine Truhe basteln , mit ein paar kleinen Branchcodes , hier zuerst unser Werk ohne...





    Doch soll euch was sagen, man kann die Truhen noch viel besser aufpeppen, man brauch nur ein paar Branches dazu. Diese hier sieht erst wie jede andere Maker Truhe auch aus!

    Also, was machen wir?
    1. Man soll die Truhe nur von unten öffnen können!
    2. Man soll sie immer wieder öffnen können, aber falls der Inhalt schon in deinen Händen ist, so muss die Truhe dann leer sein.

    Also brauchen wir,

    2x Switchbranches
    2x Sprite _ _ _ is facing –branches

    Wie es geht!

    Erstelle zuerst ein Event mit der Trigger Condition „Action Key“, so wie sonst immer bei Truhen. Nun füge einen Switchbranch ein mit der Vorraussetzung sein muss, das der Switch (deiner Wahl) auf ON sein muss. Danach füge in den Branch einen zweiten Branch ein mit der Vorraussetzung, das der Held nach oben schauen muss, damit der Branch aktiv sein kann (also ein Sprite Hero is facing up –branch). Dann schreibst du den Code hinein, was passiert, wenn sie leer ist, also ein Nachricht z.B. , das die Truhe leer ist (vergesse aber nicht, mit Move Event die Grafik vorher umzuändern, zu einer öffnenden Truhe). Mache nun einen neuen, separaten Branch unter dem beiden Branches, mit der Vorraussetzung das der Switch (der selbe wie vorhin) auf OFF sein muss! Jetzt füge wieder in diesen Branch nun einen zweiten Branch ein mit der Vorraussetzung, das der Held nach oben schauen muss, damit der Branch aktiv sein kann (also wieder ein Sprite Hero is facing up –branch). Schreibe nun den Code, was passiert, falls der Inhalt der Truhe noch da ist (vergesse aber nicht, mit Move Event die Grafik umzuändern, zu einer öffnenden Truhe) wie z.B. eine Nachricht, danach Add Item und zum Schluss muss der Switch, welche du bei beiden Switchbranches zum vergleichen ausgewählt hast, auf ON stellen, fertig!



    So sieht das ganze nun mit Branches aus!

    Welche Vorteile wir jetzt haben? Also zuerst kann man diese Truhe immer wieder öffnen, allerdings ist der Gegendstand nur einmal drinnen und man kann sie nur von unten öffnen. Außerdem haben wir hier nur eine Seite statt zwei und es ist etwas neues.

    Oder du machst es so....



    Geht auch und es ist dann übersichtlicher... nun denn, wir sehen, kleine Dinge können wir wirklich verdammt schnell damit groß machen! Wichtig ist nur, das du den Code erstens, richtig und zweitens, ihn in dem Branch schreibst, und den Rest eben außerhalb.



    Später werden auf Wunsch neue Beispiele aufgelistet b.z.w. du kannst auch was hier tun, schreibe dein eignendes Beispiel und schicke es einfach es per PN zu mir, ich werde dies dann anschließend einfügen und dich in die Credits setzten. Falls du etwas nicht verstanden haben solltest b.z.w. Hilfe in Sachen „Branches“ brauchst, kontaktiere mich einfach. Wie du das machst? Schau einfach weiter runter... dann findest du die Wege, um mich zu kontaktieren. Sonst hoffe ich, das du etwas schlauer geworden bist und wünsche dir noch eine gute Makerzeit.



    Bilder von :
    Seriris Happy Birthday, a Game by Compile.
    RPG Maker 2003, ENTERBRAIN.INC 2002, YOJI OJIMA 2000.
    Tutorial geschrieben von:
    Hiro-sofT
    Kontakt:
    E-mail und MSN: Hiro.sofT@hotmail.de
    ICQ Nummer: 381-947-020
    Homepage: http://hiro-soft.de.tl/

    ENDE

    (sorry für DP, aber anders hatte es sich nicht posten lassen... :? )



    Re: Hiro-sofTs Branchtutorial für RM2000/2003!

    Koji - 18.11.2008, 18:43


    Sehr, sehr, wirklich sehr schön geschriebenes Tutorial.
    Sehr ausführlich und kleinschrittig erklärt.
    Neulingen sollte diesen Tutorial viel nützen, danke für deinen Mühe [:



    Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken



    Weitere Beiträge aus dem Forum Elemental

    Hiro-sofTs Branchtutorial für RM2000/2003! - gepostet von Hiro-sofT am Samstag 08.11.2008
    5-Wort-Gespinnst - gepostet von Auratus am Montag 17.12.2007
    Thema-Blut in Games- muss übertriebene Gewalt wirklich sein? - gepostet von Hiro-sofT am Freitag 26.09.2008



    Ähnliche Beiträge wie "Hiro-sofTs Branchtutorial für RM2000/2003!"

    Kleiner Spaß nebenbei... - gepostet von Mellü am Sonntag 28.05.2006
    Huhu - gepostet von libanonmandy am Mittwoch 12.07.2006
    FLODA braucht mehr Mitarbeiter. - gepostet von daos06 am Donnerstag 24.08.2006