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

Extend space available for message data #1837

Merged
merged 2 commits into from
Jan 8, 2023

Conversation

mracsys
Copy link

@mracsys mracsys commented Jan 1, 2023

Use both the Japanese and English message files for storing messages. The JP file is written to first, followed by the EN file, for a total space of 0x74000 bytes (up from 0x39000 bytes). Which file to load is determined by the segment number for a given text ID in the message table. 0x08 will load JP, 0x07 will load EN. More info on the message table format is at https://wiki.cloudmodding.com/oot/Text_Format.

Message 0xFFFC in the JP table is used by the title and file select screens with hard-coded offsets based on the vanilla JP file. This is accounted for at patch time by updating the hard-coded values to the new location in whichever file the message is placed.

Text shuffle appears to still work based on a quick test.

Testing the file split needs to either artificially decrease the JP text file size or add a lot more text to the game. Message relocation to the JP file works fine, so this should be OK but is untested as of submission. I'll take a look when I have more time to hunt for specific text in-game.

@fenhl
Copy link
Collaborator

fenhl commented Jan 1, 2023

This should fix #1572.

@Cuphat Cuphat added Component: Patching Affects the patching of the ROM Component: ASM/C Changes some internals of the ASM/C libraries labels Jan 2, 2023
@mracsys
Copy link
Author

mracsys commented Jan 2, 2023

Overflow to the EN file works now. PJ64, N64, and Wii VC were tested with the JP file restricted to 0x3A00 bytes.

@cjohnson57
Copy link
Collaborator

Will merging this preclude #1397? Or could it be adjusted to work the other way around if such a setting were enabled?

@mracsys
Copy link
Author

mracsys commented Jan 7, 2023

Other languages should be fine. The language bit isn't touched in this PR outside of telling the game what text file to load. Fonts are untouched. However, looking at how the other PR is writing to the ROM I don't think these are compatible as-is. They can be made compatible.

@cjohnson57 cjohnson57 merged commit c997714 into OoTRandomizer:Dev Jan 8, 2023
@mracsys mracsys deleted the extended-message-table branch February 15, 2023 00:15
@fenhl fenhl added this to the 8.0 milestone Mar 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: ASM/C Changes some internals of the ASM/C libraries Component: Patching Affects the patching of the ROM
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants