FF6 Hacking
Pony Fantasy VI Remake - Printable Version

+- FF6 Hacking (https://www.ff6hacking.com/forums)
+-- Forum: Discussion Forums (https://www.ff6hacking.com/forums/forum-5.html)
+--- Forum: Dragons' Den (https://www.ff6hacking.com/forums/forum-13.html)
+--- Thread: Pony Fantasy VI Remake (/thread-3106.html)



RE: Pony Fantasy VI Remake - DrakeyC - 09-12-2016

Oh, there is. I'd question how I missed it but then I'm reminded how long this thread it. Sad

EDIT - The bit in question is 1E9B, but the level editor won't let me change it on the NPC for some reason.


RE: Pony Fantasy VI Remake - Tenkarider - 09-12-2016

do you know people what would be cool in general? making some asm to NPC flags so that if one certain flag is set(which i'll call mirror flag) then the NPC appears when the related event bit is clear, instead of when it's set.


RE: Pony Fantasy VI Remake - DrakeyC - 09-13-2016

Yeah. As-is I couldn't figure out from the event dump if B0 or C0 is for set or cleared bits.

And this one above still dislikes me after I gave it the night to think it over. Sad


RE: Pony Fantasy VI Remake - Rydel - 09-13-2016

Have you tried setting it to 1E9B using a hex editor instead?


RE: Pony Fantasy VI Remake - DrakeyC - 09-13-2016

I don't know how to via Hex, actually.

My next step, if we can't get the event bit right for the NPC, is to put an event to trigger at the entrance of the room, where if the event bit is set, the NPC is created. A more complex and easily screwed up solution, though, so I'd prefer to just try and get the simple way done instead.


RE: Pony Fantasy VI Remake - Rydel - 09-13-2016

The NPC Data starts at 41F52. Each NPC is 8 bytes. The first two bytes and the highest 2 bits of the 3rd byte are the event flag in little Endian.

So, you'll locate your NPC and change the first two bytes to 9B 1E

If you're having trouble finding the NPC, the 4th byte is the X position and the 5th byte is the Y position, which should be easier to search for.
If you're editing an existing NPC you didn't need, there's a list of their addresses at http://www.angelfire.com/al2/imzogelmo/NPCDataTxt.txt


RE: Pony Fantasy VI Remake - DrakeyC - 09-13-2016

Well, found the precise byte I need, but not sure how to change it now, or even if I can.

[Image: 2uz1YII0sgvx.png]

That's the byte. But at 1EE0, the lowest numerical value I can put in LE, it goes to 00. The 1F does not seem to correspond directly to the 1E, seems it goes with the 20 for my NPC's 31, 32 position. The byte highlighted also doesn't seem a direct Hex-Dec conversion - 1F14 in LE is the entry for the 681F there. So I'm understanding this right, 1EE0 equals 00 event byte, the lowest the system can do.


RE: Pony Fantasy VI Remake - Tenkarider - 09-13-2016

@Rydel: the 2 highest bits of the 3rd byte are used in that way... but what about the other 6 bits? are they unused? actually the real question is if there is any unused bit among those 8 bytes used for NPCs...?


RE: Pony Fantasy VI Remake - madsiur - 09-14-2016

Event bits crash course:

A byte is 8 bits!
Event Bits: $1E80-$1EDF
NPC bits: $1EE0-$1F3F

You need to set the NPC bit in an event plus setting it on the NPC in order to make all NPC having that bit appearing:

Code:
D0 : 2    : Set event bit $7E1E80 + A/8 (1st set)
D1 : 2    : Clear event bit $7E1E80 + A/8 (1st set)
D2 : 2    : Set event bit $7E1EA0 + A/8 (2nd set)
D3 : 2    : Clear event bit $7E1EA0 + A/8 (2nd set)
D4 : 2    : Set event bit $7E1EC0 + A/8 (3rd set)
D5 : 2    : Clear event bit $7E1EC0 + A/8 (3nd set)
D6 : 2    : Set event bit $7E1EE0 + A/8 (4th set)
D7 : 2    : Clear event bit $7E1EE0 + A/8 (4th set)
D8 : 2    : Set event bit $7E1F00 + A/8 (5th set)
D9 : 2    : Clear event bit $7E1F00 + A/8 (5th set)
DA : 2    : Set event bit $7E1F20 + A/8 (6th set)
DB : 2    : Clear event bit $7E1F20 + A/8 (6th set)
DC : 2    : Set event bit $7E1F40 + A/8 (7th set)
DD : 2    : Clear event bit $7E1F40 + A/8 (7th set)

Setting bit $1F02:3 for an NPC. You need to use command D8 in this case since it covers $1F00:0 to $1F1F:7 (32 bytes * 8 bits = 256 bits, byte 2 of command D8 has 256 possible values. It's not a coincidence). So $1F02 - $1F00 = 2 byte = 16 bits + 3 extra bits on your byte = 19 bits = $13. You command is D8 13. Once it is set in an event your NPC appears. No need to set it manually on a NPC data, FF6LE works great for that!


RE: Pony Fantasy VI Remake - DrakeyC - 09-14-2016

I'm sorry, that was a bit overwhelming, but if I understood correctly, there is no way to assign bit 1E9B to an NPC, since it's the wrong kind of bit?

In that case, I would want to add a jump to the completion of Cyan's soul, and make it Set a new NPC bit there to make the NPC appear? What NPC bits are free to use for this?