Jump to content

Nintenlord

Member
  • Posts

    667
  • Joined

  • Last visited

Everything posted by Nintenlord

  1. This topic would fit Resources better IMO. And as for item dropping, a little look at a file called EA Standard library/Unit Helpers.txt: //Unit flags #ifdef _FE8_ #define MonsterTemplate 1 #define DropItem 2 #define DunnoFlag1 4 #define DunnoFlag2 8 #endif and 2 = 10b.
  2. Generally speaking, you'd mostly be doing what this tutorial does: http://serenesforest.net/forums/index.php?showtopic=26206 and a bit more. Make sure you add the events to empty space, as the original event don't have any extra room for your event. Repointing TURN events is pretty much required.
  3. Here's some of my issues, unlikely to have anything to do with the problem you are asking help in, though. Turn_events: TURN 0x00 Opening_event [01,00] 0x0 0x00 TURN 0x00 Turn1Event[01,00] 0x0 0x00 TURN Add space between Turn1Event and [01,00], EA may be able to parse this correctly, but it's still better to always have space between parameters. DorcasLyn: MUS1 0x0044 Tex1 0x801 REMA ENDA It's TEX1, not Tex1. Village1: FADI 10 BACG 0x02 TEX1 0x0810 FADU 10 REMA ENDA Village2: FADI 10 BACG 0x02 TEX1 0x0811 FADU 10 REMA ENDA There are several things wrong here. You should just use these macros: VillageEventItem(textID,background,item VillageEventMoney(textID,background,money) HouseEvent(textID,background) /code] like this: [code] Village1: HouseEvent(0x0810,0x2) Village2: HouseEvent(0x0811,0x2) You could shorten this even further by using pool: Location_events: Village(0x06, AddToPool(HouseEvent(0x0810, 0x2)), 16, 2) Village(0x07, AddToPool(HouseEvent(0x0811,0x2)), 8, 2) LOCA ... //near the end of your file #pool and remove the Village1 things completely.
  4. Dunno, making them into turn event and having the character check be in events themselves and doing the actual support incrementation in ASM could be relative simple.
  5. If you are using Tiled to make map changes, then you don't need any of this: which, frankly speaking, EA won't accept as anything due to how butchered it is. If you make tile changes in Tiled, you only need to invoke the changes in event script using codes such as these: [spoiler=Codes] Map Change map FE7: MAC1 *Map change ID* *Apply or remove* Triggers a map change. Parameters: Map change ID = Map change to trigger. Apply or remove = Whether to apply or reverse the map change. FE7: MACC [Position X, Position Y] FE6: MACC [Position X, Position Y] Triggers a map change. Parameters: Position = Position of the map change. Position of the map change. FE7: MAC2 *Map change ID* Unknown FE6: MAC2 Value Triggers a map change. Parameters: Map change ID = Whether to apply or reverse the map change. Unknown Value FE7: MAC3 *Map change ID* Unknown Triggers a map change. Parameters: Map change ID = Whether to apply or reverse the map change. Unknown FE7: MACE Value No clue. Parameters: Value assuming map changes you do don't happen automatically, such as with villages, chests and such do. That probably has more to do with this: http://serenesforest.net/forums/index.php?showtopic=32004 Tiled inserter doesn't rreally do anything special behind the scenes, it merely converts Tile map to GBA FE map and tile changes.
  6. It works with prologue map (inserting events straight to unmodified ROM), so the problem is probably with your map or something else you inserted.
  7. Patches take less space than ROM's, so they are also easier to host.
  8. This means that this: BallistaData: BLST StairsReinforcement: ALIGN 4 // prevents misalignment from ballista data LOU1 Reinforcements1 ENUN ENDA OutsideReinforcement: ALIGN 4 // prevents misalignment from ballista data LOU1 Reinforcements2 ENUN ENDA ThroneReinforcement: ALIGN 4 // prevents misalignment from ballista data LOU1 Reinforcements3 ENUN ENDA CenterDoor: MAC1 0x00 0x0 //map change ID 1 ENDA ShopData: SHLI Physic Silence Sleep Rescue TorchStaff LockPick Elixir MESSAGE Events end at offset currentOffset becomes this: BallistaData: BLST ALIGN 4 // prevents misalignment from ballista data StairsReinforcement: LOU1 Reinforcements1 ENUN ENDA OutsideReinforcement: LOU1 Reinforcements2 ENUN ENDA ThroneReinforcement: LOU1 Reinforcements3 ENUN ENDA CenterDoor: MAC1 0x00 0x0 //map change ID 1 ENDA ShopData: SHLI Physic Silence Sleep Rescue TorchStaff LockPick Elixir MESSAGE Events end at offset currentOffset
  9. a) Don't put ALIGN between a label and codes you are using the label to reference. b) You only need ALIGN after ballista codes, not everywhere. c) Post ALL of your events.
  10. EA does no such replacing, the only (simple) way to write a pointer in EA is something like this: ORG PointerOffset POIN OffsetToPointTo and that writes only to offset you specify.
  11. IFAF 0x7 0x7D369 MNCH 0x20 STAL 1 _0x1 ELSE 0x9 ENIF 0x7 MNCH 0x1F STAL 1 _0x1 ENIF 0x9 ENDA That's how you do a route split. Example from Ch 22x/23x.
  12. Mappy adds/removes new tiles to the tileset if you try copy/cut/pasting anything, which is a royal pain in the arse. Mappys GUI is one of the reasons why I prefer Tiled.
  13. FE7 unit "slots" (they aren't character slots, those are in ROM and are edited with Character Editor) start at 0202BD50. Each slot is 0x48 (aka 72 bytes in decimal) bytes long, and the first 60 or so slots are allied units. Every first 4 bytes of a slot is a pointer to the character slot. The 5th byte of character slot is the character ID, which is 0x26 or 0x29 for Nils, with the latter being for Final Chapter Nils.
  14. Text editing suite for FE6 isn't in usable state IIRC. AH patch is the better bet, IMO.
  15. If you use Tiled, you need to do very little in EA to get tile changes happen in game. With villages, doors and breaking walls, you don't need to add anything since those tile changes happen automatically. For other map changes, these codes cause tile changes to happen: [spoiler=Codes] Map Change map FE7: MAC1 *Map change ID* *Apply or remove* Triggers a map change. Parameters: Map change ID = Map change to trigger. Apply or remove = Whether to apply or reverse the map change. FE7: MACC [Position X, Position Y] FE6: MACC [Position X, Position Y] Triggers a map change. Parameters: Position = Position of the map change. Position of the map change. FE7: MAC2 *Map change ID* Unknown FE6: MAC2 Value Triggers a map change. Parameters: Map change ID = Whether to apply or reverse the map change. Unknown Value FE7: MAC3 *Map change ID* Unknown Triggers a map change. Parameters: Map change ID = Whether to apply or reverse the map change. Unknown FE7: MACE Value No clue. Parameters: Value Use whichever works.
  16. Other M causes both motion and sickness, but not motion sickness.
  17. The first does work with the post-parsing rewrite aka version 9.1. It does both.
  18. By reordering. You can't do that/it's very hard in Nightmare, use EA (or hex editor >_>).
  19. From Ch3 events: LocationBasedEvents: CHES 0x0 0x14 [6,3] 0x14 CHES 0x0 0x28 [8,3] 0x14 CHES 0x0 0x1 [10,3] 0x14 CHES 0x0 0x1C [6,12] 0x14 LOCA 0x3 [14,1] 0x11 DOOR 0x0 [6,10] 0x12 DOOR 0x0 [10,5] 0x12 DOOR 0x0 [2,3] 0x12 AFEV When you erase aka zero out a chest completely, you end up with this: LocationBasedEvents: CHES 0x0 0x14 [6,3] 0x14 CHES 0x0 0x28 [8,3] 0x14 CHES CHES 0x0 0x1C [6,12] 0x14 LOCA 0x3 [14,1] 0x11 DOOR 0x0 [6,10] 0x12 DOOR 0x0 [10,5] 0x12 DOOR 0x0 [2,3] 0x12 AFEV And CHES == LOCA == AFEV with no parameters, meaning the game will end reading at that point.
  20. She's more powerful than any other character in the game, she can REVIVE in game with permadeath and people flock to her and worship her constantly. The part 4 of FE10 tries to give her "flaws", but they are clearly forced and don't fit her portrayal for the rest of FE9 & 10. Even the power-hungry and selfish Begnion senators suddenly change personality due to her presence. Those are clearly characteristics of Mary Sue.
  21. For character banner, it's the 0x2b after offset 0x08dea8. Character forcer doesn't do any testing on the chapter value.
  22. My patches don't intervene with each other without outside influence. By default, character banner uses 0xB0 bytes at offset 0xDF0000, the Restore the Rekka no Ken title screen uses 32 bytes at offset 0xDF00B0 and character forcer uses 0xB0 bytes at 0xDF1000.
  23. Because it's a village event. Destruction and gate closing tend to have the same ID.
  24. From EAstdlib: //Event ID's with special meanings #ifdef _FE6_ #define NoID 0 #define BossQuoteID 1 #define BossDeathQuoteID 2 #define SiezeID 3 #define GameOverID 0x65 #define CathConvo1 0x67 #define CathConvo2 0x68 #define CathConvo3 0x69 #define IliaSacaeRouteID 0x6B #define CathRecruited 0x70 #endif #ifdef _FE7_ #define NoID 0 #define BossQuoteID 1 #define BossDeathQuoteID 2 #define SiezeID 3 #define UseSecondaryMusicID 4 #define GameOverID 0x65 /* 66 67 68 69 */ #define Ch13xBeatID 0x6A #define Ch17xBeatID 0x6B #define Ch19xBeatID 0x6C #define Ch23xBeatID 0x6D #define Ch28xBeatID 0x6E /* 6F 31x/32x beat? */ #define LloydOrLinusID 0x70 #define DorcasDeadID 0x71 #define WilDeadID 0x72 #define LuciusDeadID 0x73 #define SerraDeadID 0x74 #define ErkDeadID 0x75 #define KentVisited 0x76 #define SainDeadID 0x77 #define RathDeadID 0x78 #define FlorinaDeadID 0x79 #define MatthewDeadID 0x7A #define NilsDeadID 0x7B #define WallaceDeadID 0x7C #define PentDeadID 0x7D /* 7E 7F */ #define AthosDeadID 0x80 #define HawkeyeDeadID 0x81 #define JaffarDeadID 0x82 #define LynModePassedID 0x83 /* 84 85 */ #define Ch19xxBeatID 0x86 #define PentHeavenSealReceivedID 0x87 #define DartDeadID 0x88 #define VaidaDeadID 0x89 #define PentXLouiseC 0x8A #define PentXLouiseB 0x8B #define FioraTriAttackConvoID 0x8C #define FarinaTriAttackConvoID 0x8D #define FlorinaTriAttackConvoID 0x8E /* 8F 90 Other triangle attack IDs? 91 */ #define OswinDeadID 0x92 #define KarelDeadID 0x93 #define NinoDeadID 0x94 #define BartreDeadID 0x95 #define KarlaDeadID 0x96 #define AnnaVisited 0x97 /* 98 99 */ #define HeavenSealPentID 0x9A #define MerlinusJoined 0x9B /* 9C */ #define SomeoneSemiImportantDiedID 0x9D //Only in internal use #endif #ifdef _FE8_ #define NoID 0 #define BossQuoteID 1 #define BossDeathQuoteID 2 #define SiezeID 3 #define DefeatAllID 6 #define GameOverID 0x65 #endif
×
×
  • Create New...