libretro / nxengine-libretro

Port of NxEngine to the libretro API. NXEngine is a Cave Story game engine clone
85 stars 89 forks source link

Make save selection text prettier. Fix walking through tight spots. #90

Closed crocket closed 2 years ago

crocket commented 2 years ago

After merging this pull request, I think nxengine-libretro shouldn't have obvious gameplay issues. Now, the game is an immersive experience rather than a rude wake-up call for open source contribution. I can now experience nxengine-libretro as a game, not as an open source project with strange quirks to be fixed.

By using variable width text in save selection, text looks pretty. There is no overflow because the longest text for save selection is "Egg Observation Room?".

Before

Doukutsu-211116-083745

After

Doukutsu-211116-083844

The last change to sprites_sif.h broke walking through tight spots. Without walking through the tight spots, I couldn't beat the game. It was a serious issue. By reducing the width of Block D(feet), the player character can walk through tight spots in plantation jail and sand zone.

Block U (width of head) should be wide enough to make horizontal jump through one block gap easy. If it is too wide, the player character can't jump vertically through one block gap.

2021-11-16 08:05:06 If Block U is not wide enough, it becomes difficult to jump through this gap which is one block tall because Block U is used to detect collision with the top of this gap. mpv-shot0003

Block D (width of feet) should be narrow enough to squeeze through tight spots in sand zone and plantation. If it is too narrow, the player's feet could probably submerge into the ground often. If Block D is too wide, the player character can accidentally squeeze horizontally through one glock gap while falling down because Block D is used to detect collision with block gaps while falling down. Block D of the player character in nxengine-evo is so wide that it is so easy to horizontally slip through block gaps while falling down. In cave story engine 2 which is the original freeware codebase, it is not possible to accidentally slip through block gaps while falling down.

2021-11-16 08:05:17 Sand Zone mpv-shot0004 Plantation jail mpv-shot0005

inactive123 commented 2 years ago

Awesome work!