Users browsing this thread: 1 Guest(s)
Silhouettes

#9
Posts: 2,550
Threads: 98
Thanks Received: 148
Thanks Given: 159
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
Yeah what Catone said.

I'm not sure what your question is exactly or what you'd like to do so I'm just going to explain what's happening: the South Figaro one (Shadow walking to the pub) is purely done via entrance event, which you correctly noted. Entrance events get called every single time the map is loaded or refreshed. So when you first enter map 04B, South Figaro WoB, (using the level editor as a reference) the entrance event is EBA1. So looking at the event dump document at CA/EBA1 you'll see a check for an event bit:
CA/EBA7: C0 If ($1E80($00A) [$1E81, bit 2] is set), branch to $CAEBC1
That check will look like C0 0A 80 C1 EB 00 in the actual hex.

$00A is this one here: 00A 81:2 Saw Shadow heading toward the cafe.
If this bit is already set, which it does at the end of that part of the event after he is done walking to the cafe, then it will branch and skip that whole part of the code next time the map is loaded and branch instead to CA/EBC1 This is why and how it only does it once, the very first time.

And for the Mount Kolts ones, the event triggers, while it's the entrance event that is responsible for the shadowy silhouette coloring, the event triggers are what does the creation and movement of that NPC there in that case, among other things like doing a check bit as well so it only happens once. But yeah once you walk over it, it reads the code and that happens. Just enable event triggers to be viewed at the top of the level editor there to see them, they will be shown as green squares like Catone said. You can see their address and locate them in the event dump document the same way and do whatever you'd like to do in the code for them. Or just delete them in the level editor if you don't want them to trigger at all obviously.

Edit:
Oh and for moving/relocating events you will need to use the jump command, which is B2. You put B2 and the address you want to jump to where you have free space and it will do just that. B2 XX YY ZZ. Where XX is the last byte of the address, YY is the middle, and ZZ is the first byte...

So for instance B2 50 25 00 would have you jump to CA/2550. It gets reversed a little you see, going last byte of the address first, then the middle, than the bank. This system of how the address is called in the jump is called "Little Endian" I believe, in technical coding terms.

So to jump to the F1 bank, which is where there is tons of free space once you expand the ROM, that is '27'.
A bank is 00, B bank is 01, C bank is 02, and then all the way down at F1 it becomes 27. So a jump to F1/5000, would be B2 00 50 27. A jump to F2/1200 would be B2 00 12 28. etc.

Might sound confusing at first but after a couple practice runs it should become easy and make since.
You can move whole events this way or just use the technique if you need some extra room in some other event without moving the whole thing. In order to return back to the original code/address you just need to slap an FE byte at the end - that is the byte to return to the previous instruction, and/or also to just end an event. Or, sometimes you might need to do another B2 jump back to the correct address you jumped from, the following next bytes right after the jump, so the code continues to read seamlessly. This jumping to and back again can be thought of as a boomerang of sorts. It depends on various things on which way to jump back, but usually just putting an FE will do it. I can try to elaborate about this whole jumping technique or anything else more if needed, but this is really all there is to it. Tons of free space in the F banks once you expand the ROM.


We are born, live, die and then do the same thing over again.
Quote  



Messages In This Thread
Silhouettes - by justincreedon - 04-18-2015, 10:09 PM
RE: Silhouettes - by JWhiteLXXXIX - 04-19-2015, 12:25 AM
RE: Silhouettes - by Tenkarider - 04-19-2015, 01:53 AM
RE: Silhouettes - by Gi Nattak - 04-19-2015, 02:29 PM
RE: Silhouettes - by Tenkarider - 04-19-2015, 03:12 PM
RE: Silhouettes - by Catone - 04-19-2015, 04:38 PM
RE: Silhouettes - by justincreedon - 06-08-2015, 05:55 PM
RE: Silhouettes - by Catone - 06-08-2015, 09:51 PM
RE: Silhouettes - by Gi Nattak - 06-08-2015, 11:06 PM
RE: Silhouettes - by justincreedon - 06-09-2015, 12:58 AM
RE: Silhouettes - by Gi Nattak - 06-09-2015, 01:57 AM
RE: Silhouettes - by justincreedon - 06-09-2015, 09:03 PM
RE: Silhouettes - by justincreedon - 06-12-2015, 12:25 PM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite