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 2260 261 262339 340 Next To the start

old Re: Scripting - Fragen/Probleme

kevin00756
User Off Offline

Quote
aletes has written
du hast kein modellpfad angegeben, müste etwa so ausehen:
1
model=gfx\modell.file

und das model muss in b3d oder in 3ds sein

old Re: Scripting - Fragen/Probleme

Aniza
User Off Offline

Quote
@nmG:

Danke! Lag tatsächlich an der Größe des Partikels.

Jetzt funzt alles.

Die Explosion hatte ich schon eingebaut, dazu auch noch ein klein-scaliertes Wrack an der Unfallstelle (Einbaum-Wrack gibt es ja nicht).

Und "kill" ist natürlich noch besser als "free", danke!
Dazu noch ein paar Soundeffekte, und der "Untergang" wirkt jetzt halbwegs echt.

LG Aniza

old Re: Scripting - Fragen/Probleme

Kayren
User Off Offline

Quote
Das Problem ist nicht das Model, sondern das Script...

K, ich habe den Fehler gefunden. Alles okay
edited 1×, last 27.03.09 11:33:07 pm

old lockbuilding

Aniza
User Off Offline

Quote
Hallo!
Wie kann man die Freischaltung des Segelfloßes durch den Einbaumbau unterbinden? (Der Spieler soll erst mal ein bisschen mit dem Einbaum herumfahren, bevor er ein Floß baut.)

Mein Versuch (im globalen Script)...
1
2
3
4
5
6
on:dugoutbuild {
timer "self",500,1,"nofloss";
}
on:nofloss {
lockbuilding 57;
}
...zeigt keine Wirkung. Obwohl es komischerweise funzt, wenn ich das Gleiche mit "Zelt und Lagerfeuer" mache, also so:
1
2
3
4
5
6
on:tentbuild {
timer "self",500,1,"nofire";
}
on:nofire {
lockbuilding 3;
}
Ergebnis: Keine Lagerfeuer möglich! Ist aber nicht der Sinn der Sache, war nur ein Test.

Liegt es daran, dass das eine ein Objekt und das andere eine Einheit ist? Und wie kriegt man das hin?

Sorry, wenn das hier schon tausendmal gefragt wurde, aber in diesem Endlos-Thread findet man ja leider nichts mehr wieder.

LG Aniza

old Re: Scripting - Fragen/Probleme

Aniza
User Off Offline

Quote
Hi davidsung, vielen Dank, aber def_extend habe ich vorher schon probiert, und zwar so:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
global:

on:start {
def_extend "unit", 31, "2";
}

in info 2 (Textcontainer): 

on:build_finish {
timer "self",1000,1,"nofloss";
}

on:nofloss {
lockbuilding 57;
}

Kein Effekt! Obwohl auch das mit dem Beispiel "Zelt/Lagerfeuer" bestens funktioniert! Wie auch die vereinfachte Version, siehe oben. - tentbuild und dugoutbuild sind doch gültige events, die durch "build_finish" erzeugt werden? Steht jedenfalls so in den Definitionen, und sonst würde es ja auch mit "Zelt/Lagerfeuer" nicht funzen... Oder?

Mit def_override hatte ich es als Erstes versucht... ging auch nicht. Aber wahrscheinlich hatte ich da was falsch gemacht, das könnte ich noch mal testen...

Mich wundert vor allem, dass beides mit dem Feuer geht, mit dem Floß aber nicht.

LG Aniza

old Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Quote
Hm, ich nehme mal stark an, dass die 31 die TypID ist, nachprüfen kann ich es zurzeit nicht. Gleiches bei der BuildID 57: kann ich zurzeit nicht nachprüfen.

Einzig fällt mir auf, dass Du die InfoID in Anführungszeichen setzt, was natürlich nicht funktionieren kann. Zahlen niemals in Anführungszeichen!

1
def_extend "unit", 31, 2;

Wie gesagt empfehle ich bei Eventaufrufen s2 cmd event, es sei denn, man bekommt Probleme mit dem Scriptablauf, aber das ist eine andere Geschichte.

Das siehe so aus, anstatt von timer:
1
event "nofloss";

Auch kenne ich mich nicht mit deren Definitionen aus, doch "tentbuild" und "dugoutbuild" sind mir noch nie untergekommen. Falls diese events tatsächlich existieren, kann es natürlich sein, dass die sich mit build_finish, in Verbindung mit s2 cmd def_extend, beißen.

old Re: Scripting - Fragen/Probleme

Aniza
User Off Offline

Quote
Ja, 31 ist die Typ-ID (Einbaum) - und 57 die Build-ID (Floß). Und die Quelle gehört doch in Anführungszeichen? Steht jedenfalls so in der Referenz:

def_extend "Klasse", Typ, "Quelle"

Und mit dem Beispiel "Zelt/Lagerfeuer" funzt es ja so auch, trotz der Zahl "2" (für "Info Textcontainer") in Gänsefüßchen...

Quote
..."tentbuild" und "dugoutbuild" sind mir noch nie untergekommen. Falls diese events tatsächlich existieren, kann es natürlich sein, dass die sich mit build_finish, in Verbindung mit def_extend, beißen.


Sie existieren! Sonst würde es ja auch mit dem Lagerfeuer (@ on:tentbuild) nicht funzen...

Aber weil es sich eben beißt, braucht man den Timer, da sonst "unlockbuilding 57" und "lockbuilding 57" gleichzeitig stattfinden.

Wieso funktioniert es mit Zelt/Lagerfeuer - und mit Einbaum/Floß nicht?

LG Aniza

old Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Quote
Wenn die Quelle eine Datei ist, dann muss die in Anführungsstriche. Wenn es die ID eines Textcontainers benutzt sind die Striche überflüssig.

old Re: Scripting - Fragen/Probleme

Aniza
User Off Offline

Quote
Okay, danke. Habe die Anführungsstriche probehalber mal weggelassen. Funzt aber trotzdem nicht.

Hat vielleicht noch jemand 'ne Idee?

LG Aniza

PS: Mache meine Map in der Ext. Mod. Werde mal testen, ob es im Original funktionieren würde...

old Re: Scripting - Fragen/Probleme

Cap
User Off Offline

Quote
Weiß jemand, ob es irgentwie möglich wäre, einen Wasserfall in eine Map zu bauen und Felsen wo man nicht hoch kommt?

old Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Quote
@Cap: Uff, das wäre ein hoher Aufwand.
Stranded II unterstützt nativ keine Wasserfälle, man könnte es aber mit neuen Objekten umgehen (wie es z.B. die S2Ext gemacht hat), doch das wäre wie gesagt ein hoher Aufwand und man weiß bis zum Schluss nicht, ob es am Ende noch gut aussieht.

Das Unterdrücken vom Spieler-kann-überall-raufklettern kann man auch nicht mit dem normalen Terrain in Stranded II, höchstens mit Objekten wie z.B. Fels.

old Re: Scripting - Fragen/Probleme

Westbeam
User Off Offline

Quote
hallo
eine frage was ist an diesem script falsch:
1
2
3
4
5
6
7
8
9
10
11
12
13
on:start {
ai_stay "self";
}

on:use {
dialogue "start","2";
if($ein=1){
dialogue "4","2";
}
if($ein=2){
dialogue "5","2";
}
}
$ein=1 ist wenn man mit dem mensch gesprochen hat, dann sollte sich beim erneuten gespräch mit dem mensch page 4 öffnen, es öffnet sich aber page 5
wo liegt das problem

old Re: Scripting - Fragen/Probleme

Tau
User Off Offline

Quote
In if-Abfragen immer zwei Gleichheitszeichen wenn Gleichheit abgefragt werden soll. Außerdem Zahlen ohne "" und noch ein Problem:
Wenn $ein=1 ist, werden gleichzeitig 2 Dialoge abgespielt. Das ist vermutl. nicht gewollt. Also lieber on:start noch ne lokale Variable "ein" hinzufügen und on:use eine andere if-Abfrage.
Sieht dann so aus:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
on:start{
	ai_stay "self";
	$ein=0;
}

on:use{
	if ($ein==0){
		dialogue "start",2; 
	}elseif ($ein==1){
		dialogue "4",2; 
	}elseif ($ein==2){
		dialogue "5",2;
	}
}

Müsste klappen
To the start Previous 1 2260 261 262339 340 Next To the start
Log in to reply Scripts overviewStranded II overviewForums overview