Skip to content

Fix EJob028 pointer corruption and Experimental First Person mode#87

Merged
wagrenier merged 3 commits into
Mikompilation:mainfrom
HikikoMarmy:main
Jun 23, 2026
Merged

Fix EJob028 pointer corruption and Experimental First Person mode#87
wagrenier merged 3 commits into
Mikompilation:mainfrom
HikikoMarmy:main

Conversation

@HikikoMarmy

Copy link
Copy Markdown
Contributor

EJob028 Pointer Fix

The original code builds fly command script addresses relative to the
0x7e0000 PS2 command segment. The PC port was converting 0x7e0000 to a
host pointer first, then OR-ing that host pointer with 16-bit command
offsets. This could produce invalid/wrong host addresses and cause fly
objects to execute the wrong command stream and crash MikuPan.

Experimental First Person Mode

This adds an optional first-person mode that can be enabled from the ImGui settings menu. The mode is implemented as a dedicated MikuPan first-person module rather than reusing PMODE_FINDER, allowing it to keep normal movement speed while using first-person camera controls.

The original code builds fly command script addresses relative to the
0x7e0000 PS2 command segment. The PC port was converting 0x7e0000 to a
host pointer first, then OR-ing that host pointer with 16-bit command
offsets. This could produce invalid/wrong host addresses and cause fly
objects to execute the wrong command stream.

This fixes a crash when fighting the Family Master during Night 3.
Adds an optional First Person mode via the ImGui Debug > Camera menu
@wagrenier wagrenier merged commit 1f620c1 into Mikompilation:main Jun 23, 2026
4 checks passed
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.

2 participants