Skip to main content
This reference documents the commands and functions available when writing Yarn scripts for NONMP using nonkit.
Disclaimer: These command and function descriptions are based on analysis of the game’s early releases. Some behaviors and parameter descriptions are inferred and may not be fully accurate. Furthermore, as NONMP is still in active Early Access development and receives frequent patches, the behavior of these functions may be inaccurate or subject to change.

Categories

Command Syntax

Commands are wrapped in <<>> and can take parameters:
<<command_name>>
<<command_name param1>>
<<command_name param1 param2 123>>
Parameters can be:
  • Strings: Usually unquoted (BG-1, Lilith), but some commands use quotes for specific parameters
  • Numbers: 123, 45.6
  • Booleans: true, false
  • Variables: $my_variable
  • Coordinates: x,y format like 0,0 or -200,100

Function Syntax

Functions are called within expressions or inline text:
// In conditions
<<if get_gold() >= 100>>

// In set statements
<<set $health = get_player_attribute("HP")>>

// In dialogue (with curly braces)
Shopkeeper: You have {get_gold()} gold.

Common Patterns

Starting a Scene

<<back_creat BG-1 false 0,0 1 0>>
<<char_creat Lilith 1 1 false 0,0 0.7 0 0.3>>
<<set_bgm bgm_1>>

Ending a Scene

<<char_remove Lilith>>
<<event_end>>

Conditional Dialogue

<<if get_gold() >= 100>>
    // This runs if the condition is true
<<else>>
    // This runs otherwise
<<endif>>

Giving Rewards

<<change_gold 100>>
<<change_item 2007 1 true>>
<<change_affection 1001 10 true>>

ID Conventions

Many commands and functions use numeric IDs:
TypeExampleDescription
Item IDs12345Reference specific inventory items
Event IDs900001Map event identifiers
Condition IDs900001Unlock condition references
Place IDs9Map location identifiers
IDs are based on game data analysis. Use values from 900000+ for custom content to avoid conflicts.

Parameter Conventions

Most parameters in the game scripts are unquoted:
<<back_creat BG-1 false 0,0 1 0>>
<<char_creat Lilith 1 1 false 0,-1200 0.7 0 0.3>>
Some specific parameters may require quotes (like hex colors or messages):
<<back_tint Test1 true "FF0000">>
<<toast "Message text">>
When in doubt, refer to the specific command documentation or game script examples.

Error Handling

Commands that fail typically:
  • Do nothing silently
  • Log errors to the BepInEx console
  • Continue executing subsequent commands
Check the BepInEx console window for error messages during development.

Browse Commands

Functions

get_gold(), get_value(), get_player_attribute(), l10n(), and more.