Forum

> > Stranded II > Scripts > Scripting - Fragen/Probleme
Forums overviewStranded II overview Scripts overviewLog in to reply

German Scripting - Fragen/Probleme

6,780 replies
Page
To the start Previous 1 229 30 31339 340 Next To the start

old Re: Scripting - Fragen/Probleme

jeepohahyo
User Off Offline

Quote
Okay, werd ich testen. Vielen Dank für die Antwort!

EDIT:
Neue Frage:
Von welchem Verzeichnis aus muss man denn Dateinamen angeben?
Wenn ich jetzt eine Sounddatei im Ordner

[s2dir]\mods\s2ext\maps\datei.mp3

habe, ab wann muss ich dann den Pfad aufschreiben?

Wenn ich dem Skript sage:

on:start {
play "datei.mp3";
}

dann wird die Datei nicht abgespielt! Habs auchmal mit wav probiert, an den Formaten liegts also nicht.
edited 1×, last 13.10.06 07:00:43 pm

old Re: Scripting - Fragen/Probleme

HW
User Off Offline

Quote
Pfadangaben müssen relativ zum Modordner angegeben werden, bei deinem Beispiel muss es also maps/date.mp3 heißen. (s2ext gilt als der Modordner)

old Re: Scripting - Fragen/Probleme

jeepohahyo
User Off Offline

Quote
Hmmm....
Funzt leider net

Habs probiert mit und ohne Backslash

play "maps\datei.mp3";

play "maps/datei.mp3";

Geht beides nicht. Die Konsole gibt was aus (kein Fehler), kann ich gerne mal posten

Also: Die Konsole schreibt (nicht wundern, ich hab das Skript jetzt richtig eingebaut)

1
2
>PARSE use @ 1,80
play medic.mp3 vol:1.0 pan:0.0 pitch:0
edited 1×, last 13.10.06 07:28:02 pm

old Re: Scripting - Fragen/Probleme

HW
User Off Offline

Quote
Offensichtlich scheint das Script zu funktionieren, das lässt sich auch aus dem Konsoleneintrag herauslesen.
Möglicherweise ist die Soundatei auch verhältnismäßig leise, so dass sie überhört wird. Eventuell diverse Lautstärken aufdrehen...

old Re: Scripting - Fragen/Probleme

jeepohahyo
User Off Offline

Quote
Nein, da ist echt gar nichts!
Hab Lautsprächer voll auf (mp3-Datei ist mit Winamp wiedergegeben normal laut)

Soll ich die Datei mal schicken?

old Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Quote
Bei s2 cmd play ist der Pfad direkt relativ zum "sfx"-Ordner, was ich natürlich mal wieder nirgendwo hingeschrieben habe. Ich bekenne mich als schuldig.

old Re: Scripting - Fragen/Probleme

stealth
User Off Offline

Quote
So ich mach mal wieder ne map

Code:

on:impact {
     if (impact_kill()) {
          $fliegentot++;
          msg "$fliegentot";
     }
     if ($fliegentot==5) {
          revive 100;
          ai_mode 100, "return";
          scale 4, 4, 2, "unit", 100;
          alpha 0.5, "unit", 100;
          climate "thunder";
          msg "Du hast meine Fliegen getoetet!!!!!!!";
     }
}

Fehler:
> '0' is not a valid ai-mode
> script: item 7 (kugel), des da oben halt
> event: impact
> row: 8
> col: 12

... Warum denn?

old Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Quote
Ein Fehler in s2 cmd ai_mode - habe ihn gerade behoben.
Dein Script ist richtig, nur
1
msg "$fliegentot";
ist etwas unsinnig (auch falls es funktionieren sollte, ich weiß es nicht) die Anführungszeichen kann und sollte man sich in dem Fall sparen und einfach
1
msg $fliegentot;
schreiben

old Re: Scripting - Fragen/Probleme

stealth
User Off Offline

Quote
Alles klar. Ich habs anders gemacht.

Die "-zeichen wegmachen ... na gut aber eig soll man die doch um die Nachricht tun. Warum denn so ne Ausnahme?

Aber ich hätt noch ne Frage:

Ich hab in einem script gesagt dass ein Kiffer-Opa erstellt werden soll (mit s2 cmd create) nur wie kann ich DEM jetzt einen script geben? Mit s2 cmd addscript gehts doch nicht weil er ja keine ID hat oder?

old Re: Scripting - Fragen/Probleme

HW
User Off Offline

Quote
Doch, der Kiffer-Opa hat eine ID. Jede Instanz (gemeint sind Units, Objects etc) hat eine ID.
Die ID des geschaffenen Kiffer-Opas ist gerade der Rückgabewert des s2 cmd create Befehls. Die ID ließe sich also z.B. über $id=create("unit",kiff0r); in der Variable $id speichern und mit addscript verarbeiten.

old Re: Scripting - Fragen/Probleme

stealth
User Off Offline

Quote
Geil danke hab ich noch gar nicht gewusst

EDIT

Kann man für eine map auch kombinationen machen?
(Also nicht in den definitionen vom mod sondern nur für eine map)
edited 1×, last 16.10.06 10:40:00 pm

old Re: Scripting - Fragen/Probleme

Don Philippe
User Off Offline

Quote
Kann mir bitte einer sagen, wie man per Kombination mindestens 3 verschiedene Dinge aus den selben Gegenständen herstellen kann? Irgendwas habe ich hier nähmlich falsch gemacht:

### Axe / Spade / Pickaxe ( Branch + Iron + Hammer )
combi=start
req=24
req=85
req=30,1,stay
gen=87
script=start
     speech "positive";
     // Create Spade when Axe exists
     if (playergotitem(87)>0){
          alteritem 1,87,1,84;
          event "spadecombi",0,0;
     }else{
          event "axecombi",0,0;
     }
     if (playergotitem(87)>0){
          if (playergotitem(84)>0){
               alteritem 1,87,1,88;
               event "pickaxecombi",0,0;}}
script=end
combi=end

old Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Quote
Denk mal mit und geh durch was das Script bewirkt:

• Es wird geguckt ob der Spieler bereits eine Axt hat
• √ Wenn er schon eine hat, wird diese durch einen Spaten ersetzt
• × Wenn er keine hat passiert nichts (außer dem Event)

Eine neue Axt bekommt er sowieso immer dazu (wegen dem gen bei der Kombination) - mit skipevent könnte man das unterbinden, muss man in diesem Fall aber nicht. Wenn man die bestehende Axt durch etwas anderes ersetzt und eine neue dazu bekommt, ist es das Gleiche, als wenn man die Axt Axt sein lassen würde und was neues dazu bekommen würde. Es ist halt nur weniger Aufwand es so zu scripten wie es hier ist

Jetzt der Fehler:
• Es wird NOCHMAL geguckt ob der Spieler eine Axt hat. Das kann aber garnicht der Fall sein, da diese bereits in der vorherigen Bedingung durch einen Spaten ersetzt wurde (es sei denn der Spieler hat mehrere!). Diese Bedingung wird im normalen Spielverlauf also so gut wie nie wahr sein.

So wäre es richtig (ungetestet!):
1
2
3
4
5
6
7
8
9
10
11
if (playergotitem(87)>0){
	if (playergotitem(84)>0){
		alteritem 1,87,1,88;
		event "pickaxecombi",0,0;
	}else{
		alteritem 1,87,1,84;
		event "spadecombi",0,0;
	}
}else{
	event "axecombi",0,0;
}

Was passiert (Events nicht berücksichtigt):
Er prüft, ob er schon eine Axt hat. Wenn er bereits eine hat, wird geguckt, ob er auch schon nen Spaten hat. Wenn nicht, wird die Axt zum Spaten. Wenn er aber schon einen Spaten hat, wird die Axt zur Spitzhacke.
Wie zuvor schon gesagt bekommt er in allen Fällen eine neue Axt dazu.

Ach übrigens: Die Spitzhacke wird sowieso bereits über eine andere Kombination hergestellt: Eisenstange + Ast + Hammer. Wobei man die Eisenstange aus Eisen + Hammer bekommt (gleiche Kombination gilt für die zukünftige Sense).

old Re: Scripting - Fragen/Probleme

Don Philippe
User Off Offline

Quote
Ok, dankeschön! Wirklich sehr ausführlich erklärt Zum letzteren: Ich weiß das die Spitzhacke eigentlich anders hergestellt wird, aber ich finde es irgendwie unlogisch das manche Werkzeuge aus einer Eisenstange, und andere aus einem Erzstück hergestellt werden.

old Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Quote
Naja, Schaufel und Axt haben eher ein plattes Eisenteil während Spitzhacke und Sense eher ein langgezogenes Eisenteil haben. Das ist so mein, zugegeben recht dürftiger, Gedanke dahinter. Ich wollte es in erster Linie vermeiden, dass durch eine Kombination so viele verschiedene Sachen hergestellt werden. Wahrscheinlich mit der Idee im Hinterkopf, das ganze etwas zu erschweren.
Spitzhacke und Sense sind ohnehin nicht so wichtig. So ist es auch nicht besonders schlimm wenn man nicht herausfindet wie man die herstellt.

old Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Quote
Ne, nur mit ner Spitzhacke kann man Gold und Kristall aus den entsprechenden Felsen hauen.
Außerdem erhöht sich die Wahrscheinlichkeit, dass man Eisen aus einem Felsen mit Eisen drin raushaut wenn man sie benutzt.
To the start Previous 1 229 30 31339 340 Next To the start
Log in to reply Scripts overviewStranded II overviewForums overview