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 2186 187 188339 340 Nächste Zum Anfang

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
zu davidsungs problem nochmal:
(wir haben darüber im irc gesprochen)

folgender code "highlighted" das objekt auf welches der spieler zeigt. ich habe es beim definitionsscript des spielers (unit 1) eingefügt. dürfte aber auch funktionieren wenn man es woanders einfügt.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
on:start {
		timer "self",200,0,"colorstuff";
	}

	on:colorstuff {
		scantarget 50;
		$ntc=targetclass();
		$ntid=targetid();
		if ($ntc != $otc){
			if ($ntid != $otid){
				if ($ntc>0){blend 3,$ntc,$ntid;}
				if ($otc>0){blend 1,$otc,$otid;}
				$otc=$ntc;
				$otid=$ntid;
			}
		}	
	}

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
das script ist aber fehlerfrei und läuft bei mir problemlos. ich habe es extra gerade nochmal direkt von hier im forum in die definition von dem spieler kopiert. keine fehlermeldung. läuft prima.

also irgendwas muss da schief gelaufen sein bei dir?!

alt Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Zitieren
@Aniza
das werde ich mal ausprobieren, sieht mir beim ersten Durchlesen fürchterlich kompliziert aus...

ich hatte geschrieben

1
2
on:trigger {
player_speed 10; }
da ist er ganz schön vorwärts geflitzt

also dachte ich, ich probiers mal mit "-10" - aber meine Frauenlogik funktioniert wohl anders als S2
jetzt flitzte er genauso schnell - nur rückwärts - ich musste ja schon lachen.

Mit 0.2 gehts jetzt aber, auch ohne Variablen, aber leider brauchts tatsächlich in jedem Fall noch einen Trigger, damit er wieder auf Normalgeschwindigkeit kommt.

Aber das richtige Problem kommt erst noch - (schließlich bekomme ich meine Ideen auch von der Tour de France):
Einen Berg, den man von einer Seite nur langsam hochfahren kann und auf der anderen Seite schnell, hat auf dem Rückweg leider die umgekehrten Effekte zur Folge ...
Ich schätze, da werden dann die Variablen der einzig umsetzbare Weg sein....

Danke für die Info Aniza - ich gucke jetzt doch lieber erst noch mal die Tour - vielleicht baue ich ja bei der Map ein Doping-Mittel ein: 1 Heiltrank = player_speed 50

Lieber Gruß Gela

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Achtung, die Normalgeschiwndigkeit ist NICHT 2.5 wie Aniza gesagt hat sondern 1.6.
Das wollte ich nur mal so anmerken.


@Gela: Das S2 bei -10 nicht abstürzt...
Auf jedenfall kannst du dir das wie Km/h vorstellen. Dier Höchsgeschwindigkeit für den Spieler ist 1.4.
Wenn du jetzt also 0 nehmen würdest wäre die Höchsgeschwindigkeit eben 0. Also kannst du drücken bis du schwarz wirst. Du bewegst dich immer mit 0 Km/h vor.
in Kombination mit
1× editiert, zuletzt 12.07.08 21:35:46

alt Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Zitieren
Nova hat geschrieben
Achtung, die Normalgeschiwndigkeit ist NICHT 2.5 wie Aniza gesagt hat sondern 1.4.
Das wollte ich nur mal so anmerken.


@Gela: Das S2 bei -10 nicht abstürzt...
Auf jedenfall kannst du dir das wie Km/h vorstellen. Dier Höchsgeschwindigkeit für den Spieler ist 1.4.
Wenn du jetzt also 0 nehmen würdest wäre die Höchsgeschwindigkeit eben 0. Also kannst du drücken bis du schwarz wirst. Du bewegst dich immer mit 0 Km/h vor.
in Kombination mit


@Nova - ich habe es ja mit "0" ausprobiert, stimmt, da bewegt er sich nicht.

Danke für den Tip, das Normalgeschwindigkeit 1.4 ist,

ansonsten helfen mir im Augenblick nur richtig gute Tipps weiter - das Wunder, das S2 nicht abgestürzt ist, höre ich jetzt halt von dir zum ersten Mal

Nein - es ist bei -10 eben nicht abgestürzt, sondern der Player ist einfach mit dieser Geschwindigkeit rückwärts gelaufen!

Sonst hätte ich es ja auch nicht hier geschrieben - nur mal so angemerkt.

Nochmal danke für eure Infos

Gela

alt Re: Scripting - Fragen/Probleme

Aniza
User Off Offline

Zitieren
Nova hat geschrieben
Achtung, die Normalgeschiwndigkeit ist NICHT 2.5 wie Aniza gesagt hat sondern 1.4.


Sorry, die Normalgeschwindigkeit 2.5 gilt für die Extention Mod. (Beschäftige mich hauptsächlich damit.)

1.4 stimmt aber auch nicht, jedenfalls nicht für die aktuelle Stranded 2-Version, die beträgt 1.6.

Gruß Aniza

alt Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Zitieren
Aniza hat geschrieben
Nova hat geschrieben
Achtung, die Normalgeschiwndigkeit ist NICHT 2.5 wie Aniza gesagt hat sondern 1.4.


Sorry, die Normalgeschwindigkeit 2.5 gilt für die Extention Mod. (Beschäftige mich hauptsächlich damit.)

1.4 stimmt aber auch nicht, jedenfalls nicht für die aktuelle Stranded 2-Version, die beträgt 1.6.

Gruß Aniza


Ok, ich kämpfe mich halt mal durch alle Geschwindigkeiten durch, irgendwas wird klappen...

LG Gela

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
Das Problem lag jetzt auf meiner Seite, ist behoben.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
on:start {
	timer "self",100,0,"colorhighlight";
}

on:colorhighlight {
	scantarget 55;
	$ntc=targetclass();
	$ntid=targetid();
	if ($ntc != $otc){
		if ($ntid != $otid){
			if ($ntc>0){color 0,255,0, $ntc, $ntid;}
			if ($otc>0){[b]color 255,255,255, $otc,$otid;[/b]}
			$otc=$ntc;
			$otid=$ntid;
		}
	}
}
Edit: Mir ist gerade aufgefallen, dass der Fehler auch vom Originalscript von DC verursacht wird: Wird eine zerstörte Reuse benutzt, das Objekt verschwindet folglich, erzeugt es eine unendlich lange Fehlermeldung.

Edit2: Und gibt's ein Befehl, mit dem ich dem Objekt einen leichten Weißstich geben kann? Mit s2 cmd color können nur Farben entfernt werden, daher krieg ich nur Schwarz, Rot, Grün und Blau hin.
3× editiert, zuletzt 13.07.08 08:39:46

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
Nein, der Textur werden nur alle Farben zur Verfügung gestellt.

@DC: Leider hat dein (netterweise) zur Verfügung gestellter Script einen großen Hacken: Wenn ein Objekt, dass man anschaut jetzt verschwindet (sei es die kaputte Reuse oder Units, die mit s2 cmd free verschwinden) wird eine unendliche Fehlermeldung ausgegeben.

Edit: Gibt's auch ein Unit Verhalten, in dem er wie "predator" herumläuft, ABER mit Projektile um sich wirft, bei Spielerkontakt? Sowas find ich net, daher frag ich mal nach, ob ich nichts übersehen hab, bevor ich es als Script umsetzen muss.
1× editiert, zuletzt 13.07.08 10:13:25

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
nein so ein behaviour gibt es nicht und auch sowas zum "weisser" machen gibt es leider nicht (was aber an der engine liegt, nicht an Stranded II).

Das Problem in meinem Script dürfte sich ohne all zu großen Aufwand beheben lassen. Einfach noch ein s2 cmd exists vorschalten, damit Stranded II prüft, ob das objekt existiert und nur dann versucht die farbe zu ändern. wer es unsauber mag kann aber auch einfach die fehlermeldung unterbinden, indem er vor die beiden color-befehle (oder blend oder was auch immer man nutzt) ein @ setzt. also @color blablabla...

folgendes
1
2
if ($ntc>0){color 0,255,0, $ntc, $ntid;}
if ($otc>0){color 255,255,255, $otc,$otid;}
ersetzen durch
1
2
3
4
5
6
if ($ntc>0){
	if (exists($ntc,$ntid)==1){color 0,255,0, $ntc, $ntid;}
}
if ($otc>0){
	if (exists($otc,$otid)==1){color 255,255,255, $otc,$otid;}
}
ist aber die schönere lösung, falls es so funktioniert.
man könnte hier dann übrigens die >0 abfragen auch weglassen. allerdings ist das script besser und minimal schneller, wenn man die abfrage drin lässt (da beim zeigen auf nichts, himmel, meer oder boden nicht unnötigerweise der exists befehl bemüht werden muss)

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
Jetzt kommen wir zum nächsten Problem.
1
2
3
4
5
6
7
8
9
10
11
on:start {
	timer "self", 200, 0, "projectile";
}
on:projectile {
	if (count_inrange "unit", 1, 200, "self"()>=1) {
		$x=getx "self";
		$y=gety "self";
		$z=getz "self";
		if (exists "unit",1()==1) { projectile 76,$x,$y,$z,4 50, 0, 10, 20, 0; }
	}
}
Da mir das Verhalten fehlt (läuft herum und nimmt den Spieler unter Beschuss) hab ich mir das oben zurecht gebastelt. Ich seh wieder kein Fehler, zumindest reagiert die Unit nicht auf die Anwesenheit des Spielers.

alt Re: Scripting - Fragen/Probleme

Gast

Zitieren
Hey kann mir jemand helfen ich will so was machen das wen ich z.B. nen Unterstand baue das leute kommen aber nur wen der unterstand da is wie geht des weiß des vllt jemand?

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
Zbasler hat geschrieben
Hey kann mir jemand helfen ich will so was machen das wen ich z.B. nen Unterstand baue das leute kommen aber nur wen der unterstand da is wie geht des weiß des vllt jemand?

Benutz das Event "build_finish" und bastel dir aus s2 cmd if, s2 cmd ai_signal und Variblen ein Script zusammen.

Achja, ich hoffe niemand überliest meine Frage eine Seite vorher.

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
davidsung: falsche klammersetzung. ich weiß nicht wie du drauf kommst, weil ich z.B. das exists selber eben erst in einem if benutzt habe. und du machst es jetzt einfach anders.

1
if (count_inrange "unit", 1, 200, "self"()>=1) {

muss so sein:
1
if (count_inrange("unit", 1, 200, "self")>=1) {

das gleiche musst du auch beim exists korrigieren.

ein leeres klammerpaar muss man nur anhängen, wenn man eine rückgabe will, der befehl aber keine parameter hat. wenn der befehl parameter hat kommen die klammern natürlich um die parameter.

ich bin mir außerdem gerade nicht sicher ob self hier geht. wenn nicht, solltest du vorher currentclass und id in 2 variablen speichern und diese für klasse2 und id2 statt dem self angeben.

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
Läuft jetzt ganz gut. Muss nurnoch herausfinden, warum der Spieler mit dem Schwert wirft, und nicht die feindliche Unit. Sollte aber kein Problem sein.

alt UNbenutzbar

NIGHT007
User Off Offline

Zitieren
Kann mir jemand einen Script geben mit dem ich z.B. ein kleines Lager unbenutzbar mache? Ich habe schon versucht nen Dialog zu öffnen, aber das geht immer auf den Lagerbestand! Mir wäre es lieb wenn ich dann auch nen Dialog füren könnte
(das LAger gehört zu einem Büro und da soll stehen
page=Schrank
titel=Schrank
text=start
Der Schrank ist voll mit Papierkram
text=end
button=action:end, ...)

Danke im Vorraus!

alt Re: Scripting - Fragen/Probleme

NP_Beta
COMMUNITY BANNED Off Offline

Zitieren
machs halt ohne einen dialog. du brauchst nur noch nen textcontainer dem wir jetzt z.b. die id 3 geben. dann schreibst du (in den textcontainer musst du in das scriptfeld den text eingeben):

1
2
3
4
on:use
{
msgbox "Kleines Lager" [,3];
}
Zum Anfang Vorherige 1 2186 187 188339 340 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtStranded II-ÜbersichtForenübersicht