Forum

> > Stranded II > Allgemein > Nützliche Scripts
Forums overviewStranded II overviewAllgemein overviewLog in to reply

German Nützliche Scripts

49 replies
Page
To the start Previous 1 2 3 Next To the start

old ok kk

Vojtisek
User Off Offline

Quote
ok danke ich lies es durch

old Re: Nützliche Scripts

Hecky3
User Off Offline

Quote
Für die dritte Frage müsste s2 cmd setskill nützlich sein...
Und ich denke das ist der falsche Thread. Schreib doch in den Scripting Fragen/probleme thread

old ok danke

Vojtisek
User Off Offline

Quote
kk danke

u nnd ich habe mmitlerweile auch verstanden wie das alles geht
danke an alle

und coole scripts
edited 2×, last 19.05.10 08:56:52 pm

old Warscript

Feuer der veraenderung
User Off Offline

Quote
Ich habe mich vor langer Zeit daran gemacht einen Script zu schreiben durch den sich Einheiten bekämpfen.
Ich habe ihn nie wirklich beendet und keine Lust ihn zu testen. Er könnte nun mit sehr vielen schönheitsfehlern funktionieren. Dinge welche Eingestellt werden müssen sind groß geschrieben:
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
53
54
55
56
57
58
59
// globaler unendlicher timer benötigt (event "worldtimer")


on:start {
event "create", "self";
}
on:create {
local $mod,$attack,$x,$y,$z;
$mod=0; //0=Standart
$attack=0; //0=kein Gegner,1=verfolgt Spieler,2=greift Spieler an, 3=verfolgt unit, 4=greift unit an
$x=getx ("self");
$z=getz ("self");
$y=gety ("self");
local $spieler, $gegner, $distance, $feind;
$spieler=0;
$gegner=0;
}
on:worldtimer {
if ($mod==0) {
$spieler=count_inrange "unit",1,500,"self"; //sieht ob der Spieler in der Nähe ist
$gegner=count_inrange "unit",FEINDID,500,"self"; //sieht ob eine Einheit der Art XXX in der Nähe ist
}
if (($mod==0)&&($spieler=>0)) {
$mod=1;
$attack=1;
ai_mode $id,"goto","unit",1;
$distance=distance "self","unit",1;
}
if (($mod==1)&&($spieler=>0)) {
$distance=distance "unit",$id,"unit",1;
}
if (($mod==1)&&($distance=<100)) {
projectile EINSTELLEN MODUS MUSS 4 SEIN // Hierdurch wird angegriffen
}
if (($mod==0)&&($gegner=>0)) {
$mod=2;
$attack=1;
$UNITNAMEID=$id;
timer "self",1,1,"abfrage";
}
if (($mod==1)&&($spieler=>0)) {
$distance=distance "unit",$id,"unit",1;
}
if ($mod==3) {
$mod=4;
ai_mode $id,"goto","unit",$feind;
$distance=distance "self","unit",$feind;
}
if (($mod==4)&&($distance=>100))) {
$distance=distance "self","unit",$feind;
}
if (($mod==4)&&($distance=<100)) {
projectile EINSTELLEN MODUS MUSS 1 SEIN // Hierdurch wird angegriffen
}
on:abfrage {
$feind=$UNITNAMEIDDESFEINDES;
$mod=3;

}

Script funktioniert so:
1. Script sucht nach Einheiten, welche er bekämpfen soll.
2. Er stellt die ID der Einheit in eine globale Variable (Der Scriptbefehl count_inrange erkennt den Typ, aber nicht die ID).
3. Er ruft die Gegnerische ID ab.
4. Er misst die Distanz zwischen den beiden Einheiten.
5. Er löst ein Projectil aus, welches auf den Gegner fliegt.


Den Script muss man wie gesagt stark bearbeiten, wenn euch Bugs auffallen:
Mir eine PN mit:
1. Script (vieleicht fehler bei der Anpassung?)
2. Fehlerbeschreibung

Hoffe der Script kann jemanden helfen. Achja er ist natürlich für Modifikationen gemacht für Maps ist er eher bedingt geeignet (sollte aber auch gehen).

Bekannte Bugs:
-Nur für Fernkämpfer/ Nahkämpfer nur stark bedingt.
-Die Einheit erkennt nicht wann der Gegner Tod ist.
-Falsche Einheit kann als Gegner erkannt werden.
-Einheit könnte zu schnell angreifen (Angriffsgeschwindigkeit=Kontrolltimer)
-Einheit könnte zu langsam reagieren
edited 1×, last 17.05.11 05:13:14 pm

old Novas geschw script

Tobias Strandedfreak
User Off Offline

Quote
nochmal zurück zu novas geschwindigkeitsscript wieso nicht so hier:

on:start {
player_speed X;
}

ist doch einfacher
für X eine belibige zahl setzen

old Re: Nützliche Scripts

T-REX0113
User Off Offline

Quote
Omg, dieser Thread ist fast ein jahr alt...

Zu deiner Frage:
Wenn du dir Novas Script mal genauer angesehen hättest, würdest du feststellen, das dieses Script dafür sorgt, je mehr du trägst, desto langsamer läufst du.
Und das kann dein Script nicht.
Damit änderst du nur die geschwindigkeit. Außerdem steckt in Novas Script genau der Befehl auch drin, aber eben etwas modifiziert, damit man eben langsamer wird je mehr man trägt.

old Re: Nützliche Scripts

Nova
User Off Offline

Quote
Ich habe (durch eine Idee von user -tony316-) ein Script geschrieben, mit dem man alle Items eines Objektes speichern und später wieder laden kann. Dabei können die Items von jedem Objekt und auch jeder Einheit gespeichert werden, und dann bei jeder beliebigen Einheit oder Objekt wieder geladen werden. Auch kann man einstellen, ob die Items beim Speichern gelöscht werden sollen und ob die Items nur einmal geladen werden können.
Am Anfang des Codes findet man ein paar Variablen, mit denen festgelegt wird, welche Einstellungen ihr benutzen wollt. In zwei bestimmten Variablen (siehe Code) wird dabei gespeichert, die Items welches Objektes denn gespeichert werden sollen oder in welches Objekt sie geladen werden sollen.

Folgendes Script gehört dabei in das Globale Script der Map. Dabei können alle Zeilen mit // am Anfang gelöscht werden. Dies sind nur Kommentare zum Quellcode. Klickt dafür einfach auf "Mehr".
More >


Möchtest du das Speichern und Laden von Items mal testen? Dazu erstellst du mit dem Editor eine neue Map, gehst dort in das Globale Script und kopierst dann den Quelltext von oben hinein. Danach setzt du irgendein Objekt auf die Map und fügst den unteren Quellcode dort hinein. Am besten verteilst du noch ein paar Items in der Map, damit du auch Items hast, mit denen du das Script testen kannst. Danach drückst du F12 (Map testen) und drückst E, während du auf das erstellte Objekt mit dem Script schaust. (Benutzen)
Jetzt dürfte alle deine Items weg und gespeichert sein. Wenn du jetzt mit der linken Maustaste auf das Objekt klickst (Schlagen), dürftest du alle deine Items wiederhaben!

1
2
3
4
5
6
7
8
9
10
on:use
{
	event "NVitemsSpeichern", "global";
	msg "Alle Items des Spielers gespeichert!", 0, 5000;
}
on:hit
{
	event "NVitemsLaden", "global";
	msg "Items geladen und dem Spieler gegeben!", 0, 5000;
}

Zwei Dinge, die man bei dem Testcode beachten sollte: Wenn ihr das Objekt zwei Mal direkt hintereinander benutzt, sind alle eure Items weg! Erst werden eure Items gespeichert, und dann noch mal. Da ihr aber in dem Augenblick keine Items mehr habt, wird nichts gespeichert, und dieses Nichts überschreibt dann den alten Speicherstand.


Solltet ihr Fehler finden oder einfach eure Meinung zu dem Quelltext sagen wollen, dann nur raus damit!
edited 1×, last 17.06.12 06:26:03 pm

old Re: Nützliche Scripts

Mc Leaf
Super User Off Offline

Quote
Man sieht eigentlich schon an der Form, dass es sich um saubere Arbeit handelt. Da braucht man eigentlich kaum weiter zu prüfen, das wird schon alles richtig so sein.

Die Idee an sich lasse ich jetzt aber mal unkommentiert.

old Re: Nützliche Scripts

Nova
User Off Offline

Quote
Danke user Mc Leaf.

Die Idee zu dem Script kam, wie gesagt, von user -tony316- aus einem anderen Thread. Ich selber finde sie aber auch gut, da man sie für verschiedene Zwecke einsetzen kann, allen voran beispielsweise als "Abnahme der Items", wenn man von Eingeborenen gefangen genommen wird.
To the start Previous 1 2 3 Next To the start
Log in to replyAllgemein overviewStranded II overviewForums overview