Skip to content

Character JSON

Super edited this page Jul 17, 2021 · 20 revisions

This explains the character JSON schema. This is almost completely backwards compatible with Funkin Multi 3.2.

Field Type Description
clone String Copies the offsets of a character and a few interactions, disable it by removing this line or leaving it blank
no_antialiasing Bool Whether to use antialiasing
sing_duration Float Duration of character sing animation's mult, Dad clones use 6.1 while everyone else uses 4
dance_idle Bool Makes the character use danceRight/danceLeft animations instead of Idle, Also effects a few other things
scale Float Sprite scale on stages. Senpai uses 6 while BF-Pixel/Spirit uses 6.6, everyone else uses 1
custom_misses Int Custom misses, 0 is disabled(Or just don't include), 1 is FNF Multi voices, 2 is 'miss_left.ogg','miss_right.ogg','miss_up.ogg' and 'miss_down.ogg'
alt_anims Bool Whether to use alt animations(Unused, latest FNFBR will automatically use them if provided)
flip_x Bool Flips X axis from the sprite, useful for Boyfriend/Pico/Tankman clones
spirit_trail Bool Enables Spirit's visual effect
animations Array of animations Animations for the character
animations_offsets Array of animation offsets Per animation offsets
common_stage_offset [Int, Int, Int(Unused), Int(Unused)] Your character's offset ingame on common stages as Player 1 and 2
char_pos [Int, Int] Your character's position, Used if you want to stay compatible with Funkin Multi or if you don't want to change the camera position
cam_pos [Int, Int] The camera position, Used if you want to stay compatible with Funkin Multi or if you don't want to change the char position
char_pos(CHAR SIDE) [Int, Int] Your character's position for the slot specified, Used if you want to stay compatible with Funkin Multi or if you don't want to change the camera position( Replace CHARSIDE with the side your character's on )
cam_pos(CHAR SIDE) [Int, Int] The camera positionfor the slot specified, Used if you want to stay compatible with Funkin Multi or if you don't want to change the char position( Replace CHARSIDE with the side your character's on )
flip Bool Allow the character to flip, enabled by default for every character except for GF, copies cloned character if not provided
flip_notes Bool Whether to flip left/right when on the right, true by default 0.0.3+

Click here to find an example charjson

Animations

This is the schema for animations

Field Type Description
anim String The animation to replace
name String The animation name from the XML
fps Int The frames per second this animation should be played at
loop Bool If this animation should be looped
indices Array of Integers The frames this animation will have in order, not needed unless you want specific frames to be used
ifstate character ifstate The animation name from the XML
oneshot Bool If the animation should be forced, Will disable loop if enabled. Should only be used for custom/timed character animations
song String The song to lock this animation to, if unmet then animation won't be processed
char_side Integer Only play on a specific side, 0 = BF, 1 = Dad, 2 = GF, if unmet then animation won't be processed
stage String You can use this if you want to lock the animation to a specific stage, if unmet then animation won't be processed

Animation_offsets

Field Type Description
anim string The animation to edit
player1 [Int, Int] Offsets for this animation (Offsets for player 1 on Funkin Multi)
player2(Unused) [Int, Int] Offsets for player 2
Clone this wiki locally