Guide to Vessel Tactics Language (VTL)(Cutscenes) 0.04-0.12 (Written for 0.1)
Version 0.03 has an outdated VTL; earlier versions did not have VTL.
Versions 0.11 and 0.12 may produce unexpected results.
Everything in parentheses must be replaced, and the parentheses themselves removed.
The actual code is located in the Story folder, where it should also be written.
Syntax:|{Condition}...<Command>...Text/...|
Code outside the || block is not executed.
There can be any number of conditions, commands, or code separators.
Any element can be omitted.Text:Text attempts to be displayed in a dialog window.
Only English is allowed. ` - new line. If a block has no text, it is executed without waiting. Non-ASCII characters must be from UTF-8. Examples of displayable Unicode characters: ♥•♪♫‼¶§↑→»·¶µ±°®¬«©§¦¤›™—–”’‘‹‰€‡†…„‚
😀😁😂🤣😃😄😅😆😉😊😋😎😍☺
Conditions:If a condition is false, skip all subsequent commands until the code separator or the end of the line.
Available conditions:
{(Number)%}
Random chance in percentage.
{Route=(Number)}
The condition is true if Route equals the specified number (see <Z?>).
Commands:Parameters are mandatory and separated by commas.
<Zv>
Hide the window.
<Z^>
Show the window.
<ZJ(Number)>
Jump to the specified command. Commands are counted separately, including separate code in a line and empty lines/non-code.
<Z*(X),(Y)>
Move to coordinates from the bottom corner.
<ZP(Seconds/100)>
Pause for the specified time. Note: All blocks initially execute with a 1/10-second delay.
<ZA(X),(Name),(DisplayName),(ID),(Skin),(Fat),(Belly)>
Declare a vessel. Name is used for other commands, DisplayName is shown in the vessel window, ID is the vessel’s number for display (?? for regular vessels, 1?? for monsters; check IDs in the vessel folder), Skin is the vessel’s variant (a letter next to the ID; use a space if empty), X is the vessel’s screen coordinate (l - left, c - center, r - right), Fat is the fat level (from 0), and Belly is the number of consumed vessels (from 0). Variable overwriting is not possible.
<Z.>
Do not display the vessel in the window.
<Z!>
Display the vessel in the window.
<ZC(Name)>
Focus on the vessel (all others darken except the specified one).
<Z+(Name)>
Cancel darkening for a specific vessel.
<Z:(Name)>
Display the vessel in the window.
<ZF(Name)>
Insert the vessel’s body, erase its face.
<ZE(Name),(FacePart)>
Insert a part of the vessel’s face. The separator is \, and faces should be taken from the Face folder.
<ZS(Name),(Seconds/100)>
Fade in the vessel over the specified time.
<ZH(Name),(Seconds/100)>
Fade out the vessel over the specified time.
<ZM(Name),(Number with/without -)>
Move the vessel from its position in the specified direction.
<ZW(Name),(Number)>
Make the vessel consume the specified number of "vessels."
<ZD(Name)>
Digest.
<Z&(Name),(Action)>
Perform an action on the vessel (Special or Click).
<z?(Text),(Number)>
Add a choice option with the text to the array. If selected, Route changes to the specified number.
<Z?>
Display the choice after the text and clear the array.
<SE(Sound)>
Play a sound.
<SR(Type)>
Play a random sound.
<Z♪(Music),(Number)>|
Play music. The number does not affect gameplay.
<SD(Two-digit number, Seconds/10)(Sound)>
Play a sound after the specified time.
<Zz(Seconds/100),(Number)>
Fade out music over the specified time; the number is the volume.
<Zs(Number)>
Play digestion music. Different types; 0 means none.
<ZB>
Burp.
<ZG>
Heavy growl.
<Z0>
Light growl.
List of Music and Sounds:
For SR (see Modding Explanation folder):
lightGrowl heavyGrowl emptyGrowl lightBurp sharpHit
heavyBurp randGrowl lightHit heavyHit
For SE/SD (see Speech folder):
Hit3 se_lightgrowl3 Status2 Interact4
Hits\hit01 se_lightgrowl1 Status3 interact2
Hits\hit15 se_heavygrowl4 se_gulp1 interact
Hits\hit33 se_heavygrowl5 se_gulp5 se_buchu3
Hits\hit10 se_heavygrowl2 Swing2 se_chupa1
Hits\hit37 se_heavygrowl1 Swing1 RapidGun
DoubleHit eaten_by_monstr Swing8 Chunky Explosion
For Z♪ (see mission code):
Pero-Pero-Poppin スノーマン
アンゴラたちの踊り 大衆市場
Notes:Right-clicking skips text processing, cancels the block’s delay, the <ZP> action, and game pauses caused by referencing a non-existent variable (this pause cancels subsequent commands in the line).
