Jump to content

FE7 - Emergency Code:


Lamia
 Share

Recommended Posts

I have an idea I've been toying around with for an FE7 project (as a side to my unfinished FE4 one) and I was wondering if people would have interest in what I have planned

The Emergency Codes from Phantasy Star Online 2 gave me the idea to make single maps with a singular, specific objective. There would be multiple patches, because I don't know how I'd have one patch access any of one's choosing from the beginning. (a hub chapter? I dunno how to do that, I have zero knowledge of FE7 event coding) Besides, there would also be a different main character for each, along with PSO2's Emergency Code announcer pointing out the specific objective. They'd be like Trial Maps, put simply, except with a predetermined set of characters.

My taste for challenge is high, so I would make maps that were both fair and balanced in difficulty, but needing some strategic attention. Here are a few objectives I have in mind:

Code: Escort

Escort the Bishop to an 'escape' tile through a dungeon. The only two bodyguards you get are Cavaliers. Rescuing is disabled. Every attack, player or enemy, will have 100% Hit. This objective I have given the most thought to, would be my first. The rest are up in the air, but the general idea is stated.

Code: Avoid

Keep from getting your unit or units killed, a survival map.

Code: Attack

Simple, clear out the map of enemies with the single unit you get.

Code: Protection

Defense map, everyone knows this one.

Code: Elimination

Clear out all of the endlessly-respawning enemies as quickly as possible. Akin to the Trial Map of the small room in FE9.

Code: Capture

Surround a certain unit on all four sides with your four characters. Obviously, since you need all four, any one death is a game over. (can this be coded in events? clarification requested)

Would anyone be interested in something like this?

Edited by Lamia
Link to comment
Share on other sites

Why not go for the full emergency code experience and have them occur in the middle of a chapter when you're busy hunting for the damn boss? I think Arch did a hub chapter so it shouldn't be tha hard to mimic.

Pretty sure we've resolved most things about having however many zillions of lords, too.

Edited by Izayoi
Link to comment
Share on other sites

it would be hilarious (and cool) to have randomly generated objectives during a chapter, but it's beyond the scope of my intent to have singular challenge maps

in any case, it's nice to have those settled, but what about my last concern?

Edited by Lamia
Link to comment
Share on other sites

You don't even need events to have any character death be a game over. In the death quote editor you set the event ID to 0x65 and their deaths will result in a game over provided you specify that much in the events (default would be yes).

Link to comment
Share on other sites

You don't even need events to have any character death be a game over. In the death quote editor you set the event ID to 0x65 and their deaths will result in a game over provided you specify that much in the events (default would be yes).

not the death part, I figured that would be easy; I meant the surrounding one unit on four sides = victory, or possibly having the unit move around

i.e. is there a trigger condition for Player brings unit to 'Location'.

Edited by Lamia
Link to comment
Share on other sites

lolwut I had a whole post here :/ Y u delete my shit SF. Well if you are interested in implementing the 6th one (the surrounding one), I should think it can be done with AREA events in a pretty hacky/buggy way, or a small amount of ASM, much more ideally. If you are interested in implementing it, shoot me a PM and I can explain my ASM idea, lol. (Can't be bothered typing it out again if nobody cares)

Edited by Jubby
Link to comment
Share on other sites

lolwut I had a whole post here :/ Y u delete my shit SF. Well if you are interested in implementing the 6th one (the surrounding one), I should think it can be done with AREA events in a pretty hacky/buggy way, or a small amount of ASM, much more ideally. If you are interested in implementing it, shoot me a PM and I can explain my ASM idea, lol. (Can't be bothered typing it out again if nobody cares)

I'll take you up on that if I get that far

Link to comment
Share on other sites

It would be super easy to write a function that returns whether a specific unit is surrounded on all four sides by units from the opposing force (the player's in this case I guess). I don't actually know what context the function would most appropriately be called from to give any suggestions for how to write said function, though.

Link to comment
Share on other sites

I'll take you up on that if I get that far

cool cool.

It would be super easy to write a function that returns whether a specific unit is surrounded on all four sides by units from the opposing force (the player's in this case I guess). I don't actually know what context the function would most appropriately be called from to give any suggestions for how to write said function, though.

basically this. With my limited scope of assembly and eventing I'd say the best I could probably do is make a check which you could call at the end of each turn or something, which'd return true if said unit was surrounded by player units. then you could just event it so it ends if the check returns true. obviously that's just me though so i'm sure somebody else could do better.

Link to comment
Share on other sites

i wouldn't know how to continually call the check (because I don't know how to lol) so I'd have to rig it through events as a turn based event, most likely. That's hack-y and not ideal; obviously, something like you said i.e. after each unit's movement would be best, but ¯\_(ツ)_/¯ I'm unfortunately working with my own hyper-limited knowledge of how shit works, so it's not possible for me :P

Link to comment
Share on other sites

If the unit is an enemy unit, would it perhaps be easier if you made some sort of condition/whateveryoucallit to check if that character has moved?

alternatively you could set up a location event for every single tile and have that event check if all the tiles around it have player units but zzzzz dat lag

Link to comment
Share on other sites

I would probably set a break on write to the "can't move anymore" flag (which is well documented btw) and hook that code for an easy way of identifying when a unit's turn has ended. Then it'd be easy to identify if the unit was a player unit by its unit ID, after which if it were a player I would iterate through all objective enemies and see if they are then surrounded, possibly using the latest change as a starting point as a small optimization.

After it's detected then I'd have the issue of how to signal that the chapter should end...

If there's no convenient way to call the chapter ending function within an appropriate context, there's already info I've uncovered which could be used to override the wait command to act as a seize command and end the chapter that way. This of course would be done if and only if the unit waiting there results in a target being surrounded. This doesn't really account for other methods of ending a unit's turn, though. If there's a way to fire events after a unit has ended their turn, perhaps by being on a specific location, then in the latter case the requirement could be modified to not care which tile they are on and fire regardless, thus providing a safe context to call the end chapter function from (and using the event system no less, which is undoubtedly simpler).

Edited by Izayoi
Link to comment
Share on other sites

If there's a way to fire events after a unit has ended their turn, perhaps by being on a specific location, then in the latter case the requirement could be modified to not care which tile they are on and fire regardless, thus providing a safe context to call the end chapter function from (and using the event system no less, which is undoubtedly simpler).

isn't there a chapter in lyn's mode that has those 'buttons' call up events when waiting on those tiles, along with that castle-capturing in hector's mode (or maybe this one was lords only I dunno)

plus reinforcement traps I think? (I haven't played through FE7 in ages)

Edited by Lamia
Link to comment
Share on other sites

i wouldn't know how to continually call the check

the routine would just return true if (said unit) is surrounded and false if not, no?

put an ASME in miscEvents and it'll check at the end of every unit's movement

EDIT:

for future reference, the pointers in each portion of event data (typically labeled "CharEvents, TurnEvents, MiscEvents, LocationEvents") are actually important; each one checks their conditions at a separate time

CharEvents and LocationEvents only are concerned with what commands appear at the end of a unit's movement (ie Attack/Items/Wait/etc); i've experimented with putting ASME's and such in there but i'm fairly certain they've never triggered.

the entries in the MiscEvents table are checked every time a unit's turn ends (so, right after before they turn gray). AREA events typically go in here because that's when you'd want to check them.

TurnEvents is probably the most flexible - they check every time the phase changes. the standard TURN event just returns true or false based on the phase (player/enemy/NPC). HOWEVER, you can actually put other things in here and they will be checked on phase change. you can actually put AREA and AFEV events in here, and they'll only trigger at the end of the current phase (example: a unit steps into an AREA event's range, and the event pointer is in TurnEvents - the event itself won't play until the end of the turn)

Edited by CT075
Link to comment
Share on other sites

Don't MiscEvents only get checked just before a unit goes grey? I thought that was half the issue with them.

...yeah you're actually right but in this case that would still be perfect
Link to comment
Share on other sites

the routine would just return true if (said unit) is surrounded and false if not, no?

put an ASME in miscEvents and it'll check at the end of every unit's movement

EDIT:

for future reference, the pointers in each portion of event data (typically labeled "CharEvents, TurnEvents, MiscEvents, LocationEvents") are actually important; each one checks their conditions at a separate time

CharEvents and LocationEvents only are concerned with what commands appear at the end of a unit's movement (ie Attack/Items/Wait/etc); i've experimented with putting ASME's and such in there but i'm fairly certain they've never triggered.

the entries in the MiscEvents table are checked every time a unit's turn ends (so, right after before they turn gray). AREA events typically go in here because that's when you'd want to check them.

TurnEvents is probably the most flexible - they check every time the phase changes. the standard TURN event just returns true or false based on the phase (player/enemy/NPC). HOWEVER, you can actually put other things in here and they will be checked on phase change. you can actually put AREA and AFEV events in here, and they'll only trigger at the end of the current phase (example: a unit steps into an AREA event's range, and the event pointer is in TurnEvents - the event itself won't play until the end of the turn)

this is a very good thing to know, lol. Thanks Cam <3

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...