Difference between revisions of "Text Format"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "==Extra Characters== For more information, see the Font page. {| class="wikitable" |- !|TacText !|Event !|Character Range |- |{0xD0??} |{D0}{??} |00 to CF (do not use) |-...")
(No difference)

Revision as of 01:16, 4 June 2017

Extra Characters

For more information, see the Font page.

TacText Event Character Range
{0xD0??} {D0}{??} 00 to CF (do not use)
{0xD1??} {D1}{??} D100 to D1CF
{0xD2??} {D2}{??} D200 to D2CF
{0xD3??} {D3}{??} D300 to D3CF
{0xD4??} {D4}{??} D400 to D4CF
{0xD5??} {D5}{??} D500 to D5CF
{0xD6??} {D6}{??} D600 to D6CF
{0xD7??} {D7}{??} D700 to D7CF
{0xD8??} {D8}{??} D800 to D8CF
{0xD9??} {D9}{??} D900 to D9CF
{0xDA??} {DA}{??} DA00 to DA77
  • You can technically use characters D0 to FF for D1 to DA, but there is no reason to do so.

Special Characters

Note: The "next Text Variable" ID is increased by 1 every time it is called, starting from 0. This is not affected by special characters that specify a defined Text Variable such as {0xE6}/{E6}.

For example:

{E4} - {E5}{br}
{E4} - {E5}{end}

will print as:

"decimal value of TV $00" - "string value of TV $01"{br}
"decimal value of TV $02" - "string value of TV $03"{end}
Char TacText Event Description Recommended Values (hex)
E0 {Ramza} {Ramza} Print World Unit 0x00's (#1) Name. N/A
E1 {0xE1} {unitname} Prints the name associated with the slot specified in the next Text Variable.

BATTLE unit names inside of an event and WORLD unit names when on the world map.

N/A
E2 {Delay ??} {delay:??} Wait a certain amount of frames before reading/printing the next characters. Default is 01. 00 to FF
E3 {Color ??} {font:??} Changes the colour of the displayed text (varies depending on the dialogue type). Default is 00. 00/08/10/18
E4 {0xE4} {E4} Prints the next text variable as a decimal value. N/A
E5 {0xE5} {E5} Prints a string defined in the next Text Variable. N/A
E6 {0xE6??} {E6}{??} Prints a defined Text Variable as a decimal value. 00 to 7F
E7 {0xE7} {E7} ???
E8 {0xE8??} {E8} Next decimal number will use exactly ?? Spaces.

These spaces are empty characters that are just as wide as 0/1/2/3/4/5/6/7/8/9.

01 to 0A
E9 {0xE9} {E9} Prints a string defined in the next Text Variable. N/A
EA {0xEA} {EA} Prints a string defined in the next Text Variable. N/A
EB {0xEB} {EB} Prints a string defined in the next Text Variable. N/A
EC {0xEC??} {EC} Displays a portrait? 00 to 7F
ED {0xED} {ED} ???
EE {0xEE} {EE} ???
EF {0xEF} {EF} ???
F0 {0xF0} {F0} ??? Doesn't open dialogue
F1 {0xF1} {F1} ??? Doesn't open dialogue
F2 {0xF2} {F2} ??? Doesn't open dialogue
F3 {0xF3} {F3} ??? Doesn't open dialogue
F4 {0xF4} {waitpress} Displays a cursor and waits for the player to press a confirmation button before resuming to read/print characters. N/A
F5 {0xF5??} {F5}{??} ???
F6 {0xF6??} {F6}{??} ???
F7 {0xF7} {F7} ???
F8 {Newline} {br} Inserts a line break. N/A
F9 {0xF9} {F9} ???
FB {BeginList} {FB} Begins a list of user-selectable choices. N/A
FC {EndList} {FC} Ends a list of user-selectable choices. N/A
FD {0xFD} {stayopen} Force to close via event instruction {51} ChangeDialog when used with FE {end}.

Can be placed anywhere inside the dialogue text.

N/A
FE {end} String End. Close via player confirm button input. N/A
FF {close} String End. Close automatically. {Close} for the FFTText Helper. N/A

Choice List

Choice lists will create multiple selectable options in a dialogue, with each option being separated by a {Newline}/{br}. The first option will always return 0x00000000, and each extra line, when selected, will write a value with an increment of one. The returned value is written to Variable 0x0018.

Options cannot be spread over multiple pages. Thus the greater number of options you may have, is 8: using a page.

Option Selected Returned Value
First 0x00000000
Second 0x00000001
Third 0x00000002
Fourth 0x00000003
Fifth 0x00000004
Sixth 0x00000005
Seventh 0x00000006
Eighth 0x00000007

For example:

{font:08}{Ramza}{br}{font:00}
{FB}1. Kick the baby{br}
2. Don't kick the baby{FC}{end}


Text Variables

ID Memory Address
$00 0x80165EF4
$01 0x80165EF8
$02 0x80165EFC
$03 0x80165F00
$04 0x80165F04
$05 0x80165F08
$06 0x80165F0C
$07 0x80165F10
$08 0x80165F14
$09 0x80165F18
$0A 0x80165F1C
$0B 0x80165F20
$0C 0x80165F24
$0D 0x80165F28
$0E 0x80165F2C
$0F 0x80165F30
$10 0x80165F34
$11 0x80165F38
$12 0x80165F3C
$13 0x80165F40
$14 0x80165F44
$15 0x80165F48
$16 0x80165F4C
$17 0x80165F50
$18 0x80165F54
$19 0x80165F58
$1A 0x80165F5C
$1B 0x80165F60
$1C 0x80165F64
$1D 0x80165F68
$1E 0x80165F6C
$1F 0x80165F70
$20 0x80165F74
$21 0x80165F78
$22 0x80165F7C
$23 0x80165F80
$24 0x80165F84
$25 0x80165F88
$26 0x80165F8C
$27 0x80165F90
$28 0x80165F94
$29 0x80165F98
$2A 0x80165F9C
$2B 0x80165FA0
$2C 0x80165FA4
$2D 0x80165FA8
$2E 0x80165FAC
$2F 0x80165FB0
$30 0x80165FB4
$31 0x80165FB8
$32 0x80165FBC
$33 0x80165FC0
$34 0x80165FC4
$35 0x80165FC8
$36 0x80165FCC
$37 0x80165FD0
$38 0x80165FD4
$39 0x80165FD8
$3A 0x80165FDC
$3B 0x80165FE0
$3C 0x80165FE4
$3D 0x80165FE8
$3E 0x80165FEC
$3F 0x80165FF0
$40 0x80165FF4
$41 0x80165FF8
$42 0x80165FFC
$43 0x80166000
$44 0x80166004
$45 0x80166008
$46 0x8016600C
$47 0x80166010
$48 0x80166014
$49 0x80166018
$4A 0x8016601C
$4B 0x80166020
$4C 0x80166024
$4D 0x80166028
$4E 0x8016602C
$4F 0x80166030
$50 0x80166034
$51 0x80166038
$52 0x8016603C
$53 0x80166040
$54 0x80166044
$55 0x80166048
$56 0x8016604C
$57 0x80166050
$58 0x80166054
$59 0x80166058
$5A 0x8016605C
$5B 0x80166060
$5C 0x80166064
$5D 0x80166068
$5E 0x8016606C
$5F 0x80166070
$60 0x80166074
$61 0x80166078
$62 0x8016607C
$63 0x80166080
$64 0x80166084
$65 0x80166088
$66 0x8016608C
$67 0x80166090
$68 0x80166094
$69 0x80166098
$6A 0x8016609C
$6B 0x801660A0
$6C 0x801660A4
$6D 0x801660A8
$6E 0x801660AC
$6F 0x801660B0
$70 0x801660B4
$71 0x801660B8
$72 0x801660BC
$73 0x801660C0
$74 0x801660C4
$75 0x801660C8
$76 0x801660CC
$77 0x801660D0
$78 0x801660D4
$79 0x801660D8
$7A 0x801660DC
$7B 0x801660E0
$7C 0x801660E4
$7D 0x801660E8
$7E 0x801660EC
$7F 0x801660F0