Done; released apoplexy 3.16.
Hopefully, "teleports" will shortly be merged into master, for an erelong v1.23 release.
I can put together a brief teleports how-to video, similar to the colored torch flames how-to video.
Done; released apoplexy 3.16.
With this change, is it ready for merging?
I think so. I've tested the most recent code, and it works.
I've finished making this video, so it's ready to be added to the PoPModding YouTube channel whenever the new SDLPoP release arrives.Norbert wrote: ↑November 16th, 2022, 10:29 pmI can put together a brief teleports how-to video, similar to the colored torch flames how-to video.
Oh, then I don't need to work on my branch for that anymore. You've already gotten more progress on it than me.David wrote: ↑November 12th, 2022, 12:41 pmI have added similar functionality on the branch "redefine_keyboard2".
It adds controls as a separate menu and you can change any key without having to change all the others.
It looks like this:
redefine_keys.png
Done: https://github.com/NagyD/SDLPoP/commit/ ... 12bca86752
Code: Select all
teleports:
snprintf(screenshot_filename, sizeof(screenshot_filename), "%s/screenshot_%03d.png", screenshots_folder, screenshot_index);
master:
snprintf_check(screenshot_filename, sizeof(screenshot_filename), "%s/screenshot_%03d.png", screenshots_folder, screenshot_index);
Code: Select all
teleports:
strncpy(screenshots_folder, locate_file("screenshots"), sizeof(screenshots_folder));
master:
snprintf_check(screenshots_folder, sizeof(screenshots_folder), "%s", locate_file("screenshots"));
I don't have a joystick or gamepad, so that has to be done by someone else...FluffyQuack wrote: ↑November 22nd, 2022, 6:13 pm It would be nice to have the joystick rebindable too.
(If you make any changes related to this, I suggest not including them with the upcoming release. To give yourself enough time to look at it without any added pressure.)Norbert wrote: ↑January 6th, 2021, 3:37 pm There are inconsistencies in doc/Readme.txt when it comes to how keyboard shortcuts are presented to the reader.
Example:
- - - - -
* Ctrl-S: sound on/off
* mute -- Start the game with sound off. (You can still enable sound with Ctrl+S.)
- - - - -
Another (double) example:
- - - - -
* Shift-F (while viewing a replay): skip forward to the next level
While viewing a replay, you can press F to skip forward to the next room, or Shift+F to skip to the next level.
* shift+left/right: careful step
- - - - -
Yet another example:
- - - - -
* r: resurrect kid
* Ctrl-R: return to intro
- - - - -
Personally, I always do e.g. Ctrl+r (because plus indicates addition, and a capital r (R) would indicate Ctrl+Shift+r).
But I'm not sure whether that is also the best solution in this particular case/context.
Code: Select all
Since version 1.16, there is support for fake tiles, for example walls that the prince can go through. The Apoplexy level editor supports these additional tiles since v3.0. (Just don't overuse them, please!)
See doc/tiles.md for documentation on fake tiles.
Done: https://github.com/NagyD/SDLPoP/commit/ ... f45dc4f657Norbert wrote: ↑December 22nd, 2022, 4:19 pm Maybe also mention USE_COLORED_TORCHES for torch (0x13) and torch with debris (0x1E): 0x01-0x3F 6-bit RGB.
Maybe also rewrite this portion
[...]
to provide more generalized information, i.e. not about specifically the fake tiles.
Similarly, doc/tiles.md currently states "That page includes the combinations supported by the original game and also the fake tiles." which could be updated to reflect the wiki page (now) (also) lists all native tiles.
It looks like the newest SDL_image (2.6.2) loads 8-bit (paletted, indexed) images as RGB(A) even on Windows!
Code: Select all
lighting.c:42:96: error: Signed integer overflow for expression '0xFF<<24'. [integerOverflow]
screen_overlay = SDL_CreateRGBSurface(0, 320, 192, 32, 0xFF << 0, 0xFF << 8, 0xFF << 16, 0xFF << 24);
^
replay.c:212:4: error: Common realloc mistake: 'replay_list' nulled but not freed upon failure [memleakOnRealloc]
replay_list = realloc( replay_list, max_replay_files * sizeof( replay_info_type ) );
^
screenshot.c:581:113: error: Signed integer overflow for expression '0xFF<<24'. [integerOverflow]
SDL_Surface* map_surface = SDL_CreateRGBSurface(0, image_width, image_height, 32, 0xFF, 0xFF<<8, 0xFF<<16, 0xFF<<24);
^
seg000.c:2083:6: error: Used file that is not opened. [useClosedFile]
if (fwrite(&rem_tick, 1, 2, handle) != 2) goto loc_1D9B;
^
seg000.c:2084:6: error: Used file that is not opened. [useClosedFile]
if (fwrite(¤t_level, 1, 2, handle) != 2) goto loc_1D9B;
^
seg000.c:2085:6: error: Used file that is not opened. [useClosedFile]
if (fwrite(&hitp_beg_lev, 1, 2, handle) != 2) goto loc_1D9B;
^
seg009.c:2435:93: error: Signed integer overflow for expression '0xFF<<24'. [integerOverflow]
overlay_surface = SDL_CreateRGBSurface(0, 320, 200, 32, 0xFF, 0xFF << 8, 0xFF << 16, 0xFF << 24) ;
^
seg009.c:921:93: error: Signed integer overflow for expression '0xFF<<24'. [integerOverflow]
return SDL_CreateRGBSurface(0, rect->right, rect->bottom, 32, 0xFF, 0xFF<<8, 0xFF<<16, 0xFF<<24);
^
seg009.c:1733:139: error: Signed integer overflow for expression '0xFF<<24'. [integerOverflow]
SDL_Surface* peel_surface = SDL_CreateRGBSurface(0, rect->right - rect->left, rect->bottom - rect->top, 32, 0xFF, 0xFF<<8, 0xFF<<16, 0xFF<<24);
^
stb_vorbis.c:5411:0: error: failed to expand 'realloc', Wrong number of parameters for macro 'realloc'. [preprocessorErrorDirective]
data2 = (short *) realloc(data, total * sizeof(*data));
^
Done: https://github.com/NagyD/SDLPoP/commit/ ... 6640e4f66aNorbert wrote: ↑January 3rd, 2023, 11:50 am Oh, don't forget checklist.txt, you created, which includes a line about updating the copyright years.
Done: https://github.com/NagyD/SDLPoP/commit/ ... 745084887c
Done: https://github.com/NagyD/SDLPoP/commit/ ... bacf6c2ddeNorbert wrote: ↑January 4th, 2023, 1:58 pm - In menu.c, change "QUICKSAVE" and "QUICKLOAD" to respectively "QUICKSAVE (F6)" and "QUICKLOAD (F9)".
- If the above suggestion is accepted, in seg000.c, change
[...]
(The crux of the idea being that if the menu already includes quicksaving entries and explains its shortcuts, the splash screen is more informative if it mentions the menu.)
Done: https://github.com/NagyD/SDLPoP/commit/ ... 06e74d0025
Could this be another gcc bug, like this one?
Done: https://github.com/NagyD/SDLPoP/commit/ ... a03e28f66a
Done: https://github.com/NagyD/SDLPoP/commit/ ... 7939a4145e
And now I too got this warning, when I compiled for release.