Ich hoffe, dass ich ein bisschen mehr Erfahrung kriege. Oppss... Falsch ausgedrückt. Eigentlich nur das Scripten lernen.
Forum
Trash Programmiertutorial gesuchtProgrammiertutorial gesucht
29 repliesIch hoffe, dass ich ein bisschen mehr Erfahrung kriege. Oppss... Falsch ausgedrückt. Eigentlich nur das Scripten lernen.
es gibt mehr als 500 Sprachen, und wenn ich böse wäre würde ich dir jetzt tutorials zu brainfuck, fuck-fuck oder vatical liefern.
Was willste lernen, BB, Pascal, Ruby, S2Script, PHP?
bizzl has written
Du bist doch nicht böse? Aber da stand: "Wenn". Also gute Laune!:D Danke, dass du mir hilfst. Ich könnte mir eine Antwort von einigen anderen vorstellen (will keine Namen nennen). es gibt mehr als 500 Sprachen, und wenn ich böse wäre würde ich dir jetzt tutorials zu brainfuck, fuck-fuck oder vatical liefern.
edited 1×, last 17.04.06 05:44:01 pm
geh mal auf diese seite, da steht eigentlich alles wichtige.
s2s ist nicht so komplex wie du denkst. eine handvoll events, integer-variablen, einige hundert kommandos, eine eine if-then konstruktion, das wars.
Mit pascal könnte ich dich viel mehr quälen. Wer kennt schon den unterschied zwischen
procedure Something(param: integer);
procedure Something(var param: integer);
und
procedure Something(const param: integer);
?
aber das ist jetzt unwichtig.
Und wenn auch das Tutorial fürs Modding fertig ist, kann ich mir vielleicht irgend wann ein Objekt basteln. P.S.: DC, dass ist dir wirklich gelungen der Tutorial. Sehr kompliziert aber einfach zu lernen.
Edit:
Und wie macht man neue States (Blutung und so...)?
edited 2×, last 17.04.06 06:23:53 pm
Oder meinst du wie man sie per Script einem Objekt einen State zuteilt? Das geht mit addstate
Achja, ich will mir sone Art Storry machen (wenn es geht). Dazu müsste ich den Script für den Tagebuch haben. Damit etwas neues ins Tagebuch geschrieben werden kann.
edited 3×, last 17.04.06 07:39:34 pm
Was das Tagebuch angeht: Schau mal hier.
Insgesamt lohnt es sich, sich auch die Befehlsreferenz und nicht nur die Tuts anzuschauen.
Quote
gekreuzt und bekamm dabei diesen Script raus:diary "Titel" [,"Quelle"]
Kategorien: diary
Erstellt einen neuen Tagebucheintrag mit dem angegebenen Titel.
Gebe bei Quelle die ID eines Infos ein, um dessen Text zu verwenden oder einen Dateinamen, um den Text aus dieser Datei zu laden. Wird der Parameter Quelle nicht angegeben, so wird der Text aus dem Buffer verwendet und der Buffer anschließend geleert.
Kategorien: diary
Erstellt einen neuen Tagebucheintrag mit dem angegebenen Titel.
Gebe bei Quelle die ID eines Infos ein, um dessen Text zu verwenden oder einen Dateinamen, um den Text aus dieser Datei zu laden. Wird der Parameter Quelle nicht angegeben, so wird der Text aus dem Buffer verwendet und der Buffer anschließend geleert.
1
2
3
2
3
on:trigger { diray "Wo bin ich?" [text]; }
Genau so sieht es auch aus.
Und habe unter Standardverzeichnis\mods\StrandedII\ die Textdatei (namens "text") angelegt mit den Text: Ich bin auf einer Insel.
Aber funktionieren tut es nicht.
Quote
Gebe bei Quelle die ID eines Infos ein, um dessen Text zu verwenden oder einen Dateinamen, um den Text aus dieser Datei zu laden.
Das habe ich. Ich habe den Dateinamen angegeben: "text".
Ich hoffe, dass ihr wegen mir nicht die Beherrschung verliert, weil ich Anfängerfehler mache. Ein erster großer Schritt. Kompliziert, obwohl es nur um eine Tagebucheintrag geht...
edited 2×, last 17.04.06 08:20:52 pm
2. Beim Dateinamen musst du den gesamten Dateipfad vom Modordner aus angeben, z.B. "maps/script.s2s". Endung und Anführungszeichen sind auch wichtig.
3. Du musst die Parameter des Befehls mit Kommata trennen.
Edit: Das Skript müsste also so aussehen, wenn ich dich richtig verstanden habe:
1
2
3
2
3
on:trigger { diary "Wo bin ich?","text.txt"; }
1
2
3
2
3
on:trigger { diary "Wo bin ich?","text.txt" }
1
2
3
2
3
on:trigger { diary "Wo bin ich?","Stranded II\text.txt" }
C:\Stranded II Alpha\mods\Stranded II\text.txt.
Mist! Da oben wird aus dem : und \ ein gemacht.
Auch wenn dann der Script sehr lang werden kann.
So, ich schaue morgen erst wieder nach.
1
2
3
2
3
on:trigger { diary "Wo bin ich?","text.txt"; }
Ein genereller Tipp fürs Scripten:
Die Konsole ist lebenswichtig! Dort werden Fehler die in den Scripts sind ausgegeben! Du kannst sie im Spiel mit der Taste ^ (unter der ESC Taste) öffnen.
Gebe in der Konsole VOR dem ausführen des Scripts "debug" ein oder starte Stranded II über "StrandedII -win -debug.bat" um den Debug Modus zu aktivieren. In diesem Modus öffnet sich die Konsole automatisch, wenn ein fehlerhaftes Scripts ausgeführt wird und du bekommst Informationen darüber, was falsch ist.
So ist es viel einfacher, Fehler im Script zu finden und zu beheben.
Debugmodus has written
SCRIPT ERROR
'diray' is a unkown Script command
Script: Info 1(Gebiet-Trigger)
Info: triggered
Event: trigger
Row: 2
Col: 6
SCRIPT ERROR
Expecting semicolion
Script: Info 1(Gebiet-Trigger)
Info: triggered
Event: trigger
Row: 2
Col: 6
'diray' is a unkown Script command
Script: Info 1(Gebiet-Trigger)
Info: triggered
Event: trigger
Row: 2
Col: 6
SCRIPT ERROR
Expecting semicolion
Script: Info 1(Gebiet-Trigger)
Info: triggered
Event: trigger
Row: 2
Col: 6
Soweit ich weis, bedeutet das, das er denn Script nicht versteht, und irgendwas mit den Semikolon.
EDIT:
Es geht wieder. Ich habe immer Probleme beim tippen. Tippfehler war das oder so. Naja, ich muss mal das Thema über Trigger lesen. (habe vergessen wie man sie wieder ausstellt;)).
EDIT²:
Im Artikel steht nichts von dem ausschalten von Triggers! Jetzt kommt immer der gleiche Eintrag;(. Wie schalte ich den Trigger aus?:) Und was bedeutet es, wenn zu einen Script eine Klasse dazu muss?
1
2
3
2
3
on:start { addstate [b]"Klasse"[/b],1, "fracture"; }
edited 2×, last 18.04.06 09:06:42 am
Trigger schaltet man mit "stoptrigger ID" aus, und mit "stoptriggers" schaltet man alle ab.
Zu dem Konsoleoutput: du hast "diary" falsch geschrieben, und du hast das semikolon vergessen. S2S ist in dieser hinsicht fast so quengelig wie pascal, was mir persönlich ganz gut gefällt.
Außerdem solltest du die Befehlsreferenz mehr nutzen. Da sind ja alle Befehle in Gruppen eingeteilt. Einfach auf die passende Gruppe klicken und es sollte nicht lange dauern, bis du gefunden hast, was du suchst (es sei denn, es existiert noch nicht... )
Ich kann nämlich leider nicht jeden der über 200 Befehle in Tutorials erklären... bzw. ich könnte schon, aber das wäre verdammt viel Arbeit.