chase Posted November 18, 2010 Share Posted November 18, 2010 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! Quote Link to comment Share on other sites More sharing options...
Crimson Red Posted November 18, 2010 Share Posted November 18, 2010 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. Quote Link to comment Share on other sites More sharing options...
chase Posted November 18, 2010 Author Share Posted November 18, 2010 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? Quote Link to comment Share on other sites More sharing options...
chase Posted November 21, 2010 Author Share Posted November 21, 2010 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. Quote Link to comment Share on other sites More sharing options...
Crimson Red Posted November 22, 2010 Share Posted November 22, 2010 @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). Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.