Forum

> > Stranded II > Scripts > Unit-Scripts verursachen Ruckler
Forums overviewStranded II overview Scripts overviewLog in to reply

German Unit-Scripts verursachen Ruckler

2 replies
To the start Previous 1 Next To the start

old Unit-Scripts verursachen Ruckler

Spark Fountain
User Off Offline

Quote
Ich baue momentan eine Map mit 13 Charakter-Units (eine davon ist tot) und jede dieser Units hat ein on:use-Event, das einen Dialog auslöst. Über Variablen will ich steuern, wann welcher Dialog angezeigt wird, um die Handlung zu strukturieren.

Nun ist mir aufgefallen, dass bei zu vielen on:use-Events während des Spielens der Karte in regelmäßigen Abständen (ca. 2-3 Sekunden) kurze Ruckler auftreten. Ich habe zwei verschiedene Fälle ausprobiert, bei denen das auftritt:

> Wenn im on:use-Event eine If-Bedingung und ein Else-Block eingetragen sind (bin auch nicht sicher, ob zu viele Kommentare im Skript waren - das ganze Skript war nur ca. 15 Zeilen lang)
> Wenn man die einzelnen Skripte etwas "reduziert", aber dann im Spiel mehrere Units nacheinander benutzt und die Dialoge öffnet, fängt es urplötzlich an regelmäßig zu ruckeln

Zur Info: Am Ende der einzelnen Dialoge werden globale Variablen verändert - keine Ahnung, ob das eine Rolle spielt...

Hat jemand zufällig Erfahrung mit komplexeren Skripten und wüsste, wie man das Ruckler-Problem umgehen könnte?

Vielen Dank schon mal!

old Re: Unit-Scripts verursachen Ruckler

Nova
User Off Offline

Quote
Kopier am besten mal das Script hier rein, dann können wir gucken, ob es am Inhalt derer liegt. Die Stranded-II-Scriptsprache ist zwar nicht sehr effizient, aber ein paar Use-Scripte sollten ohne Probleme möglich sein.

old Re: Unit-Scripts verursachen Ruckler

Spark Fountain
User Off Offline

Quote
Die Units haben jeweils ein Script, das in etwa so aussieht:

1
2
3
4
5
on:use {
  if($characterInterviewStep == 0) {
    dialogue "01","maps/rezept-des-todes/character.txt","interview";
  }
}

Die Dialoge sind in externen .txt-Dateien abgespeichert. Der längste sieht momentan so aus (man beachte die Skript-Page ganz unten):

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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
//~interview
page=01
title=Der Pirat
text=start
Hey, du da! Wer bist du und was hast du hier zu suchen?
text=end
button=02,Ich wünsche dir auch einen wunderschönen Tag.
button=05,Ich heiße Lucas Lupe und bin Privatdetektiv.
button=05,Mein Name tut nichts zur Sache.

page=02
title=Der Pirat
text=start
Sehr witzig, du Komiker! Sehe ich vielleicht aus, als ob ich zu Späßen aufgelegt bin?
text=end
button=03,Naja, du siehst aus, als wäre grad Karneval.
button=04,Ehrlich gesagt, nicht wirklich.

page=03
text=start
Vorsicht! Reiz mich ja nicht noch mehr, du Landratte! Meine Laune war schon ohne deine dummen Kommentare auf dem Tiefpunkt.
text=end
button=05,Schon gut, war nicht so gemeint.

page=04
text=start
Na also. Dann tu nicht so, als ob dieser Tag schön wäre - er ist grässlich, genau wie meine Laune.
text=end
button=05,Schon gut, war nicht so gemeint.

page=05
text=start
Bist wohl ein elender Schnüffler, nicht wahr? Ich hab dich hier noch nie gesehen. Also, was willst du hier?
text=end
button=06,Euer Lebensmittelhändler wurde ermordet.

page=06
text=start
Geschieht ihm recht, diesem Geizhals! Hat nach und nach alle Obstbäume abgeholzt und viel zu teure Waren verkauft.
text=end
button=07,Was hat es mit den Obstbäumen auf sich?
button=11,Hat ein Geizhald es gleich verdient zu sterben?
button=14,Hast du einen Täter im Verdacht?

page=07
text=start
Früher gab es auf der ganzen Insel Bäume, an denen Pflaumen, Kaffeebohnen und Kakaofrüchte wuchsen. Aber der Händler hat sie abholzen lassen vom Förster. Auch die Beeerenbüsche ließ er verbrennen. Jetzt gibt es nur noch wenige Obstbäume, die alle dem Händler gehören. Wovon soll ein armer Kerl wie ich sich noch ernähren, wo die Lebensmittelpreise viel zu teuer sind?
text=end
button=08,Gute Frage... Wovon ernährst du dich denn?

page=08
text=start
Von Fischen. Morgens, mittags, abends gibt es nur rohen Fisch. Meine Angel ist mein einziger Besitz, seit jemand mein Ruderboot zerstört hat.
text=end
button=09,Weißt du denn, wer dein Boot zerstört hat?

page=09
text=start
Der verfluchte Förster war's, mit seiner Axt. Ich kann es bloß nicht beweisen, weil ich nachts geschlafen hab.
text=end
button=10,Kannst du mir mehr über diesen Förster verraten?

page=10
text=start
Er ist ein schießwütiger Mistkerl, der von seinem Hochsitz im Tannenwald auf Vögel ballert. Außerdem haut er die Wälder kurz und klein, um anschließend überteuertes Holz zu verkaufen.
text=end
button=11,Zurück zu dem Mord am Lebensmittelhändler.

page=11
text=start
Willst du mir unterstellen, dass ich ihn umgebracht hätte, oder was?
text=end
button=12,Hast du das denn?
button=13,Beruhige dich, ich will nur mit dir reden.

page=12
text=start
Verflucht seist du! Du bist nur zu mir gekommen, weil ich als armer Pirat mit meinem Aussehen den perfekten Mörder für dich abgebe!
text=end
button=13,Beruhige dich, ich will nur mit dir reden.

page=13
text=start
Wir reden hier grad schon seit Ewigkeiten, falls es dir nicht aufgefallen ist. Ich habe dir nix mehr zu sagen.
text=end
button=14,Hast du einen Täter im Verdacht?

page=14
text=start
Hmmm, vielleicht war es der Weinkelterer. Er hat den Händler gehasst, weil dessen billiger Wein ihm das Geschäft ruiniert hat. Ist in letzter Zeit ziemlich auf seinen Flaschen sitzen geblieben, der Pechvogel.
text=end
button=15,Woher weißt du das mit dem billigen Wein?

page=15
text=start
bla bla...
text=end
button=16,Vielen Dank, Pirat, du hast mir sehr geholfen.

page=16
text=start
Ja ja... Du kannst mir bei Gelegenheit auch mal helfen. Komm einfach vorbei und sprich mich an.
text=end
button=17,Ich muss erstmal mit den anderen Leuten sprechen.

page=17
script=start
	diary "Ein komischer Kauz","maps/rezept-des-todes/diary.txt","pirate-interview";
	setindicatorlook 9,1;
	$pirateInterviewStep = -1;	//no story action currently
	
	$interviews++;
	if($interviews == 12 && $corpseFound == 1) {
		diary "Alle Einwohner befragt","maps/rezept-des-todes/diary.txt","interviews-done"
	}
script=end

Könnte das letzte Skript vielleicht einen Slow-Down verursachen, weil dort globale Variablen verändert werden?
To the start Previous 1 Next To the start
Log in to reply Scripts overviewStranded II overviewForums overview