Jump to content

Event Assembler Questions Thread


CT075
 Share

Recommended Posts

  • Replies 3.3k
  • Created
  • Last Reply

Top Posters In This Topic

.Which should I use for prologue door and chest tile changes?

... The first pointer for Tile changes?

The Sword of Spirits C9CA00

And you put Sword of spirits as Triggerable map changes in nightmare module for the prologue.

What I just detailed you is in the tutorial. Oh well.

Link to comment
Share on other sites

  • 2 weeks later...

I've documented a few of them, if there's anything in particular you want to do.

A lot of them have ambiguous uses or are complicated, plus I never had time to finish working out what they did so my own list isn't complete.

Link to comment
Share on other sites

How about _setval? It looked interesting because it sounds like you can edit memory with it but I have a feeling it doesn't do what I think it does

Link to comment
Share on other sites

you could always try them

Yeah where are all the fun people who try new things these days?

You might crash the game with horribly obnoxious high pitched beeps, but at least you don't have to sell your soul to me Lucifer to acquire god-like power. I think it's worth the risk.

Besides, pinstripe freezes look pretty swanky.

Link to comment
Share on other sites

Setval is pretty interesting, it sets the value of four bytes in the $030004BC area to anything you want; so _SETVAL 0x2 0xABCDEFGH will write GHEFCDAB at ($030004BC+ 4*1 = $030004C0). Some commands will automatically use values from a fixed memory slot (LOAD_WHATEVER 0x1 uses slot 0x2, coordinate-based commands like tile changes, MOVE and LOMA will use slot 0xB...), while some commands require that you define the slot to read from.

It was probably introduced to save space, since the event used to load reinforcements in this game is pretty bulky and it'd take up a lot of space to write it out for every reinforcement. So, instead each reinforcement just says _SETVAL 0x2 0x(unit pointer) and calls the reinforcement loader at the same place.

For events which use up a lot of different values at once (for instance, ones that change the AI of many units at once), the _SAVEFORBATTLE command is also used; this stores the value in slot 0x1 in a list, and you can have multiple values stored at one this way. This is useful for loops (like the AI changing). You also see it in scripted battles and in Rennac's recruitment, if you talk to him with your Lord.

Link to comment
Share on other sites

Aha, so that's what the _SAVEFORBATTLE commands do...

Hmmmmmmmmm... I wonder if setcondition is similar (I've been attempting to figure out branching conditionals for a while)

will probably try in the morning

Link to comment
Share on other sites

  • 2 weeks later...

Hi, i'm having trouble getting Map changes to work with the Tiled/Event Assembler programs. Following the tutorial located at

https://dl.dropboxusercontent.com/u/35795576/TutorialsAndResources/Eventing%20Tutorial%20References.zip

I've inserted my map and am capable of making changes with the EA such as loading/moving units and whatnot, but i can't seem to get a simple chest to open on the map. The actual chest event works properly, mind you, and i can get what's inside it, but i can't get the tile to change.

Edit: and yes, i have made sure my the Map Changes pointer is correct.

Edited by TytoCorvus
Link to comment
Share on other sites

Before any looong explanation. I'd like to link you the precedent page of this thread.

Tiled Map Changes

We've been doing a "live tuto" Shamison about this 124th page.

Maybe it could help you.

Just remember that you can't have a Map changes ID in tiled to be the same as an event in your chapter ( like a character event ID for example)

Make sure you don't have something like Map Ch ID event : 0x02 and char event 0x02. Because it wont work.

Edited by Solum
Link to comment
Share on other sites

  • 3 weeks later...

Hmm.

I have an issue.

I was taking it step by step to make sure they works without doing what I needed to have for everything in the chapter.

So far, it load fine, the map works fine, the definitions works.

But the text. It just doesn't happen (the actual text anyway) in its place it just load the map units then make this weird text thing top left corner that you can hardly see then starts the map.

My event doc is below.

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

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

EventPointerTable(0x06,ThisChapter)


ORG 0xD80000
ThisChapter:

POIN Turn_events
POIN Character_events
POIN Location_events
POIN Misc_events
POIN BallistaData BallistaData
POIN NemlyisArmy
POIN MaroonForce
POIN Opening_event Ending_event

NemlyisArmy:
UNIT Allvaria Myrmidon_F 0x00 Level(3, Enemy, 0) [2,2] [2,2] [slimSword] Guard // Delete
UNIT Nemlyis Soldier Allvaria Level(3, Enemy, 1) [2,2] [3,5] [ironSpear] AttackInRange // Delete
UNIT Nemlyis Soldier Allvaria Level(2, Enemy, 1) [2,2] [1,7] [ironSpear] PursueWithoutHeed // Delete
UNIT Nemlyis Soldier Allvaria Level(2, Enemy, 1) [2,2] [7,6] [ironSpear] PursueWithoutHeed // Delete
UNIT Nemlyis Fighter Allvaria Level(3, Enemy, 1) [2,2] [4,8] [ironAxe] PursueWithoutHeed // Delete
UNIT Nemlyis Fighter Allvaria Level(3, Enemy, 1) [2,2] [10,7] [ironAxe] PursueWithoutHeed // Delete
UNIT Nemlyis Knight Allvaria Level(3, Enemy, 1) [2,2] [10,9] [Javelin] Guard // Delete
UNIT Nemlyis Archer Allvaria Level(5, Enemy, 1) [11,4] [12,5] [ironBow] AttackInRange // Delete
UNIT Empty

MaroonForce:
UNIT Metztli Guardian 0x00 Level(1, Ally, 0) [22,14] [21,14] [ManiKatti, Vulnerary] NoAI // Delete
UNIT Kanon Archer_F Metztli Level(1, Ally, 0) [23,13] [23,13] [ironBow, Vulnerary] NoAI // Delete
UNIT Sean Cavalier Lyn_t Level(1, Ally, 0) [22,15] [22,15] [ironSword, IronSpear, Vulnerary] NoAI // Delete
UNIT Empty

Turn_events:
TurnEventPlayer(0x00,Opening_event,1)
TURN

Character_events:

CHAR

Location_events:
Seize(0x01,Ending_event,2,2)
LOCA

Misc_events:
CauseGameOverIfLordDies
AFEV

BallistaData:
BLST
ALIGN 4

Opening_event:
Text(0800)
STAL (0x30)
LOU1 MaroonForce
ENUN
OOBB
CAM1 [4,5]
LOU1 NemlyisArmy
ENUN
ENDA

Ending_event:
MNCH 0x01
ENDA


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

Link to comment
Share on other sites

Text IDs need to be given in hex.

Text(0800) -> Text(0x800). You can leave off the first 0 of the ID (Instead of 0800, 800) and EA will take care of it.

Also, double check your text is properly formatted.

Edited by Primefusion
Link to comment
Share on other sites

Also place REMA after the Text(0x800).

The Text(id) macro has REMA built in.

#ifdef _FE7_

#define Text(text) "TEX1 text; REMA"

#define Text(background,text) "FADI 0x10; HIDEMAP; BACG background; FADU 0x10; SHOWMAP; TEX1 text; REMA"

#define ClearBrownBox "_ASM0x42 0x83181"

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