Homasa Posted April 17, 2016 Share Posted April 17, 2016 Nothing's really jumping out at me. Are the tile changes inserted correctly? Hmm... This looks like it should work. It might be worth starting your conditional IDs at 0x00. Conditional IDs and Event IDs are separate from each other. Sort of a stab in the dark, though. In the IFCA syntax, which one are conditional IDs and which one are event IDs ? Are they all conditional or some are considered as event ? Plus, one thing that's been budging me is the signification of IFCA IDs. I presume the first parameter corresponds to the ID you give to IFCA, but what about the other one ? Quote Link to comment Share on other sites More sharing options...
Aura Wolf Posted April 17, 2016 Share Posted April 17, 2016 (edited) In the IFCA syntax, which one are conditional IDs and which one are event IDs ? Are they all conditional or some are considered as event ? Plus, one thing that's been budging me is the signification of IFCA IDs. I presume the first parameter corresponds to the ID you give to IFCA, but what about the other one ? From the Event Assembler Language: IFCA Unknown *Conditional ID* Character Afaik, we keep the first parameter of IFCA as 0x00 because we're not sure what it does (unless someone already messed with it and found the changes it does). ConradVillage: IFCA 0x00 0x12 Conrad VillageEventMoney(0x847,0x02,5000) ELSE 0x13 ENIF 0x12 VillageEventMoney(0x846,0x02,5000) ENIF 0x13 MAC1 0x00 0 ENDA From the Main Code Helpers in the EA Standard Library: #define VillageEventMoney(textID,background,money) "MUSI; FADI 16; HIDEMAP; BACG background; FADU 16; SHOWMAP; TEX1 textID; REMA; MUNO; _FADU2; SHOWMAP; MONE 0 money; ENDA" The extra ENDAs (specifically, the one in VillageEventMoney with 0x847) marks those points as the end of ConradVillage. There are three things (possibly more?) you could do to fix this: - Replace each macro with all of the code it "represents" except for the ENDA. I don't think this is the best option, but it's there! - Make another macro that looks similar to that, but change the name to something like "VillageEventMoneyCond" and remove the ENDA. - Put each VillageEventMoney in a separate label, and go to each label with CALL. EDIT: A fourth thing (probably the most direct approach) is just delete the ENDA (and the semicolon before it) in that macro. You would have to remember that ENDA is no longer a part of that macro, but you might find that better anyways. Edited April 17, 2016 by Aura Wolf Quote Link to comment Share on other sites More sharing options...
Homasa Posted April 17, 2016 Share Posted April 17, 2016 From the Event Assembler Language: IFCA Unknown *Conditional ID* Character Afaik, we keep the first parameter of IFCA as 0x00 because we're not sure what it does (unless someone already messed with it and found the changes it does). Right, got it. The extra ENDAs (specifically, the one in VillageEventMoney with 0x847) marks those points as the end of ConradVillage. There are three things (possibly more?) you could do to fix this: - Replace each macro with all of the code it "represents" except for the ENDA. I don't think this is the best option, but it's there! - Make another macro that looks similar to that, but change the name to something like "VillageEventMoneyCond" and remove the ENDA. - Put each VillageEventMoney in a separate label, and go to each label with CALL. EDIT: A fourth thing (probably the most direct approach) is just delete the ENDA (and the semicolon before it) in that macro. You would have to remember that ENDA is no longer a part of that macro, but you might find that better anyways. That's it... Yeah I opted for your last solution (removing the ENDA from the Main Code Helpers) and it works perfectly. Thanks a lot ! Quote Link to comment Share on other sites More sharing options...
Bamstacks Posted April 23, 2016 Share Posted April 23, 2016 (edited) I'm getting some really weird glitches... I've isolated one of the problems as a MOVE command, in which I can't figure out what's wrong, and the other I am utterly flabbergasted by. For some reason, the opening event is repeating after every single turn after turn 2, where my conditional event occurs, which works fine except for the MOVE command. It seems as if the initial beginning turn event that starts it is being repeated, as it's the only thing that segues to the opening event. I even gave the opening turn event an eventID, but it still happens. Here's the full event file. Lucius is the enemy thief, for reference. Another problem is map changes, which aren't activating. I used Tiled and the ID's for the map changes are 1 and 2. Also, I modified the chest macros to include eventIDs. I'm bolding the problematic parts. #define DISABLE_TUTORIALS #include EAstdlib.event EventPointerTable(0x06,Pointers) ORG 0xD80000 Pointers: POIN Turn_events POIN Character_events POIN Location_events POIN Misc_events POIN TrapData TrapData POIN Brother POIN Bad Bad Bad Bad POIN Good Good Good Good POIN Opening_event Ending_event Good: UNIT 0x03 0x28 0x03 Level(1, Ally, 0) [7,0] [7,1] [0x01, 0x14, 0x6B] NoAI UNIT Bad: UNIT 0x10 0x3C 0x10 Level(1, Enemy, 0) [7,6] [7,7] [0x01, 0x6A] StealFromChests UNIT Brother: UNIT Raven Mercenary 0x00 Level(8, NPC, True) [13,1] [13,1] [steelSword] NoAI Turn_events: TurnEventPlayer(0x0A,Opening_event,1) TurnEventEnemy(0x00,Brother_event,2) End_MAIN Character_events: End_MAIN Location_events: House(0x03,House_event,3,5) Chest(0x08,0x17,10,13) ChestMoney(0x01,5000,1,13) End_MAIN Misc_events: CauseGameOverIfLordDies DefeatAll(Ending_event) End_MAIN TrapData: End_MAIN Opening_event: OOBB MUS1 0x44 LOU1 Good ENUN FADI 10 BACG 0x04 FADU 10 TEX1 0x801 REMA LOU1 Bad ENUN CAM1 Lucius FADI 10 BACG 0x04 MUS2 0x0C FADU 10 TEX1 0x800 REMA CURF [5,11] MURE 5 ENDA House_event: FADI 10 MUSI BACG 0x01 FADU 10 TEX1 0x0802 REMA MUNO Brother_event: IFET 0x04 0x03 LOU1 Brother FADI 10 BACG 0x2A FADU 10 TEX1 0x803 REMA MOVE Raven [7,7] FADI 10 BACG 0x04 FADU 10 TEX1 0x804 REMA TurnAlly(Raven) ELSE 0x05 ENIF 0x04 LOU1 Brother FADI 10 BACG 0x2A FADU 10 TEX1 0x803 REMA MOVE Raven [7,7] FADI 10 BACG 0x04 FADU 10 TEX1 0x807 REMA ENIF 0x05 ENDA Ending_event: IFET 0x06 0x03 FADI 10 BACG 0x04 FADU 10 TEX1 0x805 REMA MOVE Raven [3,5] DISA Raven FADI 10 BACG 0x04 FADU 10 REMA MoveOff(0x03,5,0) ELSE 0x07 ENIF 0x06 FADI 10 BACG 0x04 FADU 10 TEX1 0x808 REMA MoveOff(0x03,5,0) ENDA MESSAGE Events end at offset currentoffset Edited April 23, 2016 by Bamstacks Quote Link to comment Share on other sites More sharing options...
Primefusion Posted April 23, 2016 Share Posted April 23, 2016 Your 'Brother' unit group doesn't have an empty 'UNIT' to end the group. MOVE commands should have an ENUN after them to avoid weird side-effects. Quote Link to comment Share on other sites More sharing options...
Bamstacks Posted April 23, 2016 Share Posted April 23, 2016 Okay, thank you! Nice catch. That fixed the move command, but the weird glitch with the opening event repeating is still happening. Do you have any idea what could be causing that? Quote Link to comment Share on other sites More sharing options...
Primefusion Posted April 23, 2016 Share Posted April 23, 2016 You'll want to change the event IDs you're using. 0x01 through 0x05 are reserved by the game for internal use. Also, your house event doesn't have an ENDA and some of your LOU1 commands don't have ENUNs after them. I tinkered around with your events after noticing these issues and I didn't have any weird glitches happen on my end. Here's my modified version of your code. #define DISABLE_TUTORIALS #include EAstdlib.event EventPointerTable(0x06,Pointers) ORG 0xD80000 Pointers: POIN Turn_events POIN Character_events POIN Location_events POIN Misc_events POIN TrapData TrapData POIN Brother POIN Bad Bad Bad Bad POIN Good Good Good Good POIN Opening_event Ending_event Good: UNIT 0x03 0x28 0x03 Level(1, Ally, 0) [7,0] [7,1] [0x01, 0x14, 0x6B] NoAI UNIT Bad: UNIT 0x10 0x3C 0x10 Level(1, Enemy, 0) [7,6] [7,7] [0x01, 0x6A] StealFromChests UNIT Brother: UNIT Raven Mercenary 0x00 Level(8, NPC, True) [13,1] [13,1] [SteelSword] Guard UNIT // ----------------------- ADDED Turn_events: TurnEventPlayer(0x0A,Opening_event,1) TurnEventEnemy(0x00,Brother_event,2) End_MAIN Character_events: End_MAIN #define GotChest 0x0D Location_events: House(0x0B,House_event,3,5) // Change Event ID; 0x01 is reserved Chest(0x08,0x17,10,13) ChestMoney(GotChest,5000,1,13) // Change Event ID; 0x03 is reserved End_MAIN Misc_events: CauseGameOverIfLordDies DefeatAll(Ending_event) End_MAIN TrapData: End_MAIN Opening_event: OOBB MUS1 0x44 LOU1 Good ENUN FADI 10 BACG 0x04 FADU 10 TEX1 0x801 REMA LOU1 Bad ENUN CAM1 Lucius FADI 10 BACG 0x04 MUS2 0x0C FADU 10 TEX1 0x800 REMA CURF [5,11] MURE 5 ENDA House_event: FADI 10 MUSI BACG 0x01 FADU 10 TEX1 0x0802 REMA MUNO ENDA // ----------------------- ADDED Brother_event: IFET 0x04 GotChest LOU1 Brother ENUN // ----------------------- ADDED FADI 10 BACG 0x2A FADU 10 TEX1 0x803 REMA MOVE Raven [6,6] ENUN // ----------------------- ADDED FADI 10 BACG 0x04 FADU 10 TEX1 0x804 REMA TurnAlly(Raven) ELSE 0x05 ENIF 0x04 LOU1 Brother ENUN // ----------------------- ADDED FADI 10 BACG 0x2A FADU 10 TEX1 0x803 REMA MOVE Raven [6,6] ENUN // ----------------------- ADDED FADI 10 BACG 0x04 FADU 10 TEX1 0x807 REMA ENIF 0x05 ENDA Ending_event: IFET 0x06 GotChest FADI 10 BACG 0x04 FADU 10 TEX1 0x805 REMA MOVE Raven [3,5] ENUN // ----------------------- ADDED DISA Raven FADI 10 BACG 0x04 FADU 10 REMA MoveOff(0x03,5,0) ELSE 0x07 ENIF 0x06 FADI 10 BACG 0x04 FADU 10 TEX1 0x808 REMA MoveOff(0x03,5,0) ENDA MESSAGE Events end at offset currentoffset Quote Link to comment Share on other sites More sharing options...
Bamstacks Posted April 24, 2016 Share Posted April 24, 2016 Oh, I didn't know those were reserved by the game. I need to remember my ENUNs as well. Thank you so much for helping! Quote Link to comment Share on other sites More sharing options...
Brendor Posted April 24, 2016 Share Posted April 24, 2016 Is there any way to supply parameters for ASMCs? It looks like right now you have to call different routines just for different parameters eg money setting. I know SETVAL is a thing, but I'm looking for FE7 specifically. Thanks folks. Quote Link to comment Share on other sites More sharing options...
Bamstacks Posted April 24, 2016 Share Posted April 24, 2016 One more thing: I want to move my main lord off the screen to end the chapter, but when she moves off, she clones herself; one moves off, and one stays in place with the running animation. How could I fix this? MoveOff contains a MOVE, ENUN, then a DISA, so I don't know what could be causing it. Quote Link to comment Share on other sites More sharing options...
Primefusion Posted April 24, 2016 Share Posted April 24, 2016 Is there any way to supply parameters for ASMCs? It looks like right now you have to call different routines just for different parameters eg money setting. I know SETVAL is a thing, but I'm looking for FE7 specifically. Thanks folks. Pretty sure there isn't (at least not in the documentation). All of the ASMCs that I've seen have been parameterless functions anyways. Like "IsItThePlayerPhase()" or "ShowFireRingAnimation()". One more thing: I want to move my main lord off the screen to end the chapter, but when she moves off, she clones herself; one moves off, and one stays in place with the running animation. How could I fix this? MoveOff contains a MOVE, ENUN, then a DISA, so I don't know what could be causing it. If the lord is the currently active character you'll need to do some under-the-cover stuff. Fade Out, clear all units, fade in, show dialogue with a background, fade out, load a new unit group with the lord, fade in, and have the lord move off. At least, that's the first implementation that comes to mind. Trying to move the unit that triggered the ending event around can cause weird stuff, like cloning. Quote Link to comment Share on other sites More sharing options...
Bamstacks Posted May 14, 2016 Share Posted May 14, 2016 (edited) If I wanted to change the alliance of several generic units, how would I do that? With the macro TurnNPC, I can change the alliance of a character, but that only changes the alliance for 1 of the generics. Is there a better way to do this? Does the CUSN code allow you to specify the unit on a specific pair of coordinates? Also, reverting a tile change isn't working for me. MAC1 0x00 activates it, and supposedly MAC1 0x08 reverts it, but it isn't reverting it in my map. Here are the full events. //Made by markyjoe1990 of Youtube //Modified by Nintenlord #define DISABLE_TUTORIALS #include EAstdlib.event EventPointerTable(0x06,Pointers) ORG 0xD80000 Pointers: POIN Turn_events POIN Character_events POIN Location_events POIN Misc_events POIN TrapData TrapData POIN Mercenaries Reinforcements POIN MainGroup SecondGroup MilltonnteSoldiers POIN ColbertvsBatta ReinforcementsCome MakeAllies POIN OldManDaughter POIN Opening_event Ending_event MainGroup: UNIT Verbrannt Archer Verbrannt Level(12,Ally,False) [24,2] [24,2] [steelBow,Vulnerary] NoAI UNIT Verdan Mercenary Verbrannt Level(11,Ally,False) [24,3] [24,3] [steelSword] NoAI UNIT Taylor Lancer Verbrannt Level(13,Ally,False) [23,3] [23,3] [steelLance, Elixir] NoAI UNIT Darius Ranger Verbrannt Level(10,Ally,False) [22,2] [22,2] [ironBow,Vulnerary] NoAI UNIT SecondGroup: UNIT Eoin Missionary Verbrannt Level(9, Ally, False) [24,4] [24,4] [Mend] NoAI UNIT Eliza PegasusKnight Verbrannt Level(1,Ally,False) [25,4] [25,4] [steelLance] NoAI UNIT Thatch Mercenary Verbrannt Level(11,Ally,False) [22,3] [22,3] [steelSword] NoAI UNIT Colbert Warrior Verbrannt Level(5,Ally,False) [22,4] [22,4] [steelAxe,SteelBow] NoAI UNIT MilltonnteSoldiers: UNIT MilltonnteC Lancer 0x00 Level(20,Ally,True) [21,9] [21,9] [silverLance] Guard UNIT PMilltonnteC General 0x00 Level(1,Ally,True) [25,5] [25,5] [ironLance] Guard UNIT PMilltonnteC Paladin 0x00 Level(1,Ally,True) [26,6] [26,6] [steelSword, SteelLance] Guard UNIT Mercenaries: UNIT Merc Mercenary 0x00 Level(20,Enemy,True) [6,1] [6,1] [silverSword] PursueWithoutHeed UNIT Merc Mercenary 0x00 Level(20,Enemy,True) [5,1] [5,1] [silverSword] PursueWithoutHeed UNIT Merc Mercenary 0x00 Level(20,Enemy,True) [7,1] [7,1] [silverSword] PursueWithoutHeed UNIT Merc Fighter 0x00 Level(20,Enemy,True) [7,0] [7,0] [silverAxe] PursueWithoutHeed UNIT Merc Fighter 0x00 Level(20,Enemy,True) [8,0] [8,0] [silverAxe] PursueWithoutHeed UNIT Merc Archer 0x00 Level(20,Enemy,True) [5,0] [5,0] [silverBow] PursueWithoutHeed UNIT Batta Swordmaster 0x00 Level(2,Enemy,False) [3,0] [3,0] [KillingEdge] PursueWithoutHeed UNIT Reinforcements: UNIT PMerc Hero 0x00 Level(1,Enemy,True) [6,1] [6,1] [steelAxe] PursueWithoutHeed UNIT PMerc Warrior 0x00 Level(1,Enemy,True) [7,1] [7,1] [silverAxe] PursueWithoutHeed UNIT PMerc Huntsman 0x00 Level(1,Enemy,True) [5,1] [5,1] [silverBow] PursueWithoutHeed UNIT Turn_events: OpeningTurnEvent(Opening_event) TurnEventPlayer(0x09,ReinforcementsCome,3) END_MAIN Character_events: END_MAIN Location_events: Chest(0,SilverSword,29,10) ChestMoney(0,1000,32,10) House(0x07,OldManDaughter,2,15) END_MAIN Misc_events: CauseGameOverIfLordDies DefeatAll(Ending_event) AREA 0x08 MakeAllies [20,13] [21,13] END_MAIN Opening_event: OOBB MUS1 FriendshipandAdventure LOU1 MilltonnteSoldiers ENUN LOU1 MainGroup ENUN FADI 10 BACG InsideCastle FADU 10 TEX1 0x800 REMA MOVE Darius [4,9] MOVE Verbrannt [4,7] MOVE Taylor [5,8] MOVE Verdan [6,8] ENUN MOVE [21,9] [21,10] ENUN MAC1 1 0x00 LOU1 SecondGroup ENUN FADI 10 BACG InsideCastle FADU 10 TEX1 0x801 REMA MOVE Thatch [20,10] MOVE Colbert [20,9] MOVE Eoin [21,9] MOVE Eliza [20,8] ENUN MAC1 1 0x08 MOVE Thatch [4,10] MOVE Colbert [7,8] MOVE Eoin [5,9] MOVE Eliza [8,11] ENUN MAC1 1 0x00 FADI 10 BACG 0x2A FADU 10 TEX1 0x802 REMA LOU1 Mercenaries ENUN FADI 10 BACG 0x23 FADU 10 TEX1 0x803 REMA CAM1 Verbrannt TEX1 0x804 REMA MOVE Colbert [4,0] ENUN FIGH Colbert Batta ColbertvsBatta [0x00,0x00,0x00,0x00] MOVE Colbert [7,8] ENUN TEX1 0x807 REMA TurnNPC(MilltonnteC) ENDA ColbertvsBatta: BLDT 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 BLDT 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01 0 0 1 0 0 0 0 15 EndOfBattle ReinforcementsCome: LOU1 Reinforcements ENUN ENDA MakeAllies: FADI 10 BACG InsideCastle FADU 10 TEX1 0x806 REMA TurnAlly(MilltonnteC) ENDA OldManDaughter: FADI 10 BACG Housewithfireplace FADU 10 TEX1 0x805 REMA ITGV KillingEdge ENDA Ending_event: MNCH(0x01) ENDA TrapData: ENDTRAP MESSAGE Events end at offset currentOffset //The map for this chapter is at offset: ???????? Edited May 15, 2016 by Bamstacks Quote Link to comment Share on other sites More sharing options...
Crazycolorz5 Posted May 17, 2016 Share Posted May 17, 2016 If I wanted to change the alliance of several generic units, how would I do that? With the macro TurnNPC, I can change the alliance of a character, but that only changes the alliance for 1 of the generics. Is there a better way to do this? Does the CUSN code allow you to specify the unit on a specific pair of coordinates? Also, reverting a tile change isn't working for me. MAC1 0x00 activates it, and supposedly MAC1 0x08 reverts it, but it isn't reverting it in my map. Here are the full events. //Made by markyjoe1990 of Youtube //Modified by Nintenlord #define DISABLE_TUTORIALS #include EAstdlib.event EventPointerTable(0x06,Pointers) ORG 0xD80000 Pointers: POIN Turn_events POIN Character_events POIN Location_events POIN Misc_events POIN TrapData TrapData POIN Mercenaries Reinforcements POIN MainGroup SecondGroup MilltonnteSoldiers POIN ColbertvsBatta ReinforcementsCome MakeAllies POIN OldManDaughter POIN Opening_event Ending_event MainGroup: UNIT Verbrannt Archer Verbrannt Level(12,Ally,False) [24,2] [24,2] [steelBow,Vulnerary] NoAI UNIT Verdan Mercenary Verbrannt Level(11,Ally,False) [24,3] [24,3] [steelSword] NoAI UNIT Taylor Lancer Verbrannt Level(13,Ally,False) [23,3] [23,3] [steelLance, Elixir] NoAI UNIT Darius Ranger Verbrannt Level(10,Ally,False) [22,2] [22,2] [ironBow,Vulnerary] NoAI UNIT SecondGroup: UNIT Eoin Missionary Verbrannt Level(9, Ally, False) [24,4] [24,4] [Mend] NoAI UNIT Eliza PegasusKnight Verbrannt Level(1,Ally,False) [25,4] [25,4] [steelLance] NoAI UNIT Thatch Mercenary Verbrannt Level(11,Ally,False) [22,3] [22,3] [steelSword] NoAI UNIT Colbert Warrior Verbrannt Level(5,Ally,False) [22,4] [22,4] [steelAxe,SteelBow] NoAI UNIT MilltonnteSoldiers: UNIT MilltonnteC Lancer 0x00 Level(20,Ally,True) [21,9] [21,9] [silverLance] Guard UNIT PMilltonnteC General 0x00 Level(1,Ally,True) [25,5] [25,5] [ironLance] Guard UNIT PMilltonnteC Paladin 0x00 Level(1,Ally,True) [26,6] [26,6] [steelSword, SteelLance] Guard UNIT Mercenaries: UNIT Merc Mercenary 0x00 Level(20,Enemy,True) [6,1] [6,1] [silverSword] PursueWithoutHeed UNIT Merc Mercenary 0x00 Level(20,Enemy,True) [5,1] [5,1] [silverSword] PursueWithoutHeed UNIT Merc Mercenary 0x00 Level(20,Enemy,True) [7,1] [7,1] [silverSword] PursueWithoutHeed UNIT Merc Fighter 0x00 Level(20,Enemy,True) [7,0] [7,0] [silverAxe] PursueWithoutHeed UNIT Merc Fighter 0x00 Level(20,Enemy,True) [8,0] [8,0] [silverAxe] PursueWithoutHeed UNIT Merc Archer 0x00 Level(20,Enemy,True) [5,0] [5,0] [silverBow] PursueWithoutHeed UNIT Batta Swordmaster 0x00 Level(2,Enemy,False) [3,0] [3,0] [KillingEdge] PursueWithoutHeed UNIT Reinforcements: UNIT PMerc Hero 0x00 Level(1,Enemy,True) [6,1] [6,1] [steelAxe] PursueWithoutHeed UNIT PMerc Warrior 0x00 Level(1,Enemy,True) [7,1] [7,1] [silverAxe] PursueWithoutHeed UNIT PMerc Huntsman 0x00 Level(1,Enemy,True) [5,1] [5,1] [silverBow] PursueWithoutHeed UNIT Turn_events: OpeningTurnEvent(Opening_event) TurnEventPlayer(0x09,ReinforcementsCome,3) END_MAIN Character_events: END_MAIN Location_events: Chest(0,SilverSword,29,10) ChestMoney(0,1000,32,10) House(0x07,OldManDaughter,2,15) END_MAIN Misc_events: CauseGameOverIfLordDies DefeatAll(Ending_event) AREA 0x08 MakeAllies [20,13] [21,13] END_MAIN Opening_event: OOBB MUS1 FriendshipandAdventure LOU1 MilltonnteSoldiers ENUN LOU1 MainGroup ENUN FADI 10 BACG InsideCastle FADU 10 TEX1 0x800 REMA MOVE Darius [4,9] MOVE Verbrannt [4,7] MOVE Taylor [5,8] MOVE Verdan [6,8] ENUN MOVE [21,9] [21,10] ENUN MAC1 1 0x00 LOU1 SecondGroup ENUN FADI 10 BACG InsideCastle FADU 10 TEX1 0x801 REMA MOVE Thatch [20,10] MOVE Colbert [20,9] MOVE Eoin [21,9] MOVE Eliza [20,8] ENUN MAC1 1 0x08 MOVE Thatch [4,10] MOVE Colbert [7,8] MOVE Eoin [5,9] MOVE Eliza [8,11] ENUN MAC1 1 0x00 FADI 10 BACG 0x2A FADU 10 TEX1 0x802 REMA LOU1 Mercenaries ENUN FADI 10 BACG 0x23 FADU 10 TEX1 0x803 REMA CAM1 Verbrannt TEX1 0x804 REMA MOVE Colbert [4,0] ENUN FIGH Colbert Batta ColbertvsBatta [0x00,0x00,0x00,0x00] MOVE Colbert [7,8] ENUN TEX1 0x807 REMA TurnNPC(MilltonnteC) ENDA ColbertvsBatta: BLDT 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 BLDT 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01 0 0 1 0 0 0 0 15 EndOfBattle ReinforcementsCome: LOU1 Reinforcements ENUN ENDA MakeAllies: FADI 10 BACG InsideCastle FADU 10 TEX1 0x806 REMA TurnAlly(MilltonnteC) ENDA OldManDaughter: FADI 10 BACG Housewithfireplace FADU 10 TEX1 0x805 REMA ITGV KillingEdge ENDA Ending_event: MNCH(0x01) ENDA TrapData: ENDTRAP MESSAGE Events end at offset currentOffset //The map for this chapter is at offset: ???????? The my knowledge, you'd have to just use different character IDs for each of the ones you wanted to change. I'm not 100% certain and am too lazy to check right now, but I believe that it's a different code that reverted changes. Pretty sure there isn't (at least not in the documentation). All of the ASMCs that I've seen have been parameterless functions anyways. Like "IsItThePlayerPhase()" or "ShowFireRingAnimation()". If the lord is the currently active character you'll need to do some under-the-cover stuff. Fade Out, clear all units, fade in, show dialogue with a background, fade out, load a new unit group with the lord, fade in, and have the lord move off. At least, that's the first implementation that comes to mind. Trying to move the unit that triggered the ending event around can cause weird stuff, like cloning. Is she the active unit? DISA doesn't work on the active unit. In fact, most event commands don't. It's rather unfortunate. Quote Link to comment Share on other sites More sharing options...
Primefusion Posted May 18, 2016 Share Posted May 18, 2016 Is she the active unit? DISA doesn't work on the active unit. In fact, most event commands don't. It's rather unfortunate. True, but I never mentioned DISA. UnitClear is the thing to use in this case. Quote Link to comment Share on other sites More sharing options...
StrykerZ Posted May 20, 2016 Share Posted May 20, 2016 (edited) HI, so new to hacking here, I may have more questions in the future, but for now just one.If I wanted to have a unit run across the map, from like point a (one fort) to point b (another fort) how would I go about that? EDIT: I Figured it out! Should've looked a bit harder, but apparently I missed it when looking throufh Arch's event hacking for dummies tutotorial. I found it while looking through the tutoiral for scripted fights since it was right after. I will probably have mroe questions later. Edited May 20, 2016 by StrykerZ Quote Link to comment Share on other sites More sharing options...
marlon0024 Posted May 21, 2016 Share Posted May 21, 2016 (edited) Hello, i made some modifications on Lyn Mode, then in chapter 12 when the Units load, it wont load Dorcas, it will load the new units recruited in Lyn mode, even the next chapter, chapter 13, it wont load Mathew, Hector and Oswin, it will load the new recruited units instead...Does anyone now how do i change that? There is the LOUFILTERED, but how do i change it to work? ORG $CA1A74TurnBasedEvents:TURN 0x0 BeginningScene [1,0] 0x0 0x0TURN 0x0 label14 [4,0] 0x0 0x1TURN 0x0 label15 [3,0] 0x8 0x1TURN 0x0 label15 [2,0] 0x8 0x2TURN 0x0 label14 [4,0] 0x0 0x3TURN 0x0 label15 [3,0] 0x8 0x3TURN 0x0 label15 [3,0] 0x8 0x4AFEVCharacterBasedEvents:CHAR 0x7 label16 [0x1,0x2] 0x0CHAR 0x7 label16 [0x2,0x1] 0x0AFEVLocationBasedEvents:LOCA 0x0 label17 [0,13] 0xELOCA 0x0 label18 [7,4] 0xELOCA 0x0 label19 [7,15] 0xEVILL 0x8 label20 [1,8] 0xELOCA 0x8 [1,7] 0x1DSHOP 0x0 label21 [1,13] 0x14SHOP 0x0 label22 [7,10] 0x13AFEVMiscBasedEvents:ASME 0x0 EndingScene 0x79FE9AFEV 0x0 label23 0x65AFEV//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CA1B80 and the new ending offset is CURRENTOFFSETORG $CA1B84PointerList:POIN TurnBasedEventsPOIN CharacterBasedEventsPOIN LocationBasedEventsPOIN MiscBasedEventsPOIN TrapsEliwoodMode TrapsHectorModePOIN EnemyUnitsENM EnemyUnitsENM EnemyUnitsHNM EnemyUnitsENMPOIN AllyUnitsENM AllyUnitsENM AllyUnitsHNM AllyUnitsENMPOIN BeginningScene EndingScene//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CA1BC4 and the new ending offset is CURRENTOFFSETORG $CA6F76label21:SHLI 0x6Blabel22:SHLI 0x1 0x14 0x1F 0x2C//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CA6F84 and the new ending offset is CURRENTOFFSETORG $CA71BCTrapsEliwoodMode:ENDTRAP//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CA71BD and the new ending offset is CURRENTOFFSETORG $CA7318TrapsHectorMode:ENDTRAP//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CA7319 and the new ending offset is CURRENTOFFSETORG $CA749Clabel23:_0x87STAL 30ASMC 0x7A455STAL 10ASMC 0x13FA5STAL 80ASMC 0x6CCB9IFAT 0x1 0x7A47DASMC 0x20479ENIF 0x1ASMC 0xB2F95ENDA//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CA74F0 and the new ending offset is CURRENTOFFSETORG $CAE9CClabel27:MOMA 0x0label25:MOMA 0x0 0x0label28:MOMA 0x2label26:MOMA 0xC 0x12 0x2 0x2 0x2 0x1 0x1 0x1 0x2 0x2//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CAE9DE and the new ending offset is CURRENTOFFSETORG $CAE9E0BeginningScene:CMOFIFEM 0x1ELOMA 0x33 [0,0]FADU 4SHOWMAPTEX8 0x5DB [120,12]STAL 100RETBSTAL 32CURF [8,5]FADI 16HIDEMAPBACG 0x10FADU 16SHOWMAPTEX1 0xA1BREMASTAL 60FADI 4HIDEMAPSTAL 32LOMA 0xE [0,0]LOUFILTERED2 0x2 AllyUnitsENMENUNREPOS 0x1 [9,15]REPOS 0x1A [11,15]_ASM0x5A 0x1 0x7A3B9LOEV 0xCD 0x51 [10,15]ENUNFADU 4SHOWMAPMUEN 4CAM2 [10,11]MOVE 0x1 [9,11]MOVE 0x1A [11,11]_ASM0x5A 0x1 0x7A3B9MOVE 0xCD [10,12] 24ENUNFADI 16HIDEMAPBACG 0x1CMUS1 0x33FADU 4SHOWMAPTEXTIFASM 0x7A3B9 0xA1D 0xA1CMUS1 0x32MORETEXT 0xA1EREMALOUFILTERED 0x2 label24CAM2 [10,10]ENUNMOVE 0x1A label25MOVE 0x1 [9,12]MOVE 0x3F label26ENUNFADI 16HIDEMAPBACG 0x1CFADU 16SHOWMAPTEX1 0xA1FREMAIFAF 0x5 0x7A3B9MOVE 0xCD label27ENUNDISA 0xCDENIF 0x5IFAT 0x6 0x79D7DMOVE 0x1A label28ENUNREPA 0x1AENIF 0x6STAL 30CAM2 [16,0]MOVE 0x3F [6,4]ENUNMOVE [8,8] [8,1]MOVE [10,8] [7,2]ENUNMOVE 0x1 [3,14]_ASM0x5A 0x1 0x79D7DMOVE 0x1A [3,12]ENUNLOU1 label29ENUNMOVE 0x3F [15,1]ENUNLOUFILTERED 0x10002 label30IFAF 0x8 0x7A3B9IFUF 0x0 0x8 0x8STAL 60MUEN 4CAM1 0x8CURF 0x8MUS1 0x1TEX1 0xA20REMAENIF 0x8ELSE 0x28ENIF 0x1EFADI 16HIDEMAPBACG 0x1CLOU1 EnemyUnitsHNMFADU 4SHOWMAPIFAF 0x14 0x79DBDTEX1 0xA26MORETEXT 0xA28MUS1 0x32MORETEXT 0xA29ELSE 0x15ENIF 0x14TEX1 0xA27MORETEXT 0xA28MUS1 0x32MORETEXT 0xA2AENIF 0x15REMACAM2 [0,0]STAL 32LOU1 label31 label32//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CAED34 and the new ending offset is CURRENTOFFSETORG $CAED3CENUNSTAL 16FADI 16HIDEMAPBACG 0x1CLOU1 AllyUnitsENMFADU 16SHOWMAPTEX1 0xA23SOUN 0xD2MORETEXT 0xA24DISA 0xCDREMAENUN_ASM0x5A 0x1 0x79DBDLOU1 label33 label34//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CAED94 and the new ending offset is CURRENTOFFSETORG $CAED9CENUNSTAL 16FADI 16HIDEMAPBACG 0x1CFADU 16SHOWMAPTEXTIFASM 0x79DBD 0xA2B 0xA2CREMAMURE 0x6MOVE 0x2 [4,2]ENUNMOVE 0xB [3,2]ENUNLOUFILTERED 0x10003 label35ENIF 0x28ENDAlabel14:CAM1 0x1CURF 0x1TEX1 0xA22REMACAM2 [0,0]STAL 32LOU1 label31 label32//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CAEE34 and the new ending offset is CURRENTOFFSETORG $CAEE3CENUNMUEN 4STAL 16FADI 16HIDEMAPBACG 0x1CFADU 16SHOWMAPMUS2 0x42TEX1 0xA23SOUN 0xD2MORETEXT 0xA24DISA 0xCDREMAENUNLOU1 label33 label34//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CAEE8C and the new ending offset is CURRENTOFFSETORG $CAEE94ENUNSTAL 16FADI 16HIDEMAPBACG 0x1CFADU 16SHOWMAPTEX1 0xA25REMAMURE 0x6MOVE 0x2 [4,2]ENUNMOVE 0xB [3,2]ENUNMOVE 0x23 [1,-1]MOVE 0x11 [2,-1]ENUNREPA 0x23REPA 0x11ENDAlabel15:IFEM 0x1MUS1 0xCCAM1 0x3FCURF 0x3FTEX1 0xA21REMACHAI [15,1] [0x0,0xE,0x0,0x0]CHAI [16,3] [0x0,0xE,0x0,0x0]CHAI [16,5] [0x0,0xE,0x0,0x0]CHAI [14,0] [0x0,0xE,0x0,0x0]CHAI [15,5] [0x0,0x0,0x0,0x0]CHAI [15,9] [0x0,0x0,0x0,0x0]CHAI [14,4] [0x0,0x0,0x0,0x0]CHAI [14,6] [0x0,0x0,0x0,0x0]CHAI [14,2] [0x0,0xE,0x0,0x0]CHAI [15,3] [0x0,0xE,0x0,0x0]CHAI [12,4] [0x0,0xE,0x0,0x0]CHAI [14,14] [0x0,0x0,0x0,0x0]CHAI [15,15] [0x0,0x0,0x0,0x0]ELSE 0x2ENIF 0x1CHAI [11,5] [0x0,0x0,0x0,0x0]CHAI [16,0] [0x0,0x0,0x0,0x0]CHAI [14,2] [0x0,0xF,0x0,0x0]CHAI [15,3] [0x0,0xF,0x0,0x0]CHAI [15,9] [0x0,0xF,0x0,0x0]CHAI [9,0] [0x0,0xF,0x0,0x0]ENIF 0x2ENDAlabel16:IFEM 0x1MUS2 0x3DELSE 0x2ENIF 0x1MUS2 0x3EENIF 0x2TEX1 0xA2DREMAMURE 0x6ENDAlabel17:MUSIFADI 16HIDEMAPBACG 0x1FADU 16SHOWMAPTEX1 0xA2FREMAMUNOENDAlabel18:MUSIFADI 16HIDEMAPBACG 0x1FADU 16SHOWMAPTEX1 0xA30REMAMUNOENDAlabel19:MUSIFADI 16HIDEMAPBACG 0x1FADU 16SHOWMAPTEX1 0xA31REMAMUNOENDAlabel20:MUSIFADI 16HIDEMAPBACG 0x2FADU 16SHOWMAPTEX1 0xA2EREMAMUNO_FADU2SHOWMAPITGV 0x5CENDAEndingScene:MUS1 0x3ESTAL 60FADI 4HIDEMAPASMC 0x7A869BACG 0x1CFADU 4SHOWMAPTEX1 0xA34MUEN 2STAL 30MUS3 0x38 0x2MORETEXT 0xA35IFEM 0xAMORETEXT 0xA36ELSE 0xFENIF 0xAIFAF 0xC 0x79DBDIFAF 0xD 0x79E0DMORETEXT 0xA36ELSE 0xFENIF 0xCIFAF 0xE 0x79E0DMORETEXT 0xA37ELSE 0xFENIF 0xDMORETEXT 0xA38ELSE 0xFENIF 0xEMORETEXT 0xA39ENIF 0xF_ASM0x5A 0x1 0x79DBDUNCR 0x23 10000000000000000bUNCR 0x11 10000000000000000bMORETEXT 0xA3AIFAF 0x5 0x7A3B9FADI 4HIDEMAPSTAL 30BACG 0x1CFADU 4SHOWMAPTEX1 0xA3BREBUSTAL 60MORETEXT 0xA3CMORETEXT 0xA3DIFAF 0x5 0x79DBDIFAF 0x5 0x79E0DFADI 16HIDEMAPBACG 0x1CFADU 16SHOWMAPTEX1 0xA3EENIF 0x5GOTO label36_0x9AFADI 4HIDEMAPBACG 0x5BMNCH 0xFSTAL 1_0x1ENDA//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CAF300 and the new ending offset is CURRENTOFFSETORG $CC0C14label36:ENUF 0x9DIFCD 0x1 0x1A 0x7E_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7C8ENIF 0x1IFCD 0x2 0x26 0x7B_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7FBENIF 0x2IFCD 0x3 0x25 0x7F_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7E2ENIF 0x3IFCD 0x4 0x27 0x80_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7FEENIF 0x4IFCD 0x5 0xB 0x92_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7CEENIF 0x5IFCD 0xB 0x7 0x93_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7F3ENIF 0xBIFCD 0xC 0x14 0x94IFAT 0xC 0x7EEE9_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7F6ENIF 0xCIFCD 0xD 0x32 0x78_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7E5ENIF 0xDIFCD 0xE 0x9 0x95_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7CBENIF 0xEIFCD 0xF 0x37 0x96_FADI2HIDEMAP_0x8FADU 4SHOWMAPTEX1 0x7F9ENIF 0xFIFET 0x63 0x9DMURE 0x6ENUF 0x9DENIF 0x63ENDA//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CC0E50 and the new ending offset is CURRENTOFFSETORG $CC820CAllyUnitsENM:UNIT 0x1 0x1 0x0 0x8 [3,14] [3,14] [0x9,0x6B,0x0,0x0] [0x0,0x0,0x0,0x0]UNIT 0x1A 0x2B 0x1 0x8 [3,12] [3,12] [0x4,0x1C,0x5B,0x0] [0x0,0x0,0x0,0x0]UNIT 0xE 0x19 0x1 0x8 [2,13] [2,13] [0x2C,0x0,0x0,0x0] [0x0,0x0,0x0,0x0]UNIT 0x19 0x28 0x1 0x10 [4,13] [4,13] [0x1,0x14,0x0,0x0] [0x0,0x0,0x0,0x0]UNIT 0x8 0x6 0x1 0x18 [5,14] [5,14] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x0,0x0]UNIT 0x9 0x12 0x1 0x10 [4,15] [4,15] [0x1F,0x28,0x0,0x0] [0x0,0x0,0x0,0x0]UNITEnemyUnitsENM:UNITEnemyUnitsHNM:UNIT 0x3F 0x12 0x0 0x4C [16,0] [16,0] [0x20,0x0,0x0,0x0] [0x3,0x3,0x9,0x0]UNIT 0x42 0x3A 0x3F 0xD [9,0] [9,0] [0x28,0x1,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0x32 0x3F 0x2D [15,9] [15,9] [0x14,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0xA 0x3F 0xD [6,9] [6,9] [0x1,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x12 0x3F 0x1D [12,13] [12,13] [0x1F,0x1,0x28,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x39 0x3F 0xD [16,10] [16,10] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x32 0x3F 0x1D [15,3] [15,3] [0x14,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0x32 0x3F 0x1D [14,2] [14,2] [0x14,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x18 0x3F 0x15 [10,9] [10,9] [0x2C,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x39 0x3F 0xD [5,5] [5,5] [0x1F,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0x19 0x3F 0x15 [7,6] [7,6] [0x2C,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x32 0x3F 0x1D [12,6] [12,6] [0x14,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNITlabel30:UNIT 0x42 0x39 0x3F 0x15 [16,4] [16,5] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x12 0x3F 0x15 [16,4] [14,0] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x39 0x3F 0x15 [16,4] [15,14] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x3A 0x3F 0x15 [16,4] [6,8] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x39 0x3F 0x15 [16,4] [6,1] [0x1F,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNITlabel35:UNIT 0x42 0x32 0x3F 0x1D [14,2] [8,2] [0x14,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x32 0x3F 0x1D [14,2] [13,15] [0x14,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x32 0x3F 0x1D [14,2] [11,5] [0x14,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x39 0x3F 0xD [5,5] [14,12] [0x1F,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNITlabel31:UNIT 0x2 0x3 0x1 0x8 [2,0] [2,1] [0x8D,0x6B,0x82,0x0] [0x0,0x0,0x0,0x0]UNITlabel33:UNIT 0x23 0x3C 0x1 0x10 [1,0] [1,0] [0x1,0x6A,0x0,0x0] [0x0,0x0,0x0,0x0]UNITlabel34:UNIT 0xB 0x14 0x1 0x48 [2,0] [2,0] [0x14,0x1C,0x0,0x0] [0x0,0x0,0x0,0x0]UNIT 0x11 0x1D 0x1 0x8 [1,0] [1,1] [0x4A,0x6B,0x0,0x0] [0x0,0x0,0x0,0x0]UNITAllyUnitsHNM:UNIT 0x2 0x3 0x1 0x8 [4,2] [4,2] [0x8D,0x6B,0x82,0x0] [0x0,0x0,0x0,0x0]UNIT 0xB 0x14 0x1 0x48 [3,2] [3,2] [0x14,0x1C,0x6B,0x0] [0x0,0x0,0x0,0x0]UNITlabel24:UNIT 0x3F 0x12 0x0 0x4C [6,2] [6,4] [0x20,0x0,0x0,0x0] [0x3,0x3,0x9,0x0]UNIT 0x42 0x38 0x3F 0x15 [5,3] [8,8] [0x14,0x1E,0x0,0x0] [0x0,0x6,0x9,0x0]UNIT 0x42 0x38 0x3F 0xD [6,3] [10,8] [0x14,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNITlabel29:UNIT 0x42 0x39 0x3F 0xD [16,9] [15,9] [0x1F,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0xA 0x3F 0xD [7,7] [8,6] [0x1,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0xA 0x3F 0xD [15,1] [14,4] [0x1,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0xA 0x3F 0x15 [15,1] [15,5] [0x1,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0x39 0x3F 0x1D [12,12] [12,13] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x39 0x3F 0xD [16,9] [14,6] [0x1F,0x0,0x0,0x0] [0x0,0x0,0x9,0x0]UNIT 0x42 0x12 0x3F 0xD [15,1] [16,3] [0x1F,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0x18 0x3F 0x15 [16,1] [14,2] [0x2C,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x18 0x3F 0x15 [6,7] [4,5] [0x2C,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x38 0x3F 0x15 [5,7] [7,5] [0x14,0x0,0x0,0x0] [0x0,0x3,0x29,0x0]UNIT 0x42 0x38 0x3F 0xD [5,8] [5,6] [0x14,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT 0x42 0x39 0x3F 0x15 [16,4] [12,4] [0x1F,0x1,0x28,0x0] [0x0,0x3,0x9,0x0]UNITlabel32:UNIT 0xCD 0x38 0x3F 0x15 [3,1] [2,2] [0x28,0x0,0x0,0x0] [0x0,0x3,0x9,0x0]UNIT//The next line is for re-assembling purposes. Do not delete!MESSAGE Original ending offset is $CC85DC and the new ending offset is CURRENTOFFSET Edited May 21, 2016 by marlon0024 Quote Link to comment Share on other sites More sharing options...
Bamstacks Posted May 22, 2016 Share Posted May 22, 2016 Hello everyone... back with a weird error with the Event Assembler. Here's the error message it shows: 1 errors encountered: Exception: System.ArgumentException: An entry with the same key already exists. at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) at System.Collections.Generic.SortedList`2.Add(TKey key, TValue value) at Nintenlord.Collections.DataChange`1.AddChangedData(Int32 offset, T[] data, Int32 index, Int32 count) at Nintenlord.IO.ChangeStream.Write(Byte[] buffer, Int32 offset, Int32 count) at Nintenlord.Event_Assembler.Core.Code.Language.EAExpressionAssembler.SecondPass(BinaryWriter output, IExpression`1 expression, ScopeStructure`1 parentScope) at Nintenlord.Event_Assembler.Core.Code.Language.EAExpressionAssembler.SecondPass(BinaryWriter output, IExpression`1 expression, ScopeStructure`1 parentScope) at Nintenlord.Event_Assembler.Core.Code.Language.EAExpressionAssembler.Assemble(IPositionableInputStream input, BinaryWriter output, ILog log) at Nintenlord.Event_Assembler.Core.Program.Assemble(EACodeLanguage language, TextReader input, BinaryWriter output, ILog log) at Nintenlord.Event_Assembler.Core.Program.Assemble(String inputFile, String outputFile, String languageName, ILog messageLog) at Nintenlord.Event_Assembler.UserInterface.MainForm.<.ctor>b__1(Object sender, DoWorkEventArgs args) Also, I didn't get the question of how to revert tile changes answered... should I just make another tile change and change to that? Or is there a command? MAC1 Tilechange 0x00 activates it, and I was under the impression from Arch's tutorial that 0x08 for the 2nd parameter would revert it, but that didn't work. From Arch's tutorial: DoorRemoval:MAC1 TCN StatusENDAMAC1 forces a tile change. For the second parameter you use the TCN of the tile change you wish to force. For our "Status" variable, 0x00 causes tile changes and 0x08 reverses already triggered tile changes. For MAC1 you will almost always use 0x00. Am I misunderstanding something? Quote Link to comment Share on other sites More sharing options...
Primefusion Posted May 22, 2016 Share Posted May 22, 2016 Hello everyone... back with a weird error with the Event Assembler. Here's the error message it shows: 1 errors encountered: Exception: System.ArgumentException: An entry with the same key already exists. at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) at System.Collections.Generic.SortedList`2.Add(TKey key, TValue value) at Nintenlord.Collections.DataChange`1.AddChangedData(Int32 offset, T[] data, Int32 index, Int32 count) at Nintenlord.IO.ChangeStream.Write(Byte[] buffer, Int32 offset, Int32 count) at Nintenlord.Event_Assembler.Core.Code.Language.EAExpressionAssembler.SecondPass(BinaryWriter output, IExpression`1 expression, ScopeStructure`1 parentScope) at Nintenlord.Event_Assembler.Core.Code.Language.EAExpressionAssembler.SecondPass(BinaryWriter output, IExpression`1 expression, ScopeStructure`1 parentScope) at Nintenlord.Event_Assembler.Core.Code.Language.EAExpressionAssembler.Assemble(IPositionableInputStream input, BinaryWriter output, ILog log) at Nintenlord.Event_Assembler.Core.Program.Assemble(EACodeLanguage language, TextReader input, BinaryWriter output, ILog log) at Nintenlord.Event_Assembler.Core.Program.Assemble(String inputFile, String outputFile, String languageName, ILog messageLog) at Nintenlord.Event_Assembler.UserInterface.MainForm.<.ctor>b__1(Object sender, DoWorkEventArgs args) Figuring this one out would require diving into the source code. How exactly did you cause this? Also, I didn't get the question of how to revert tile changes answered... should I just make another tile change and change to that? Or is there a command? MAC1 Tilechange 0x00 activates it, and I was under the impression from Arch's tutorial that 0x08 for the 2nd parameter would revert it, but that didn't work. From Arch's tutorial: DoorRemoval:MAC1 TCN Status ENDAMAC1 forces a tile change. For the second parameter you use the TCN of the tile change you wish to force. For our "Status" variable, 0x00 causes tile changes and 0x08 reverses already triggered tile changes. For MAC1 you will almost always use 0x00. Am I misunderstanding something? Try 0x80 to undo instead. It's what Night of Farewells uses. Quote Link to comment Share on other sites More sharing options...
Bamstacks Posted May 22, 2016 Share Posted May 22, 2016 (edited) It was working previous to yesterday, but then I was editing text in FEditor Adv, then I edited some events in notepad and tried to assemble it, and it gave this. FEditor was running while I was assembling. I have edited nothing in the event assembler aside from renaming a few characters in the FE7 definitions file and editing the Chest macro to include an event ID. The only files in there that are different are the FE7 Definitions.txt and Main Code Helpers.txt. EDIT: I tried re-downloading a clean Event Assembler and ran my events through, and it didn't come up with the weird error. Must've been that my edits to the definitions files did something weird. Anyway, the problem's fixed. Edited May 23, 2016 by Bamstacks Quote Link to comment Share on other sites More sharing options...
RandomSwordmaster Posted May 25, 2016 Share Posted May 25, 2016 I've got a slight problem in my chapter with chests being able to be opened over and over again. How do I make it so that they can only be opened once? Quote Link to comment Share on other sites More sharing options...
Crazycolorz5 Posted May 25, 2016 Share Posted May 25, 2016 I've got a slight problem in my chapter with chests being able to be opened over and over again. How do I make it so that they can only be opened once? Chests should only be able to be opened if they have the "Chest" tile. Do you have working map tile changes on your map? If they are working, then maybe try to assign an event ID to the chests. Quote Link to comment Share on other sites More sharing options...
RandomSwordmaster Posted May 25, 2016 Share Posted May 25, 2016 Welp, time to install tiled :/ Quote Link to comment Share on other sites More sharing options...
Crazycolorz5 Posted May 25, 2016 Share Posted May 25, 2016 Welp, time to install tiled :/ Or you can just do your tile changes in EA like I used to. You youngsters nowadays and your tiled and mappy and tools and insertions and hex editors. Why, back in my day, if you wanted to change a tile, you used a magnetized needle to change the hex. Quote Link to comment Share on other sites More sharing options...
RandomSwordmaster Posted May 26, 2016 Share Posted May 26, 2016 (edited) Or you can just do your tile changes in EA like I used to. You youngsters nowadays and your tiled and mappy and tools and insertions and hex editors. Why, back in my day, if you wanted to change a tile, you used a magnetized needle to change the hex. i tried to do that, but then the event assembler decided to bug out and say something was wrong with my tile change code, stopping at the first comma >_> Also, the tutorials aren't clear on what you're supposed to do for the actual tile change data (the CODE 0x00 0x00 0x00 0x00 stuff and how you format it). Edited May 26, 2016 by RandomSwordmaster Quote Link to comment Share on other sites More sharing options...
Avril Lavigne Posted May 26, 2016 Share Posted May 26, 2016 i tried to do that, but then the event assembler decided to bug out and say something was wrong with my tile change code, stopping at the first comma >_> Also, the tutorials aren't clear on what you're supposed to do for the actual tile change data (the CODE 0x00 0x00 0x00 0x00 stuff and how you format it). I would still say that Tiled is easier to use than Mappy. I mean... I tried both and though Tiled was way easier and user-friendly. 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.