TyranoScript Tags
Click a tag below to jump to the corresponding reference.
3D-related
[3d_anim] Start 3D animation *New*
[3d_anim_stop] Stop 3D animation*New*
[3d_box_new] Add a 3D model (cube)*New*
[3d_canvas_hide] Hide the 3D canvas *New*
[3d_canvas_show] Close the 3D canvas*New*
[3d_close] Close a 3D scene *New*
[3d_debug_camera] Debug the 3D camera *New*
[3d_delete] Delete a 3D object *New*
[3d_delete_all] Delete all 3D objects*New*
[3d_event] Set a 3D event *New*
[3d_event_delete] Delete a 3D event *New*
[3d_event_start] Start a 3D event *New*
[3d_event_stop] Stop a 3D event *New*
[3d_gyro_stop] Stop 3D gyro *New*
[3d_hide] Hide a 3D object *New*
[3d_hide_all] Hide all 3D objects *New*
[3d_image_new] Add a 3D model (scene) *New*
[3d_init] Initiatize 3D functions *New*
[3d_model_new] Create a new 3D model *New*
[3d_motion] Change a 3D motion *New*
[3d_scene] 3D scene settings *New*
[3d_show] Show a 3D object *New*
[3d_sphere_new] Add a 3D model (sphere) *New*
[3d_sprite_new] Add a 3D model (sprite) *New*
Camera
[reset_camera] Reset the camera
[wait_camera] Wait for the camera movement to complete
Animation
[frame] Keyframe animation settings
[keyframe] Set animation keyframe
[stopanim] Force animation stop
[stop_kanim] Stop keyframe animation *New*
Audio
[bgmopt] Set background music options
[fadeinse] Fade in a sound effect
[fadeoutse] Sound effect fadeout
[seopt] Set sound effect options
[speak_off] Disable lip sync *New*
[speak_on] Enable lip sync *New*
[voconfig] VO (voice-over) playback settings
[vostart] Start automatic VO playback
[vostop] Stop automatic voice playback
[wbgm] Wait for BGM to finish playing
[wse] Wait for sound effect to finish playing
Augmented Reality
[bgcamera] Start streaming camera background *New*
[qr_config] Configure QR code settings *New*
[qr_define] Replace QR code *New*
[stop_bgcamera] Stop streaming camera background *New*
Characters
[chara_config] Character settings
[chara_delete] Delete character
[chara_face] Set character facial expressions
[chara_hide_all] Remove all characters from the screen
[chara_layer] Define a character part *New*
[chara_layer_mod] Modify the settings for a character part *New*
[chara_mod] Change character appearance
[chara_move] Change the position of a character
[chara_part] Change character part *New*
[chara_part_reset] Restore default character parts *New*
[chara_ptext] Display speaking character’s name and change expression
Input Forms
Layers
[bg] Change the background images
[backlay] Copy information from the foreground page
[filter] Apply a filter effect
[free_filter] Remove a filter effect
[free_layermode] Undo layer mode
[layermode_movie] Layer mode movie
[mask] Apply a mask layer to the game screen
[mask_off] Remove a screen mask
[position] Set message layer position
[wt] Wait for transition to complete
Links
[ button ] Show a graphical button.
[clickable] Define clickable area
Live2D
[live2d_color] Adjust the color of a Live2D model
[live2d_delete] Remove a Live2D model
[live2d_expression] Play a Live2D expression
[live2d_hide] Hide a Live2D model
[live2d_motion] Play a Live2D model motion
[live2d_new] Generate a Live2D model
[live2d_opacity] Adjust the opacity of a Live2D model
[live2d_rotate] Rotate a Live2D model
[live2d_scale] Enlarge or shrink a Live2D model
[live2d_shake] Shake a Live2D model
[live2d_show] Display a Live2D model
[live2d_trans] Move a Live2D model
Macros, Variables, JavaScript Interface
[clearsysvar] Clear all system variables
[clearvar] clear all game variables
[return] Return from subroutine
Messages
[current] Set current message layer
[ruby] Add helper text furigana
System Functions
[apply_local_patch] Apply a local patch file
[autoconfig] Set auto mode options
[awakegame] Restore game from paused state
[breakgame] Delete paused game data
[check_web_patch] Check and apply an update from a server
[configdelay] Set the default text display speed
[config_record_label] Set text history options
[cursor] Set a mouse cursor image
[deffont] Default font attributes
[dialog] Display a dialogue box
[endnolog] Re-enable writing to the backlog
[glyph] Image when waiting for click
[hidemenubutton] Hide menu button
[locate] Display location settings
[nolog] Disable writing to the backlog
[preload] Preloads image files
[pushlog] Insert text into the backlog
[resetdelay] Restore default text display speed
[savesnap] Create a save snapshot
[save_img] Change the save data thumbnail image
[showmenubutton] Show menu button
[start_keyconfig] Enable key config
[stop_keyconfig] Disable key config
[sysview] Change a system screen file
Other
[bgmovie] Play a background movie
[stop_bgmovie] Stop the movie backdrop
Reference
Notes:
* Terms surrounded by [] are tags.
* Lines starting with @ are also recognized as tags, but the complete tag must appear on one line.
* Lines starting with ; are treated as comments.
* To create a multi-line comment, begin the comment with /* and end with */.
* All tags can be given cond attributes. You can input a JavaScript formula, and the tag will only be executed if
the result is true.
* Begin a line with an underbar (_) use blank spaces before text.
[3d_anim] 3D animation
Use to animate 3D objects in a scene.
ParameterRequired? Description
name ◯ The name of the 3D object. Use this name to animate a 3D object. To animate the camera,set the name to “camera”.
pos No Set the coordinates to place the 3D object when the animation ends. The xyz coordinates are set as comma-separated values.
rot No Sets the rotation of the 3D object when the animation ends. Enter rotation of the axes as comma-separated values.
scale No Sets the scale of the 3D object when the animation ends. Enter the scales for the axes as comma-separated values.
time No Sets the duration of the animation in milliseconds. The default is 1,000.
wait No Sets whether to wait for the animation to complete before proceeding. Takes true or false. The default value is true.
lookat No Used only when animating the camera. Point the camera in a specific direction by specifying the name or pos coordinates of the object.
effect No Sets the effect to apply to the transformation. The following effects are available: jswing | def | easeInQuad | easeOutQuad | easeInOutQuad | easeInCubic | easeOutCubic | easeInOutCubic | easeInQuart | easeOutQuart | easeInOutQuart | easeInQuint | easeOutQuint | easeInOutQuint |
effect No easeInSine | easeOutSine | easeInOutSine | easeInExpo | easeOutExpo | aseInOutExpo | easeInCirc | easeOutCirc easeInOutCirc | easeInElastic | easeOutElastic | easeInOutElastic | easeInBack | easeOutBack | easeInOutBack | easeInBounce | easeOutBounce | easeInOutBounce
Sample Code
[3d_model_new name = "mymodel" storage = "mymodel / scene.gltf"]
[3d_anim name = "miruku" pos = "79, -458,727" scale = "318.45,318.45,318.45" rot = "0.13,
-0.64,0" effect = "easeInCubic" wait = true]
[3d_anim_stop] Stop a 3D animation
Use to stop the animation of a 3D object.
ParameterRequired? Description
name Yes The name of the target 3D object.
Takes true or false as a parameter. If false, the object will stop at the position where the
finish No animation ends. If true, the object will continue to move to the position set by the animation. The default value is true.
[3d_scene] 3D scene settings
Open a specified website in the browser.
Note: an ‘await click’ must be placed immediately this tag.
Many environments restrict browsers from opening without user initiation.
ParameterRequired? Description
tonemap No Sets tone mapping for the scene. Available parameters are: No / Linear Reinhard/ Uncharted2 / Cineon / ACES Filmic. The default is No (no tone mapping).
tonemap_value No Sets the strength of tone mapping. The default is 0.8.
light_amb No light_amb × Sets the intensity of ambient light. The default is 1, 0.5 is dark, 2 is bright, etc.
Sample Code
[3d_scene light_amb = "2" tonemap = ""]
[3d_camera] 3D camera
Sets the camera for a 3D scene.
Note: To check the coordinates of the camera, we recommend using [camera_debug], which allows testing of the coordinates and tilt.
ParameterRequired? Description
pos No Sets the camera coordinates. Enter the xyz coordinates as comma-separated values.
rot No Sets the tilt of the camera. Set the rotation of the xyz axes as comma-separated values.
tonemap No Sets tone mapping for the scene. Available types are: No / Linear / Reinhard / Uncharted2 / Cineon / ACES Filmic. The default is No (no tone mapping).
lookat No The name of the target 3D object in the scene that the camera will point to. Alternatively, you can point the camera at that coordinate by setting the pos tag.
Sample Code
[3d_camera pos = "10,20,30"]
[3d_gyro] 3D gyro settings
Allows the player to control of the camera by tilting the smartphone.
For PC games, the gyro effect can be reproduced by the position of the mouse.
ParameterRequired? Description
max_x No Sets the max X-axis tilt as an angle. The default is 30 degrees.
max_y No Sets the max the Y-axis tilt as an angle. The default is 30 degrees.
mode No Sets the gyro mode to ‘position’ or ‘rotation’. The selected mode determines whether the camera is affected by rotation or a change in position with respect to tilt. The default is rotation.
Sample Code
[3d_gyro max_x = "20" max_y = "20"]
[3d_gyro_stop] 3D gyro stop
Smartphone only.
Disables movement of the gyro.
To return the camera position, set the position using 3d_camera immediately after this tag.
To re-enable the gyro, use the [3d_gyro] tag.
This tag has no parameters.
[3d_debug_camera] 3D camera debugging
Adjust the camera coordinates in a 3D scene by dragging and dropping with the mouse.
To end debugging, click the button at the top left of the screen.
Mouse operations:
Left click: Camera orientation (rot)
Right click: Camera position (pos)
Center click: Z-axis of the position
ParameterRequired? Description
button_text No Customizes the text of the button that ends debugging. The default text is “Close Camera Inspector”.
menu No Toggles the debug menu. If false is specified, only the button to end debugging will be visible. Default is true (sets the debug menu to visible).
Sample Code
[3d_debug_camera]
[3d_motion] Adjust the motion of a 3D model
Adjust the camera coordinates in a 3D scene by dragging and dropping with the mouse.
To end debugging, click the button at the top left of the screen.
Mouse operations:
Left click: Camera orientation (rot)
Right click: Camera position (pos)
Center click: Z-axis of the position
ParameterRequired? Description
name Yes The name of the target 3D object.
motion Yes Sets the motion name.
Sample Code
; Define the model. Will first display a motion named ‘Running’.
[3d_model_new name = "Robot" storage = "Robot.glb" pos = "0,0,0" scale = "2" motion =
"Running"]
[3d_show name = "Robot" rot = "0.28,0.67,0" pos = "-129, -24,910" scale = "9.68"]
Now let's change the motion. [p]
[3d_motion name = "Robot" motion = "Punch"]
[3d_debug] 3D debugging
Adjust an object in the 3D scene by dragging and dropping them with the mouse.
To end debugging, click the button at the top left of the screen.
Mouse operations:
Left click: Camera orientation (rot)
Right click: Camera position (pos)
Center click: Z-axis of the position
Scroll: Scale
ParameterRequired? Description
name Yes The name of the 3D object to be debugged.
button_text No Use to customize the text of the button that ends debugging. The default is “Close Camera Inspector”.
menu No Toggles the debug menu. If false is specified, only the button to end debugging will be visible. Default is true (sets the debug menu to visible).
overlap No Takes true or false as a parameter. When set to true, the model will be displayed in the foreground. Set this to true for the model to appear in front of the menu. The default is false.
reset No Takes true or false as a parameter. When set to true, the model will return to the position it was in before debugging once debugging ends. The default is false.
Sample Code
[3d_model_new name = "Robot" storage = "Robot.glb"]
[3d_show name = "Robot" rot = "0.28,0.67,0" pos = "-129, -24,910" scale = "9.68"]
Now let's Change the motion. [p]
[3d_debug name = "Robot"]
[3d_init] Initialize 3D functionality
Running this tag adds a 3D scene to the game.
This tag must be run before other 3D tags (start with 3d_) can be used.
Run the tag just before using 3D features.
Run the [3d_close] tag once 3D functionality is no longer in use.
ParameterRequired? Description
layer No Sets the layer on which the 3D model is placed.
camera No Sets the camera mode. “Perspective” (with perspective) “Orthographic” (parallel projection without perspective) The default is Perspective.
near No Sets how close to the camera to draw an object. The default is 1.
far No Sets how far from the camera to draw an object. High values can impact the performance of the game, so setting to the smallest possible value is recommended. The default is 5000.
Sample Code
[3d_init layer = 0]
[3d_model_new] Create a 3D model
Loads and defines a 3D model in an external file format.
The model will not be displayed in the game screen when this tag is run. Use the tag [3d_show] to display the model.
Place 3D model files in the data / others / 3d / model folder.
posNoSets the coordinates at which to place the 3D object. Takes the xyz coordinates as comma-separated values.
ParameterRequired? Description
name Yes The name of the 3D object. Used to display or hide the model.
storage Yes Sets the 3D file (gltf obj format) to be used. Place the file in the others / 3d / model folder.
rot No Sets the rotation of the 3D object. Takes the rotation of the xyz axes as comma-separated values.
scale No Sets the scale of the 3D object. Enter scales for the axes as comma-separated values.
tonemap No Sets whether tone mapping is applied to this object or not (tone mapping must be enabled for the scene.) The default value is true.
motion No Sets name of the motion if there is a motion in the file. If not specified, the first motion file will be applied automatically.
folder No Sets the folder where 3D models are located.
Sample Code
[3d_init layer = 0]
[3d_model_new name = "mymodel" storage = "mymodel / scene.gltf"]
[3d_show name = "mymodel" pos = "100,20,20" rot = "1,1,1" scale = 10]
[3d_sphere_new] Define a spherical 3D model
Define a 3D model as a sphere.
ParameterRequired? Description
name Yes The name of the 3D object. Used to display or hide the model.
texture No Applies a texture to the sphere. Place the texture image under “others / 3d / texture”.We recommend using 256×256 or 512×512-sized textures.
color No Sets the color of the sphere. Takes 0xRRGGBB format.
pos No Sets the coordinates to position the 3D object. Takes xyz coordinates as comma- separated values.
rot No Sets the rotation of the 3D object. Takes the rotation of the xyz axes as comma- separated values.
scale No Sets the scale of the 3D object. Enter the scales for the axes as comma-separated values.
radius No Sets the radius of the sphere. The default is 300.
width No Sets the width of the sphere. The default is 30.
height No Sets the height of the sphere. The default is 30.
tonemap No Sets whether tone mapping is applied to this object or not (tone mapping must be enabled for the scene.) The default value is true.
Sample Code
[3d_sphere_new name = "tama"]
[3d_show name = tama pos = "365,145,0" rot = "0.92, -4.3,0" scale = "0.77,0.77,0.77" time = 2000]
[3d_sprite_new] 3D model (sprite)
Defines a 3D model as a sprite.
The difference between this and a 3D image is that a sprite object always faces the camera.
ParameterRequired? Description
name Yes The name of the 3D object. Used to display or hide the model.
storage Yes Sets the image file to be displayed. Place the file under the “others / 3d / sprite” folder.
pos No Sets the coordinates to position the 3D object. Takes xyz coordinates as comma-separated values.
rot No Sets the rotation of the 3D object. Takes the rotation of the xyz axes as comma-separated values.
scale No Sets the scale of the 3D object. Enter the scales for the axes as comma- separated values.
tonemap No Sets whether tone mapping is applied to this object or not (tone mapping must be enabled for the scene.) The default value is true.
folderNoSets the folder where the files are located.
Sample Code
[3d_sprite_new name = "yamato" storage = "doki.png"]
[3d_show name = "yamato"]
[3d_event] Defines a 3D event
Used to trigger an event when an object in a 3D scene is clicked.
The event will not trigger unless an [s] tag has run.
Once the event triggers, events are automatically disabled (the event definition itself will remain).
To generate the event again, an [3d_event_start] tag must be used first.
ParameterRequired? Description
name Yes The name of the 3D object. Used to display or hide the model.
storage No Sets the name of the scenario file to use. If omitted, the current scenario file will be used.
target No Sets the label name of the jump destination. If omitted, it will be executed from the beginning.
Sample Code
; Define and display a 3D model
[3d_model_new name = "miruku" storage = "miruku / scene.gltf" scale = 300 pos = "0, -300,500"]
[3d_event name = "miruku" target = "miruku"]
; Show a 3D box
[3d_box_new name = "box" width = 100 height = 100 depth = 100 scale = 2 tone = false color = "0xFFFFFF"]
[3d_show name = "box" time = 2000]
; Event definition
[3d_event name = "miruku" target = "miruku_click"]
[3d_event name = "box" target = "box_click"]
[s]
* miruku_click
3D model clicked [p]
@jump target = "common"
* box_click
Box clicked [p]
* common
Resume the event [p]
@ 3d_event_start
[3d_event_delete] Delete a 3D event
Disables a registered 3D event.
ParameterRequired? Description
name Yes The name of the target 3D object. This is the name of the 3D object for which the event will be deleted.
Sample Code
; Show a 3D box
[3d_box_new name = "box" width = 100 height = 100 depth = 100 scale = 2 tone = false color = "0xFFFFFF"]
[3d_show name = "box" time = 2000]
; Delete the event definition. This will make it unresponsive when clicked.
[3d_event_delete name = "box"]
[s]
[3d_event_start] Start a registered 3D event
Starts a registered 3D event.
All events will be disabled once an event has triggered; this tag is used to enable them again.
This tag has no parameters.
[3d_event_stop] Stop 3D event
Stops a registered 3D event.
The registered event will not disappear after it is stopped and can restarted using the [3d_event_start] tag.
This tag has no parameters.
[3d_box_new] 3D model (cube)
Defines a 3D model as a cube.
ParameterRequired? Description
name Yes The name of the 3D object. Used to display or hide the model.
texture No Applies a texture to the cube. Place the texture image under “others / 3d / texture”. If one texture is set, all faces will use the same image; different textures can be applied to each face by using 6 textures separated by commas.
color No Sets the color of the cube. Takes 0xRRGGBB format.
width No Sets the width of the cube. The default is 1.
height No Sets the height of the cube. The default is 1.
depth No Sets the depth of the cube. The default is 1.
pos No Sets the coordinates to position the cube. Takes xyz coordinates as comma-separated values.
rot No Sets the rotation of the cube. Takes the rotation of the xyz axes as comma- separated values.
scale No Sets the scale of the cube. Enter the scales for the axes as comma- separated values.
tonemap No Sets whether tone mapping is applied to this object or not (tone mapping must be enabled for the scene.) The default value is true.
Sample Code
; Define and display a cube
[3d_box_new name = "mybox1"]
[3d_show name = "mybox1" pos = "365,145,0" rot = "0.92, -4.3,0" scale = "0.77,0.77,0.77"
time = 2000]
; Example of using a different texture image for each of the 6 sides
[3d_box_new name = "mybox2" width = 100 height = 100 depth = 100 texture = "dice / 1.png, dice / 2.png, dice / 3.png, dice / 4.png, dice / 5.png, dice / 6.png "]]
[3d_show name = "mybox2" time = 2000]
[3d_image_new] 3D model (image)
Defines a 3D model of an image.
Images are added to 3D scenes as flat plates.
ParameterRequired? Description
name Yes The name of the 3D object. Used to display or hide the model.
texture No Applies a texture to the 3D object. Place the texture image under “others / 3d / texture”.
width Yes Sets the width of the 3D object. The default is 1.
height No Sets the height of the 3D object. If omitted, the aspect ratios of the imagewill be used to calculate the height.
depth No Sets the depth of the 3D object. The default is 1.
pos No Sets the coordinates to position the 3D object. Takes xyz coordinates as comma-separated values.
rot No Sets the rotation of the 3D object. Takes the rotation of the xyz axes as comma-separated values.
scale No Sets the scale of the 3D object. Enter the scales for the axes as comma- separated values.
doublesideNo Sets whether to display the texture on both sides. The default is false.
tonemap No Sets whether tone mapping is applied to this object or not (tone mapping must be enabled for the scene.) The default value is true.
Sample Code
; Show an images as a 3D object
[3d_image_new name = "myimg" texture = "room.jpg" width = 200 doubleside = true]
[3d_show name = "myimg"]
[3d_show] Show a 3D object
Display a registered 3D object on the game screen.
ParameterRequired? Description
name Yes The name of the 3D object to be displayed.
time No The time in milliseconds over which the object will appear. The default is 500.
wait No Sets whether to wait for object to completely display before proceeding. The default value is true.
pos No Sets the coordinates to position the 3D object. Takes xyz coordinatesas comma-separated values.
rot No Sets the rotation of the 3D object. Takes the rotation of the xyz axes as comma-separated values.
scale No Sets the scale of the 3D object. Enter the scales for the axes as comma-separated values.
Sample Code
; Show an images as a 3D object
[3d_image_new name = "myimg" texture = "room.jpg" width = 200 doubleside = true]
[3d_show name = "myimg"]
[3d_hide] Hide a 3D object
Hide a 3D object on the game screen.
Executing this tag does not delete the definition of the 3D model.
Use the [3d_show] tag to show the model again.
ParameterRequired? Description
name Yes The name of the 3D object to be hidden.
time No The time in milliseconds over which the object will disappear. The default is 500.
wait No Sets whether to wait for object to completely disappear before proceeding. The default value is true.
Sample Code
; Show a 3D image
[3d_image_new name = "myimg" texture = "room.jpg" width = 200 doubleside = true]
[3d_show name = "myimg"]
; Hide the image [p]
[3d_hide name = "myimg"]
[3d_hide_all] Hide all 3D objects
Hide all 3D objects on the game screen.
Executing this tag does not delete the definitions of the objects.
To display the objects again, use the [3d_show] tag.
ParametersRequired? Description
time No The time in milliseconds over which all 3D objects will disappear. The default is 500.
wait No Sets whether to wait for objects to completely disappear before proceeding. The default value is true.
[3d_delete] Delete a 3D object
Delete a 3D object.
This tag also deletes the object definition.
To use the object again, it must be re-registered using a *_new tag.
Frequently deleting 3D objects that are no longer in use will improve the performance of the game.
ParameterRequired? Description
name Yes The name of the 3D object to be deleted.
Sample Code
; Show a 3D image
[3d_image_new name = "myimg" texture = "room.jpg" width = 200 doubleside = true]
[3d_show name = "myimg"]
; Hide it. [p]
[3d_hide name = "myimg"]
; Delete the object and remove its definition [p]
[3d_delete name = "myimg"]
[3d_delete_all] Delete all 3D objects
Delete all 3D objects and their definitions.
This tag is used when resetting a 3D scene.
This tag has no parameters.
[3d_canvas_show] Show the 3D canvas
Displays the 3D canvas.
This is useful, for example, if the game frequently switches between a 3D scene and visual novel gameplay.
ParameterRequired? Description
time No The time in milliseconds over which the 3D canvas will appear. The default is 1000.
[3d_canvas_show] Show the 3D canvas
Hides, but does not delete the 3D canvas.
This is useful, for example, if the game frequently switches between a 3D scene and visual novel gameplay.
ParameterRequired? Description
time No The time in milliseconds over which the 3D canvas will disappear. The default is 1000.
[camera] Move the Camera
You can add instructions to zoom or pan the camera. Using this functionality you can focus on a character’s expression, or carry out a number of impressive effects using a single still image.
To use the camera function, you must set the useCamera tag to true in config.tjs.
Also, when using the camera function, screen centering will be disabled.
Camera coordinates are defined relative to the center of the screen, which is (x:0,y:0). For example, the upper right of the screen is x:200, y:200, and the lower left is x:-200, y:-200.
To return the camera to its original position, use the [reset_camera] tag. To wait for the camera effect to complete, use the [wait_camera] tag.
*IMPORTANT*
When your camera effect is finished, please ensure you use the [reset_camera] tag to return the camera to its original position. If you do not do this, you will be unable to use the background change tag [bg], or other tags.
ParameterRequired? Description
time No Sets the time to move the camera to the specified coordinates. Please use milliseconds. The default is 1,000.
x No Sets the final x coordinate of the camera move.
y No Sets the final y coordinate of the camera move.
zoom No Sets the zoom ratio of the camera. For example, set it to 2 for a x2 zoom.
rotate No Sets the tilt of the camera. For example, set it to 20 for a 20 degree tilt.
from_x No Sets the initial x coordinate.
from_y No Sets the initial y coordinate.
from_zoom No Sets the initial zoom ratio.
from_rotate No Sets the initial angle of rotation of the camera.
wait No Sets whether to wait for the camera to finish moving. If this is set to false, the game can continue during the camera movement. Defaults to true.
layer No Sets the layer. Use “base” for background and any positive number for the foreground layer. Allows you to set the camera effect to only take place on a certain layer.
ease_type No Sets the camera effect type. Options are ease (Move smoothly between the start and finish times), linear (Move at a constant speed) ease-in (Move slowly at first), ease-out (Move slowly at the end) and ease-in-out (Move slowly at the start and end.) The default is ease.
Sample Code
@camera zoom=2 x=180 y=100 time=1,000
@camera x=-180 y=100 time=2000
@camera zoom=2 from_zoom=3 x=180 y=100 time=1,000
;Reset Camera position.
@reset_camera
[reset_camera] Reset the Camera
Sets the camera back to the default position.
After you’ve finished using the [camera] tag, please be sure to use the [reset_camera] tag to return it to the original position. If you do not, you will not be able to change backgrounds or use other functionality.
ParameterRequired? Description
time No Sets the time in milliseconds for the camera to return to its original position. Default is 1,000.
wait No Sets whether to wait for the camera to finish moving. If this is set to false, the game can continue during the camera movement. Defaults to true.
ease_type No Controls how the camera returns to its default position. Defaults to ease. See camera tag for details.
layer No Sets the layer. Use “base” for background and any positive number for the foreground layer. Allows you to set the camera effect to only take place on a certain layer.
[wait_camera] Wait for the Camera Movement to Complete
You can use this when controlling the camera to force the game to wait for the camera effect to be completed. For example, you can set the wait attribute to false in the camera tag to allow the game to proceed, and then use this tag a few lines later to force the game to stop at a certain point.
This tag has no parameters.Sample Code
[camera zoom=2 x=180 y=100 time=5000]
The camera is moving.[p]
The camera is still moving.[p]
[wait_camera]
Camera movement has finished and now the game will proceed.[p]
[anim] Animation
With this you can animate a picture, button or even the contents of a layer.
You should call the element that you want to animate by using the name you gave it when it was created with the [ptext] or [ button ] tags.
When you set a layer, the animation will affect all elements in the layer.
This tag does not wait for the animation to stop. If you use the [wa] tag, you can wait for the completion of all animations that are being performed.
You can set the position of the animation using the values of -100 through 100. (From where it is currently, it can be moved to the left 100px)
If you set the opacity, you can also make something disappear.
ParameterRequired? Description
name No use this property to look up the button layer or picture to animate
layer No if a name is set this will be ignored. Otherwise this to set the foreground layer
left No animate it horizontally to the position you set
top No animate it vertically to the position you set
width No set the width
height No set the height
opacity No set the value from 0-255. It will animate to the given opacity.
color No set the color
time No time taken by the animation. Default is 2000 milliseconds
define the effect of the animation. examples are defined as follows
jswing |def |easeInQuad |easeOutQuad |easeInOutQuad |easeInCubic |easeOutCubic |easeInOutCubic |easeInQuart |easeOutQuart |easeInOutQuart |easeInQuint |
effect No |easeOutQuint |easeInOutQuint |easeInSine |easeOutSine |easeInOutSine |easeInExpo |easeOutExpo |easeInOutExpo |easeInCirc |easeOutCirc |easeInOutCirc |easeInElastic |easeOutElastic |easeInOutElastic |easeInBack |easeOutBack |easeInOutBack |easeInBounce |easeOutBounce |easeInOutBounce
Sample Code
[ptext layer=1 page=fore text="example text" size=30 x=0 y=0 color=red vertical=true]
[image layer=0 left=100 top=100 storage = yuko1.png page=fore visible=true name=yuko,chara ]
[image layer=1 left=300 top=100 storage = haruko1.png page=fore visible=true name=haruko ]
;set the name attribute animate
[anim name="haruko" left="=100" time=10000 effect=easeInCirc opacity=0 ]
;set the layer and animate
[anim layer=1 left="=100" effect=easeInCirc opacity=0 ]
;pause all animations
[wa]
Animations over
[wa] Pause Animation
Pause the currently playing animation
This tag has no parameters.
[keyframe] Set Animation Keyframe
Set animation keyframe. The defined animation can be used by setting the [kanim] tag.
ParameterRequired? Description
name Yes Sets the names of the key frame. This will be the name to use if you use the kanim tag later.
Sample Code
;----setting the keyframe
[keyframe name="fuwafuwa"]
[frame p=40% x="100" ]
[frame p=100% y="-200" opacity=0 ]
[endkeyframe]
;-----run the defined animation
[endkeyframe] End Keyframe
Stop the definition of keyframe animations
This tag has no parameters.
[frame] Keyframe Animation Settings
This defines the key frame animation. The defined animation can be used by setting the [kanim] tag.
ParameterRequired? Description
p Yes Set the percentage. For example an animation that takes 5 seconds you will want to set each slide at 20% (?). Set it to 0-100%. If you omit putting it to 0% you can continue from the previous animation and start a new animation.
x No Set the pixels the amount that the animation should move on the X axis. Or if you start it with an asterisk (*) you can set it at an absolute position. (For example) x
y No Set the pixels the amount that the animation should move on the Y axis. Or if you start it with an asterisk (*)
you can set it
at an absolute No “100” (it will move 100px forward) y
position. (For
example) y
z No Set the pixels the amount that the animation should move on the Z axis. Or if you start it with an asterisk (*) you can set it at an absolute position. (For example) z
rotate No You can rotate the target. As an example using notation like rotate
rotateX No You can rotate the target on the X axis. As an example
using notation
like rotate No “360deg” will turn the image 360 degrees.
rotateY No You can rotate the target on the Y axis. As an example
using notation
like rotate No “360deg” will turn the image 360 degrees.
rotateZ No You can rotate the target on the Z axis. As an example
using notation
like rotate No “360deg” will turn the image 360 degrees.
scale No You can enlarge or shrink the target. (Ex) scale
scaleX No Enlarge or shrink the target horizontally.
scaleY No Enlarge or shrink the target vertically.
scaleZ No Enlarge or shrink the target in the 3rd dimension.
skew No skew
skewX No Xskew
skewY No Yskew
perspective No You can change perspective. Only select browsers.
opacity No By setting this to 0-1 you can set the opacity of every element. It is possible to make an element disappear this way. At 0 it is completely transparent.
Others No You can also use CSS to set other properties.
[kanim] Execute Keyframe
This executes a keyframe animation. You can implement a complex animation by defining the name as well as the text and pictures you want to animate with the [keyframe] tag.
ParameterRequired? Description
name No sets the name of the text or image that will be animated
layer No if you don’t set the name and set the layer instead this will animate all elements in the layer
keyframe Yes sets the name of the keyframe animation
time No the time of the animation in milliseconds
easing No set the pattern of change for the animation.Some of the things you can set are:ease(smoothly at the beginning and end)linear(plays at a set interval)ease- in(plays back slowly at the beginning)ease-out(plays back slowly at the end)ease-in-out(plays back slowly at the beginning and end)it’s possible to set the easing your own way by using the cubic-bezier function
countNoset the number of times it plays. The default is one. If you set it to “infinite” the animation will play forever.
delay No milliseconds before playback. default is 0
direction No animations can alternate between their reverse and normal progression. default is “normal” and “alternate” sets the animation to alternate between normal and reverse
mode No set the status before and after playback. Default is “forwards” and it maintains the same configuration after play. If set to “none” it will not maintain the same configuration.
[playbgm] Play BGM
Play BGM in HTML5 standard audio format (ogg, mp3, mp4, webm).
Playback files should be stored in the project’s bgm folder.
ParameterRequired? Description
storage Yes Set the file to be used
loop No set as true (default) or false. true will repeat the loop
click No Set to true or false (default) when used for smart phone browsers. If set to true a click is needed before playback will start in smart phone browsers.With smart phones without a click no sound is assigned to play. For example after a scene change when you want music playback if you do not set this to true no music will play. In the middle of most text false is ok for playback. Check if music is playing on smartphones and set this to true if necessary.
time No number of milliseconds for the playback to start
Sample Code
[playbgm storage="music.mp3"]
[stopbgm] Stop BGM
Stop BGM
This tag has no parameters.Sample Code
[stopbgm ]
[fadeinbgm] Fade in BGM
Gradually fade in BGM
PLEASE NOTE: This is not compatible with Firefox and Safari browsers. In these cases, they will fall back to playbgm
ParameterRequired? Description
storage Yes set the file for music playback
loop No set as true (default) or false. true will repeat the loop
click No Set to true or false (default) when used for smartphone browsers. If set to true a click is needed before playback will start in smartphone browsers.With smart phones without a click no sound is assigned to play. For example after a scene change when you want music playback if you do not set this to true no music will play. In the middle of most text false is ok for playback. Check if music is playing on smartphones and set this to true if necessary.
time Yes number of milliseconds for the fade in to occur
Sample Code
[fadeinbgm storage=sample.mp3 loop=false time=3000]
[fadeoutbgm] Fade out BGM
Fade Out BGM
PLEASE NOTE: This is not compatible with Firefox and Safari browsers. In these cases, they will fall back to playbgm
ParameterRequired? Description
time No Time in milliseconds for fade out to occur
Sample Code
[fadeoutbgm time=3000]
[xchgbgm] Crossfade BGM
Crossfade BGM
Mix one music in as another fades out.
PLEASE NOTE: This is not compatible with Firefox and Safari browsers. In these cases, they will fall back to playbgm
ParameterRequired? Description
storage Yes set the next file for playback
loop No set true (default) or false. true will repeat the sound when it is done
click No Set to true or false (default) when used for smart phone browsers. If set to true a click is needed before playback will start in smart phone browsers.With smart phones without a click no sound is assigned to play. For example after a scene change when you want music playback if you do not set this to true no music will play. In the middle of most text false is ok for playback. Check if music is playing on smartphones and set this to true if necessary.
time Yes number of milliseconds for the cross fade to occur
Sample Code
[xchgbgm storage=new.mp3 loop=true time=3000]
[stopse] Stop a Sound Effect
Stop a sound effect
This tag has no parameters.Sample Code
[stopse ]
[fadeinse] Fade in a Sound Effect
Fade in a sound effect
ParameterRequired? Description
storage Yes Set the file to be used
loop No set as true or false(default). true will repeat the playback
time Yes set the fade in time in milliseconds
Sample Code
[fadeinse storage=sound.mp3 loop=false time=2000 ]
[fadeoutse] Sound Effect Fadeout
Sound Effect fadeout
ParameterRequired? Description
time No fadeout in milliseconds
Sample Code
[fadeoutse time=2000 ]
[wb] Pause BGM Playback
Pause BGM playback
This tag has no parameters.
[eval] Evaluate Expression
exp allows evaluation of expressions?variables can be assigned to numbers, etc.
exp allows for arbitrary TJS(JS) so, any valid TJS(JS) can be evaluated.
ParameterRequired? Description
exp Yes TJS expression to be evaluated
Sample Code
[eval exp="f.test=500"]
;?assign to game variable test to a number
[eval exp="f.test2='Example String'"]
;?assign game variable test2 to Example String
[eval exp="sf.test=400"]
;?assign system variable test to a number
[eval exp="f.test2=f.test*3"]
;?assign game variable test2 to 3x game variable test
[clearvar] Clear All Game Variables
Clear all game variables.
This tag has no parameters.
[clearsysvar] Clear All System Variables
Clear all system variables.
This tag has no parameters.
[close] Close a Window
Close a window.
ParameterRequired? Description
ask No if true is set a confirmation will be requested. If false is set no confirmation will occur. This attribute is set to true by default.
[trace] Console Output
Outputs values to the console
In the case of KAG3 or Kirikiri: use Shift+F4 activate the display in the console, or turn on logMode in Config.tjs to type.
In the case of TyranoScript in a browser: Check in the web inspector console of the browser
ParameterRequired? Description
exp No ATJS(JS) expression to be evaluated
Sample Code
[trace exp="f.test"]
; ? game variable test's details are output to the console
[title] Set Title
Sets the game title.
You can also change each chapter title for the player.
In Kirikiri the application window title will change.
In TyranoScript the title attribute of the browser is changed.
ParameterRequired? Description
name Yes The name you want for your title
Sample Code
[title name="Title after change"]
[iscript] Enter JavaScript
You can use JavaScript between [iscript] and [endscript].
TJS can also be used, but TyranoScript variables are unavailable.
This tag has no parameters.Sample Code
[iscript]
var test = 22;
f.name = test;
alert("javascript functions are available");
//jquery commands and javascript methods can also be used.
$("body").html();
[endscript]
[endscript] End JavaScript
End JavaScript description.
This tag has no parameters.
[html] Add an HTML Layer
In between [html] and [endhtml] HTML can be entered.
This feature is very powerful. Of course JavaScript, Canvas, and next generation web expressions are supported.
For example a Youtube video player can be inserted and any number of public APIs can be accessed.
By using this tag, any HTML elements can be added.
If you use the [cm] tag and do not clear everything, even if you click the game cannot continue.
By all means use graphic buttons, etc. to ensue that you can jump to a game state where you can still continue.
Inside of this tag, variables of TyranoScript can be used.
[emb] tags inside of previously set HTML can be used.
ParameterRequired? Description
left No sets the horizontal position of the [HTML] tag in pixels
top No sets the vertical position of the [HTML] tag in pixels
name No you can set the name of the HTML area. Using this name animations can be performed with the HTML.
Sample Code
;place the youtube player in a designated spot
;use the embed tag for youtube
[html top=100 left=300]
<object width="200" height="113">
<param name="movie" value="http://www.youtube.com/v/60TMm2sQTBU?version=3&hl=ja_JP&rel=0">
</param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/60TMm2sQTBU?version=3&hl=ja_JP&rel=0" type="application/x-shockwave-flash" width="200" height="113" allowscriptaccess="always"
allowfullscreen="true">
</embed></object>
[endhtml]
[endhtml] End HTML
End HTML input
This tag has no parameters.
[emb] Embed Expression
The the result of an evaluated expression can be embedded.
Use this when you want to display a variable in a scenario.
ParameterRequired? Description
exp Yes An TJS (JS) expression that can be displayed with the [emb] tag
Sample Code
[eval exp="f.value1='variable level'"]
The variable f.value1 is now stored.
[emb exp="f.value1"]
The variable is shown above here.
[if] If
if the evaluation of the expression is true (or a non-zero number), the statements and tags up until elsif, else and endif tag are executed, otherwise those statements and tags are ignored and the statements and tags inside of elsif or else would be executed instead.
ParameterRequired? Description
exp Yes a TJS expression to be evaluated. If the expression is false (or 0)- the statements and tags will be ignored until an elsif else or endif tag.
Sample Code
; example 1 [if exp="false"]
This will not be displayed
[else]
This will be displayed
[endif]
; example 2 [if exp="false"]
This will not be displayed
[elsif exp="false"]
This will not be displayed
[else]
This will be displayed
[endif]
; example 3 [if exp="false"]
This will not be displayed
[elsif exp="true"]
This will be displayed
[else]
This will not be displayed
[endif]
; example 4 [if exp="true"]
This will be displayed
[elsif exp="true"]
This will not be displayed
[else]
This will not be displayed
[endif]
[elsif] Else If
between the [if] and [endif] tags, this can be used. If statements in a previous [if] or [elsif] tag have not been executed yet, the statements in this tag will be evaluated if the expression in the exp parameter evaluates to true until the point where an elsif, else, or endif tag is reached.
For usage examples, see the entry for the [if] tag.
ParameterRequired? Description
exp Yes Sets the js expression to be evaluated.
[else] Else
If an [if] tag or [elsif] tag have not been executed, statements between [else] and [endif] are executed.
For usage examples, see the entry for the [if] tag.
This tag has no parameters.
[endif] End If
End an if statement. when you use an [if] tag, you must have an [endif]
This tag has no parameters.
[call] Call a Subroutine
Call a subroutine by label and scenario file.
if a subroutine contains a [return] tag, execution will pick up after where the subroutine was called
ParameterRequired? Description
storage No Set the scenario file containing the subroutine you wish to call. If parameter is missing the current scenario file is used.
target No The label of the subroutine you wish to call. The first label found in the file is used.
[return] Return from Subroutine
Return to where the subroutine was called from.
This is deprecated in KAG3.
(when you need this, use call instead)
This tag has no parameters.
[macro] Describe Macro
Start macro definition.
The statements between this tag and the [endmacro]tag will register a new tag named after the name attribute. Then you can use this new tag.
When an inner tag’s attribute value is prefixed with the % symbol, that parameter is passed through when defined by the macro. If a | is used in conjunction with the %, a default parameter can be defined.
Also, all parameters are passed through when the “*” is used.
ParameterRequired? Description
name Yes The name of the new tag to register as a macro. Afterwards this name can be used as a normal tag.
Sample Code
[macro name="newtag"][font color=0xff0000]new tag[resetfont][endmacro]
[newtag]
[macro name="colortag"][font color=%iro]color tag[resetfont][endmacro]
[colortag iro=0x332211]
; ? iro is passed through colortag to the [font] tag within the macro by using a "%"
[macro name="transwait"][trans *][wt][endmacro]
; ? transwait all of the properties passed to the [transwait] tag are passed to the [trans]
tag with a "*"
[macro name="colortag"][font color=%iro|0xff0000]the iro property is supplied if not
set[resetfont][endmacro]
; ? in conjunction with the "%" syntax the "|" is used to supply default parameters
[endmacro] End Macro
This ends the macro
This tag has no parameters.
[erasemacro] Erase Macro
Deletes registered macro
ParameterRequired? Description
name Yes The name of the macro to be deleted
[savesnap] Create a Save Snapshot
Save the current game conditions. After that, tyrano.ks’s expansion [setsave] is performed. This records the
save data.
ParametersRequired? Description
title Yes Sets the title of the save data
[ignore] Start Ignore
When the expression evaluates to true (or is a non-zero number) do not execute any tags or statements until after the [endignore] tag
ParameterRequired? Description
exp Yes this is the expression (in TJS) that is evaluated.
[endignore] End Ignore
End ignore
This tag has no parameters.
[edit] Text Box
Show a text box.
The value entered via the commit tag is stored as a variable that was set by this tag’s name attribute.
Inside of form display the scenario is paused. (even if you click the story cannot continue)
So when you display a graphical button, you must provide a target label to jump to.
To make a small change to the display, you can edit tyrano.css.
ParameterRequired? Description
name Yes the name of the variable to store on commit
length No width
color No The color of the text. The default is black
left No The horizontal position of the text box
top No The vertical position of the text box
size No sets the text size. The default is 20 pixels
width No The width of the text box
height No The height of the text box
maxchars No The maximum number of characters that can be entered.
Sample Code
[edit name="f.test"]
[locate x=200 y=300 ]
[button graphic="start.png" target=*commit]
[s]
*commit
[commit]
[cm]
;show the contents of entered Text
Value is set as[l]
[emb exp=f.test]?This is what you entered.[l]
[preload] Preloads Image Files
Using the preload tag, you can load files (images or music) before they are needed
The presentation will be smooth when they are needed.
ParameterRequired? Description
storage Yes enter the full path for previously entered images. They are set in the order that they are passed in.
wait No this can be set to true or false. The default is false. When this is set to true all the game is paused until the images are loaded. You will need a loading screen.
Sample Code
;Use the full path below the project directory
[preload storage="data/fgimage/girl.jpg"]
;You can also specify an array
[iscript]
f.preload_images = ["data/fgimage/girl.jpg","data/fgimage/haruko.png","data/fgimage/miku1.png","data/fgimage/miku2.png"]; [endscript]
[preload storage=&f.preload_images]
[clearfix] Clears the Fix Layer
by setting the name property, only the corresponding element can be deleted
ParameterRequired? Description
name No the name used when the fix layer was declared
Sample Code
;add a fix Layer
[ptext name="sample" layer=fix page=fore text="TextText" size=30 x=200 y=100 color=red ]
;clear fix Layer
[clearfix name="sample"]
[commit] Submit Form
The value of the text box is saved as a variable from the [edit] tag’s name property.
Keep in mind that while [commit] is executed, the text Box of the form are displayed.
This tag has no parameters.
[loadjs] Load JavaScript File
Read in external JavaScript File
There are no restrictions on how the js will work.
The JS file should be in data/others folder
ParameterRequired? Description
storage Yes the name of the JavaScript file to load.
Sample Code
[loadjs storage="sample.js" ]
[movie] Play Movie
Play an mp4 video
ParameterRequired? Description
storage Yes the file where an mp4 is stored
skip No set whether or not this is skippable.
Sample Code
[movie storage="" skip=false ]
[showsave] Show Save Screen
Show save screen
This tag has no parameters.Sample Code
[showsave]
[showload] Show Load Screen
Show load screen
This tag has no parameters.Sample Code
[showload]
[showmenu] Show Menu
Show menu
This tag has no parameters.Sample Code
[showmenu]
[showmenubutton] Show Menu Button
Show menu button
This tag has no parameters.Sample Code
[showmenubutton]
[hidemenubutton] Hide Menu Button
Hide menu Button
This tag has no parameters.Sample Code
[hidemenubutton]
[skipstart] Skip Start
Start “skip mode” where the characters move faster