Jump to content

Event Issues (Event n00b)


chase
 Share

Recommended Posts

I'm starting to mess around with creating custom events. I'm inserting new events for the Prologue. They're relinked and working fine in the game, but there are a few issues. The event code is as follows:

----------------

#define DISABLE_TUTORIALS

#include EAstdlib.event

#define Ally(Char) "CUSI Char 0x00"

#define Enemy(Char) "CUSI Char 0xA7"

#define NPC(Char) "CUSI Char 0x37"

EventPointerTable(0x06,Pointers)

org 0x01000000

Pointers:

POIN Turn_events

POIN Character_events

POIN Location_events

POIN Misc_events

POIN BallistaData BallistaData

POIN Bad Bad Bad Bad

POIN Good Good Good Good

POIN Opening_event Ending_event

Bad:

UNIT Batta Brigand 0x00 Level(10,Enemy,True) [3,2] [3,2] [0x1F,0x0,0x0,0x0] [0x3,0x3,0x9,0x20]

UNIT 0x88 Soldier Batta Level(5,Enemy,True) [2,6] [2,6] [ironSpear] [0x0,0x0,0x9,0x0]

UNIT 0x88 Brigand Batta Level(8,Enemy,True) [8,8] [8,8] [steelAxe] [0x0,0x0,0x9,0x0]

UNIT 0x88 Pirate Batta Level(9,Enemy,True) [9,9] [9,9] [KillerAxe] [0x0,0x0,0x9,0x0]

UNIT Empty

Good:

UNIT Hector HectorLord 0x00 Level(10,Ally,True) [2,3] [2,3] [KillerAxe,ChestKey] [00000000]

UNIT Empty

Turn_events:

TURN 0 Opening_event [01,00] 0x00 0x00 //Opening event

TURN 0 PreBattle [01,01] 0x00 0x00

TURN 0 Help [02,02] 0x00 0x00

CODE 0x00

PreBattle:

CODE $0C

ENDA

Help:

LOU1 KarelGroup

ENUN

ENDA

KarelGroup:

UNIT Karel Swordmaster Hector Level(5,Ally,True) [1,2] [1,2] [KillingEdge] [00000000]

UNIT 0x49 Myrmidon Hector Level(15,Ally,True) [1,3] [1,3] [steelSword] [00000000]

UNIT Guy Myrmidon Hector Level(15,Ally,True) [1,4] [1,4] [ironBlade] [00000000]

UNIT Empty

Character_events:

CHAR

Location_events:

Armory(ItemsList,6,6)

Seize(3,2)

CODE 0x00

Misc_events:

CauseGameOverIfLordDies

AREA 0x14 Backstab [0,6] [0,6]

AFEV

Opening_event:

LOU1 Good

ENUN

LOU1 Bad

ENUN

ENDA

Ending_event:

MNCH 0x3B8C9C

STAL 1

_0x1

ENDA

BallistaData:

BLST

MESSAGE Events end at offset currentOffset

//The map for this chapter is at offset: ????????

org 0x01000500

ItemsList:

SHLI PoisonAxe

CODE 0x00

Backstab:

Enemy(Karel)

Enemy(Guy)

Enemy(0x49)

CODE 0x00

---------------------

For the most part, the code works as expected. The game loads Hector, and on turn two Karel, Guy, and 0x49 (who turned out to be Damien) loaded correctly. However, the game doesn't end if Hector dies... He has the event trigger 0x65 as expected when viewed in Nightmare...

Also, the armory is working perfectly, but Seize(3,2) is not working at all.

I'm new to this, so thanks for any input you guys might have!

Link to comment
Share on other sites

What error messages does the event assembler give?

Location_events:

Armory(ItemsList,6,6)

Seize(3,2)

CODE 0x00

Misc_events:

CauseGameOverIfLordDies

AREA 0x14 Backstab [0,6] [0,6]

AFEV

Seize has the basic format "#define Seize(eventID,X,Y)"

You need an eventID. For seize events, this is typically 0x03, for reasons I don't feel like explaining.

You have a blank AFEV event, which is kind of weird...

I don't know why the CGOILD event isn't working but try putting the "manual" version to see if it somehow fixes it:

AFEV 0 0xCA749C 0x65

And be sure that Hector's event trigger is in the death quote editor, and the right one at that. In fact, this is more than likely the problem. I forgot how the details work between the two death quote editors but a detailed explanation of it can be found in the Ultimate Tutorial. I think the general idea is that player death quotes in Lyn's mode (or its replacement) need to be in Death Quote Editor 1 as opposed to 2, which is for Eliwood's mode. Just try having entries for Hector's death in both editors and play around until you find what works. As I said, my memory is somewhat vague on the specifics of this subject and I don't feel like opening any modules just to find out.

Link to comment
Share on other sites

What error messages does the event assembler give?

Seize has the basic format "#define Seize(eventID,X,Y)"

You need an eventID. For seize events, this is typically 0x03, for reasons I don't feel like explaining.

You have a blank AFEV event, which is kind of weird...

I don't know why the CGOILD event isn't working but try putting the "manual" version to see if it somehow fixes it:

AFEV 0 0xCA749C 0x65

And be sure that Hector's event trigger is in the death quote editor, and the right one at that. In fact, this is more than likely the problem. I forgot how the details work between the two death quote editors but a detailed explanation of it can be found in the Ultimate Tutorial. I think the general idea is that player death quotes in Lyn's mode (or its replacement) need to be in Death Quote Editor 1 as opposed to 2, which is for Eliwood's mode. Just try having entries for Hector's death in both editors and play around until you find what works. As I said, my memory is somewhat vague on the specifics of this subject and I don't feel like opening any modules just to find out.

OK, I have some conflicting info on the seize event. In Arch's tutorial, I find this:

----

Now, another one that gets a lot of use from me is the seize command.

Seize(event#,nameofevent,x-coordinate,y-coordinate)

As you should notice it follows the same basic setup as a village event. You can not include the nameofevent, which will result in it simply loading the event specified as the ending event. That would look like this:

Sieze(event#,x-coordinate,y-coordinate)

----

When I try to use "Seize(0x3, 3, 2)" the event assembler complains of finding no code match. In fact, in my "Main Code Helpers" file, I have:

#ifdef _FE7_

...

#define Seize(X,Y) "LOCA 3 [X,Y] 0xF"

#define Seize(eventID,offset,X,Y) "LOCA eventID offset [X,Y] 0xF"

#endif

-----

Any ideas on this?

Link to comment
Share on other sites

I solved my issues. Both seize and CauseGameOverIfLordDies are fixed by using Lyn_t instead of Hector. I'm a little confused as Hector both appears and has 0x65 in death quote editor PART 1, but it must have something to do with him not actually being in the tutorial...

Also as an additional note, Houses and Villages both require there to be a House and Village tile on the coordinates.

Link to comment
Share on other sites

@chase yes as do armories and shops... and arenas are programmed into the arena tile. XP

If the event assembler doesn't give an error, than it's most likely right, and something else is wrong. While I don't know why Hector's death doesn't go the game over scene (it generally works for me...), I know that only character 0x03 (tutorial Lyn) can seize in Lyn's mode, as can only Eliwood in Eliwood's mode, and Hector in Hector's mode. The only solutions I know to this are to make an assembly hack or to make your own version of seizing where you wait on a certain tile (as opposed to actually using the "seize" command).

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