----------------------------------------------------------------
VARIABLEN TUTORIAL v1.0 by Seijuro/Silver Claw 2001
----------------------------------------------------------------
INHALT
====================================
Kapitel 1:(Theorie) Was sind Variablen? Grundlagen
Kapitel 2:(Theorie) Grnde fr die Nutzung von Variablen
Kapitel 3:(Praxis)   Erste Schritte bei der Erstellung und
Wertezuweisung von Variablen
Kapitel 4:(Praxis)  Das erste Script
Kapitel 5: Vorschlge, Nachwort, sonstige Kommentare
====================================









Kapitel 1:
Was sind denn Variablen? - THEORIE Teil 1
====================================
Tja, sicher hast du dieses Wort irgendwo schoneinmal gehrt. Vielleicht in der Schule, hab ja keine Ahnung, ich jedenfalls nicht,
ich bin grad mal 7. Klasse, und trotzdem kapier ich was von Variablen. Ist auch im Grunde einfach.
Also, Variablen sind nichts anderes als Wertespeicher. Der Wert, der sich hinterher in der Variable befindet, kann whrend
eines Scripts zum Beispiel variieren. Dies ist sehr wichtig um zb. Objekte zu zhlen. Mehr dazu spter. Variablen sind also
1)eine art container und
2)ein platzhalter.(eben fr den wert.)
(By the Way, das Gegenteil von Variablen sind =>Konstanten.)
Man kann sich Variablen wie einen Omnisbus vorstellen. Nehmen wir an, in einem Linienbus befinden sich 50 Leute.
An Haltestelle 1 gehen 6 Leute heraus, aber keiner steigt ein.(Makerinterner Vergleich: Variable mit Wert 50, Script Action
Change Variable -6)
Nun sind im Bus nur noch 44 Leute. Der Wert, also hierbei die Personenanzahl, hat sich also <auf der Busstrecke> gendert.
Genauso verhlt's sich auch mit den Maker-Variablen. Der Bus ist die Variable, also der Wertespeicher. Wenn nun 6 Leute
herausgehen, beinhaltet der Bus eben nur noch den Wert 44.
Das erstmal Grundstzlich.
Du weisst jetzt also, das Variablen dazu da sind, Werte zu speichern und irgendwann eventuell wieder zu verndern.
------------------------------------------------------------------
Kapitel 2:
Wofr brauch ich die berhaupt? THEORIE Teil 2
=====================================
Nun, wie oben schon erlutert, um zb etwas zu zhlen.
Spter, wenn du vielleicht mal komplexere und interaktivere RPGs mit dem Maker erstellen willst, weisst du vielleicht nicht,
wie du aus der Zahl 50 spter die Zahl 80 machst(Guuut, das geht auch mit nem
Switch, ich geb mich geschlagen...). Oder vielleicht mchtest du in deinem RPG etwas berechnen lassen. Das Alles geht mit Variablen.
Um mal zu einem praktischen Beispiel zu kommen:
Du bist Koch. (jaja dummes Beispiel ;) )
Jetzt musst du 5 Hhnereier sagen wir mal, in die Bratpfanne legen(Ui, das is viel, aber mir fllt nix anderes ein... ^^)
Das Programm muss ja irgendwie wissen, wieviele Eier du schon in die Bratpfanne gelegt hast.
Also erstellst du eine Variable, und weist ihr den Wert 0 zu. Wenn du jetzt per Push-Key-Event ein Ei in die Pfanne legst,
erhhst du den Wert um 1. Jetzt weiss das Programm also: Aha, Variable *eier* ist 1, also ist schon ein Hhnerei in die
Pfanne gelegt worden.
Und immer, wenn jetzt ein Ei in die Pfanne kommt, erhht sich der Wert um 1, also Variable *Eier* +1.

Variablen werden hufig in Kombination mit =>Forks gebraucht. Was Forks genau sind, erklre ich in einem anderen Tutorial,
hier sei nur mal gesagt, dass das Programm ja irgendwie prfen muss, ob auch 5 Eier in die Pfanne gelegt wurden.
Also machst du eine sogenannte Fork Condition, in der du einstellst, das WENN("IF", kennt ihr vielleicht von der Programmierung)
die Variable *eier* 5 ist, z.B. eine Message "Yeah! 5 Eier in der Pfanne" erscheint.
Forks sind jedoch einfacher als Variablen zu erklren. Aber erstmal weg mit dem Thema, es geht ja hier um die Dinger
namens Variablen :)
----------------------------------------------------------------
Kapitel 3:
Wie benutz ich sie?  PRAXIS Teil 1
====================================
Okay, soweit zum theoretischen Teil zu Variablen. Jetzt wollen wir ein wenig ben und praktizieren.
Wir wissen nun also, wozu Variablen da sind, und auch WAS sie sind. Jetzt will ich dir erklren, wie man sich mit ihnen vertraut macht, und sie korrekt benutzt.
Dazu brauchen wir natrlich erstmal ein Leit/Ziel/Beispiel-Script, was wir im Verlaufe des Tutorials erstellen wollen.
Und ich will ein Script machen, mit dem du einen Taschenrechner simulierst. In Ordnung? Gut. Fangen wir am besten gleich an.
Zunchst mal wrde ich dir raten, fr alle deine Test-Scripts, die Dinge, die du aus Tutorials und so lernst, ein eigenes Projekt zu erstellen.
So hast du alle Variablen, Switches, Maps die du nicht primr fr deine Spiele brauchst sondern einfach nur zum herumexperimentieren hast, beisammen und es
entsteht kein Chaos.
Ein hufiger Fehler von Anfngern ist immer, das sie in ihr vorhandenes Projekt mit 10 Maps irgendwo das einbauen, was in einem Tutorial erklrt wird.
Und dann kommt man irgendwann mit den Switches und Maps und Events durcheinander und dann heissts ade, Ordnung.
Also. Ist einfach angenehmer.
So, bevor wir mit unserem groen Taschenrechner-Script anfangen, machen wir erstmal ein paar kleine bungen. Wenn du dich dann bereit fhlst, fangen wir mit
dem groen Script an.
Ich will dir zunchst zeigen, welche Script Actions mit Variablen zu tun haben.

a)Seite 1, "Change Variable" - Dies ist die Variablenfunktion, die wir am meisten brauchen werden. Mit dieser Script Action kann man Variablennamen bestimmen,
und ihnen Werte zuweisen.
b)Seite 3, "Fork Conditions" - Eben die oben erklrten Forks, die man hufig in Verbindung mit Variablen braucht.
und 
c)Seite 3, "Set Password" - Hier wird den Aktionen wie laufen eine Taste zugewiesen. Ntzlich, um eigene Mens zu machen etc. Aber Anfnger sollten vorerst die Finger
davon lassen, zumal ich in einem kommenden Tutorial diese Funktion ausfhrlich behandeln werde, und jeder wei ja, wie toll meine Tuts sind ;) :D

Zurck zum Thema.

Wie schon gesagt, "Change Variable" wird fr uns am wichtigsten sein, die Hauptfunktion sein.
So, fr den Anfang wollen wir zunchst 2 Variablen erstellen.
Mach erstmal ein Test-Event auf irgendeine Map. Ist egal, was da druff is, wie die Event Start Conditions sind etc. Ist alles erstmal egal.
Wenn du im Hauptfenster zur Eventerstellung bist, doppelklicke ins weisse Fenster um eine neue Script Action zu erstellen(So nenn ich die Dinger die man bei den vielen
Buttons findet einfach mal)
Jetzt gehe auf die erste Seite, du findest die Option "Change Variable". Klicken. So, jetzt kommt erstmal ein Dialog mit vielen Einstellungsmglichkeiten, die fr Newbies
am Anfang wohl ziemlich verwirrend sind.
Aber wir gehen in Ruhe alles der Reihe nach durch.
Im "Choose Variable" - Teil des Fensters, geht es erstmal darum, welche Variable du benutzen mchtest, um ihr z.B. einen Wert zuzuweisen.
Ganz Oben unter "one" findest du ein weisses Feld wo die derzeit aktive Variable zu finden ist. Hast du noch keine eigene derklariert(Ihr einen Namen zugewiesen), dann
klicke auf dem Punkte- Button. Den Kennst du vielleicht schon von (u. a.) Switches, denn du kommst jetzt zu einer Liste mit Zahlen. Wenn du bereits mit Switches ge-
arbeitet hast, wirst du dich im Listendialog schnell zurechtfinden, er ist genauso aufgebaut wie das Switch-Auswahllistenfeld. Wenn nicht, lies zuerst ein Tutorial ber
Switches.
Benenne nun also eine freie nummer, zb die 0003-Variable. Nenne sie am besten "Test". Wenn du das Wort eingetippt hast, klickst du auf OK.
(gegebenenfalls musst du die test-variable erst mit einem mausklick markieren.) Du gelangst zurck zum Variablen-Einstellungs-Dialog.
Im Weissen Feld bei "Choose one Variable" sollte nun die Test-Variable(0003) zu sehen sein. Wenn nicht, gehe nocheinmal zurck zum Variablenauswahlfeld und
berprfe, ob du alles richtig gemacht hast.
Da wir die anderen Funktionen bei "Choose variable" im Moment noch nicht brauchen, knnten wir sie eigentlich beiseite lassen. Wenn du allerdings irgendwann die
Variablen beherrscht und Interesse an den zustzl. Funktionen hast, hab ich sie hier schon mal ein wenig erlkrt.
-Range: Hier kannst du mehrere Variablen in einem Feld auswhlen. Hast du z. B. die Variable Test1 auf 0003, Test2 auf 0004 und Test3 auf 0005, kannst du hier
Range 3 - 5 auswhlen, um mehrere Variablen anzusprechen.
-Variab(le): Hier kannst du z. B. eine Variable nehmen, die bereits bearbeitet wurde, anstatt eine neue, leere zu deklarieren.
Kommen wir nun zum nchsten Teil beim Variable Management, zu "Set", der wohl am einfachsten zu erkrende Teil.
Hier whlst du aus, was mit der ausgewhlten Variable geschehen soll.
Von Links nach rechts wren das dann: Wert bestimmen, Wert addieren, Wert subtrahieren, Wert multiplizieren, Wert dividieren und zum, etwas komplexeren Command
Mod.
Bei "Set" whlst du also einfach aus, ob der Variable
-Einfach irgendein bestimmter Wert zugewiesen werden soll
-Ein Wert zum bestehenden addiert werden soll
-Ein Wert vom bestehenden subtrahiert werden soll
-Ein Wert mit dem bestehenden multipliziert werden soll
-Ein Wert durch den bestehenden dividiert werden soll
-Ein Wert "gesplittet" werden soll.(Wie gesagt, das erklre ich jetzt hier nicht.)
Zunchst mchten wir der Variable Test allerdings einen Wert zuweisen. Nehmen wir also "Set" ganz links.
Und ab zum nchsten Teil...
Bei "Operand" whlen wir nun die Zielmenge/Den Zielwert aus. Htten wir z. B. Beim "Set"-Teil addieren genommen, wrde hier die Zahl eingestellt werden,
die addiert werden soll.
Allerdings gibt es hier ein paar Einstellungsmglichkeiten mehr. WIr gehen wie immer alles in Ruhe durch.
Bei "Set" whlst du eine einfache Zahl aus. Da wir bei dem Teil "Set" uns auch entschieden haben, der Test-Variable einen best. Wert, also eine Zahl zuzuweisen, wird hier
nun die entsprechende Zahl eingestellt.
Bei "Variable" whlen wir eben eine andere Variable aus, die bereits einen Wert besitzt.
Hierzu ein kleines Beispiel. Variable 1 hat den Wert 4. Wir wollen Variable 2 nun zu Variable 1 addieren. Variable 2 haben wir in einer vorherigen Script Action den Wert
"6" zugewiesen. Addieren wir diese nun zu V1, kommt 10 raus, weil 4 + 6 = 10 ist.
Alles klar? ^_^
Weiter.
"Rand." steht fr "Random" und bedeutet etwa "Zufall". Wir knnen also einer Variable auch einen zuflligen Wert zuweisen. Mit den Beiden Zahlen whlen wir das mgliche
Feld aus, also den Radius, innerhalb dessen die Zufallszahl generiert wird. Nehmen wir da also 5 und 10, kommt hinterher eine Zahl zwischen 5 und 10 Raus.
"Item". Vielleicht hast du dich mit Items schon vertraut gemacht. Jedenfalls kann hier der Variable die Anzahl der (entweder) sich im Besitz befindenen Items oder die
Anzahl der ausgersteten zugewiesen werden.
"Hero" - Hier knnen verschiedene Eigenschaften des Helden zugewiesen werden.
"Event" - Hier knnen wiederum verschiedene Eventeigenschaften zugewiesen werden.  Die Sache mit den X und Y Koordinaten ist fr Newbies noch nicht allzu verstndlich.
"other" - Diverse andere Werte, wie Geld oder gar Anzahl der Speichervorgnge.

Oookaay. Jetzt sind wir damit durch. Jetzt wollen wir noch fr unseren Test-Event alles einmal zusammenfassen.
-Variable Choose Method: One
-Set Method: Set
-Operand/Value Setting: Set, 5

Hast du das so? In Ordnung. ^_^
Jetzt klcike auf OK.
Und nun........
Glckwunsch, du hast so eben deine erste Variable erstellt, und ihr einen Wert zugewiesen!
Aber....
Damit du ein wenig mehr vom Prinzip verstehst, brauchen wir noch eine.
Mitlerweile msstest du wissen, wie man eine erstellt. Wir bruchten eine einzelne, genannt Test2, und ihr soll der Wert 10 zugewiesen sein. Weiter nix. Kein Addieren,
kein Subtrahieren. Einfach diesen Wert zuweisen.
Wenn du das hast, kannst du, wenn du willst, noch ein wenig herumexperimentieren. 
Du hast soeben den Hauptteil des Tutorials durchstanden. Jetzt kommen ein paar schwerere bungen, aber wenn du bis hier hin gekommen bist, hast du das Prinzip
der Variablen schon verstanden.
Eigentlich knntest du hier schon das Tutorial schliessen und an deinem RPG weiterarbeiten.
Wenn du allerdings dein Wissen vertiefen mchtest und etwas sicherer auf dem Gebiet der Variablen werden mchtest, dann les einfach weiter und mach frohen Mutes
mit! ^_^
-------------------------------------------------------
Kapitel 4  PRAXIS : Endspurt Teil 1
Taschenrechner, Part 1
==============================
Sooo.
Hast dus also geschafft.
Nun, da du jetzt die Variablen und ihre Grundprinzipien verstanden hast, machen wir mit unserem kleinen Script weiter.
Hast du die 2 Variable? Wenn ja, msste dein Event-SourceCode jetzt ungefhr so aussehen:
{
<>Variable Ch:[0003:test] Set, 5
<>Variable Ch:[0004:test2] Set, 10
}
OK? Dann weiter.
Wie gesagt wollen wir jetzt versuchen, eine Art Taschenrechner zu bauen.
Allerdings ergibt sich da schon ein kleines Problem?

Welches?

Genau.
In RPG-Maker-Games gibt es keine Option, irgendetwas vom User eingeben zu lassen.
Was machen wir? Zunchst einmal, machen wir unseren "Taschenrechner" in einer ganz simplen Form.
Wir behalten die Werte 5 und 10 und lassen nichts vom User bestimmen.

Jetzt kannst du ja schonmal versuchen, selbststndig zu arbeiten, ohne das ich dir stndig Anweisungen geben mu.
Ich habe dich ja bereits mit den verschiedenen Methoden der Wertbearbeitung vertraut gemacht.
Erinnerst du dich noch an diese Methoden?
Es waren Bestimmen, Addieren, Subtrahieren, Multiplizieren, Dividieren und eben das Mod-Command, was fr uns eher unwichtig ist.
(Ok, wenn du Mathe hasst, ist dieses Tutorial nix, ich mag Mathe auch nicht, aber besser lsst sich das Prinzip der Variablen nicht erklren als mit Mathematischen
Dingen, Gegen Waffen wehrt man sich eben mit Waffen. ^_^)
So, nun msstest du das Show Choice Command beherrschen. Wenn du das tust, schreib doch 2 Choices, einmal "10 und 5 Addieren" und das andere Mal
"10 und 5 subtrahieren"(Jaaaa es ist simpel, es ist sehr simpel, aber wenn du einfach noch etwas in den Variablenmens sicherer navigieren willst und dich ein wenig
besser an die Variablen gewhnen willst, mach diese bungen. Hab ich am Anfang auch. ^_^)
innerhalb dieser choices versuchst du nun, die eine Variable zur anderen hinzuzuaddieren bzw zu subtrahieren. Hast du gut aufgepat, drfte das eigentlich kein Problem
fr dich sein.

Lies erst weiter, wenn du meinst, du wrst fertig. probiere das Script mit den Choices ruhig ingame aus. Wenn es nicht klappt, probiere es noch mal und berprfe die 
Script Actions. Wenn du wirklich nicht weiterweisst, dann ist hier der korrekte Source Code.
_________________________
Bist du fertig?
Guuut. Dann wollen wir mal vergleichen.
(ich habe die zuweisung der werte an den test-variablen hier mal weggelassen, das haben wir auch schon da oben.)
{
<>Show Choice: Addieren/Subtrahieren
:Addieren Case
<>Change Variable:[0003:test] +, [0004:test2]
End Case
:Subtrahieren Case
<>change variable:[0004:test2] -, [0003:test]
End Case
}
so siehts ungefhr aus.
OK? Dann ab zum absoluten Endspurt.
---------------------------------------------------
Kapitel 5 PRAXIS : Endspurt Teil 2
bungen, Taschenrechner-Verbesserungen, Nachwort
=============================
So. Jetzt hast du da dein erstes klitzekleines Variablen-Script erstellt.
Sei Stolz.(Weniger das du jetzt mit Variablen arbeiten kannst, mehr das du eins meiner unendlich langweiligen aber doch so hilfreichen Tutorials durchgelesen hast :D)
Wenn du wirklich noch bungen willst, um dich zu perfektionieren, probiere doch mal
a)Das Endergebnis des Taschenrechners mit einer Message auszugeben.
(Tipp: mit \v[0003] im Text gibst du den Wert der Variable 0003 aus ;) )
oder b) mit noch mehr choices(eventuell verschachtelten) mehr zahlen zu kreiren und diese zu berechnen.
(aber ich denke von mathe hast du mittlerweile genug oder? :D )
dann probier doch mal, das klassische Hol-Die-Eier-Bring-Sie-Dort-Hin-Script nachzubauen, kannst du doch jetzt ^_^

Naja, es steht dir frei zu gehen, aber...hhh...lassen wir das, ich hab zuviel VD gespielt :D :D

Auf jeden Fall hoffe ich, das du nun (einigermaen ^^; ) mit Variablen umgehen kannst. 
berlege doch mal, was du damit jetzt alles anstellen kannst.

Falls du nicht klarkommst, lies dir verschiedene Stellen des Tutorials einfach nochmal durch. Oder lies andere
Variablen-Tutorials. Hilft auch, vor allem, weil die Jungs in ihren Tutorials nich soviel Mathe machen :D

Aber ich denke, das mein Variablentut wohl eines der ausfhrlichsten unter den deutschen sein wird....

hoffe ich zumindest :D ;)

Naja, wie auch immer, ich hoffe auch das euch das Tut Spa gemacht hat und das ihr euch auch meine anderen Tuts durchlest ;)
(Ich VERSPRECH es, nie wieder Mathe :D :D :D )

Feedback bitte an seijuro@lodoss-island.net
-danke.

[First character in this text document written at 23:49, 30. 8. 01 - Document succesfully created and saved at 02:17, 1. 9. 01]
Ui ^_^...uah...ghn....naja....hab nur fr euch die ganze nacht durchgemacht...oder.hm....naja...ein viertel...davon oder so....
naja bin schon ganz bekifft, ich geh jetzt pennen ^_^

Nacht

/me ffnet die Tr, humpelt hinaus. Tr schliesst sich, Rumpelgerusch ertnt.

^_^