es sind nur einfache scripts, nicht so hammerscripts wie bei richitg guten maps, aber es dürfte für anfänger leicht verständlich sein
also:
Ein script besteht aus folgenden elementen:
1
2
3
2
3
on:event { "eigentliches script"; }
das event kann durch folgende events ersetzt werden:
on:start = beim starten einer map
on:use = beim benutzen eines objekts
on:hit = beim angreifen auf das entsprechende objekt
on:kill = wenn das objekt tot ist
on:dig = beim graben
on:collect = beim aufheben eines items
on:changeday = beim tageswechsel
on:trigger = beim betreten eines triggers
... und noch mehr
erstmal ein sehr wichtiges script(finde ich)
1
2
3
2
3
on:start { ai_stay "self"; }
Hinweis: vergesst das ; nicht bei einem script, es kommt in jeder zeile im script an das ende.(beispiel beim oberen script).
jetzt verändern wir mal farbe und größe eines objekts.
farbe:
1
2
3
2
3
on:start { color 0,0,0; }
größe:
1
2
3
2
3
on:start { scale 2,2,2; }
Jetzt baut mal ein schild auf die map, im scriptfeld gebt ihr ein:
1
2
3
2
3
on:use { msg "da lang"; }
statt dem befehl 'msg' könnt man auch eingeben:
1
2
3
4
2
3
4
on:use { add "da lang"; msgbox "Schild"; }
jetzt machen wir mal ein gespräch mit einem eingeborenen, setzt den eingeborenen auf die map
wir geben wieder ein, damit er nicht wegläuft:
1
2
3
2
3
on:start { ai_stay "self"; }
merkt euch die ID des textcontainers,ich nehm jetzt mal an, die ID des containers ist 1, dann geben wir beim eingeborenen ein:
1
2
3
2
3
on:use { dialogue "start",1; }
beim textcontainer gibt es eine andere scriptsprache(textscript), sie ist leichter als die normale s2s-scripting-sprache, wir geben beim textcontainer ein:
1
2
3
4
5
6
7
2
3
4
5
6
7
page=start title=Eingeborener text=start Hallo, ich bin ein Eingeborener, bist du hier gestrandet? text=end button=1,Ja button=action:close,Lass mich in Ruhe
page=start
die startseite
title=Eingeborener
der titel des gesprächsfenster, welches sich öffnet, wenn man mit dem eingeborenen spricht
text=start
blabla
text=end
der text
button=1,ja
ein button, welcher auf seite 1 verlinkt(die kommt noch dazu)
button=action:close,lass mich in Ruhe
wenn man auf diesen button klickt, schliest sich das gesprächsfenster
nun machen wir die seite 1:
1
2
3
4
5
6
2
3
4
5
6
page=1 text=start Aha, ich kann dir verschiedene Sachen verkaufen, die du brauchst, um hier zu überleben. text=end button=2,Ich möcht was kaufen button=action:close,Lass mich in Ruhe
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
page=2 trade=start buy=9,1 sell=5,1 trade=end trade=start buy=59,1 buy=53,10 sell=5,5 trade=end
der zweite handel wird schon interessanter, du verkaufst 5 beutel gold und bekommst dafür 1 normalen bogen und 10 normale pfeile
nun geht es weiter, machen wir mal eine normale holzwand hinter den eingeborenen, ziemlich unschön oder? du kannst natührlich auch scripts in einen text einbauen, geben wir mal auf seite 1 unter dem ersten button ein:
1
2
3
2
3
... button=3,Mach mal die wand weg ...
1
2
3
2
3
script=start free "object",1; script=end
du kannst "object" natührlich auch durch
"unit"
"item"
"info"
ersetzen, dann wird eben die und die einheit,item oder das info gelöscht
man kann auch den befehl 'free' in einem normalen script verwenden, zum beispiel beim aufheben eines schlüssels verschwindet die wand mit der ID 1:
1
2
3
2
3
on:collect { free "object",1; }
das müsste man dann im scriptfeld des schlüssels eintragen
nun kommen wir mal wieder zu normalen scripts zurück(also keine textscripte).
wir wollen, wenn man ein schaf benutzt, du auf eine andere insel teleportierst wirst, dazu machen wir erst das schaf auf die map, und geben im scriptefeld des schafs ein:
1
2
3
2
3
on:use { loadmap "maps/map.s2"; }
machen wir mal einen richtigen teleporter, wir wollen das wenn man den stein berührt, man zum info mit der ID 1 geschickt wird, dazu machen wir natührlich das info 1 auf die map, und den stein, beim info müssen wir nix eingeben, beim stein geben wir ein:
1
2
3
2
3
on:use { setat "unit",1,"info",1; }
und zum abschluss noch ein sehr wichtiges script, den tagebucheintrag:
1
2
3
4
2
3
4
on:start { add "Hallo, ich bin gestrandet"; diary "Tag 1"; }
nun sind wir die wichtigsten scripts durch, aber es gibt noch mehr, wenn man zumbeispiel während des spiels ^ eingibt, öffnet sich eine console, folgende befehel lassen sich eintragen:
clear = löscht alle texte in der console
exit = beendet stranded II
info = infos über das spiel
memory = speicherinformationen
3d = infos über die 3dscene
ip = prüft ob du online bist
save = speichert den text der konsole in einer datei im mods>stranded II verzeichnis
playerlist = liste der spieler auf der map
items = liste aller items auf der map
es gibt noch ein paar andere befehle für die konsole, die aber für anfänger eigentlich unwichtig seien sollten
hoffe ich konnte einigen mappern helfen, wenn irgendetwas wichtiges fehlt, könnt ihr es als antwoert zum thema schreiben
mfg.aletes
edited 1×, last 08.04.09 06:30:33 pm