Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fragen zum Modden



flobby
29.07.2008, 21:41
Hi, ich hab en paar Fragen zum Thema Modden:
1. Kann man einstellen, dass wenn ein Item ausgewählt wird eine bestimmte Musik kommt? (Ich schätze das is dann ein Script...) Diese Musik sollte sollte aber nach 25 Meter oder sowas nicht mehr zu hören sein.
2. Wie kann man es machen, dass ein Item unter Sonstiges ausgewählt wird, so wie bei der Fackel?
3. Ich hab versucht ein Ring mit Unsichtbarkeit zu modden. Nur wurde ich net Unsichtbar.... Weiß einer warum?

flobby
30.07.2008, 12:42
So, ich hab jetzt en bisl was rausgefunden...
zu 1. am besten man macht da en Dialog der halt nur aus der Musik besteht...
zu 2. eine Fackel is ein Tragbares Licht im cs...
zu 3. wahrscheinlich gehts net mit Unsichbarkeit... mit Chamäleon (Magnitude 100) gehts au...

Satsuma
30.07.2008, 13:13
zu 3.) Hast du ein Enchament gemacht, das auch unsichtbarkeit macht?

flobby
30.07.2008, 17:05
Zuerst ja, aber da es net geklappt, dann hab ich Chamäleon gemacht und des geht....
Noch ne Frage: wie kann man Wahrscheinlichkeiten scripten? geht des überhaupt?

Satsuma
30.07.2008, 18:00
Also: um eine wahrscheinlichkeit zu scripten muss du diesen befehl benützen:


short Zufall
....
set Zufall to min + GetRandomPercent * max / 99

Also, wenn du z.b. eine zahl zwischen 5 und 23 willst:


set Zufall to 5 + GetRandomPercent * 23 / 99

GetRandomPercent gibt eine zurfällig Zahl zwischen 0-99 (inklusive) aus.

Edit: ach so ja, wenn du normale zahlen haben willst, dann muss du diese veriablen machen:

short ....
das sind alle normalen zahlen (1,2,3...) Wenn es z.b. passiert das eine zahl auf 1,4 landet, wird diese automatisch auf 1 abgerundet.
Mit kommerzahlen wären dann diese:

float...
(z.b. 1,2 ; 1,6 ...)

Wenn du eine genaue obergrenze haben willst, würde ich unter der anweisung noch immer diesen block anhängen(das beispiel mit 5 bis 23)


short DoOnce
short Zufall

Begin GameMode
If DoOnce == 0
Set Zufall to (5 + GetRandomPercent * 23 / 99)
Set DoOnce to 1
elseif DoOnce == 1
If (Zufall >= 24)
Set DoOnce to 1
elseif (Zufall == 5)
; da kommt hin was bei 5 passiert
elseif (Zufall >= 5) && (Zufall <= 15)
; in diesem beispiel passiert was wenn der zufall zwischen 5 und 15 liegt
endif
endif

Dieser Block (Zeile 9-10) hat folgenden grund: GetRandromPercent nimmt immer eine zahl zwischen 1-99. Jetzt kann man sich mal ausrechnen was das in unserem beispiel bedeuten könnte.
z.b. es kommt eins:
5+1*23/99 = 5+23/99 = 5+ 0,23 = 5,23 ; bei einer "short" veriablen würde das auf 5 abgerundet, genau wie wir es brauchen.
aber sagen wir es kommt z.b. eine 99:
5+99*23/99 = 5 + 2277 / 99 = 5 + 23 = 28
schon sind wir bei mehr als 23, der block (Zeile 9-10) wird diesen vorgang aber so lange wiederholen, bie die zahl auf 23 oder kleiner ist.

ich hoff mal das ich dir damit helfen konnte

mfg

flobby
31.07.2008, 12:01
Danke ;)
Kann man auch Skripten, mit dem if-Befehl, dass wenn es Tag ist, dass dann was passiert, oder mit bestimmten Uhrzeiten?

Low Post
02.08.2008, 15:03
if ( Gamehour >= 8 ) && ( Gamehour < 20 )
;mach irgendwas, sofern es Tag (8-20 Uhr) ist
else
;mach etwas, sofern es Nacht (20-8 Uhr) ist
endif
Grenzen hab ich immer an den unteren Bereich gesetzt. Genau 8 Uhr wird also als Tag gewertet, während genau 20 Uhr als Nacht gilt (19:59 wird noch als Tag gewertet).