Jump to content

Event Assembler Questions Thread


CT075
 Share

Recommended Posts

  • 2 weeks later...
  • Replies 3.3k
  • Created
  • Last Reply

Top Posters In This Topic

Now for my question of the month

I'm trying to insert tile changes that will open doors in the chapter. I first tried the old method (Mappy fan :3) and assembled this to 0xD00B9C:

#define DISABLE_TUTORIALS
#include EAstdlib.event

ORG 0xC9C9C8+(4*0x0E)

POIN TileChanges

ORG 0xD00B9C

TileChanges:
TileMap(0x01,0x02,0x0D,0x02,0x03,MacCell)
TileMap(0x02,0x0E,0x03,0x03,0x02,HadvarCell)
TileMap(0x03,0x15,0x0E,0x01,0x02,JacksonCell)
TileMap(0x04,0x12,0x00,0x02,0x02,BreakWall)
WORD $FF
WORD $00
WORD $00

MacCell:
WORD 0xB4 0x06 0xD0 0x0C
WORD 0xE0 0x0C 0xD4 0x0C
WORD 0xD4 0x0C 0xD8 0x0C

HadvarCell:
WORD 0xB4 0x06 0xD0 0x0C 0xAC 0x07
WORD 0xE0 0x0C 0xD4 0x0C 0xAC 0x07

JacksonCell:
WORD 0xD0 0x0C
WORD 0xD4 0x0C

BreakWall:
WORD 0xA8 0x07 0xD0 0x0C 
WORD 0xE4 0x0C 0xD8 0x0C

MESSAGE Tile changes end at offset currentOffset

(Note that I'm using the reference tileset for 0A009B0C)

When I tried to open a door, the tiles change into the wrong tiles (Some black ones and grass).

So then I tried accomplishing tile changes through Tiled after getting over my stubbornness. This time, no tiles changed.

Main events:

//Made by markyjoe1990 of Youtube
//Modified by Nintenlord

#define DISABLE_TUTORIALS
#include EAstdlib.event
#include LOJDefinitions.txt

//Con. Ids: 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0x10

EventPointerTable(0x06,Pointers)

ORG $D0057C
Pointers:
POIN Turn_events 
POIN Character_events 
POIN Location_events 
POIN Misc_events
POIN BallistaData BallistaData
POIN Bad Bad Guards Guards
POIN Good Good Raiders Raiders
POIN Opening_event Ending_event

Bad:
UNIT Adoglos2_J Soldier 0x0 Level(12,Enemy,True) [12,0] [12,0] [steelLance,0x0,0x0,0x0] AttackInRange
UNIT Adoglos2_J Soldier 0x0 Level(6,Enemy,True) [10,13] [10,13] [ironLance,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos2_J Soldier 0x0 Level(7,Enemy,True) [9,4] [9,4] [steelLance,0x0,0x0,0x0] AttackInRange
UNIT Adoglos2_J Soldier 0x0 Level(8,Enemy,True) [7,6] [7,6] [ironLance,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos2_J KnightM 0x0 Level(8,Enemy,True) [20,6] [20,6] [Javelin,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos2_J KnightM 0x0 Level(7,Enemy,True) [7,15] [7,15] [ironLance,Vulnerary,0x0,0x0] Guard
UNIT Adoglos2Drop_J KnightM 0x0 Level(15,Enemy,True) [15,2] [15,2] [shortSpear,SteelLance,DoorKey,0x0] Guard
UNIT Adoglos2Drop_J Fighter 0x0 Level(7,Enemy,True) [23,15] [23,15] [steelAxe,DoorKey,0x0,0x0] PursueWithoutHeed
UNIT Adoglos2_J Fighter 0x0 Level(6,Enemy,True) [17,13] [17,13] [ironAxe,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos2_J Mercenary 0x0 Level(7,Enemy,True) [11,14] [11,14] [ironSword,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos2_J Mercenary 0x0 Level(7,Enemy,True) [14,14] [14,14] [steelSword,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos2_J Mercenary 0x0 Level(6,Enemy,True) [21,16] [21,16] [ironSword,0x0,0x0,0x0] AttackInRange
UNIT Adoglos2_J ArcherM 0x0 Level(6,Enemy,True) [3,8] [3,8] [steelBow,0x0,0x0,0x0] AttackInRange
UNIT Adoglos2_J ArcherF 0x0 Level(7,Enemy,True) [8,9] [8,9] [LongBow,0x0,0x0,0x0] Guard
UNIT Adoglos2_J MageM 0x0 Level(9,Enemy,True) [4,8] [4,8] [Elfire,0x0,0x0,0x0] Guard
UNIT Adoglos2_J Monk 0x0 Level(10,Enemy,True) [17,4] [17,4] [shine,0x0,0x0,0x0] AttackInRange
UNIT Adoglos2_J Monk 0x0 Level(9,Enemy,True) [8,16] [8,16] [Lightning,0x0,0x0,0x0] Guard
UNIT Adoglos2_J CavalierM 0x0 Level(8,Enemy,True) [24,7] [24,7] [steelSword,SteelLance,0x0,0x0] AttackInRange
UNIT Adoglos2_J CavalierM 0x0 Level(8,Enemy,True) [4,16] [4,16] [Javelin,IronSword,0x0,0x0] PursueWithoutHeed
UNIT

Good:
UNIT Jackson PaladinM Leader Level(1,Ally,False) [21,11] [21,11] [NoItems] NoAI
UNIT Hadvar_J PaladinM Jackson Level(1,Ally,False) [14,5] [14,5] [NoItems] NoAI
UNIT

Raiders:
UNIT KentCavalier CavalierM Jackson Level(10,Ally,False) [13,22] [13,19] [steelSword,Javelin,Vulnerary,0x0] NoAI
UNIT TarvosGuy Tarvos Jackson Level(10,Ally,False) [12,22] [12,19] [steelAxe,Swordreaver,DoorKey,0x0] NoAI
UNIT SainSoldier Soldier Jackson Level(8,Ally,False) [13,22] [13,20] [steelLance,Javelin,Vulnerary,0x0] NoAI
UNIT

Prisoners:
UNIT Mac_P Civilian_2 0x0 Level(12,NPC,False) [0,14] [0,14] [NoItems] GuardTile
UNIT Naeji_J Nomad 0x0 Level(10,NPC,True) [0,10] [0,10] [NoItems] GuardTile
UNIT NaejiCaptain_J CavalierM 0x0 Level(13,NPC,True) [21,0] [21,0] [NoItems] GuardTile
UNIT

Guards:
UNIT Adoglos_J Soldier 0x0 Level(9,Enemy,True) [11,7] [11,7] [steelLance,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos_J CavalierM 0x0 Level(9,Enemy,True) [3,18] [3,18] [steelLance,0x0,0x0,0x0] PursueWithoutHeed
UNIT Adoglos_J CavalierM 0x0 Level(9,Enemy,True) [24,5] [24,5] [steelSword,0x0,0x0,0x0] PursueWithoutHeed
UNIT

Turn_events:
TurnEventPlayer(0x0,Opening_event,1)
TurnEventPlayer(0x0,GuardsWokeUp,8,10)
TURN

Character_events:
CharacterEventBothWays(0x5,GiveJacksonWeapons1,KentCavalier,Jackson)
CharacterEventBothWays(0x6,GiveJacksonWeapons2,TarvosGuy,Jackson)
CharacterEventBothWays(0x7,GiveJacksonWeapons3,SainSoldier,Jackson)
CharacterEvent(0x8,FirstMeeting,Jackson,Mac)
CharacterEventBothWays(0xA,Ending_event_talk,Jackson,Hadvar_J)
CHAR

Location_events:
Door(22,14)
Door(15,3)
DOOR 0xB MacDoor [2,14] 0x10 //Vertical door
LOCA

Misc_events:
CauseGameOverIfLordDies
AREA 0x9 HiddenTreasure [7,9] [7,9]
AFEV

Opening_event:
LOU1 Good
ENUN
LOU1 Bad
ENUN
LOU1 Prisoners
ENUN
CAM1 [12,18]
STAL 10
OOBB
LOU1 Raiders
ENUN
Text(InsideCastleDarker,0x7FE)
REMA
ENDA

GuardsWokeUp:
ReinforcementEvent(Guards)

GiveJacksonWeapons1:
IFEF 0x1 0x6
IFEF 0x2 0x7
MUS1 RaiseYourSpirits
ENIF 0x2
ENIF 0x1
Text(0x7FE)
REMA
ITGC Jackson IronSword
ENDA

GiveJacksonWeapons2:
IFEF 0x3 0x5
IFEF 0x4 0x7
MUS1 RaiseYourSpirits
ENIF 0x4
ENIF 0x3
Text(0x7FE)
REMA
ITGC Jackson JeiganAxe
ENDA

GiveJacksonWeapons3:
IFEF 0x5 0x5
IFEF 0x6 0x6
MUS1 RaiseYourSpirits
ENIF 0x6
ENIF 0x5
Text(0x7FE)
REMA
ITGC Jackson SilverLance
ENDA

FirstMeeting:
MUS1 SilentGround
Text(0x7FE)
ENUT 0x66
ENDA

MacDoor:
MAC1 0x01 0x0
ENDA

HiddenTreasure:
IFCA 0x0 0x7 Jackson
Text(0x7FE)
REMA
ITGV DragonAxe
ELSE 0x8
ENIF 0x7
Text(0x7FE)
REMA
//Resets it so Jackson can activate
ENUF 0x9
ENIF 0x8
ENDA

Ending_event_talk:
FADI 10
BACG InsideCastleDarker
FADU 10
Text(0x800)
IFET 0x9 0x9
MORETEXT 0x7FE
ITGC Hadvar_J SilverLance
ITGC Hadvar_J SilverSword
ITGC Hadvar_J Javelin
REMA
ELSE 0x10
ENIF 0x9
MORETEXT 0x7FE
ITGC Hadvar_J SteelLance
ITGC Hadvar_J SteelSword
ITGC Hadvar_J Javelin
REMA
ENIF 0x10
JUMP Ending_event
ENDA

Ending_event:
MoveToChapter(Jack3)
STAL 1
_0x1
ENDA

BallistaData:
BLST


MESSAGE Events end at offset currentOffset
//The map for this chapter is at offset: ????????

Link to comment
Share on other sites

Hello. I am fairly new when it comes Fire Emblem hacking, so I ask how one would change the tiles for a village (to turn into ruins) after it has been attacked by an enemy Brigand. (For FE7) I understand how to change tiles based upon player actions, but I'm not sure how to replicate such changes based on enemy actions.

Link to comment
Share on other sites

#define DISABLE_TUTORIALS
#include EAstdlib.event

ORG 0xC9C9C8+(4*0x0E)

POIN TileChanges

ORG 0xD00B9C

TileChanges:
TileMap(0x01,0x02,0x0D,0x02,0x03,MacCell)
TileMap(0x02,0x0E,0x03,0x03,0x02,HadvarCell)
TileMap(0x03,0x15,0x0E,0x01,0x02,JacksonCell)
TileMap(0x04,0x12,0x00,0x02,0x02,BreakWall)
WORD $FF
WORD $00
WORD $00

MacCell:
WORD 0xB4 0x06 0xD0 0x0C
WORD 0xE0 0x0C 0xD4 0x0C
WORD 0xD4 0x0C 0xD8 0x0C

HadvarCell:
WORD 0xB4 0x06 0xD0 0x0C 0xAC 0x07
WORD 0xE0 0x0C 0xD4 0x0C 0xAC 0x07

JacksonCell:
WORD 0xD0 0x0C
WORD 0xD4 0x0C

BreakWall:
WORD 0xA8 0x07 0xD0 0x0C 
WORD 0xE4 0x0C 0xD8 0x0C

MESSAGE Tile changes end at offset currentOffset

For the tiles, you are supposed to use BYTE instead of WORD. Better yet, use one SHORT per tile after you get everything working.

Text(InsideCastleDarker,0x7FE)
REMA

Text macro has REMA.

Ending_event:
MoveToChapter(Jack3)
STAL 1
_0x1
ENDA

MoveToChapter has the 3 codes you have after them.

As for your Tiled method, hard to say as you didn't show the Tiled file.

Hello. I am fairly new when it comes Fire Emblem hacking, so I ask how one would change the tiles for a village (to turn into ruins) after it has been attacked by an enemy Brigand. (For FE7) I understand how to change tiles based upon player actions, but I'm not sure how to replicate such changes based on enemy actions.

As long as the tile change itself is there, it should activate automatically if you used the Village macro.

Edited by Vergil
Link to comment
Share on other sites

As long as the tile change itself is there, it should activate automatically if you used the Village macro.

Well, my problem is that I am not sure how to tell the game whether a player unit is on the village, or an enemy is on it. At the moment, the village is turned to ruins, regardless of which unit is on there. Am I supposed to use an if statement in the village event or something?

Link to comment
Share on other sites

No, the Village Macro will take care of that for you. All you need to do is make sure the game finds correct tile change. You do have the destruction tile change before the village closing tile change in the tile change list?

Link to comment
Share on other sites

Okay. I have switched the position of the destruction tile event and the gate closing tile event and now the gate always closes regardless of whether a player or an enemy is on it. I will post the code I have for the chapter and tile changing events, so that you might be able to tell me what I'm doing wrong.

[spoiler=Chapter Events]

#define DISABLE_TUTORIALS

#include EAstdlib.event

#include "Definitions.txt"

#include "Macros.txt"

EventPointerTable(0x06,Pointers)

org 0xD80000

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 0x8E Brigand 0x00 Level(8,Enemy,False) [18,15] [18,15] [steelAxe,HandAxe] [0x03,0x03,0x09,0x20]

UNIT 0x8F Brigand 0x00 Level(2,Enemy,True) [7,5] [7,5] [ironAxe] [0x08,0x03,0x01,0x00]

UNIT 0x8F Brigand 0x00 Level(3,Enemy,True) [5,8] [5,8] [ironAxe] [0x08,0x03,0x01,0x00]

UNIT 0x8F Brigand 0x00 Level(2,Enemy,True) [9,9] [9,9] [HandAxe] [0x08,0x03,0x01,0x00]

UNIT 0x90 Mercenary 0x00 Level(10,Enemy,False) [12,6] [12,6] [steelSword,DragonShield] [0x03,0x03,0x09,0x20]

UNIT 0x8F Brigand 0x00 Level(4,Enemy,True) [12,12] [12,12] [ironAxe,HandAxe] [0x08,0x03,0x01,0x00]

UNIT 0x8F Archer 0x00 Level(4,Enemy,True) [3,11] [3,11] [ironBow,Vulnerary] [0x08,0x03,0x01,0x00]

UNIT Empty

Badreinforcements1:

UNIT 0x8F Brigand 0x00 Level(3,Enemy,True) [18,5] [18,5] [ironAxe] [0x00,0x04,0x01,0x00]

UNIT 0x8F Fighter 0x00 Level(4,Enemy,True) [18,6] [18,6] [ironAxe] [0x00,0x00,0x09,0x00]

UNIT Empty

Badreinforcements2:

UNIT 0x8F Brigand 0x00 Level(3,Enemy,True) [18,5] [18,5] [ironAxe] [0x00,0x04,0x01,0x00]

UNIT 0x8F Archer 0x00 Level(4,Enemy,True) [18,6] [18,6] [ironBow] [0x00,0x00,0x09,0x00]

UNIT Empty

Badreinforcements3:

UNIT 0x8F Brigand 0x00 Level(3,Enemy,True) [18,5] [18,5] [ironAxe] [0x00,0x04,0x01,0x00]

UNIT 0x8F Mercenary 0x00 Level(5,Enemy,True) [18,6] [18,6] [ironSword,Vulnerary] [0x00,0x00,0x09,0x00]

UNIT Empty

Thieves:

UNIT 0x91 Thief 0x00 Level(3,Enemy,True) [0,15] [0,15] [PoisonSword,Elixir] [0x10,0x05,0x09,0x00]

UNIT Empty

Good:

UNIT Marina Myrmidon_F 0x00 Level(1,Ally,False) [0,2] [0,2] [ironSword, Vulnerary] [NOAI]

UNIT Max Cavalier 0x00 Level(2,Ally,False) [0,3] [0,3] [slimSpear, IronSword, Vulnerary] [NOAI]

UNIT Mitch Knight 0x00 Level(4,Ally,False) [1,2] [1,2] [steelSpear] [NOAI]

UNIT Empty

Turn_events:

TurnEventPlayer(0x00,Opening_event,1)

TurnEventPlayer(0x00,Reinforcements1,5)

TurnEventPlayer(0x00,Reinforcements2,8)

TurnEventEnemy(0x00,Thiefrein,10)

TurnEventPlayer(0x00,Reinforcements3,11)

TURN

Character_events:

CHAR

Location_events:

Village(0x06,Village1,8,4)

Village(0x07,Village2,14,11)

House(0x08,House1,10,4)

House(0x09,House2,9,8)

Armory(ArmoryData,4,7)

Vendor(VendorData,15,8)

CODE 0x00

Misc_events:

DefeatBoss(Ending_event)

CauseGameOverIfLordDies

CODE 0x00

BallistaData:

BLST

ALIGN 4

Opening_event:

LOU1 Good

ENUN

LOU1 Bad

ENUN

OOBB

ENDA

Ending_event:

MNCH 0x08

ENDA

Reinforcements1:

LOU1 Badreinforcements1

ENUN

CAM1 [11,4]

ENDA

Thiefrein:

LOU1 Thieves

ENUN

CAM1 [4,11]

ENDA

Reinforcements2:

LOU1 Badreinforcements2

ENUN

CAM1 [11,4]

ENDA

Reinforcements3:

LOU1 Badreinforcements3

ENUN

CAM1 [11,4]

ENDA

Village1:

VillageEventMoney(0x803,0x02,1000)

Village2:

VillageEventItem(0x804,0x02,RedGem)

House1:

HouseEvent(0x805,0x01)

House2:

HouseEvent(0x806,0x01)

ArmoryData:

SHLI IronSword IronSpear

VendorData:

SHLI Vulnerary

MESSAGE Events end at offset currentOffset

[spoiler='Tile Changing Events]

#define TileMap(TCN,X1,Y1,L1,L2,TilePointer) "CODE TCN X1 Y1 L1; CODE L2 0x00 0x00 0x00;

POIN TilePointer"

#include EAstdlib.event

EventPointerTable(0x0E,TileChanges)

POIN TileChanges

org 0xDC1000

TileChanges:

TileMap(0x00,0x07,0x03,0x03,0x02,Village1Dead)

TileMap(0x01,0x07,0x03,0x03,0x02,Village1)

TileMap(0x02,0x0D,0x0A,0x03,0x02,Village2Dead)

TileMap(0x03,0x0D,0x0A,0x03,0x02,Village2)

CODE $FF

CODE $00

CODE $00

Village1Dead:

CODE 0x80 0x0C 0x84 0x0C 0x84 0x0B 0x00 0x0D 0x04 0x0D 0x04 0x0C

Village1:

CODE 0x80 0x0E 0x84 0x0E 0xA8 0x0C 0x00 0x0F 0x80 0x00 0x0C 0x0C

Village2Dead:

CODE 0x80 0x0C 0x84 0x0C 0x98 0x0B 0x00 0x0D 0x04 0x0D 0x10 0x0D

Village2:

CODE 0x80 0x0E 0x84 0x0E 0x88 0x0E 0x00 0x0F 0x80 0x00 0x08 0x0F

Edited by 42_
Link to comment
Share on other sites

Man I haven't been here in ages.

Er, I can't get MURE to work.

[spoiler=code]

#define DISABLE_TUTORIALS
#include EAstdlib.event

EventPointerTable(0x13,0xD01000)
EventPointerTable(0x14,TileChanges)
EventPointerTable(0x15,Chapter)

ORG 0xD01350
Chapter:
POIN TurnEvents 
POIN CharacterEvents 
POIN LocationEvents 
POIN MiscEvents
POIN BallistaData BallistaData
POIN Bad Bad Bad Bad
POIN Good Good Good Good
POIN OpeningEvent EndingEvent

Bad:
UNIT 0x92 Mercenary Migal Level(2,Enemy,False) [13,16] [09,11] [ironSword] [0x00, 0x03, 0x09, 0x00]
UNIT 0x92 Mercenary Migal Level(1,Enemy,False) [13,16] [10,13] [ironSword] [0x00, 0x03, 0x09, 0x00]
UNIT 0x93 Cavalier Migal Level(2,Enemy,True) [13,16] [12,10] [ironSword] [0x00, 0x03, 0x09, 0x00]
UNIT 0x93 Cavalier Migal Level(1,Enemy,False) [13,16] [12,13] [ironSword] [0x00, 0x03, 0x09, 0x00]
UNIT 0x93 Cavalier Migal Level(2,Enemy,False) [13,16] [13,16] [ironSword] [0x00, 0x03, 0x09, 0x00]
UNIT 0x92 Mercenary Migal Level(2,Enemy,True) [19,12] [15,11] [ironSword] [0x00, 0x03, 0x09, 0x00]
UNIT 0x92 Mercenary Migal Level(1,Enemy,False) [19,12] [19,9] [ironSword] [0x00, 0x03, 0x09, 0x00]
UNIT 0x93 Cavalier Migal Level(2,Enemy,True) [19,12] [17,07] [ironSpear] [0x00, 0x03, 0x09, 0x00]
UNIT 0x93 Cavalier Migal Level(1,Enemy,False) [19,12] [12,14] [ironSpear] [0x00, 0x03, 0x09, 0x00]
UNIT 0x93 Cavalier Migal Level(2,Enemy,False) [19,12] [19,12] [ironSpear] [0x00, 0x03, 0x09, 0x00]
UNIT 0x91 Brigand Migal Level(2,Enemy,False) [24,17] [21,17] [ironAxe] [0x00, 0x04, 0x01, 0x00]
UNIT 0x91 Brigand Migal Level(2,Enemy,False) [24,17] [18,16] [ironAxe] [0x00, 0x04, 0x01, 0x00]
UNIT

Good:
UNIT Lyn_t 0x00 0x00 0x00 [06,05] [05,04] [0x00] [0x00]
UNIT Marcus 0x00 Lyn_t 0x00 [06,05] [04,05] [0x00] [0x00]
UNIT Florina_t PegasusKnight Lyn_t Level(1,Ally,False) [06,05] [06,05] [slimSpear,Javelin,Vulnerary] [0x00]
UNIT

Cavaliers:
UNIT Sain_t Cavalier Lyn_t Level(1,Ally,False) [04,03] [03,04] [ironSword,IronSpear,Vulnerary] [0x00]
UNIT Kent_t Cavalier Lyn_t Level(1,Ally,False) [04,03] [04,03] [ironSword,IronSpear,Vulnerary] [0x00]
UNIT

FirstBad:
UNIT Migal Brigand 0x00 Level(5,Enemy,False) [23,19] [23,13] [steelAxe, HandAxe, Vulnerary] [0x00, 0x03, 0x00, 0x20]
UNIT 0x91 Brigand Migal Level(2,Enemy,False) [23,19] [22,14] [ironAxe] [0x00, 0x04, 0x01, 0x00]
UNIT 0x91 Brigand Migal Level(2,Enemy,False) [23,19] [24,14] [ironAxe] [0x00, 0x04, 0x01, 0x00]
UNIT

RestOfGood:
UNIT Wil_t 0x00 0x00 0x00 [08,05] [08,05] [0x00] [0x00]
UNIT

TurnEvents:
TURN 0x0 OpeningEvent [1,0] 0x0 0x0
TURN

CharacterEvents:
CHAR

LocationEvents:
Village(0x05,Village,0x17,0x7)
Armory(ArmoryList,0x11,0x2)
Vendor(VendorList,0x12,0x3)
House(0x00,House1,0x15,0x03)
House(0x00,House2,0x0B,0x0F)
LOCA

MiscEvents:
CauseGameOverIfLordDies
DefeatAll(EndingEvent)
AFEV

OpeningEvent:
MUS1 HectorsTheme
LOU1 Good
BACG 0x1D
FADU 0x10
TEX1 0x829
REMA
CURF [04,03]
Text(0x82A,0x10)
Text(0x82B,0x1D)
MUS2 AnUnexpectedCaller
CMOF
LOU1 Cavaliers
FADI 0x10
BACG 0x1D
FADU 0x10
TEX1 0x82C
MURE 0x5
MORETEXT 0x82D
REMA
MOVE Sain_t [07,04]
MOVE Kent_t [06,05]
MOVE Florina_t [09,04]
MOVE Lyn_t [10,05]
MOVE Marcus [09,06]
ENUN
Text(0x82E,0x1D)
MOVE Florina_t [20,07]
ENUN
CMOF
MUS2 ShadowApproaches
LOU1 FirstBad
ENUN
CAM1 Migal
CURF Migal
Text(0x82F)
MOVE Migal [23,12]
ENUN
CURF [23,12]
Text(0x830,0x02)
MAC1 0x00 0x00
Text(0x831)
CMON
MOVE [22,14] [20,11]
CAM1 Florina_t
Text(0x832)
MOVE Florina_t [09,04]
Text(0x833,0x1D)
CMOF 
LOU1 Bad
ENUN
MURE 0x10
TEX1 0x834
CAM1 [23,07]
CURF [23,07]
MORETEXT 0x835
REMA
LOU1 RestOfGood
ENUN
ENDA

EndingEvent:
Text(0x836,0x09)
MoveToChapter(0x04)
ENDA

Village:
VillageEventItem(0x837,0x02,BlueGem)
ENDA

ArmoryList:
SHLI IronSword IronSpear IronBow

VendorList:
SHLI Vulnerary

House1:
HouseEvent(0x838,0x01)
ENDA

House2:
HouseEvent(0x839,0x01)
ENDA

BallistaData:
BLST

TileChanges:
//will do

MESSAGE Events end at offset currentOffset

It's in the OpeningEvent section; I MUS2 into something else, but when I try to use MURE, it just stops the music. :|

Edited by Ninja Caterpie
Link to comment
Share on other sites

that, uh, kinda worked. at least there's no silence now.

How the music commands are ordered:

MUS3 HectorsTheme 0x05
...
MUS2 AnUnexpectedCaller
...
MURE 0x05
...
MUS2 ShadowApproaches
...
MURE 0x05

At the moment, it plays Hector's Theme, then swaps over to the second piece (AUC) fine.

The first MURE then does nothing, the second MUS2 changes the music, then the next MURE changes it back to AUC.

If i cut out the last MURE, it plays Hector's Theme, then swaps over to AUC, then goes silent on the MURE. :|

For some weird reason the first MURE just doesn't work.

no wait weird stuff going on.

that didn't work.

i'll just swap back and forth using mus1 for now.

Edited by Ninja Caterpie
Link to comment
Share on other sites

  • 2 weeks later...

I've tried some Eventhacking today by following Archsages Tutorial for Evenhacking, but after inserting the Script I've got a black screen after the chapter screen shows up until i look at a unit's stats. When I played it again with sound it plays the BGM of the original chapter til the player phase begin. The Enemy Phase has no sound at all.

I also noticed that I can't load the rom in FEditor Adv after I inserted the Script.

EDIT: And why the heck isn't the worldmap played :/

ventcode:

//Made by markyjoe1990 of Youtube
//Modified by Nintenlord

#include EAstdlib.event

EventPointerTable(0x40,Pointers)


ORG 0x10119A0
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 Zagan Fighter 0x00 Level(5,Enemy,False) [5,0] [5,6] [steelAxe] [0x3,0x3,0x9,0x20]
UNIT Bandit Archer 0x3F Level(1,Enemy,False) [1,0] [1,2] [ironBow] [0x0,0x6,0x29,0x0]
UNIT Bandit Fighter 0x3F Level(1,Enemy,False) [2,6] [1,3] [ironAxe] [0x0,0x0,0x9,0x0]
UNIT Bandit Fighter 0x3F Level(1,Enemy,False) [3,10] [4,5] [ironAxe] [0x0,0x0,0x9,0x0]
UNIT Bandit Fighter 0x3F Level(1,Enemy,False) [12,10] [6,5] [ironAxe] [0x0,0x0,0x9,0x0]
UNIT Empty

Good:
UNIT Eliwood EliwoodLord 0x00 Level(1,Ally,False) [1,20] [2,18] [Rapier,Vulnerary] [0x00,0x00,0x00,0x00]
UNIT Marcus Knight 0x01 Level(1,Ally,False) [2,20] [1,17] [ironSpear,Vulnerary] [0x00,0x00,0x00,0x00]
UNIT Lowen Nomad 0x01 Level(1,Ally,False) [0,20] [3,17] [ironBow,Vulnerary] [0x00,0x00,0x00,0x00]
UNIT Lyn LynLord 0x01 Level(1,Ally,False) [1,20] [3,19] [ManiKatti,Vulnerary] [0x00,0x00,0x00,0x00]
UNIT Rath WyvernKnight 0x01 Level(1,Ally,False) [2,20] [2,16] [ironSpear, Vulnerary] [0x00,0x00,0x00,0x00]
UNIT Empty

Turn_events:
TURN 0x00 Opening_event [01,00] 0x0 0x00


Character_events:
CHAR

Location_events:
LOCA

Misc_events:
CauseGameOverIfLordDies
AFEV

Opening_event:
LOU1 Bad
ENUN
LOU1 Good
ENUN
ENDA

Ending_event:
//MNCH 0x??
ENDA

BallistaData:
BLST


MESSAGE Events end at offset currentOffset
//The map for this chapter is at offset: 1011750

Edited by Sephie-chan
Link to comment
Share on other sites

Opening_event:
LOU1 Bad
ENUN
LOU1 Good
ENUN
ENDA

goes to

Opening_event:
OOBB
LOU1 Bad Good
ENUN
ENDA

Just to nitpick,

LOU1 Bad
ENUN
LOU1 Good
ENUN

isn't the EXACT same as

LOU1 Bad Good
ENUN

But in this case it should be similar enough.

LOU1 Bad Good
ENUN

is the exact same as

LOU1 Bad
LOU1 Good
ENUN

Link to comment
Share on other sites

Alright. I'm admittedly an idiot, but I've no idea what I'm doing wrong. Any help would be appreciated. For reference, I'm hacking the prologue of FE8 and trying to make a simple set of events to load units on the map so I can walk around and test it. (Also, can you place something in place of DropItem to just have no effect?)

[spoiler=Events]//Made by Camtech075 of SerenesForest

//Modified by Nintenlord

#include EAstdlib.event

EventPointerTable(0x07,ThisChapter)

ORG 0x00B2F620

ThisChapter:

POIN TurnBasedEvents

POIN CharacterBasedEvents

POIN LocationBasedEvents

POIN MiscBasedEvents

POIN Dunno Dunno Dunno

POIN Tutorial

POIN TrapData TrapData

POIN Good Bad

POIN $0 $0 $0 $0 $0 $0

POIN BeginningScene EndingScene

TurnBasedEvents:

TURN

CharacterBasedEvents:

CHAR

LocationBasedEvents:

LOCA

MiscBasedEvents:

AFEV

Dunno:

//DO NOT TOUCH

WORD $00

Tutorial:

//DO NOT TOUCH

WORD $00

TrapData:

ENDTRAP

ALIGN 4

Good:

UNIT Eirika EirikaLord 0x00 Level(1,Ally,False) [1,4] DropItem

0x00 0x01 EIRIKAREDA [RedGem, 0x00, 0x00, 0x00] [NoAI]

UNIT

Bad:

UNIT Seth Paladin 0x00 Level(1,Enemy,False) [2,4] DropItem 0x00

0x01 SETHREDA [RedGem, 0x00, 0x00, 0x00] [NoAI]

UNIT

EIRIKAREDA:

REDA [1,3]

SETHREDA:

REDA [2,3]

Opening_event:

_LOAD1 Good

_LOAD1 Bad

BeginningScene:

ENDA

EndingScene:

MoveToChapter(NextChapter)

MESSAGE Events end at offset currentOffset

[spoiler=Error]Finished.

1 errors encountered:

Input was not parsed from File Attempted Test Event.txt, Line 47, Column 86 to File Attempted Test Event.txt, Line 47, Column 86

Link to comment
Share on other sites

The formatting was a little messed up from using Notepad. I got Notepad++, prettied up some formatting silliness, and tried again. Still an error on Line 47, which is Eirika's definition:

UNIT Eirika EirikaLord 0x00 Level(1,Ally,False) [1,4] DropItem 0x00 0x01 EIRIKAREDA [RedGem, 0x00, 0x00, 0x00] [NoAI]

Anything stick out about that?

Edited by SmashedFish
Link to comment
Share on other sites

The thing is, to troubleshoot, if there's a line that's screwing up, I try deleting/commenting it out (and any references to it).

If it doesn't error anymore, then obviously SOMETHING is wrong with it.

Edited by shadowofchaos
Link to comment
Share on other sites

Alright, I took Eirika out and got an error on Line 50, Column 83 (ie Seth's line). I then took Seth out and got five errors; one for each's REDA, one for each's _LOAD1, and "Symbol NextChapter isn't in scope". Guess I'm doing the units wrong, then. Would anyone mind looking them over?

[spoiler=Eirika]UNIT Eirika EirikaLord 0x00 Level(1,Ally,False) [1,4] DropItem 0x00 0x01 EIRIKAREDA [RedGem, 0x00, 0x00, 0x00] [NoAI]

[spoiler=Seth]UNIT Seth Paladin 0x00 Level(1,Enemy,False) [2,4] DropItem 0x00 0x01 SETHREDA [RedGem, 0x00, 0x00, 0x00] [NoAI]

Edit: Alright NL, I'll go do that real quick, brb

Double edit: Atom

[spoiler=Errors]Finished.

Messages:

Events end at offset currentOffset

7 errors encountered:

File Attempted Test Event.txt, Line 47, Column 1: Incorrect parameters in code UNIT Atom Atom Atom Atom [Atom, Atom] Atom Atom Atom Atom [Atom, Atom, Atom, Atom] [[Atom, Atom, Atom, Atom]]

File Attempted Test Event.txt, Line 51, Column 1: Incorrect parameters in code UNIT Atom Atom Atom Atom [Atom, Atom] Atom Atom Atom Atom [Atom, Atom, Atom, Atom] [[Atom, Atom, Atom, Atom]]

File Attempted Test Event.txt, Line 55, Column 1: Incorrect parameters in code REDA [Atom, Atom]

File Attempted Test Event.txt, Line 58, Column 1: Incorrect parameters in code REDA [Atom, Atom]

File Attempted Test Event.txt, Line 61, Column 1: Incorrect parameters in code _LOAD1 Atom

File Attempted Test Event.txt, Line 62, Column 1: Incorrect parameters in code _LOAD1 Atom

File Attempted Test Event.txt, Line 68, Column 1: Symbol NextChapter isn't in scope

Edited by SmashedFish
Link to comment
Share on other sites

Should AI be [[Atom, Atom, Atom, Atom]] or [Atom, Atom, Atom, Atom] like inventory is? Also, check Event assembler language.txt to check codes have correct parameters.

Edited by Nintenlord
Link to comment
Share on other sites

I fixed a few glaring errors (missing Empty in UNIT Empty, for example) and got the following:

[spoiler=Errors]Finished.

Messages:

Events end at offset currentOffset

6 errors encountered:

File Attempted Test Event.txt, Line 47, Column 1: Incorrect parameters in code UNIT Atom Atom Atom Atom [Atom, Atom] Atom Atom Atom Atom [Atom, Atom, Atom, Atom] [[Atom, Atom, Atom, Atom]]

File Attempted Test Event.txt, Line 51, Column 1: Incorrect parameters in code UNIT Atom Atom Atom Atom [Atom, Atom] Atom Atom Atom Atom [Atom, Atom, Atom, Atom] [[Atom, Atom, Atom, Atom]]

File Attempted Test Event.txt, Line 55, Column 1: No code named REDA found.

File Attempted Test Event.txt, Line 58, Column 1: No code named REDA found.

File Attempted Test Event.txt, Line 61, Column 1: No code named _LOAD1 found.

File Attempted Test Event.txt, Line 62, Column 1: No code named _LOAD1 found.

My personal favorite part is the "No code named REDA found." I wish, EA. I wish. No clue what to do on the characters, though. I'll end up looking around for someone's working data and pasting it over mine to see if I have any luck.

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