Post by mastersmiloid on Oct 25, 2020 23:03:05 GMT
I already asked you about getting the boss music working in The Force Engine over at Github, and you said you would add this as a feature request and take a look. I have more to add.
I had a brief e-mail exchange with the author of the Dark Forces Dehacker.
Here is what I asked him:
"I have a request. Would it be possible for you to patch IMUSE.EXE or
DARK.EXE (wherever the MIDI transition information is stored) so
that the boss MIDI music plays in the levels when a boss is fought
against? I have never heard it play in the game.
It seems to have been broken ever since the game was released.
Can you look into it? Thanks."
Below is his response:
"Yes indeed, you're right - it was broken since release.
I never heard of this issue before you ask, but now I checked the game executable and found out that there are was 5 music >types intended for use in each mission (MN - Mission Number):
MN: [boss] [fight] [engage] [stalk] [explore]
01: ---------- fight-01 ---------- stalk-01 ----------
02: ---------- fight-02 ---------- stalk-02 ----------
03: ---------- fight-03 ---------- stalk-03 ----------
04: ---------- fight-04 ---------- stalk-04 ----------
05: boss-05 fight-05 ---------- stalk-05 ----------
06: ---------- fight-06 ---------- stalk-06 ----------
07: ---------- fight-07 ---------- stalk-07 ----------
08: boss-08 fight-08 ---------- stalk-08 ----------
09: ---------- fight-09 ---------- stalk-09 ----------
10: boss-10 fight-10 ---------- stalk-10 ----------
11: boss-11 fight-11 ---------- stalk-11 ----------
12: ---------- fight-12 ---------- stalk-12 ----------
13: ---------- fight-13 ---------- stalk-13 ----------
14: boss-14 fight-14 ---------- stalk-14 ----------
This table was hardcoded into "DARK.EXE" executable file.
Types "engage" and "explore" always empty and probably a leftovers from the time when this music types were planned and existed.
The problem that the code which change music called only with type 2 (fight) or type 4 (stalk). It's never called with type 1 (boss). And I don't know where it should be called. This is probably because developers has some issues with the boss music, but didn't have time to fix it properly so that's why they just cut it off from the final release.
Sorry, but unfortunately I can't fix that. You probably will have more luck if you ask author of upcoming Dark Forces remake (The Force Engine) theforceengine.github.io/ to implement this feature.
But thanks for letting me know! I will add a note about that to the [Q-05] at the documentation file "INFO-FAQ.TXT" in the DeHacker archive."
The boss music is supposed to play when a MIDI marker is reached. There is an existing marker in the STALK-05.GMD, FIGHT-05.GMD, STALK-11.GMD and FIGHT-11.GMD files. Nothing happens despite the markers existing. If you decide to attempt to fix this, use Mission 5 as a test. Once you get it working, it's a simple matter of getting the markers into STALK-08.GMD, STALK-10.GMD and STALK-14.GMD as well as the corresponding FIGHT themes for the same levels. The key is likely the sound effect the corresponding enemy makes when alerted to Kyle Katarn.
Edit: If you end up having to change the marker for starting the boss music, go ahead. It is set as "\\BOSS TRANS 10,20" by default. The slashes might be in place of something else. Also, BOSS-14.GMD has missing MIDI notes.
I had a brief e-mail exchange with the author of the Dark Forces Dehacker.
Here is what I asked him:
"I have a request. Would it be possible for you to patch IMUSE.EXE or
DARK.EXE (wherever the MIDI transition information is stored) so
that the boss MIDI music plays in the levels when a boss is fought
against? I have never heard it play in the game.
It seems to have been broken ever since the game was released.
Can you look into it? Thanks."
Below is his response:
"Yes indeed, you're right - it was broken since release.
I never heard of this issue before you ask, but now I checked the game executable and found out that there are was 5 music >types intended for use in each mission (MN - Mission Number):
MN: [boss] [fight] [engage] [stalk] [explore]
01: ---------- fight-01 ---------- stalk-01 ----------
02: ---------- fight-02 ---------- stalk-02 ----------
03: ---------- fight-03 ---------- stalk-03 ----------
04: ---------- fight-04 ---------- stalk-04 ----------
05: boss-05 fight-05 ---------- stalk-05 ----------
06: ---------- fight-06 ---------- stalk-06 ----------
07: ---------- fight-07 ---------- stalk-07 ----------
08: boss-08 fight-08 ---------- stalk-08 ----------
09: ---------- fight-09 ---------- stalk-09 ----------
10: boss-10 fight-10 ---------- stalk-10 ----------
11: boss-11 fight-11 ---------- stalk-11 ----------
12: ---------- fight-12 ---------- stalk-12 ----------
13: ---------- fight-13 ---------- stalk-13 ----------
14: boss-14 fight-14 ---------- stalk-14 ----------
This table was hardcoded into "DARK.EXE" executable file.
Types "engage" and "explore" always empty and probably a leftovers from the time when this music types were planned and existed.
The problem that the code which change music called only with type 2 (fight) or type 4 (stalk). It's never called with type 1 (boss). And I don't know where it should be called. This is probably because developers has some issues with the boss music, but didn't have time to fix it properly so that's why they just cut it off from the final release.
Sorry, but unfortunately I can't fix that. You probably will have more luck if you ask author of upcoming Dark Forces remake (The Force Engine) theforceengine.github.io/ to implement this feature.
But thanks for letting me know! I will add a note about that to the [Q-05] at the documentation file "INFO-FAQ.TXT" in the DeHacker archive."
The boss music is supposed to play when a MIDI marker is reached. There is an existing marker in the STALK-05.GMD, FIGHT-05.GMD, STALK-11.GMD and FIGHT-11.GMD files. Nothing happens despite the markers existing. If you decide to attempt to fix this, use Mission 5 as a test. Once you get it working, it's a simple matter of getting the markers into STALK-08.GMD, STALK-10.GMD and STALK-14.GMD as well as the corresponding FIGHT themes for the same levels. The key is likely the sound effect the corresponding enemy makes when alerted to Kyle Katarn.
Edit: If you end up having to change the marker for starting the boss music, go ahead. It is set as "\\BOSS TRANS 10,20" by default. The slashes might be in place of something else. Also, BOSS-14.GMD has missing MIDI notes.