• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
March 28, 2024, 04:16:02 am

News:

Don't be hasty to start your own mod; all our FFT modding projects are greatly understaffed! Find out how you can help in the Recruitment section or our Discord!


Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Magic Gladii

1

Offset(x0016C000)

{63}(rAA)
Focus(x1E,x00,x1E,x00,x00)
Camera(+17920,+00122,+31558,+00302,+03584,+00000,+04096,+00032)
WaitForInstruction(x04,x00)
Wait(00016)
InflictStatus(x1E,x00,x00,x01,x00)
WaitForInstruction(x43,x00)
FaceUnit(x11,x00,x1E,x00,x00,x01,x00)
WaitRotateUnit(x1E,x00)
Wait(00010)
DisplayMessage(x10,x70,x0001,x1E,x00,x00,+00000,+00000,+00000,x01)
WaitForInstruction(x01,x00)
InflictStatus(x11,x00,x00,x01,x00)
WaitForInstruction(x43,x00)
FaceUnit(x1E,x00,x11,x00,x00,x01,x00)
WaitRotateUnit(x11,x00)
Focus(x11,x00,x11,x00,x00)
Camera(+00000,+00000,+00256,+00302,+03584,+00000,+04096,+00032)
WaitForInstruction(x04,x00)
Wait(00010)
DisplayMessage(x10,x70,x0002,x11,x00,x00,+00000,+00000,+00000,x01)
WaitForInstruction(x01,x00)
Focus(x1E,x00,x1E,x00,x00)
Camera(+00002,-32751,+27136,+00302,+03584,+00000,+04096,+00032)
WaitForInstruction(x04,x00)
Wait(00010)
DisplayMessage(x10,x70,x0003,x1E,x00,x00,+00000,+00000,+00000,x01)
WaitForInstruction(x01,x00)
Focus(x11,x00,x11,x00,x00)
Camera(+03584,+00000,+04096,+00302,+03584,+00000,+04096,+00032)
WaitForInstruction(x04,x00)
Wait(00010)
DisplayMessage(x10,x70,x0004,x11,x00,x00,+00000,+00000,+00000,x01)
WaitForInstruction(x01,x00)
Wait(00010)
Focus(x69,x00,x69,x00,x00)
Camera(+00402,+04352,+01024,+00302,+03712,+00000,+04096,+00034)
RotateUnit(x1E,x00,x14,x00,x01,x00)
RotateUnit(x11,x00,x14,x00,x01,x00)
March(x00,x00,000)
ZERO(x007D)
ADD(x007D,x0001)
WaitForInstruction(x04,x00)
{63}(rA0)
EventEnd()

//INSTRUCTION SECTION END -  TEXT START
//Message x01
{font:08}Agrias{br}
{font:00}What you plan to do{br}
with the Princess!?{end}

//Message x02
{font:08}Gafgarion{br}
{font:00}My orders are to take{br}
Ovelia to Gallione.{br}
What Prince Larg has in{br}
mind for her after that{br}
is no business of mine!{end}

//Message x03
{font:08}Agrias{br}
{font:00}Ovelia is not a pawn in this mad{br}
game that the Princes play!{br}
Does it not shame you to be a cur{br}
of Dycedarg and Larg? Do dignity{br}
and honour mean nothing to you!?{end}

//Message x04
{font:08}Gafgarion{br}
{font:00}Ground to dust and abandoned{br}
to the wind, long ago...!{end}


What exactly triggers this event?

I can't seem to trigger this event at all. Agrias is present, and the event where Agrias, Gafgarion and Ramza talk does take place...
2
Help! / Alazlam's Speech
May 14, 2018, 08:14:46 pm
Is it possible to edit how the game displays the fourth and fifth images from OPNTEX.BIN (Alazlam's speech) during the New Game opening sequence? I've made changes to the individual images and imported them to OPNTEX.BIN. However, these changes do not fit within the boundaries set by the game. They are not centered correctly, and some of the lines cut off too soon.

The only relevant information I've found so far is an outdated tutorial that shows how to edit the images. General forum searches don't return anything of value either.
3
Here is the event as of right now:

Offset(x0003A000)
//Remove the previous line if you wish not to override the offset in CONFIG.INI.
Text(x00000B26)
//Remove the previous line if you wish text to compile directly after instructions.

{7C}()
Camera(+00504,-00268,+01400,+00446,+03744,+00000,+04096,+00001)
WaitForInstruction(x04,x00)
WarpUnit(x04,x00,007,002,x00,x00)
WarpUnit(x01,x00,006,002,x00,x00)
WarpUnit(x07,x00,007,001,x00,x02)
WarpUnit(x08,x00,004,012,x00,x00)
WarpUnit(x1C,x00,003,012,x00,x00)
WarpUnit(x30,x00,002,011,x00,x00)
LoadEVTCHR(x01,x06,x00)
{63}(rC9)
Reveal(060)
Camera(+00064,-00432,+00000,+00318,+03616,+00000,+04096,+00160)
Wait(00008)
BlockStart()
WalkTo(x04,x00,002,002,x00,x4C,+004,x01)
WalkToAnim(x04,x00,x0002)
WaitWalk(x04,x00)
Wait(00020)
RotateUnit(x04,x00,x0C,x01,x00,x00)
WaitRotateUnit(x04,x00)
BlockEnd()
BlockStart()
WalkTo(x01,x00,001,002,x00,x9C,+004,x01)
WalkToAnim(x01,x00,x0002)
WaitWalk(x01,x00)
Wait(00022)
RotateUnit(x01,x00,x0C,x02,x00,x00)
WaitRotateUnit(x01,x00)
BlockEnd()
WalkTo(x07,x00,004,002,x01,x80,+003,x01)
WalkToAnim(x07,x00,x0002)
Wait(00150)
WaitForInstruction(x34,x00)
SaveEVTCHR(x01)
Wait(00004)
AddUnitStart()
AddUnit(x08,x00,x01)
AddUnitEnd()
BlockStart()
Wait(00020)
UnitAnim(x07,x00,x0258,x00)
BlockEnd()
DisplayMessage(x10,x11,x0001,x07,x00,x00,+00000,+00000,+00006,x02)
WaitForInstruction(x01,x00)
{39}()
Wait(00030)
UnitAnim(x07,x00,x0002,x00)
Wait(00010)
RotateUnit(x07,x00,x00,x00,x00,x00)
WaitRotateUnit(x07,x00)
Wait(00040)
WaitAddUnitEnd()
AddUnitStart()
AddUnit(x1C,x00,x01)
AddUnit(x30,x00,x01)
AddUnitEnd()
BlockStart()
Wait(00020)
UnitAnim(x07,x00,x0259,x00)
BlockEnd()
DisplayMessage(x10,x11,x0002,x07,x00,x00,+00000,+00000,+00008,x02)
WaitForInstruction(x01,x00)
Wait(00030)
WarpUnit(x08,x00,002,001,x00,x00)
SpriteMove(x08,x00,+00056,-00038,+00025,x00,x01,+00001)
WaitSpriteMove(x08,x00)
EVTCHRPalette(x08,x00,x01,x02)
UnitAnim(x07,x00,x027C,x00)
Wait(00103)
UnitShadow(x08,x00,x01)
BlockStart()
Draw(x08,x00)
UnitAnim(x08,x00,x0282,x00)
SpriteMove(x08,x00,+00056,-00042,+00005,x00,x01,+00016)
WaitSpriteMove(x08,x00)
SpriteMove(x08,x00,+00056,-00021,-00015,x00,x01,+00016)
WaitSpriteMove(x08,x00)
SpriteMove(x08,x00,+00056,+00034,-00034,x03,x08,+00016)
WaitSpriteMove(x08,x00)
Sound(x0023)
UnitAnim(x08,x00,x0283,x00)
Wait(00004)
Sound(x0025)
UnitAnim(x08,x00,x0284,x00)
Wait(00008)
UnitAnim(x08,x00,x0285,x00)
Wait(00008)
BlockEnd()
WaitForInstruction(x08,x00)
Erase(x08,x00)
Wait(00130)
EVTCHRPalette(x08,x00,x01,x05)
SpriteMove(x08,x00,+00000,+00000,+00000,x00,x01,+00001)
WaitSpriteMove(x08,x00)
WarpUnit(x08,x00,004,012,x00,x00)
UnitShadow(x08,x00,x00)
UnitAnim(x07,x00,x0259,x00)
Wait(00030)
DisplayMessage(x10,x11,x0003,x07,x00,x00,+00000,+00000,+00008,x02)
WaitForInstruction(x01,x00)
Wait(00030)
UnitAnim(x07,x00,x0002,x00)
Wait(00012)
UnitAnim(x07,x00,x0258,x00)
Wait(00058)
ZERO(x0057)
ADD(x0057,x0000)
BlockStart()
WaitValue(x0057,x000A)
RotateUnit(x04,x00,x08,x00,x01,x00)
Wait(00008)
RotateUnit(x01,x00,x08,x00,x01,x00)
UnitAnim(x07,x00,x0002,x00)
Wait(00016)
RotateUnit(x07,x00,x08,x00,x00,x00)
BlockEnd()
DisplayMessage(x10,x92,x0004,x07,x00,x09,-00105,-00070,-00136,x11)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x92,x0005,x04,x00,x00,+00036,+00005,-00022,x11)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x92,x0006,x01,x00,x00,+00022,+00005,-00014,x11)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
WaitAddUnitEnd()
Draw(x08,x00)
Draw(x1C,x00)
Draw(x30,x00)
UnitAnim(x30,x00,x0002,x00)
UnitAnim(x1C,x00,x0002,x00)
UnitAnim(x08,x00,x0002,x00)
Wait(00020)
Camera(+00064,-00560,+00688,+00318,+03616,+00000,+04096,+00128)
UnitAnim(x30,x00,x027D,x00)
Wait(00072)
UnitAnim(x30,x00,x027D,x00)
Wait(00072)
UnitAnim(x30,x00,x027D,x00)
Wait(00100)
WalkTo(x30,x00,000,003,x00,x00,+010,x01)
WalkToAnim(x30,x00,x0002)
BlockStart()
Wait(00060)
WalkTo(x08,x00,001,004,x00,xB4,+005,x01)
WalkToAnim(x08,x00,x0002)
BlockEnd()
BlockStart()
Wait(00020)
WalkTo(x1C,x00,002,004,x00,x00,+006,x01)
WalkToAnim(x1C,x00,x0002)
WaitWalk(x1C,x00)
RotateUnit(x1C,x00,x02,x00,x01,x00)
WaitRotateUnit(x1C,x00)
BlockEnd()
BlockStart()
WalkTo(x07,x00,003,002,x00,x00,+006,x01)
WalkToAnim(x07,x00,x0002)
WaitWalk(x07,x00)
RotateUnit(x07,x00,x06,x00,x01,x00)
WaitRotateUnit(x07,x00)
BlockEnd()
Wait(00060)
{63}(rCA)
Camera(+00064,-00304,+00176,+00366,+03632,+00000,+04096,+00176)
WaitWalk(x30,x00)
RotateUnit(x04,x00,x06,x00,x01,x00)
RotateUnit(x30,x00,x0E,x00,x01,x00)
WaitRotateUnit(x30,x00)
LoadEVTCHR(x00,x15,x00)
WaitForInstruction(x34,x00)
SaveEVTCHR(x00)
WaitForInstruction(x04,x00)
DisplayMessage(x10,x12,x0007,x30,x00,x00,+00000,+00008,+00004,x03)
WaitForInstruction(x01,x00)
WaitForInstruction(x08,x00)
DisplayMessage(x10,x92,x0008,x01,x00,x00,+00024,+00000,-00016,x10)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x91,x0009,x08,x00,x00,+00000,+00000,-00006,x10)
WaitForInstruction(x01,x00)
ChangeDialog(x02,x000A,x00,x00)
WaitForInstruction(x01,x00)
ZERO(x0057)
ADD(x0057,x0000)
BlockStart()
WaitValue(x0057,x0029)
UnitAnim(x08,x00,x026D,x00)
Wait(00008)
UnitAnim(x08,x00,x026E,x00)
Wait(00016)
RotateUnit(x1C,x00,x00,x00,x01,x00)
WaitRotateUnit(x1C,x00)
BlockEnd()
ChangeDialog(x01,x000B,x00,x00)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x01,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00008)
Camera(+00064,-00368,+00176,+00366,+03632,+00000,+04096,+00080)
UnitAnim(x08,x00,x026F,x00)
Wait(00006)
UnitAnim(x01,x00,x0278,x00)
Wait(00006)
UnitAnim(x30,x00,x026B,x00)
Wait(00008)
UnitAnim(x30,x00,x026C,x00)
Wait(00012)
RotateUnit(x04,x00,x08,x00,x01,x00)
WaitRotateUnit(x04,x00)
WaitForInstruction(x04,x00)
Wait(00012)
DisplayMessage(x10,x91,x000C,x1C,x00,x00,-00008,+00000,+00006,x10)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x92,x000D,x04,x00,x00,+00000,+00006,+00006,x10)
WaitForInstruction(x01,x00)
ChangeDialog(x01,x000E,x00,x00)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x01,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00012)
UnitAnim(x08,x00,x026E,x00)
Wait(00004)
UnitAnim(x08,x00,x026D,x00)
Wait(00004)
UnitAnim(x08,x00,x0002,x00)
BlockStart()
Wait(00028)
UnitAnim(x01,x00,x0002,x00)
Wait(00004)
UnitAnim(x04,x00,x0209,x00)
RotateUnit(x1C,x00,x04,x00,x00,x00)
BlockEnd()
DisplayMessage(x10,x91,x000F,x08,x00,x00,+00000,-00004,-00010,x13)
WaitForInstruction(x01,x00)
WaitForInstruction(x08,x00)
DisplayMessage(x10,x92,x0010,x01,x00,x00,+00018,+00000,-00009,x10)
WaitForInstruction(x01,x00)
ChangeDialog(x01,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x02,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00008)
RotateUnit(x08,x00,x08,x00,x00,x00)
WaitRotateUnit(x08,x00)
Wait(00008)
UnitAnim(x08,x00,x027E,x00)
Wait(00068)
UnitAnim(x08,x00,x0002,x00)
Wait(00014)
WalkTo(x08,x00,001,006,x00,x00,+006,x01)
WalkToAnim(x08,x00,x0002)
WaitWalk(x08,x00)
Wait(00050)
RotateUnit(x1C,x00,x06,x00,x02,x00)
WaitRotateUnit(x1C,x00)
UnitAnimRotate(x30,x00,x0A,x0002,x00)
Wait(00008)
MirrorSprite(x30,x00,x01)
UnitAnim(x30,x00,x0277,x00)
Wait(00030)
UnitAnim(x08,x00,x0002,x00)
Wait(00008)
UnitAnim(x08,x00,x0274,x00)
Wait(00020)
DisplayMessage(x10,x91,x0011,x08,x00,x00,+00000,+00000,+00000,x03)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x92,x0012,x07,x00,x00,+00024,+00004,-00021,x11)
WaitForInstruction(x01,x00)
ChangeDialog(x01,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x02,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00010)
UnitAnim(x08,x00,x0002,x00)
RotateUnit(x08,x00,x00,x02,x00,x00)
WaitRotateUnit(x08,x00)
Wait(00016)
DisplayMessage(x10,x91,x0013,x08,x00,x00,+00000,+00000,+00000,x02)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x92,x0014,x07,x00,x00,+00000,+00006,+00006,x11)
WaitForInstruction(x01,x00)
ChangeDialog(x01,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x02,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00020)
UnitAnim(x08,x00,x0276,x00)
Wait(00080)
UnitAnim(x08,x00,x0002,x00)
Wait(00008)
DisplayMessage(x10,x91,x0015,x08,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x92,x0016,x01,x00,x00,+00024,+00000,-00014,x10)
WaitForInstruction(x01,x00)
ZERO(x0057)
ADD(x0057,x0000)
BlockStart()
WaitValue(x0057,x0025)
RotateUnit(x08,x00,x06,x00,x00,x00)
WaitRotateUnit(x08,x00)
BlockEnd()
ChangeDialog(x01,x0017,x00,x00)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x01,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00020)
RotateUnit(x08,x00,x08,x00,x00,x00)
WaitRotateUnit(x08,x00)
Wait(00040)
BlockStart()
WalkTo(x08,x00,002,013,x00,x00,+006,x01)
WalkToAnim(x08,x00,x0002)
BlockEnd()
Wait(00064)
UnitAnim(x04,x00,x0002,x00)
Wait(00064)
BlockStart()
RotateUnit(x07,x00,x0C,x00,x00,x00)
WaitRotateUnit(x07,x00)
WalkTo(x07,x00,005,002,x00,x00,+004,x01)
WalkToAnim(x07,x00,x0002)
WaitWalk(x07,x00)
RotateUnit(x07,x00,x04,x00,x00,x00)
WaitRotateUnit(x07,x00)
BlockEnd()
BlockStart()
Wait(00020)
RotateUnit(x1C,x00,x00,x00,x00,x00)
WaitRotateUnit(x1C,x00)
BlockEnd()
DisplayMessage(x10,x92,x0018,x04,x00,x00,+00024,+00004,-00016,x13)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
Wait(00008)
UnitAnimRotate(x30,x00,x0A,x0002,x00)
Wait(00010)
UnitAnimRotate(x30,x00,x08,x0002,x00)
Wait(00008)
WalkTo(x04,x00,002,003,x00,x00,+006,x01)
WalkToAnim(x04,x00,x0002)
WaitWalk(x04,x00)
UnitAnim(x1C,x00,x01F4,x00)
Wait(00006)
UnitAnim(x1C,x00,x01F5,x00)
Wait(00008)
UnitAnim(x1C,x00,x01F6,x00)
Wait(00008)
UnitAnim(x1C,x00,x01F7,x00)
Wait(00006)
UnitAnim(x1C,x00,x01F8,x00)
Wait(00006)
UnitAnim(x1C,x00,x01F9,x00)
Wait(00008)
UnitAnim(x1C,x00,x01F8,x00)
Wait(00006)
UnitAnim(x1C,x00,x01FA,x00)
Wait(00010)
BlockStart()
UnitAnim(x1C,x00,x01F8,x00)
Wait(00006)
UnitAnim(x1C,x00,x01F9,x00)
Wait(00010)
UnitAnim(x1C,x00,x01F8,x00)
Wait(00006)
UnitAnim(x1C,x00,x01F7,x00)
Wait(00010)
UnitAnim(x1C,x00,x01F6,x00)
BlockEnd()
DisplayMessage(x10,x91,x0019,x1C,x00,x00,+00000,+00000,+00000,x10)
WaitForInstruction(x01,x00)
ChangeDialog(x01,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
WaitForInstruction(x08,x00)
Wait(00008)
WalkTo(x04,x00,002,003,x00,x00,+004,x01)
WalkToAnim(x04,x00,x0002)
WaitWalk(x04,x00)
SpriteMove(x1C,x00,+00000,+00000,-00004,x02,x0A,+00028)
SpriteMove(x04,x00,+00000,-00001,+00008,x02,x0A,+00028)
WaitSpriteMove(x04,x00)
Wait(00010)
SpriteMove(x04,x00,+00000,+00000,+00010,x02,x0A,+00001)
WaitSpriteMove(x04,x00)
UnitAnim(x1C,x00,x01FB,x00)
UnitAnim(x04,x00,x0204,x00)
Wait(00010)
SpriteMove(x1C,x00,+00000,+00002,-00007,x02,x0A,+00001)
WaitSpriteMove(x1C,x00)
UnitAnim(x1C,x00,x01FC,x00)
UnitAnim(x04,x00,x0205,x00)
Sound(x0041)
Wait(00008)
SpriteMove(x1C,x00,+00000,+00003,-00010,x02,x0A,+00001)
WaitSpriteMove(x1C,x00)
UnitAnim(x1C,x00,x01FD,x00)
UnitAnim(x04,x00,x0206,x00)
Wait(00008)
UnitAnim(x1C,x00,x01FE,x00)
UnitAnim(x04,x00,x0207,x00)
Wait(00030)
DisplayMessage(x10,x92,x001A,x04,x00,x00,+00024,+00004,-00016,x13)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00010)
UnitAnim(x1C,x00,x01FF,x00)
Wait(00010)
UnitAnim(x1C,x00,x01FE,x00)
Wait(00060)
UnitAnim(x04,x00,x0206,x00)
UnitAnim(x1C,x00,x01FD,x00)
Wait(00012)
SpriteMove(x1C,x00,+00000,+00002,-00008,x02,x0A,+00001)
WaitSpriteMove(x1C,x00)
UnitAnim(x1C,x00,x01FC,x00)
UnitAnim(x04,x00,x0205,x00)
Wait(00010)
SpriteMove(x04,x00,+00000,+00000,+00002,x02,x0A,+00006)
UnitAnim(x04,x00,x0204,x00)
SpriteMove(x1C,x00,+00000,+00000,-00002,x02,x0A,+00006)
UnitAnim(x1C,x00,x01FB,x00)
Wait(00010)
SpriteMove(x1C,x00,+00000,+00000,+00000,x02,x0A,+00010)
UnitAnim(x1C,x00,x01F5,x00)
SpriteMove(x04,x00,+00000,+00000,+00000,x02,x0A,+00008)
UnitAnim(x04,x00,x0002,x00)
Wait(00011)
UnitAnim(x1C,x00,x01F4,x00)
Wait(00010)
UnitAnim(x1C,x00,x0002,x00)
Wait(00070)
Wait(00024)
RotateUnit(x04,x00,x00,x01,x00,x00)
WaitRotateUnit(x04,x00)
WalkTo(x04,x00,003,002,x00,x00,+004,x01)
WalkToAnim(x04,x00,x0002)
Wait(00030)
BlockStart()
WalkTo(x1C,x00,002,002,x00,x00,+005,x01)
WalkToAnim(x1C,x00,x0002)
WaitWalk(x1C,x00)
RotateUnit(x1C,x00,x0C,x00,x00,x00)
WaitRotateUnit(x1C,x00)
BlockEnd()
Wait(00016)
RotateUnit(x01,x00,x0C,x00,x00,x00)
WaitRotateUnit(x01,x00)
Wait(00016)
WaitWalk(x04,x00)
DisplayMessage(x10,x12,x001B,x04,x00,x00,+00000,+00000,+00000,x03)
WaitForInstruction(x01,x00)
BlockStart()
RotateUnit(x07,x00,x0C,x02,x01,x00)
WaitRotateUnit(x07,x00)
WalkTo(x07,x00,007,000,x00,x00,+007,x01)
WalkToAnim(x07,x00,x0002)
WaitWalk(x07,x00)
BlockEnd()
BlockStart()
WalkTo(x04,x00,007,000,x00,x00,+006,x01)
WalkToAnim(x04,x00,x0002)
WaitWalk(x04,x00)
BlockEnd()
BlockStart()
WalkTo(x1C,x00,007,000,x00,xB0,+005,x01)
WalkToAnim(x1C,x00,x0002)
WaitWalk(x1C,x00)
BlockEnd()
Wait(00030)
BlockStart()
Wait(00062)
WalkTo(x01,x00,003,002,x00,x00,+006,x01)
WalkToAnim(x01,x00,x0002)
WaitWalk(x01,x00)
RotateUnit(x01,x00,x04,x00,x00,x00)
WaitRotateUnit(x01,x00)
BlockEnd()
Wait(00080)
BlockStart()
Wait(00010)
UnitAnim(x30,x00,x0264,x00)
Wait(00010)
UnitAnim(x30,x00,x0265,x00)
BlockEnd()
DisplayMessage(x10,x12,x001C,x30,x00,x00,+00000,+00000,+00000,x02)
WaitForInstruction(x01,x00)
WaitForInstruction(x08,x00)
Wait(00030)
DisplayMessage(x10,x11,x001D,x01,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00030)
UnitAnim(x30,x00,x0264,x00)
Wait(00008)
UnitAnim(x30,x00,x0002,x00)
Wait(00030)
DisplayMessage(x10,x92,x001E,x30,x00,x00,+00000,+00000,+00000,x02)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x91,x001F,x01,x00,x00,+00000,+00000,+00000,x02)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x01,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00060)
DisplayMessage(x10,x92,x0020,x30,x00,x00,+00000,+00000,+00000,x03)
WaitForInstruction(x01,x00)
DisplayMessage(x10,x91,x0021,x01,x00,x00,+00000,+00000,+00000,x03)
WaitForInstruction(x01,x00)
ChangeDialog(x02,x0022,x00,x00)
WaitForInstruction(x01,x00)
ChangeDialog(x01,x0023,x00,x00)
WaitForInstruction(x01,x00)
ChangeDialog(x02,xFFFF,x00,x00)
Wait(00008)
ChangeDialog(x01,xFFFF,x00,x00)
WaitForInstruction(x01,x00)
Wait(00030)
RotateUnit(x01,x00,x0C,x00,x00,x00)
WaitRotateUnit(x01,x00)
FadeSound(x00,120)
WalkTo(x01,x00,007,000,x00,x00,+006,x01)
WalkToAnim(x01,x00,x0002)
Wait(00100)
BgSound(x05,+000,+024,x00,240)
WaitWalk(x01,x00)
Erase(x01,x00)
Erase(x04,x00)
Erase(x07,x00)
Erase(x08,x00)
Erase(x1C,x00)
Wait(00020)
UnitAnim(x30,x00,x027F,x00)
Wait(00074)
UnitAnim(x30,x00,x0281,x00)
DisplayMessage(x10,x11,x0024,x30,x00,x00,+00000,+00000,+00000,x02)
WaitForInstruction(x01,x00)
Wait(00080)
UnitAnim(x30,x00,x027F,x00)
Wait(00075)
UnitAnim(x30,x00,x0281,x00)
Wait(00050)
UnitAnim(x30,x00,x0281,x00)
EditBGSound(x05,+035,+000,x00,x5F)
ColorScreen(x02,000,000,000,255,255,255,+00096)
WaitForInstruction(x0C,x00)
ZERO(x006E)
ADD(x006E,x0004)
ZERO(x006F)
ADD(x006F,x0002)
ZERO(x01BF)
ADD(x01BF,x0001)
ZERO(x01C0)
ADD(x01C0,x0001)
ZERO(x0269)
ADD(x0269,x0001)
ZERO(x03EF)
ADD(x03EF,x0001)
EventEnd()

//INSTRUCTION SECTION END -  TEXT START
//Message x01
{font:08}Algus{br}
{font:00}... There was a time when my family was{br}
once respected like the Beoulves.{end}

//Message x02
{font:08}Algus{br}
{font:00}But my grandfather was captured during the{br}
Fifty Years' War...{br}
To save his own skin he traded in those of his{br}
comrades.{br}
{br}
But, as he left the enemy castle, he was{br}
stabbed in the back, by none other than a{br}
squire just like myself.{br}
One of my grandfather's ex{D11D}comrades escaped{br}
and spread the story around.{br}
{br}
Of course, my dad didn't believe a word of it,{br}
but everyone else did. He was deserted...{end}

//Message x03
{font:08}Algus{br}
{font:00}Rank, status...{br}
{br}
By myself, the likes of me{br}
would have never had an{br}
audience with Lord Dycedarg...{end}

//Message x04
{font:08}Voice of a young girl{br}
{font:00}Deliiitaaa!!!{end}

//Message x05
{font:08}Delita{br}
{font:00}Teta!{end}

//Message x06
{font:08}{Ramza}{br}
{font:00}Alma, Zalbag!{end}

//Message x07
{font:08}Alma{br}
{font:00}{Ramza}, you're finally back!{end}

//Message x08
{font:08}{Ramza}{br}
{font:00}It's been a while, Zalbag.{end}

//Message x09
{font:08}Zalbag{br}
{font:00}I hear you lambasted an entire band{br}
of criminals in Gariland to a pulp!{br}
A task worthy of a Beoulve!{br}
No question, father would've{br}
been pleased.{end}

//Message x0A
{font:08}{Ramza}{br}
{font:00}... Thank you.{end}

//Message x0B
{font:08}Zalbag{br}
{font:00}Ha, ha... you haven't changed a bit,{br}
have you?{br}
Still uncomfortable with words like that.{br}
{br}
{br}
And Delita, you've certainly grown into{br}
a strong young man. I heard about your{br}
role in repelling the rebels too.{br}
Just look how happy Teta is, isn't that{br}
right?{end}

//Message x0C
{font:08}Teta{br}
{font:00}Delita, I'm glad you're{br}
doing so well.{end}

//Message x0D
{font:08}Delita{br}
{font:00}And I'm equally happy to{br}
see you doing well.{br}
How goes school? Are you{br}
getting used to it?{end}

//Message x0E
{font:08}Teta{br}
{font:00}Mm-hm! Everyone is so{br}
nice to me...{end}

//Message x0F
{font:08}Zalbag{br}
{font:00}Alas, I'd love to stay to stay and chat,   {br}
but criminals are everywhere these days,{br}
and so my work has no end.{br}
{br}
{br}
Do pardon me, as I go back to hunting.{end}

//Message x10
{font:08}{Ramza}{br}
{font:00}I pray for your victory, brother.{end}

//Message x11
{font:08}Zalbag{br}
{font:00}...The Death Corps have{br}
demanded a ransom.{end}

//Message x12
{font:08}Algus{br}
{font:00}What!?{end}

//Message x13
{font:08}Zalbag{br}
{font:00}'Tis beyond my ken.{br}
{br}
The Death Corps rebels preach death to{br}
noblility and their followers, and that their{br}
wrath does not extend beyond these.{br}
It seems unusual that they would{br}
kidnap the Marquis simply for the{br}
sake of money.{end}

//Message x14
{font:08}Algus{br}
{font:00}Absurd! They're no more than{br}
common criminals, I say!{end}

//Message x15
{font:08}Zalbag{br}
{font:00}The winds carry nothing from the "weeds"{br}
planted in their midst.{br}
I'm given to think that they've met with{br}
trouble or other serious business.{br}
{br}
But the nobles think the circumstances do{br}
not warrant further investigation.{end}

//Message x16
{font:08}{Ramza}{br}
{font:00}Zalbag, where was communication lost?{end}

//Message x17
{font:08}Zalbag{br}
{font:00}East of Gallionne, in the trade city of{br}
Dorter...{br}
I dare say, guarding a castle is such boring{br}
work.{br}
{br}
Wouldn't you agree, {Ramza}?{end}

//Message x18
{font:08}Delita{br}
{font:00}Teta, I'm sorry.{br}
We must go.{end}

//Message x19
{font:08}Teta{br}
{font:00}Don't worry about me, Delita.{br}
Just take care of yourself.{end}

//Message x1A
{font:08}Delita{br}
{font:00}Needn't worry, Teta, we're not{br}
going to do anything stupid.{br}
Be a good girl while I'm away,{br}
alright?{end}

//Message x1B
{font:08}Delita{br}
{font:00}Well, we ought to get going, Algus.{end}

//Message x1C
{font:08}Alma{br}
{font:00}What Teta said about school{br}
is not true, actually...{end}

//Message x1D
{font:08}{Ramza}{br}
{font:00}Something troubles her?{end}

//Message x1E
{font:08}Alma{br}
{font:00}Many mock her at school{br}
for being a commoner...{end}

//Message x1F
{font:08}{Ramza}{br}
{font:00}...{end}

//Message x20
{font:08}Alma{br}
{font:00}I'm sorry. I shouldn't have{br}
worried you like that.{br}
Teta will be alright.{br}
I'll be there for her.{br}
Trust me.{end}

//Message x21
{font:08}{Ramza}{br}
{font:00}I'm not worried. But you shouldn't{br}
overstrain yourself, either.{end}

//Message x22
{font:08}Alma{br}
{font:00}You're the one going too far to meet{br}
the expectations of others, {Ramza}.{br}
Be yourself. Don't feel so bounded{br}
by your name.{end}

//Message x23
{font:08}{Ramza}{br}
{font:00}Ha, ha, ha, you sound just like mother...{end}

//Message x24
{font:08}Alma{br}
{font:00}{Ramza}...{end}


I have only made changes to the event messages. I have not touched anything else.

Everything runs fine up until Message x20. Alma's dialog is entirely skipped here. Her next message is printed in Ramza's dialog box via a ChangeDialog command...

This error only occurs when Ramza's name is above a certain length. I first encountered this when testing with Ramza's name at max length.
4
Final Fantasy Tactics: Sugnuf's Translation


This mod is essentially a glorified text edit. It implements Sugnuf's Translation of the original Japanese text into the game's events. I also plan to rewrite the tutorials, the Brave Story, 'SELECT' hint dialog, menus and any other piece of text I can get my hands on.


(This spoiler will gradually be filled over time as I progress)

- Chapter 1 Events -> Complete!
- Chapter 2 Events -> Complete!
- Chapter 3 Events -> Written, currently being tested...
- Chapter 4 Events -> Written, to be tested...
- Everything Tactext -> In progress...
- Everything Image-based -> In progress...



All credit goes to Sugnuf for this translation of the original Japanese text.
Final Fantasy, and Final Fantasy Tactics are copyrights of Square-Enix Inc.

The translation may be found here: https://gamefaqs.gamespot.com/ps/197339-final-fantasy-tactics/faqs/48627


Any and all criticism, suggestions, bug reports, etc. are encouraged and greatly appreciated.

That being said, here is a (slightly broken) demo of Chapter 1:

To apply this patch, insert a *clean* Final Fantasy Tactics image file and the .ppf file into ppf-o-matic3.
5
New Project Ideas / Sugnuf's Translation Patch?
April 24, 2018, 02:53:09 pm
I was wondering if a patch has been previously posted that exclusively changes the game's dialog to that of Sugnuf's translation. If it doesn't, this will likely be my next project.

A quick search of the forum using 'Sugnuf' as the search term doesn't return any results, but there might be something I missed. Thanks!

(P.S. It's been a while since I was last here, I've got some reading to do...)
6
Help! / AI Ability Learning
July 18, 2017, 03:27:03 pm
For battle difficulty and AI balancing purposes:

When a human generic AI unit decides what abilities to learn, what order does it check the skillset's abilities in? Does it follow the abilities hex value, or does it follow the order listed in the skillsets tab of Patcher?

Ex. If Phoenix Down was placed in the second slot of the Item skillset right below Potion (instead of in the last slot), would it still be checked last? Or would it be checked directly after Potion?
7
The Lounge / FFT Bad Gameplay Habits
February 07, 2017, 08:14:30 am
I'm curious... what are considered to be 'good' and 'bad' playing habits in FFT. I've spent the most time in Vanilla (so far) so I've parobably picked up most (all?) of common ones.
8
Help! / Questions about existing ASM hacks
January 27, 2017, 07:22:37 pm
I've been messing around with the FFTPatcher applications a lot lately, and had a few questions about different ASM hacks (and 1 other thing):

1) Random unit equipment more selective - What exactly does this do? Does it make sure that units use the absolute best equipment they can? If that is not the case, are there any ASMs that have that effect? I haven't had time to patch it to an .iso and actually look for a difference, and it lacks a description. Most other default FFTorgASM hacks are self explanatory, but this one? Not really...

2) Job X is Mountable - Am I wrong in just assuming that 'mountable' means an ally can ride it like a Chocobo? Just curious.

3) I've also looked around to see if I could find (an) ASM(s) that forces every unit start with the same raw HP, MP, PA, MA, and SP (with respect to males starting w/ higher HP and PA, females starting w/ higher MP and MA). In other words every unit you see in the Soldier Office has the exact same stats (ignoring Br, Fa, and Zodiac symbols). Same idea with monsters, but its different for each monster family or type. I haven't actually found it/either of them, but I'm almost positive they exist judging by some patch change logs. Hopefully I got my point across.

4) When a units stats are generated before a battle in Vanilla, it generates the lvl 1 raw stats for the unit, then applies the level up formula using the growth constant from each job class starting with Squire or Chemist, calculating how much exp was gained until they had the requisite for the next job, then going from there........... or at least that has been my assumption since I started playing the game. Is this correct?(probably not lol) If not then how does it work?

As you can see.... kind of a newb. But at least I'm not a noob.
9
FFT+ / FFT Plus: Any point?
January 24, 2017, 10:20:19 pm
I've read in a few places that Dome will not be adding any more to FFT Plus or fixing (possibly fatal) bugs at all in the future (thus the thread being archived). If this is true, is there any point in investing time in the patch? Or will I just run into a game breaking bug after a few hours in and not be able to continue...

I know its an older patch, but it was the first one that I looked at when I looked at the 'Patches' page off the main site since i hadn't played the game in years. I will definitely check out other patches in the meantime (probably start with KO 2.6).

Thanks.
10
Help! / pSX Emulator Sound Issues
January 24, 2017, 01:03:23 pm
After somewhat extensive Google searching on the issue, I, as of right now, have not found a solution. I switched to the pSX emulator recently, and everything (so far) runs smoothly other than the sound. For example, at the default sound settings, scrolling through a menu in Vanilla PSX FFT produces a distorted version of the clicking sound it is meant to play. Background music isn't really affected unless I change the sound settings from what they are by default. As I'm relatively new to this emulator, any information would be helpful. Thanks!

Edit: Maybe not the best place to post, but I'm new here and unfamiliar with the topic trees.