Page 1 of 1

Ending screen problem

Posted: February 27th, 2018, 7:15 pm
by kj-5349
I've tried out some mods in SDLPOP and found that the ending sequence is blank, showing nothing but black screen.
This occurs when at the level you can win (Level 14), you begin the level immediately in the winning room (room 5).
In addition, I've tried both SDLPOP 1.17 and 1.18

The list of mods I've tried out so far with this type of setup and thus the issue occurring:-
0000074 Battle Hardened
0000077 Prince Fanny
0000084 Prince of Venus
0000091 Leteipa

Also I need help on the setting in the INI file to adjust the level you can win. Is there a setting somewhere or has it been implemented yet?
Without adjustments, this is what occurs in SDLPOP, where you would win in the DOS version:-
0000056 Persian Training Grounds - at Level 7, instead of the winning screen the level is blank and it's instant death.
0000088 Gouty Prince of Persia - at Level 12b, similar issue
0000182 Ghost of Persia - you can't win in Level 3. (as a sidenote, since the INI has mostly default settings the guards are now killable hehe :P )

P.s. The listed mods have you starting in the winning room of the level you can win.

Re: Ending screen problem

Posted: February 27th, 2018, 8:23 pm
by Norbert
kj-5349 wrote: February 27th, 2018, 7:15 pmAlso I need help on the setting in the INI file to adjust the level you can win. Is there a setting somewhere or has it been implemented yet?
I think that's the only thing apoplexy can modify but SDLPoP can not.
(Of course, ignoring the new 3.1+ guard options, and also ignoring many CusPop-only options.)

Re: Ending screen problem

Posted: February 28th, 2018, 12:19 am
by Falcury
Thank you for trying out the mods and reporting on this! :)
Norbert wrote: February 27th, 2018, 8:23 pm
kj-5349 wrote: February 27th, 2018, 7:15 pmAlso I need help on the setting in the INI file to adjust the level you can win. Is there a setting somewhere or has it been implemented yet?
I think that's the only thing apoplexy can modify but SDLPoP can not.
(Of course, ignoring the new 3.1+ guard options, and also ignoring many CusPop-only options.)
Indeed, that hasn't been implemented yet!
Maybe it's time to add some of these missing CusPop options to SDLPoP, then?

Re: Ending screen problem

Posted: March 1st, 2018, 8:49 pm
by Falcury
kj-5349 wrote: February 27th, 2018, 7:15 pm The list of mods I've tried out so far with this type of setup and thus the issue occurring:-
0000074 Battle Hardened
0000077 Prince Fanny
0000084 Prince of Venus
0000091 Leteipa
I tried the mods you mentioned, but for me the ending sequence plays normally. I cannot seem to reproduce the problem...

Re: Ending screen problem

Posted: March 1st, 2018, 9:15 pm
by kj-5349
I am running this on Windows XP :oops:
I'm not sure if it's fine on newer Windows but the behaviour seems like this on older Windows.....

As a sidenote the steps to reproduce this:
- now I only take and place the Levels.dat in the mod folder, keeping popot ID 0000074
- Start with batch file "prince.exe mod 0000074"
- Alternatively tried by tweaking the SDLPoP.ini and set "levelset=0000074"
Upon reaching level 14 the screen is black except for the ending sounds.

Re: Ending screen problem

Posted: March 3rd, 2018, 1:42 am
by Falcury
Falcury wrote: February 28th, 2018, 12:19 am Maybe it's time to add some of these missing CusPop options to SDLPoP, then?
Did that: branch, pull request.

Re: Ending screen problem

Posted: March 3rd, 2018, 6:09 am
by Norbert
Falcury wrote: March 3rd, 2018, 1:42 amDid that: branch, pull request.
Are you now working on SDLPoP 24/7, or? :lol:

Re: Ending screen problem

Posted: March 3rd, 2018, 11:52 pm
by Falcury
Norbert wrote: March 3rd, 2018, 6:09 am Are you now working on SDLPoP 24/7, or? :lol:
Is it too much? :? It's a phase, I am sure it will pass...
And I apparently have too much time at the moment.

Anyway, the overarching goal is to be able to play (nearly) all DOS mods out of the box.
With the addition of MIDI support and completing the set of CusPop options, that goal is getting closer.
The piece of the puzzle that's still missing is deducing the correct customization options from the DOS executable (diffpop-like, like you mentioned here), if there is no mod.ini supplied in the mod package.

Re: Ending screen problem

Posted: March 4th, 2018, 2:20 pm
by David
I tried "prince.exe megahit 14" with Battle Hardened, but than I just see the ending normally.
kj-5349 wrote: March 1st, 2018, 9:15 pm Upon reaching level 14 the screen is black except for the ending sounds.
This is odd: The latest source version of SDLPoP won't play music if I don't start it from its own folder.
Actually it can't find any data files that are not in the current folder.
But it works in the latest RC. What happened?

Re: Ending screen problem

Posted: March 4th, 2018, 2:46 pm
by Falcury
David wrote: March 4th, 2018, 2:20 pm This is odd: The latest source version of SDLPoP won't play music if I don't start it from its own folder.
Actually it can't find any data files that are not in the current folder.
But it works in the latest RC. What happened?
That's strange, I tried this just now but it (still) works fine for me.

Re: Ending screen problem

Posted: March 11th, 2018, 10:10 am
by David
Falcury wrote: March 4th, 2018, 2:46 pm
David wrote: March 4th, 2018, 2:20 pm This is odd: The latest source version of SDLPoP won't play music if I don't start it from its own folder.
Actually it can't find any data files that are not in the current folder.
But it works in the latest RC. What happened?
That's strange, I tried this just now but it (still) works fine for me.
The problem is (again) that my copy SDLPoP is on a path that contains a non-ASCII character.
find_exe_dir() gets the EXE path from g_argv[0], which is in UTF-8, and then open_dat_from_root_or_data_dir() passes it to stat() and fopen(), which (on Windows) expect file paths to be in the current codepage.
All calls to fopen() should be replaced with fopen_UTF8(), which is currently in replay.c.
And I guess we need an UTF-8 version of stat() as well.

The bug does not appear if I pass a replay file, because then SDLPoP chdir()s into the correct directory.

The RC works correctly only because I extracted it into a path that does not contain non-ASCII characters.

Re: Ending screen problem

Posted: January 2nd, 2019, 5:56 pm
by Norbert
Falcury wrote: March 3rd, 2018, 11:52 pm
Norbert wrote: March 3rd, 2018, 6:09 am Are you now working on SDLPoP 24/7, or? :lol:
Is it too much? :? It's a phase, I am sure it will pass...
It did. :)

Re: Ending screen problem

Posted: January 2nd, 2019, 8:30 pm
by Falcury
Norbert wrote: January 2nd, 2019, 5:56 pm
Falcury wrote: March 3rd, 2018, 11:52 pm
Norbert wrote: March 3rd, 2018, 6:09 am Are you now working on SDLPoP 24/7, or? :lol:
Is it too much? :? It's a phase, I am sure it will pass...
It did. :)
Well... maybe that also applies in reverse? :P
I have a couple of free days left, maybe I should give it a shot.