Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Quicksave during feather fall mode #236

Merged
merged 3 commits into from
Mar 27, 2021
Merged

Quicksave during feather fall mode #236

merged 3 commits into from
Mar 27, 2021

Conversation

dstarosta
Copy link
Contributor

I added an ability to quick save in feather mode as discussed here: https://forum.princed.org/viewtopic.php?f=126&p=32402

There is now the "Fix quicksave during feather" option that makes the is_feather_fall variable to act as a timer. In debug cheats mode F button now shows the remaining feather fall time similar to the T button for the game timer.

Pause menu now pauses the feather fall music since timer variables do not increment/decrement. When the game continues, the music starts from the beginning until the feather mode timer stops. In my mod I have the music from the correct position but I am using SDLMixer with OGG files. I am not sure how to do this with digi sound streams.

When you restore a quick save saved in feather mode without the fix option enabled, the feather mode does not get enabled to prevent cheating since I can only start it from the beginning.

@NagyD NagyD merged commit 5ef847a into NagyD:master Mar 27, 2021
@dstarosta dstarosta deleted the quicksave-during-feather branch March 31, 2021 02:11
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request Jul 21, 2021
Changelog:

2021 July 5
=================
(version 1.22)

FIXED: The prince can now grab a ledge at the bottom right corner of
       a room with no room below.
	Details: https://forum.princed.org/viewtopic.php?p=30410#p30410
	Testcase: doc/replays-testcases/SNES-PC-set level 11.p1r
	See FIX_CORNER_GRAB in config.h .
FIXED: Don't allow killing a skeleton in cheat mode.
FIXED: Ctrl+S didn't mute music (except death music).
FIXED: A falling tile on the left side of a pillar could cause the
       blue stripe to be drawn over the pillar.
FIXED: The top of moving gates became glitched on levels using
       non-default palettes.
FIXED: The right edge of pressed drop buttons was black if a big
       pillar was next to them.
FIXED: Guards appeared in the current room when they fell into spikes
       in an adjacent room. (Example: original level 11, room 22.)
FIXED: Show an error message if a data file is missing.
FIXED: "Remember guard hp" for non-standard guards.
FIXED: Colored torches were not restored on quickload if you (quit
       and) restarted the game after quicksave.
DONE: Added command-line parameter "mute": Start the game with sound off.
FIXED: Fixed compiling with some features #undefined. (USE_TEXT,
       USE_LIGHTING, USE_MENU)
DONE: Hide references to various features if the game was compiled
       without them.
DONE: A scrollbar appears in the pause menu if scrolling is possible.
	It's not clickable yet, it just shows where you are in the list.
DONE: Added command-line parameter "playdemo": Make the demo level
       playable.
FIXED: Fixed the detection of Ctrl+L during the demo level.
FIXED: Create the screenshots directory in SDLPoP's directory, even
       if the current directory is something else.
	This is to match how the replay folder works.
FIXED: On Windows, use Unicode/UTF-8 for mkdir().
	So the replay and screenshots directories can be created
        within non-ASCII paths.
FIXED: After quickload, show the room where the prince is, even if
       the player moved the view away from it (with the H,J,U,N keys).
FIXED: After quickload, don't draw guard HP if a previously viewed
       room (with the H,J,U,N keys) had a guard but the current room
       doesn't have one.
DONE: Speed up music, sounds, and transitions during fast forwarding.
FIXED: Prevent the modifier remapping from accessing out-of-range rooms.
FIXED: Don't show the mirror image if the prince is not in the
       currently shown room.
DONE: Added a new cheat key: Ctrl+B: Go back to the room where the
      prince is. (Undo H,J,U,N.)
FIXED: Fixed the length of feather fall in fast-forward mode.
FIXED: Prevent torches from being randomly colored when an older
       replay is loaded.
FIXED: If the prince is fighting a guard, and the player does a
       quickload to a state where the prince is near the mouse,
       the prince would draw the sword.
DONE: Added options for changing speeds. They are detected from
       PRINCE.EXE. (Used in Hurry up Prince, for example.)
DONE: In the settings menu, allow using Page Up, Page Down, Home, End.
FIXED: Fixed graphical glitches with an opening gate:
	1. with a loose floor above and a wall above-right.
	2. with the top half of a big pillar above-right.
	See FIX_ABOVE_GATE in config.h .
FIXED: Validate mode crashed with the error "init_scaling:
       SDL_CreateTexture: Invalid renderer".
DONE: Rewrote all mentions of key combinations to the "Ctrl+A" style.
DONE: Marked which features of SDLPoP are not in the original game.
      (To prevent confusions like #197)
DONE: Allow Backspace and Ctrl+C during replay.
DONE: During playback, display the number of ticks since start, if
      the timer is shown (debug cheats: T).
FIXED: Fixed crashing when a MIDI music interrupted another one.
FIXED: Make it possible to go through a certain closed gate on level 11
       of Demo by Suave Prince.
	Details: https://forum.princed.org/viewtopic.php?p=32326#p32326
	Testcase: doc/replays-testcases/Demo by Suave Prince level 11.p1r
	See FIX_COLL_FLAGS in config.h .
FIXED: When the prince jumps up at the bottom of a big pillar split
       between two rooms, a part near the top of the screen disappears.
	Example: The top row in the first room of the original level 5.
	Details: See FIX_BIGPILLAR_JUMP_UP in config.h .
DONE: Added a debug cheat to quickload but keep the currently loaded
      level. (Shift+F9)
	Motivation: https://forum.princed.org/viewtopic.php?p=32556#p32556
FIXED: Fixed spiked/chomped/bumped guards teleporting into the wrong room.
       (if fixes are enabled)
	Details: NagyD/SDLPoP#237
FIXED: Quicksave during feather fall mode. (if fixes are enabled)
	Details: NagyD/SDLPoP#236
FIXED: Prevent the prince from entering a glitched room when he falls
       into a wall or he is revived near a wall.
	Details: doc/replays-testcases/Original level 2 falling into wall.txt
	Testcase: doc/replays-testcases/Original level 2 falling into wall.p1r
	See FIX_ENTERING_GLITCHED_ROOMS in config.h .
FIXED: Optimized OPL mixing (MIDI music).
	Details: NagyD/SDLPoP#238
	"More importantly: when run on a Raspberry Pi Zero, the music went
        from unusable to perfect,"
FIXED: Fixed the prince sliding through closed gates when you are using
       the caped prince graphics.
	Details: See FIX_CAPED_PRINCE_SLIDING_THROUGH_GATE in config.h .
DONE: Added a compilation-time flag to disable all fixes for vanilla
      execution.
	Details: NagyD/SDLPoP#239
FIXED: If the prince dies on level 14, don't return to the intro after
       the level was restarted.
	Details: See FIX_LEVEL_14_RESTARTING in config.h .
DONE: Waste an RNG cycle in loose_shake() to match DOS PoP.
DONE: In new replays, use deprecation_number = 2. On playback, waste
      the RNG cycle only if deprecation_number >= 2.
	Older replays have deprecation_number <= 1, and we don't waste
	the RNG cycle when playing them back.
DONE: When backing offscreen (to the left) from the first guard on
      level 7 (among others), simulate the glitch from DOS PoP, which
      causes the prince to fall through the floor.
	Details: See NagyD/SDLPoP#229
FIXED: On Windows, use Unicode/UTF-8 for stat().
	So SDLPoP can load levels from mod folders when a replay file
	restarts the level or advances to the next level.
DONE: Added a more visible error message when a mod referenced by a
      replay file cannot be found in the mods folder.
DONE: Allow guard skill customizations in SDLPoP.ini.
DONE: Made FIX_DOORTOP_DISABLING_GUARD configurable.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants