blyegg Posted September 29, 2013 Share Posted September 29, 2013 ThisChapter: Not sure why you have this... From the section from my template: #define DISABLE_TUTORIALS #include EAstdlib.event EventPointerTable(0x06,Pointers) ORG 0xD80000 Pointers: //NOT 'ThisChapter:' POIN Turn_events POIN Character_events //and onwards, forevermore Quote Link to comment Share on other sites More sharing options...
Pixelman Posted September 29, 2013 Share Posted September 29, 2013 (edited) Okay, here's my new code, but the problem still persists: //Made by markyjoe1990 of Youtube//Modified by Nintenlord#define DISABLE_TUTORIALS#include EAstdlib.eventEventPointerTable(0x06,ThisChapter)ORG 0x00DA1400ThisChapter:POIN Turn_eventsPOIN Character_eventsPOIN Location_eventsPOIN Misc_eventsPOIN BallistaData BallistaDataPOIN Bad Bad Bad BadPOIN Good Good Good GoodPOIN Opening_event Ending_eventBad:UNIT Bandit Fighter Bad Level(3,Enemy,False) [5,16] [4,8] [ironAxe] [0x00,0x00,0x00,0x00]UNIT Bandit Soldier Bad Level(1,Enemy,False) [5,16] [8,7] [ironSpear] [0x00,0x03,0x09,0x00]UNIT Bandit Mercenary Bad Level(5,Enemy,False) [5,16] [2,12] [steelSword] [0x00,0x03,0x00,0x20]UNIT Bandit Brigand Bad Level(1,Enemy,False) [5,16] [7,9] [HandAxe,Vulnerary] [0x00,0x00,0x00,0x00]UNIT Bandit Fighter Bad Level(4,Enemy,False) [5,16] [14,10] [steelAxe,HandAxe] [0x00,0x03,0x00,0x20]UNIT Bandit Mercenary Bad Level(1,Enemy,False) [5,16] [9,11] [ironSword] [0x00,0x03,0x09,0x00]UNIT Bandit Brigand Bad Level(3,Enemy,False) [5,16] [13,14] [steelAxe,HandAxe] [0x00,0x03,0x09,0x00]UNIT Bandit Soldier Bad Level(4,Enemy,False) [5,16] [5,11] [ironSpear,Vulnerary] [0x00,0x00,0x00,0x00]UNIT Bandit Mage Bad Level(2,Enemy,False) [5,16] [7,12] [Fire] [0x00,0x00,0x00,0x00]UNIT Bandit Mage Bad Level(4,Enemy,False) [5,16] [11,7] [Thunder,Vulnerary] [0x00,0x03,0x09,0x00]UNIT Bandit Mercenary Bad Level(5,Enemy,False) [5,16] [11,5] [steelSword] [0x00,0x03,0x00,0x20]UNIT Bandit Soldier Bad Level(2,Enemy,False) [5,16] [5,14] [ironSpear,Vulnerary] [0x00,0x03,0x09,0x00]UNIT Bandit Soldier Bad Level(4,Enemy,False) [5,16] [11,12] [ironSpear,Javelin] [0x00,0x03,0x09,0x00]UNIT Batta Berserker Bad Level(4,Enemy,False) [6,16] [6,16] [steelAxe] [0x00,0x03,0x00,0x20]UNITGood:UNIT Lyn_t Myrmidon Good Level(1,Ally,False) [3,2] [5,3] [ironSword,Vulnerary] [0x00,0x00,0x00,0x00]UNIT Kent_t Cavalier Good Level(1,Ally,False) [3,2] [3,4] [ironSword,Javelin,Vulnerary,Vulnerary] [0x00,0x00,0x00,0x00]UNIT EmptyRoy:UNIT Sain_t Mercenary Good Level(1,Ally,False) [7,1] [7,1] [ironSword] [0x00,0x00,0x00,0x00]Turn_events:TurnEventPlayer(0x00,Opening_event,01)TurnEventPlayer(0x00,Turn3,03)TURNCharacter_events:CHARLocation_events:LOCAMisc_events:CauseGameOverIfLordDiesAFEVOpening_event:MUS1 0x000ELOU1 BadCURF [3,2]FADI 10BACG 0x04TEX1 0x0802REMAMUS1 0x0042FADU 10CAM1 [3,2]CURF [3,2]LOU1 GoodTEX1 0x0803ENDATurn3:MUS1 0x0042CAM1 [7,1]CURF [7,1]LOU1 RoyTEX1 0x0804ENDAEnding_event://MNCH 0x??STAL 1_0x1ENDABallistaData:BLSTALIGN 4MESSAGE Events end at offset currentOffset//The map for this chapter is at offset: ???????? @MasterKeeper: But it works... So that's why I didn't remove it. Edited September 29, 2013 by PixelmanFE Quote Link to comment Share on other sites More sharing options...
CT075 Posted September 29, 2013 Author Share Posted September 29, 2013 (edited) check your "fade to black/map" settings edit: also masterkeeper please stop talking because nothing you've said has come even remotely close to what i think the problem might be "pointers" vs "thischapter" makes literally no difference as long as the label in the "EventPointerTable" macro and the label right before the POIN array match Edited September 29, 2013 by CT075 Quote Link to comment Share on other sites More sharing options...
blyegg Posted September 29, 2013 Share Posted September 29, 2013 (edited) OK, a few things. 1. Use code tags 2. More of a tip Use definitions Just make a new file and put this in it: //Characters #define Roy /*whatever number sain_t is*/ and in your event file, add #define /*text file with definitions's name*/.txt and make sure they're in the same location check your "fade to black/map" settingsedit:also masterkeeper please stop talking because nothing you've said has come even remotely close to what i think the problem might be"pointers" vs "thischapter" makes literally no difference as long as the label in the "EventPointerTable" macro and the label right before the POIN array match I'm a noob, how would I know? Edited September 29, 2013 by MasterKeeperâ„¢ Quote Link to comment Share on other sites More sharing options...
Krad Posted September 29, 2013 Share Posted September 29, 2013 (edited) Change this Roy: UNIT Sain_t Mercenary Good Level(1,Ally,False) [7,1] [7,1] [IronSword] [0x00,0x00,0x00,0x00] To this: Roy: UNIT Sain_t Mercenary 0x00 Level(1,Ally,False) [7,1] [7,1] [IronSword] [0x00,0x00,0x00,0x00] UNIT Edited September 29, 2013 by Krad Quote Link to comment Share on other sites More sharing options...
CT075 Posted September 29, 2013 Author Share Posted September 29, 2013 (edited) 2. Use definitionsit shouldn't make a difference but it does make thigns a lot more humanly readable 3. REMOVE THISCHAPTER AND PUT POINTERSthis doesn't do anything Change this [sNIP] nice catch that is actually probably a lot more likely than my initial guess; this would lead to garbage data being used as unit data which could potentially fuck things up Edited September 29, 2013 by CT075 Quote Link to comment Share on other sites More sharing options...
blyegg Posted September 29, 2013 Share Posted September 29, 2013 I edited it once I saw your post. it shouldn't make a difference but it does make thigns a lot more humanly readable 2. More of a tip Quote Link to comment Share on other sites More sharing options...
Pixelman Posted September 29, 2013 Share Posted September 29, 2013 Change this Roy: UNIT Sain_t Mercenary Good Level(1,Ally,False) [7,1] [7,1] [IronSword] [0x00,0x00,0x00,0x00] To this: Roy: UNIT Sain_t Mercenary 0x00 Level(1,Ally,False) [7,1] [7,1] [IronSword] [0x00,0x00,0x00,0x00] UNIT Haha! It works! The Hector problem and glitch problem is fixed. I owe you one, Krad! Now off to making my game again... Quote Link to comment Share on other sites More sharing options...
Vennobennu Posted October 3, 2013 Share Posted October 3, 2013 (edited) I'm having some trouble disassembling Valni and Lagdou events. Namely, some of the floors cause an unhandled exception when EA tries to disassemble them. This happens to Valni 5, Valni 6, Lagdou 3,4,5,7, and probably some later floors of Lagdou that I haven't tested yet. I'm 99.9% sure I'm disassembling from the right offset, too. I wonder if these floors are performing some kind of command that Event Assembler doesn't know how to interpret or considers impossible; the functioning floors of Lagdou and Valni themselves are considered by EA to use a 'FE8Code 0x2B20 0xFFFF' Command (There is no such command in the ROM; only 202BFFFF - it looks to be like some kind of SHORT command, really). Here's the error message if it helps. [spoiler=Error Text]************** Exception Text **************System.InvalidOperationException: This BackgroundWorker is currently busy and cannot run multiple tasks concurrently. at System.ComponentModel.BackgroundWorker.RunWorkerAsync(Object argument) at Nintenlord.Event_Assembler.UserInterface.MainForm.disassembleButton_Click(Object sender, EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) Edited October 3, 2013 by Vennobennu Quote Link to comment Share on other sites More sharing options...
Arturianii Posted October 7, 2013 Share Posted October 7, 2013 Hello! I guess the Event Assembler questions go here? I have been slowly learning how to work on it, and everything is still really new to me, with not much experience in coding. I hope I'm not being too much of a bother, really. I'm just trying to make simple events for the game, to start off slow. I thought the Event Assembler was in FE Editor, but I found it at the downloads section... XD;; Anyways, I read the Ultimate Tutorial Guide and a guide on how to make custom maps, but I still don't quite get it. I haven't gotten around to testing what each does what, over the fear that I might break something, so I decided to make a document out of it and analyze the code on what does what. Here's the version you can edit (Putting it so it's easier for those who found a mistake in reading it, thank you for those who are) and here's the original unsuitable one in case someone ruins it. The code is from the Chapter 1 Event, in the FE7 Event Table References. I hope I got that one right, as I'm assuming it changes the events in game. I'm sorry if it's really long, but any help would be greatly appreciated! Thank you in advance! Quote Link to comment Share on other sites More sharing options...
CT075 Posted October 7, 2013 Author Share Posted October 7, 2013 read arch's tutorial it's better than the ultimate tutorial Quote Link to comment Share on other sites More sharing options...
Sami-Fire Posted October 10, 2013 Share Posted October 10, 2013 I'm sure this question has been asked before, but searching the forums didn't turn up what I was looking for... anyway, is there a way to get rid of or change the "going from place to place"-type map events that happen between chapters? Also, I still haven't been able to get tile changes to work. I think I already posted my code, but just in case, here it is again: //Prologue Map Changes #include EAstdlib.event ORG 0xC9C9CC+(4*0x0E) POIN TileChanges ORG 0xDB00A0 TileChanges: TileMap(0x00,02,12,0x01,0x01,VillageClosed) TileMapEnd VillageClosed: BYTE 0x80 0x00 MESSAGE Map changes end at offset currentOffset Quote Link to comment Share on other sites More sharing options...
Agro Posted October 10, 2013 Share Posted October 10, 2013 (edited) Post your main event file too, please. As for the world map events, I assume you're hacking FE7, so you need to go to the Chapter Data Editor and scroll down to "Worldmap Chapter Prologue Scene" and set it to a chapter that doesn't have a world map. Edited October 10, 2013 by Agro Quote Link to comment Share on other sites More sharing options...
Arturianii Posted October 10, 2013 Share Posted October 10, 2013 read arch's tutorial it's better than the ultimate tutorial In a way... It did answer some of my questions, although it still didn't cover exporting maps from the game. ^_^; @ BlueWyvern: Thanks alot for editing the code! I HOPE I NEVER HAVE TO TOUCH ASSEMBLY THOUGH;; It looks ridiculously hard D<; Quote Link to comment Share on other sites More sharing options...
CT075 Posted October 10, 2013 Author Share Posted October 10, 2013 exporting maps can be done one of two ways: a) recreate them in mappy b) find an image of the map and get yeti's converter (don't ask me for it i don't have it) to recreate it for you Quote Link to comment Share on other sites More sharing options...
Sami-Fire Posted October 10, 2013 Share Posted October 10, 2013 Post your main event file too, please. As for the world map events, I assume you're hacking FE7, so you need to go to the Chapter Data Editor and scroll down to "Worldmap Chapter Prologue Scene" and set it to a chapter that doesn't have a world map. Okay, I'll look into that. Before I do, some more questions though: what do I do to load an ally unit at the level they're currently at and not a set level (I know (1,Ally,False) would load them at level 1, but if they're actually at level 2 at the map they're at, I don't want to load them at level 1)? Furthermore, when loading generic enemy reinforcements at a level higher than 1, do I just do something like (2,Enemy,True), or is there something i can do to make their stats consistent instead of autoleveled? Anyway, here's the main event file. //Made by markyjoe1990 of Youtube //Modified by Nintenlord #define DISABLE_TUTORIALS #include EAstdlib.event //Lyn's animation pointer: 0x8C99064 EventPointerTable(0x06,Pointers) ORG 0x0D80000 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 Erik Cavalier 0x00 Level(2,Enemy,False) [12,3] [12,3] [IronSpear] [0x03,0x03,0x00,0x00] UNIT Bandit Cavalier 0x01 Level(1,Enemy,False) [12,3] [8, 8] [IronSword] [0x00, 0x00, 0x00, 0x00] UNIT Empty Good: UNIT Lyn_t LynLord 0x00 Level(1,Ally,False) [2,12] [2,12] [Fire] [0x00,0x00,0x00,0x00] UNIT Empty Turn_events: TURN 0x00 Opening_event [01,00] 0x0 0x00 TURN Character_events: CHAR Location_events: Village(0x07,Village1,2,12) House(0x08,House1,5,5) Seize(0x09,Ending_event,12,03) LOCA Misc_events: CauseGameOverIfLordDies AFEV Opening_event: CAM1 [5,10] CURF [02,12] FADI 10 BACG 0x02 MUS1 0x0066 TEX1 0x0803 FADU 10 REMA LOU1 Good ENUN ITGC Lyn_t Vulnerary CAM1 [5,3] CURF [12,3] FADI 10 BACG 0x015 MUS1 0x0053 TEX1 0x0800 FADU 10 REMA LOU1 Bad ENUN CAM1 [5,8] MUS1 0x000C TEX1 0x0804 REMA MOVE Lyn_t [5,12] ENUN ENDA Village1: FADI 10 BACG 0x02 FADU 10 TEX1 0x0805 REMA MONE 0x01 5000 MAC1 0x00 0x01 ENDA House1: FADI 10 BACG 0x01 FADU 10 TEX1 0x806 REMA ENDA Ending_event: FADI 10 BACG 0x0E MUS1 0x0039 FADU 10 TEX1 0x0807 MNCH 0x01 ENDA BallistaData: BLST MESSAGE Events end at offset currentOffset //The map for this chapter is at offset: ???????? Quote Link to comment Share on other sites More sharing options...
CT075 Posted October 10, 2013 Author Share Posted October 10, 2013 if the character data exists in memory then it'll overwrite whatever you put in the events when they load Quote Link to comment Share on other sites More sharing options...
Arturianii Posted October 13, 2013 Share Posted October 13, 2013 (edited) exporting maps can be done one of two ways: a) recreate them in mappy b) find an image of the map and get yeti's converter (don't ask me for it i don't have it) to recreate it for you I ended up recreating it in Mappy since it's more convenient I guess, ahaha;; Still, thank you very much! Anyways, I decided to try making a simple event for the Prologue map, since it seems to be the best to start with! ... Unfortunately I couldn't even do something so simple. I'm so sorry. Here's the code which I edited. I'm just trying to make an additional event where a unit (I chose Eliwood) runs towards Lyn and engages a conversation with her at the start of Turn 2. Unfortunately, during turn 2, it either crashes and returns to the main menu, or after TEX1 0x94E is displayed, it just crashes. There ARE rare instances where Eliwood loads correctly and goes to that specified destination, but after I changed the coordinates, it just crashes again. Going back to the previous code which I believed it worked... crashes the game too. It's very inconsistent, so I'm starting to wonder if I'm breaking the game from Assembling too much. Thank you very much in advance! Edited October 13, 2013 by Arturianii Quote Link to comment Share on other sites More sharing options...
blyegg Posted October 16, 2013 Share Posted October 16, 2013 (edited) Um, so. #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 Bad Bad Bad Bad POIN Good Good Good Good POIN Opening_event Ending_event Good: UNIT Bad: UNIT TactMale: UNIT 0x8A 0x10 0x00 Level(10, Ally, 1) [14,9] [14,9] [IronSword] NoAI UNIT TactFemale: UNIT 0x8B 0x11 0x00 Level(10, Ally, 1) [14,9] [14,9] [IronSword] NoAI UNIT Turn_events: TurnEventPlayer(0x0,Opening_event,1) End_MAIN Character_events: End_MAIN Location_events: End_MAIN Misc_events: CauseGameOverIfLordDies End_MAIN TrapData: End_MAIN Opening_event: OOBB TEX6 0x5 [0,0] 0x0800 REMA IFYN 0x1 //changed this from 0x10 to 0x1, does the same thing. TEX6 0x5 [0,0] 0x0801 REMA LOU1 TactMale ENUN ELSE 0x2 TEX6 0x5 [0,0] 0x0802 REMA LOU1 TactFemale ENDA Ending_event: ENDA // Events // Manual Movement // Scripted Fights // Units // Shop Data MESSAGE Events end at offset currentOffset //Text Slot 800: Choose Yes for Male or No for Female. [Yes][.][A][X] //Text Slot 801: Male.[.][A][X] //Text Slot 802: Female.[.][A][X] It just skips everything and shows 'Female.' and loads the unit... Help? Edited October 16, 2013 by Number XV Quote Link to comment Share on other sites More sharing options...
CT075 Posted October 16, 2013 Author Share Posted October 16, 2013 put an ENIF 0x1 after the ELSE Quote Link to comment Share on other sites More sharing options...
blyegg Posted October 16, 2013 Share Posted October 16, 2013 that didnt work either... Quote Link to comment Share on other sites More sharing options...
CT075 Posted October 16, 2013 Author Share Posted October 16, 2013 ok that script is just horrendous it's END_MAIN (allcaps), not End_MAIN you always always always need to close your IFXX's with ENIF (this includes ELSE) Opening_event: //OOBB // just get rid of this altogether and change it to "fade to map" // alternately if yo'ure doing what i think you're doing, there's a set of ASMC codes that fades to a black background TEX6 0x5 [0,0] 0x0800 REMA IFYN 0x1 //changed this from 0x10 to 0x1, does the same thing. TEX6 0x5 [0,0] 0x0801 REMA LOU1 TactMale ENUN ELSE 0x2 ENIF 0x1 // <------ TEX6 0x5 [0,0] 0x0802 REMA LOU1 TactFemale ENIF 0x2 // <------ ENDA Quote Link to comment Share on other sites More sharing options...
Arturianii Posted October 16, 2013 Share Posted October 16, 2013 I ended up recreating it in Mappy since it's more convenient I guess, ahaha;; Still, thank you very much! Anyways, I decided to try making a simple event for the Prologue map, since it seems to be the best to start with! ... Unfortunately I couldn't even do something so simple. I'm so sorry. Here's the code which I edited. I'm just trying to make an additional event where a unit (I chose Eliwood) runs towards Lyn and engages a conversation with her at the start of Turn 2. Unfortunately, during turn 2, it either crashes and returns to the main menu, or after TEX1 0x94E is displayed, it just crashes. There ARE rare instances where Eliwood loads correctly and goes to that specified destination, but after I changed the coordinates, it just crashes again. Going back to the previous code which I believed it worked... crashes the game too. It's very inconsistent, so I'm starting to wonder if I'm breaking the game from Assembling too much. Thank you very much in advance! Ahh, about my request a few days ago, I actually haven't found a solution to it yet. But I did notice one thing, if it helps with my case at all. Occasionally, the code works. The unit is loaded properly, and everything works fine. But when I reset the game and try it again, the game crashes and returns to the main menu. It's very inconsistent. Is there a setting which I'm missing? And... Original ending offset is 0xCA0594 and the new ending offset is 0xCA0594 Original ending offset is 0xCA05DC and the new ending offset is 0xCA05DC Original ending offset is 0xCA0760 and the new ending offset is 0xCA0760 Original ending offset is 0xCA71A9 and the new ending offset is 0xCA71A9 Original ending offset is 0xCA730B and the new ending offset is 0xCA730B Original ending offset is 0xCA74F0 and the new ending offset is 0xCA74F0 Original ending offset is 0xCA79FE and the new ending offset is 0xCA79FE Original ending offset is 0xCA7A20 and the new ending offset is 0xCA7A20 Original ending offset is 0xCA7BD0 and the new ending offset is 0xCA7BD0 Original ending offset is 0xCA7C4C and the new ending offset is 0xCA7C4C Original ending offset is 0xCA7D00 and the new ending offset is 0xCA7D00 Original ending offset is 0xCA8324 and the new ending offset is 0xCA8330 Original ending offset is 0xCC5BA0 and the new ending offset is 0xCC5BC0 Does it have anything to do with this? This pops up after I assembled the code. Thank you very much in advance! Quote Link to comment Share on other sites More sharing options...
CT075 Posted October 16, 2013 Author Share Posted October 16, 2013 yeah that's probably the problem your script is overwriting something (including potentially itself) just repoint Quote Link to comment Share on other sites More sharing options...
Arturianii Posted October 17, 2013 Share Posted October 17, 2013 yeah that's probably the problem your script is overwriting something (including potentially itself) just repoint Thank you for replying! Unfortunately, I tried reading about repoints a few times in the Ultimate Tutorial, and I still didn't get it. This repointing looks like it's covered for animation, and I'm still wondering if I do need to change anything in my code.This is probably going to be my first time hex editing too, so I have 0 clue on what to do...;; I'm really sorry for asking so many questions. Hopefully after this, this will be my last. >_< 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.