I started reverse engineering Silent Hill 2’s cursor because of an issue that asked for a way to hide the cursor while using a controller. Through research, I came up with a clever solution for this request, which was to auto-hide the mouse after a few seconds of inactivity. That way, both controller and keyboard users could benefit from this feature if they desired to use it. Using the knowledge and insight I gained from developing this auto-hide mouse feature, it came natural to also try and restore the use of the mouse in menus that inherently lacked it; namely the pause screen and the memo list screen.

Visualizing the hitboxes in game Great concept design from Polymega
Screenshots taken while developing the feature.

To handle mouse interaction, I wrote a custom solution accounting for changes in game resolution, and handled interactions with the game by identifying the addresses for various indexes and updating them accordingly.