Anfrage Bossmusik / Spezialmusik für Gegenden

if (player.GetInCell 0001FB1E && player.IsInCombat)
Bei diesem Teil musst du nach player.getInCell die ID der Cell eingeben, welche meistens keine Nummer ist. Wähl im CS nochmal diese Cell aus, in der du die Musik haben willst, und nimm die ID aus dem Kasten, den ich dir gezeigt habe.
 
Achso, das heißt, man muss da gar keine Nummern angeben?:shock:
Sondern dafür ParadiseCamoranFortress hincshreiben? Uiui.
 
Ja, dass musst du.
Immer die Referencen, es geht zwar auch mit Nummern, aber das würde ich wirklich nicht empfehlen, da man da manchmal garnicht weiß, wleche Nummer zu was gehört.
Ich würde die Nummern sogar niemals verwenden.


Also: player.getinCell ICMarketDistrictFirstEdition
Da weißt du, dass die Erstausgabe gemeint ist.
 
  • Like
Reaktionen: Rakios
Ist ParadiseCamoranFortress eine (Ex-)Interior Cell oder eine Worldspace?
Bei einer Worldspace musst du GetInWorldspace benutzen. bei den andern GetInCell.
Das einzige ist, wenn es eine Worldpace ist, wird überall die Musik abgespielt.
Wo wir zurück auf "if MankarCamoran.StartCombat Player"
Musst mal ausprobieren.
 
Nene, es ist ein Interior. Dummerweise hab ich kein Save gemacht bei Manky...
Jetzt muss ich nochmal bis zu ihm hinzocken... Selbst mit Cheats dauert's recht lange. Da spiel ich nochmal richtig durch^^.

(Oder kennt jemand nen Cheat dafür, dass ich gleich ins Paradies muss?)
 
Sieh mal im CS nach was für ein Music Typ die Interior Cell ist.
Sofern dort steht Default, musst du ein anderes Script nutzen, sonst funktioniert es nicht.
Da du erst einmal einen Random Track spielen musst und gleich darauf (Nächsten paar Frames) den Gewünschten Track.
Das Script was du dazu benutzen musst steht weiter oben in einem Spoiler in mmeinem Post.
 
Es ist Dungeon. Das heißt, der Script sollte gehn (den verwende ich jetzt erstmal):
scn mankarsmusikscript

Begin Gamemode

if (player.GetInCell ParadiseCamoranFortress && player.IsInCombat)

Streammusic "Data\Music\Special\DuelOfTheFates.mp3"

endif

End

Und wenn ich jetzt auch Rabe und Ruma eine Musik verpassen will... müsste ich ja mit "[deren id].startcombat player" machen.
Wie würde der Script aussehen für, in etwa:
scn RabeRumaMusik

Begin Gamemode

if ([rabeID].StartCombat player or(?) [rumaID].StartCombat player)

if player.Not(?)GetInCell ParadiseCamoranFortress (<- also dass das halt nicht bei Mankar abgespielt wird)

Streammusic "Data\Music\Special\Track.mp3"

endif

endif

End

:shock:

Als ich grad dabei war, noch ein paar Orte mit Musik zu belegen (also es zu versuchen, testen werd ich gleich), kam mir der Gedanke, die meisten Orte und Handlungen des Hauptquest, sofern es meinen Horizont nciht übersteigt, mit Musik zu belegen und eine Mod draus zu machen!
Sofern ich dann fett Credit geben würde an die Copyrightleute und so, müsste es doch gehen? Bei Ivellon sind ja auch Sounds aus Diablo II drin (was mich als D2Zocker natürlich freute). Da stehn auch bloß Credits in der Readme.

Ich versuche das mit Scripts a la:
scn SancreTorscript

Begin Gamemode

if player.GetInCell SancreTorHub

Streammusic "Data\Music\Special\Track.mp3"

endif

End

Geht das so (generell)?
 
Zuletzt bearbeitet:
Es ist Dungeon. Das heißt, der Script sollte gehn (den verwende ich jetzt erstmal):
Code:
scn mankarsmusikscript

Begin Gamemode

if (player.GetInCell ParadiseCamoranFortress && player.IsInCombat)

Streammusic "Data\Music\Special\DuelOfTheFates.mp3"

endif

End
Ja nur wird jetzt bei jedem Kampf der in der cell kommt diese Musik abgespielt.

Und wenn ich jetzt auch Rabe und Ruma eine Musik verpassen will... müsste ich ja mit "[deren id].startcombat player" machen.
Wie würde der Script aussehen für, in etwa:
Code:
scn RabeRumaMusik

Begin Gamemode

if ([rabeID].StartCombat player or(?) [rumaID].StartCombat player)

if player.Not(?)GetInCell ParadiseCamoranFortress (<- also dass das halt nicht bei Mankar abgespielt wird)

Streammusic "Data\Music\Special\Track.mp3"

endif

End
OR geht schonmal garnicht! und ein Not geht auch nicht :lol:
Not gibt es nicht.
Ich bin mir nicht sicher obs damit funktioniert das du einfach ein == 0 ranhängst. Ganz sicher bin ich mir nicht, du kannst es ja mal ausprobieren. Wenns nicht funktioniert dann lass es einfach weg.
Es müsste so gehen:
Code:
scn RabeRumaMusik

Begin Gamemode

if ([rabeID].StartCombat player [COLOR="Red"]||[/COLOR] [rumaID].StartCombat player)

[COLOR="Red"]else[/COLOR]if player.GetInCell ParadiseCamoranFortress [COLOR="Red"]== 0[/COLOR] (<- also dass das halt nicht bei Mankar abgespielt wird)

Streammusic "Data\Music\Special\Track.mp3"

endif

endif

End

Als ich grad dabei war, noch ein paar Orte mit Musik zu belegen (also es zu versuchen, testen werd ich gleich), kam mir der Gedanke, die meisten Orte und Handlungen des Hauptquest, sofern es meinen Horizont nciht übersteigt, mit Musik zu belegen und eine Mod draus zu machen!
Sofern ich dann fett Credit geben würde an die Copyrightleute und so, müsste es doch gehen? Bei Ivellon sind ja auch Sounds aus Diablo II drin (was mich als D2Zocker natürlich freute). Da stehn auch bloß Credits in der Readme.

Ich versuche das mit Scripts a la:
Code:
scn SancreTorscript

Begin Gamemode

if player.GetInCell SancreTorHub

Streammusic "Data\Music\Special\Track.mp3"

endif

End
Geht das so (generell)?
Da musst du eben gucken obs nun MusicTyp Default oder ein anderer ist. Bei dem hier müsste es Dungeon sein glaub ich. Schau halt mal nach.
Aber generell "sollte" es so funktionieren.
 
  • Like
Reaktionen: Rakios
Okay, danke. Du bist echt 'ne super Hilfe.
Nur: Was muss ich nun für eine ID angeben, wenn ich RabeRuma.startcombat player will??:huh: das hab ich noch nciht gecheckt.

Edit: Ich glaub, ich hab's jetzt! Ravenref und Rumaref sind es wohl.
Nebenfrage: Wenn ich startcombat verwende, geht der Track dann weiter, wenn der Kampf vorbei ist?

Nach-dem-Test-Edit: ARRRGH! Ich hasse es!!!111einself11!
Folgendes trat auf: Jedes mal, wenn ein neuer Musiktrack anfing(also die ganz normale Musik), brach die nach etwa 3 Sekunden wieder ab und begann von vorn! Immer weiter, ohne Unterlass. Ich dachte erst, es läge daran, dass in meiner Nähe Gegner wären, die mich nur ganz kurz sehen und mich angreifen wollen, dann aber die Spur verlieren. Erst war's sogar so. Doch nacher auch immer noch. Immer weiter! Selbst nach "KillAll". Ich fürchte, es liegt an meiner Mod. Ich hab nur "Streammusic" Kommandos benutzt.
Hm, da fällt mir ein, dass es bei einem Script eine Komplikation gab, die ich aber als unwichtig abgetan habe. Ich versuch's nochmal, ohne den seltsamen Script.

Nächster Edit:
Aha, an dem lag's nicht. Aber es wird immer wieder für wenige Sekunden der Track eingespielt, den ich für Rabe und Ruma festgelegt habe. Hat sich hier der Fehlerteufel eingeschlichen? Wär möglich, der hat bestimmt Schleichen auf 85. (Höhöhö.)

scn musikkampfraberumascript

Begin Gamemode

if (ravenref.StartCombat player || rumaref.StartCombat player)

elseif player.GetInCell ParadiseCamoranFortress == 0

Streammusic "Data\Music\Special\DPLegendary.mp3"

endif

endif

End
 
Zuletzt bearbeitet:
Chuck Norris schrieb:
Würde ich meinen, da nirgends ein StopMusic (heißt das so?) vorkommt
Aha, ok. Auch nicht so schlimm. Und zur letzten Sache mit meinem komischen Fehlerskript? Keine Idee?:(

nach-Test-Edit: NAAAAAAIIIIN!!!!!! :cry: ...
Im Grunde genommen klappt's. Nur leider tritt jetzt der Fehler von meinem vorletzten Post wieder auf. Dort, wo die Musik gespielt werden soll, ertönt sie nur wenige Sekunden lang, um dann wieder neu zu starten. Und wenn es zu einem Kampf kommt, startet die Kampfmusik in der Gegend auch immer wieder neu :cry:... Ich bin mir nicht sicher, ob "Streammusic" der richtige Befehl ist. Gab's da nicht noch FloatMusic, oder so?

Nächster Edit: Oder könnte es daran liegen, dass ich "Streammusic" und nicht "StreamMusic" gecshrieben habe? Oder fehlt hinter GetInCell noch ein == 1?

Nächster Edit: :cry: Daran lag es auch nicht... immer noch das selbe Problem. Immer, wenn sich die Musik ändern könnte (also wenn man nciht im Menu oder in der Konsole ist), fängt sie alle ~4 Sekunden neu an. Das stresst bis zum Gehtnichtmehr! Wenigstens habe ich den Fehler im Script für Rabe und Ruma gefunden.. Es muss nicht
elseif player.GetInCell ParadiseCamoranFortress == 0
heißen, denn das bedeutet, dass der Track dann immer abgespielt wird, wenn man nciht in Carac Agaialor ist. Also:
if (player.GetInCell paradiseCamoranFortress == 0 && ravenref.StartCombat player || rumaref.StartCombat player)

Haaaa! SirTroy,du sagst, bei dir hätte es mit einem Track wunderbar geklappt! Wie sah dein Script dafür aus? Bitte, bitte lass mich ihn sehen!
 
Zuletzt bearbeitet:
Aha, ok. Auch nicht so schlimm. Und zur letzten Sache mit meinem komischen Fehlerskript? Keine Idee?:(

nach-Test-Edit: NAAAAAAIIIIN!!!!!! :cry: ...
Im Grunde genommen klappt's. Nur leider tritt jetzt der Fehler von meinem vorletzten Post wieder auf. Dort, wo die Musik gespielt werden soll, ertönt sie nur wenige Sekunden lang, um dann wieder neu zu starten. Und wenn es zu einem Kampf kommt, startet die Kampfmusik in der Gegend auch immer wieder neu :cry:... Ich bin mir nicht sicher, ob "Streammusic" der richtige Befehl ist.

Nächster Edit: Oder könnte es daran liegen, dass ich "Streammusic" und nicht "StreamMusic" gecshrieben habe? Oder fehlt hinter GetInCell noch ein == 1?

Ob du die Befehle groß oder klein schreibst ist egal und die == 1 auch.
Wichtig ist, dass du den Befehl mit DoOnce verwendest, sonst wird es auch immer wieder von vorne abgespielt.
Das Skript wurde hier irgendwo schon gepostet.
 
  • Like
Reaktionen: Rakios
Entweder du verwendet ein DoOnce oder du machst einen Timer.

Einen Timer würdest du machen wenn du dem Script folgendes hinzufügst:
Code:
scn musikkampfraberumascript

[COLOR="Red"]Float Timer[/COLOR]

Begin Gamemode
[COLOR="Red"]set Timer to [LängeDerSekundenDesTracks][/COLOR]
if (ravenref.StartCombat player || rumaref.StartCombat player)
[COLOR="Red"]set Timer to Timer - GetSecondsPassed[/COLOR]
Streammusic "Data\Music\Special\DPLegendary.mp3"
[COLOR="Red"]If Timer < 0[/COLOR]
[COLOR="Red"]StreamMusic Random[/COLOR]
endif

endif

End

Oder aber du verwendest dieses Script von sinHHHans
scn MusikAbspielenSC

;Written by sinHHHans
;22.08.08

short DoOnce

Begin OnActivate
if Doonce == 0
StreamMusic "Data\Music\MyMusic.mp3"
set doonce to 1
endif
End
Oder diese für MusicTyp Default
scn shsStreamMusicInDefaultZellenSC

;Written by sinHHHans
;05.09.2008
; 99% das es geht

short Frame ; Je nach Wert wird einer der 3 StreamMusic oder deren 100er Schleife ausgeführt
short go ; Prüfen ob Skript schon mal gelaufen ist und zum Durchläufe beim ersten Run zählen
short Schleife ; Der Wert, der 100mal erhöht wird, um 100 Frames zu warten

Begin OnActivate player ;Irgendein Auslöser
if go != 0 && frame != 0
messagebox "Geduld, Skript wird noch ausgeführt..."
elseif go == 0 && frame == 0 ; Erster Run ( Dann muss es dreimal durchlaufen werden )
set Frame to 1
set go to 1
elseif go == 4 ;Skript wurde schon mal durchlaufen ( Nur noch einmal den Algorithmus durchlaufen)
set frame to 1
endif
End

Begin Gamemode
if ( go >= 1 && Go <= 2 ) || ( Go == 4 ); Gegenstand ist aktiviert worden
if Frame == 1 ;Frame Nummer 1
if Schleife < 100 ; 100 Frames warten
set Schleife to Schleife + 1
return
elseif Schleife >= 100 ; Nach 100 Frames
set Frame to 2
streammusic "Data\Music\MySong.mp3" ; das erstes mal den Befehl für das Lied ausführen
set Schleife to 0
endif
elseif frame == 2
if Schleife < 100 ; 100 Frames warten
set Schleife to Schleife + 1
return
elseif Schleife >= 100 ;Nach 100 Frames
set Frame to 3
set schleife to 0
streammusic random ; Jetzt wird ein Zufälliges Lied gespielt
(Das klappt auch in Default-Zellen)
set Frame to 3
endif
elseif frame == 3
if Schleife < 100
set Schleife to Schleife + 1
return
elseif Schleife >= 100
streammusic "Data\Music\MySong.mp3" ; Jetz kann das Lied in einer Default Zelle spielen
if go < 3 ;Wenn das Skript noch nicht 3mal ausgeführt wurde:
set go to go + 1
set Schleife to 0
set Frame to 1
elseif go == 4 ;Wenn das Skript das zweite Mal gelaufen ist und jetzt nur noch
einen Durchlauf braucht
set Schleife to 0
set Frame to 0
endif
endif
endif

elseif go == 3 ;Wenn das Skript beim ersten Durchlauf fertig ist
set Frame to 0
set go to 4 ; "Speichert", dass das Skript den ersten Durchlauf hatte
endif

End
 
Zuletzt bearbeitet:
Guuuut. Also es geht erstmal. Wenn ich jetzt nach Sancre Tor Grab des Kaisers gehe, wird meine Musik korrekt abgespielt. Ein mal. Wenn ich den Raum verlasse oder sich die Musik ändert (Kampf), kommt sie nie wieder.
Es sei denn, man würde Save/Load?

Egal soweit, das reicht mir^^. Erstmal alle Scripties auf Vordermann bringen.
Hach, danke, danke!!! Euch allen!

@SirTroy: Brauchst den Script nicht mehr raussuchen^^.

Jetzt sollte ja eigentlich alles klappen. Dann bitte ich euch ab jetzt, Gelegenheiten für das einmalige Abspielen einer besonderen Musik während der Hauptquest zu nennen, die euch gefallen würden.
Bedenkt, dass durch meine mageren SkillZ und die geringen Möglichkeiten nur die bisherige Version (also Ereignis ist - Mucke läuft - anderes Ereignis überlappt - Mucke läuft nciht mehr) des Fast-Mods möglich ist. (Es sei denn, für bestimmte Gebiete eigene "Wähle hieraus die abzuspielenden Tracks aus"-Ordner (oder whatever) zu kreieren, wär saueinfach.)

Schema:
Wo?
Welche Musikart (also ruhig, spannend, action...)?
Direkte Titelvorschläge? (optional ;), hab ja auch welche. hehe)


Bitte nicht solche komplizierten wie "Während der Schlacht um Bruma" oder so.
Bisher enthalten sind:
-Sancre Tor, Eingangshalle
-Sancre Tor, Grab der Kaiser
-Kampf gegen Mankar Camoran
-Miscarcand, letzter Raum + Kampf gegen König
-Kampf der Götter(Tempel des Einen)
-Kämpfe gegen Rabe oder Ruma Camoran

PS: Kennt jemand die ID des Wolkenherrcshertempels (Große Halle)?
PPS: Was würde passieren, wenn ich das "set DoOnce to 1" Weglassen würde? Würde es dann, nachdem es einmal aufgehört hat (/aufhören musste), nocheinmal spielen?
PPPS: Oder ginge das so:
[...]

endif

if (DoOnce == 1 && player.GetInCell [wattweeßick])

Streammusic "[pfad]"

set DoOnce to 2

endif

End
 
Dann startet die Musik 2 Mal.

Du musst dir das so vorstellen, Oblivion lässt die Skripte immer von der Obersten Zeile bis zur untersten durchlaufen und dann nochmal von vorne.

Wenn du nun das schreibst:
scn aaMusicScript

begin GameMode
if (DoOnce == 0 [Anfangs immer auf 0] && player.getinCell [wattweeßick])
set DoOnce to 1

endif

elseif (DoOnce == 1 && player.GetInCell [wattweeßick])

Streammusic "[pfad]"

set DoOnce to 2

endif

End

Dann fängt das CS an:

Aha, DoOnce auf 0, in der Celle X, also muss Musik abgespielt werden und DoOnce auf 1 setzen.
[Sofort danach kommt es zum 2. If]
DoOnce auf 1 und in Celle X, Musik wird abgespielt und DoOnce auf 2 gesetzt.

Das führt dazu, dass das CS die Musik 2 Mal abspielt.
 
Super, und jetzt bitte her mit Vorschlägen für Musikereignisse!
Ich werde die Mod dann schnellstmöglich releasen, juchu:hah:.

Oder... finden alle anderen leute die Idee sowieso tOtAl BlÖd UnD dOoF?

Wenn nciht, sehe ich mich motiviert, alle Tracks zweimal abspielen zu lassen und den für SancreTor (einfach GamePlay-bedingt) mehrmals.

8)
 
Es wäre aber meiner meinung nach sinnvoller das so zu machen:
Code:
scn aaMusicScript

[COLOR="Red"]short DoOnce[/COLOR]

begin GameMode
if (DoOnce == 0 [Anfangs immer auf 0] && player.getinCell [wattweeßick])

set DoOnce to 1

elseif (DoOnce == 1 && player.GetInCell [wattweeßick])

Streammusic "[pfad]"

set DoOnce to [COLOR="Red"]0[/COLOR]

endif

End
So wiederholt sich das Script und die Musik spielt immer wieder. Ich würde in diesem Fall aber noch einen Timer mit einbauen, sodass wenn der Song vorbei ist, DoOnce wieder auf 0 gesetzt wird.
Das Script von P-Froggy solltest du nutzen wenn du 2 Songs abspielen willst, also hintereinander.
 
  • Like
Reaktionen: Rakios
Super, und jetzt bitte her mit Vorschlägen für Musikereignisse!
Ich werde die Mod dann schnellstmöglich releasen, juchu:hah:.

Oder... finden alle anderen leute die Idee sowieso tOtAl BlÖd UnD dOoF?

Wenn nciht, sehe ich mich motiviert, alle Tracks zweimal abspielen zu lassen und den für SancreTor (einfach GamePlay-bedingt) mehrmals.

8)


Ich weiß nur nicht, ob du überhaupt Musik in eine Mod packen darfst, di du nicht slebst gemacht hast und für die du keine Erlaubnis hast.
Man könnte man sich nämlich anstatt eine Star Wars-Musik CD deine Mod runterladen. So verdient John Williams kein Geld und deshalb ist das wahrscheinlich illegal.
Andererseits hat der Autor von Knights of the Force auch Star Wars Musik zu seiner Mod gepackt.

Ansonsten wäre das natürlich eine gute Idee.
 
1. Gute Idee!

2. Gut, dann werde ich dickes Copyreit und so drunter schreiben, von wegen "wehe du machst davon Kopien oder profitierst finanziell davon, dann BAMM!".
Und bitte, wie gesagt, postet Vorschläge!

---
Hab's jetzt erstmal released.
 
Zuletzt bearbeitet: