Forum

> > Stranded II > Scripts > Scripting - Fragen/Probleme
ForenübersichtStranded II-Übersicht Scripts-ÜbersichtEinloggen, um zu antworten

Deutsch Scripting - Fragen/Probleme

6.780 Antworten
Seite
Zum Anfang Vorherige 1 2320 321 322339 340 Nächste Zum Anfang

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Wenn es geht, immer die bisherigen Versuche mit dazu schreiben. Hast du vielleicht die runden Klammern vergessen?
s2 cmd count_stored war auf jeden Fall die richtige Idee.

1
2
3
4
5
on:use
	{
	$perlen = count_stored ("self", 108);
	msg "Die sprechende Kiste hat $perlen Perle(n)!";
	}
1× editiert, zuletzt 10.07.10 20:20:38

alt Re: Scripting - Fragen/Probleme

DEATHSHEAD
User Off Offline

Zitieren
Danke für die Antwort in Rekordzeit .
Hat funktioniert, ich musste den Script nur leicht modifizieren, übrigens es lag (wie eigentlich immer) an den Klammern.
Falls es jemanden interessiert
1
on:use {$perlen = count_stored ("object",Object_ID, Item_ID); msg "Die sprechende Kiste hat $perlen Perle(n)!";}
Übrigens Nova, in deinem Script fehlen die Semicolons

alt Re: Scripting - Fragen/Probleme

Fallout 1 Master
User Off Offline

Zitieren
Ein Kumpel gab mir mal ein Script das den Spieler alle 3 sek. Kacken lässt.

1
2
3
4
5
6
7
on:start { timer "self",3000,0,"fart"; }

on:fart {
play "fart.wav";
$id=create ("item",72);
setpos "item",$id,getx("self"),getz("self"),getz("self")unit 1;
}

Aber es wird nur der Ton abgespielt.

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Was soll das "getz("self")unit 1"?
Außerdem werden Items, wenn man nicht mit X und Z bereits einen Punkt angibt, direkt beim Spieler erstellt.

@DEATHSHEAD: Das war nur ein Test für dich!
(Hab's berichtigt, danke. ;))

alt Re: Scripting - Fragen/Probleme

quester
User Off Offline

Zitieren
1
2
3
4
5
6
7
8
9
10
on:start { timer "self",3000,0,"fart"; }

on:fart {
play "fart.wav";
$id=create ("item",72);
$x=getx("unit",1);
$y=gety("unit",1);
$z=getz("unit",1);
setpos "item",$id,$x,$y,$z;
}

So müsste es gehn.

alt Re: Scripting - Fragen/Probleme

quester
User Off Offline

Zitieren
Das das Item direkt beim Spieler erstellt wird, kann sogar stimmen. Ich war allerdings zu faul, um es zu testen. Also habe ich das so gemacht. Das müsste auf jeden Fall klappen und ist auch noch flexibler. Vor allem weil die y-Position des Spielers leicht über dem Terrain ist und dadurch der Kot noch zu Boden fallen kann.

alt Re: Scripting - Fragen/Probleme

Fallout 1 Master
User Off Offline

Zitieren
quester hat geschrieben
Das das Item direkt beim Spieler erstellt wird, kann sogar stimmen. Ich war allerdings zu faul, um es zu testen. Also habe ich das so gemacht. Das müsste auf jeden Fall klappen und ist auch noch flexibler. Vor allem weil die y-Position des Spielers leicht über dem Terrain ist und dadurch der Kot noch zu Boden fallen kann.


Funktioniert bestens danke dir vielmals.

alt Re: Scripting - Fragen/Probleme

Jason13579
User Off Offline

Zitieren
Bin bei meinem neuen Projekt auf ein Problem gestoßen:

objects_warehouse.inf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
id=225
name=Lagerhaus
group=building
icon=gfx\warehouse\icons\icon_Lagerhaus.bmp
model=gfx\warehouse\Lagerhaus.3DS
health=1000
scale=1.5
mat=wood
script=start
on:create {
	$yaw_Lagerhaus=getyaw("self");
	$x_Lagerhaus=getx("self");
	$y_Lagerhaus=gety("self");
	$z_Lagerhaus=getz("self");
}
script=end

id=226
name=Holzlager
group=building
icon=gfx\warehouse\icons\icon_Lagerhaus_Holzlager.bmp
model=gfx\warehouse\Lagerhaus_Holzlager01.3DS
health=500
scale=1.5
mat=wood
editor=0
script=start
on:build_finish {
	$id=create("object",226);
	setpos "object",$id,$x_Lagerhaus,$y_Lagerhaus,$z_Lagerhaus;
	setrot "object",$id,"self",$yaw_Lagerhaus,"self";
	free "self";
}
script=end	

id=227
name=Steinlager
group=building
icon=gfx\warehouse\icons\icon_Lagerhaus_Steinlager.bmp
model=gfx\warehouse\Lagerhaus_Steinlager01.3DS
health=500
scale=1.5
mat=wood
editor=0
script=start
on:build_finish {
	$id=create("object",227);
	setpos "object",$id,$x_Lagerhaus,$y_Lagerhaus,$z_Lagerhaus;
	setrot "object",$id,"self",$yaw_Lagerhaus,"self";
	free "self";
}
script=end

buildings.inf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
### Lagerhaus
id=25
group=storage
objectid=225
script=start
	lockbuilding 25;
	unlockbuilding 26;
	unlockbuilding 27;
script=end

### Holzlager (Lagerhaus)
id=26
group=storage
objectid=226
buildspace=at object
atobject=225
script=start
	lockbuilding 27;
script=end

### Steinlager (Lagerhaus)
id=27
group=storage
objectid=227
buildspace=at object
atobject=225
script=start
	lockbuilding 26;
script=end

Wenn ich das normale Stranded (V.1.0.0.1) mit dem Script starte, bekomme ich die Fehlermeldung "Invalid OBJECT ID for building (0)". Wenn ich das Script vom Holz- und vom Steinlager allerdings weg lasse, bekomme ich keine Fehlermeldung.

Würde mich freuen, wenn mir irgendwer helfen könnte.

lg
Jason13579

alt Re: Scripting - Fragen/Probleme

Chopii
User Off Offline

Zitieren
@edit: Falscher Beitrag

Schaus mir aber schnell an...
@edit2: Er sagt, dass er kein Objekt mit der id=0 herstellen kann. Das heißt, dass das $id falsch definiert wurde...

@edit: Bei den beiden Codes sind die ID anders.
Beim ersten ist das Holzlager auf id=225 und beim anderem code id=25. Das ist doch falsch.

alt Re: Scripting - Fragen/Probleme

Jason13579
User Off Offline

Zitieren
Zitat
Falscher Beitrag

Ist das richtige Thema, heißt doch Scripting - Fragen/Probleme, oder?


Warum schreibst du @edit? Ich kenne keinen edit und auf den letzten zwei Seiten hat auch keiner geschrieben.

Zitat
Er sagt, dass er kein Objekt mit der id=0 herstellen kann. Das heißt, dass das $id falsch definiert wurde...

Ne, wurde schon richtig definiert, der konnte nen Tab hinter editor=0; nicht verarbeiten.

Zitat
Bei den beiden Codes sind die ID anders.
Beim ersten ist das Holzlager auf id=225 und beim anderem code id=25. Das ist doch falsch

Ne, die 25 steht in der buildings.inf, da werden neue ids für Objekte, die man bauen kann, vergeben.


Miese Kommentare habe ich mir jetzt mal verkniffen, fiehl mir aber nicht leicht!!!

alt Re: Scripting - Fragen/Probleme

Chopii
User Off Offline

Zitieren
Schildere besser was bei der Fehlermedung kommt...
Wessen Script löschst du weg, wenn keine Fehermeldung kommt?

Dieser @edit bedeutet eine weitere Beifügung/Editierung des Beitrags. Das mit @edit: Falsche Beitrag ist mein falscher Beitrag. Hab was falsches geschrieben.

alt Re: Scripting - Fragen/Probleme

Jason13579
User Off Offline

Zitieren
Jaster hat geschrieben
Schildere besser was bei der Fehlermedung kommt...
Wessen Script löschst du weg, wenn keine Fehermeldung kommt?

Dieser @edit bedeutet eine weitere Beifügung/Editierung des Beitrags.


Bei der Fehlermeldung kommt:
"Invalid OBJECT ID for building (0)".
Sie trat nicht auf, wenn ich das script von Object 226 und 227 entfernte. Das ganze lag aber wahrscheinlich daran, dass ich hinter editor=0; noch nen Tab hatte, der die irgendwie hingekommen ist. Jetzt läufts.

Ich schreib da immer nur edit:. Ein @ schreibt man eigentlich nur, wenn man jemanden anpricht (z.B. @Jaster:). Naja, eigentlich unwichtig.

alt Re: Scripting - Fragen/Probleme

Chopii
User Off Offline

Zitieren
Kein Wunder, dass ich dir nicht helfen konnte. Tabs können bei diesem Forum nicht angezeigt werden.
Naja, hauptsache es funzt.

alt Re: Scripting - Fragen/Probleme

BiGSiD
User Off Offline

Zitieren
HiHo @ all:

Ich hab da so die Idee, dass man in Kombination mit 'terrain X, Z, Modus [, Höhe]' und 'mapsize' einen EBBE-und-FLUT-Effekt erzeugen kann, die Schleifen und die Zeitabfragen sind dabei nicht das Problem. Ist das überhaupt zu machen, oder geht sowas net im Stranded?

Viell. liegts am Wetter, aber bei mir schleifts gerade etwas

hier mein scriptversuch, aber ohne erfolg ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
		$tmp1=mapsize();
		$tmp2=mapsize();
		$x=1;
		$z=1;
		msg $tmp1,3;
		loop ("count",$tmp1){
			loop ("count",$tmp2){
				terrain $x,$z,2,-0.25;
				$x++;
			}
			$z++;
		}
		freevar $tmp1;
		freevar $tmp2;
		freevar $x;
		freevar $z;
	}

dieser code sollte zu testen erstmal nur die (ganze)Karte absenken, das heben ist ja dann net weiter schwierig, wenn dieser teil funzt.

Liegt es viell. an den Kartenrandpunkten, welche viell. schon bei 0 liegen und nicht weiter gesenkt werden können?

Hülfe .
1× editiert, zuletzt 19.07.10 18:54:08

alt Re: Scripting - Fragen/Probleme

quester
User Off Offline

Zitieren
Doch das geht sehr wohl. Du darfst aber keine loops verschachteln. Ich teste mal etwas aus. Melde mich zurück wenns klappt.

Edit: folgendes könnte klappen:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
on:start {
  $map_tmp=mapsize();
  $mapx=0;
  $mapz=0;
  loop("count",$tmp) {
     event "sink";	
     $mapx++;
  }
}

on:sink {
    loop("count",$map_tmp) {
       terrain $mapx, $mapz, 3, -20;
       $mapz++;  	
  }
}

Ich habe das hier nicht ausgetested. Es könnte so aber durchaus klappen.
1× editiert, zuletzt 19.07.10 19:40:39

alt Re: Scripting - Fragen/Probleme

BiGSiD
User Off Offline

Zitieren
schade, hat leider nix geklappt ...

selbst mit einem leicht abgeändertem script habe ich nur einen 'Freeze' bekommen, stranded2 ist stehengeblieben und hat NIX mehr gemacht ....
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
on:use {
		$map_tmp=mapsize();
		$mapx=1;
		$mapz=1;
		loop("count",$map_tmp) {
			event "raise";     
			$mapx++;
		}
	}

	on:raise {
		loop("count",$map_tmp) {
		terrain $mapx, $mapz, 2, 5;
		$mapz++;      
		}
	}

Edit: selbst mit einem Mapsizewert von 1weniger(wg. Start bei 0)
1
$map_tmp=$map_tmp-1;
funzt das leider net = Freeze/Absturz
Bleibt nur noch zu prüfen ob nur alle Höhenwerte 'ungleich' Null zu bewegen sind.

Es wäre ja zu einfach gewesen wenn das gleich geklappt hätte
2× editiert, zuletzt 19.07.10 21:28:27

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Die Map ist zwar beispielsweise 1024 groß, allerdings geht sie dann von -512 bis +512 (oder so).
(Glaube ich jedenfalls)
Zum Anfang Vorherige 1 2320 321 322339 340 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtStranded II-ÜbersichtForenübersicht