Jump to content

How do you force units to participate in a chapter?


God of Humility
 Share

Recommended Posts

Okay so I need to make it so characters other than the main lord are forced to be deployed in a chapter. I did a bit of research and found Nintenlord's Character Forcer Patch which I applied to my ROM but then the Readme says I should find a table at offset DF1000 to set which chapter forces which unit. When I go there, its full of 00, so empty data. I tried it on a clean ROM as well with the same result so I know its not my ROM that's the problem. Seeing this, I can only assume I'm going to have to build that pointer table myself. The thing is I have no idea how to do that or format it and my research has not given anything on this process.

So basically, I need to know how to build a pointer table at that offset and how to set up the data its pointing to so I can force characters to be deployed in certain chapters.

Link to comment
Share on other sites

if i recall correctly it points to a pointer table, so you need to make more pointers there

basically a pointer table is like

02 23 43 08 21 AB 67 08 and so on

the pointers correspond to a chapter each, so the first four bytes are for the Prologue, the next four for chapter 1, etc, etc.

So if you wanted to force characters 0x11, 0x13 and 0x1B in the prologue, you would do this at DF1000:

00 00 DB 08

then go to 0xDB0000 and write in 11 13 1B 00 (00 is the way that you say "STOP READING HERE")

and that should force those three characters

Likewise, if you wanted to do the same for chapter 1, you could just go:

00 00 00 00 00 00 DB 08

and do the same

or for chapter 2:

00 00 00 00 00 00 00 00 00 00 DB 08

and so on

of course, if you were forcing characters for the prologue and chapter 1 you would fill in those 00's accordingly

The position of the pointer corresponds to whatever it is in the Chapter Data Editor, mind you. So if for some crazy reason your Chapter 1 was at 0x5B, then to get to where you have to write the pointer, you can go 0x5B * 4 + DF1000 and write 00 00 DB 08 there. Of course, you don't have to put anything at DB0000, but that's just an example.

did that help at all? :):

Edited by Agro
Link to comment
Share on other sites

Very much so. Thanks a lot.

So this means that the chapter it references is linked to the pointer's position in relation to the beginning of the table. (For example: If I wanted to do this for Ch. 13, since it is the 16th chapter in the data, I would write the pointer at the 16th position on the table, so DF103C.) Just making sure I get this right.

Link to comment
Share on other sites

Actually, I think the 16th pointer would be DF1040 (use windows calculator!). If you're ever in doubt, it's never a bad idea to count them out, I guess. Just remember to start at 0, not 1. Or just give it a try, and if it stuffs up, you can just revert it back to what it was before.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...