Console Commands

From Bonfire by Hogswild Prasetto

The console can be accessed by hitting F1 on your keyboard. To use a command, first set your target, and then use one of the commands below.

Commands can be used nearly every aspect of Bonfire modding, from Scrolls to Lua Scripts, and even NPC Dialogue and Macros as a CustomCall Action.

Note that all commands are case-sensitive. Also, assume that this page is up to date with the latest Patreon release.

Basic Commands

Command Usage Effect
target target orcname

Sets the console target for most commands. Names are case-sensitive.

You can also use Special Arguments like @self or @playername as place holders for names (See the Special Arguments / Logic) section.

By default, the player is the console target when the scene loads. Some commands will only work for the player, even if the target is another NPC


Clears the current target and returns control to the player.

Warning: Do not use this while online because it will cause syncing issues. Every connected user is the “player” from their perspective. Either target your orc by name explicitly, or use the @self parameter.

batch batch command1;command2;command3

Allows you to call multiple commands at once, separated by semicolons after the batch keyword.

Note: Do not put spaces after each semicolon

invokedelay invokedelay delay

If used with invoke, this sets a delay timer for when a command is executed.

If used with timedmacro, this sets a timer for how long the macro will loop itself and execute. A value of “Infinity” will make the macro execute until it gets stopped by another process.


invokedelay 4

invoke origins

This will run the origins command after 4 seconds have passed.

invoke invoke command

If invokedelay was used prior, this will execute a command after the delay of time specified.

Works with batch.

casc casc command

Short for "Command after scene change." The command will be executed right after a scene change occurs.

Works with batch.

aoe aoe buffName,duration,range,repeats

Applies a buff to all orcs in an area around the current console target, but not including the target.

buffName – The buff to be applied

duration – How long the buff should las in secondst

range – Controls the size of the area effect. This can be a value from 1 to 12.

repeats – The “strength” of the buff. It basically reapplies the same buff multiple times for a faster effect.


aoecmd commandName\delay\range


aoecmd commandName\delay\range\iterations

or when using Lua:

orc.consolecommand(”aoecmd commandName\\delay\\range\\iterations”)

Casts a console command within a set area around the current console target, but not including the current target.

Unlike most commands, aoecmd’s parameters are separated by a backslash ( \ ) character, rather than a comma. Backslashes are used as an escape character in most programming languages. If this command is used within a Lua script, you will need to use two backslashes between each parameter: ( \\ )

commandName – The console command you want to use

delay – Specifies how long the command will wait before executing. Note: This is not applicable to all commands!

range – Controls the size of the area of affect. This can be a value from 1 to 12.

iterations (optional) – Will attempt to repeat the same command for the amount specified

infodialogue infodialogue enter message here Prints a message on the middle of the screen. If used online, this will appear for all players.
exit Exits the command console
cls Clears the text in the command console

Debug commands

These commands are useful for debugging purposes.

Command Usage Effect
save Saves your progress.
rel Reloads the current scene. Can be used to unstick the game.

Wipes your character's memory entirely, essentially resetting quest progress back to zero and resetting your NPCs’ appearance. Your items and waypoints are not affected, however.

This also deletes all Data Flags and Lua Scripts from your inventory.


Marks Celik's, Oriol's and Bo's quests as "Completed" and places the player at their "Post-Merge" state.

Also deletes any non-official Data Flags, and cancels (but not deletes) any running Lua Scripts.

hobo Wipes most items from your character’s inventory.

[DEPRECATED] Removes NPC data from the NPC’s inventory.

This has been succeeded by the dory command

stiff Removes all poses from the players inventory

Opens the inventory and reveals hidden, internal data. Using the command will hide everything again.

For practical purposes, this reveals the Data Flags tab in an orc’s inventory for quest-tracking purposes.

forceinventory Opens the current console targets inventory.

Show a list of available equipment, and their itemIDs.

This list is available on the Items page.

give give itemID

Give the target a piece of equipment with the itemID specified and makes them wear it.

Reference the Items page for a list of equipment.

itemcopy itemcopy itemID

Copies a piece of equipment the target is holding. This will come with the default colors.

Note: The target needs to be holding at least one piece of equipment with the itemID specified before more copies can be made.


Shows the list of available food and their itemIDs.

This list is available on the Items page.

quickfeed quickfeed itemID

Makes your target eat the food specified, but does not place it in their inventory.

Reference the Items page for a list of food.

lordofshapes [DEPRECATED] Pulls up a compact editor that allow for the player to adjust stats such as height, cocksize, arousal, muscle and more. This can also reveal NPCs in the current scene. Type lordofshapes again to turn it off.

Note: As of version 0.49.0 this command has been permanently retired. As of 0.51.0 it has been succeeded by seerofshapes

seerofshapes Displays numerical values for height, cocksize, arousal, muscle, and more for all NPCs within the current scenes. Unlike lordofshapes this UI is read only and cannot be adjusted.
feditbod Pulls up the character editor to change your orc’s appearance



chedit NPCName


chedit NPCName,line#

Quickly opens the NPC Editor.

Adding the NPC name and line number as parameters will open the NPC Editor and jump directly to the dialogue line specified.

coord Displays your character's coordinates, including rotation
refpos Retrieves and stores the target’s current coordinates. This can be used later to place NPCs in the NPC Editor, or used to teleport orcs or assets using tp2refpos or assetrefposset.
refrot Retrieves and stores the target’s current rotation for use later. Commands like rot2refrot will set the target’s rotation to match the stored rotation.
rot2refrot Sets the target’s rotation to the rotation coordinates stored from refrot
intdir2target Makes the target rotate to face their current interest.
Time Commands
  • dawn
  • morning
  • noon
  • afternoon
  • eve
  • night
  • midnight
Sets the time of day to the name specified
daytime daytime hour Instantly sets the time of day to the hour specified.

hour can be any floating point between 0 and 23, representing the hours in the day.

necro necro orcName Brings back a deleted character from the graveyard.
del Deletes the target, rendering them as untargetable for further commands. The character will get restored when the scene reloads.
hide Causes a character to fade out, but they will still be affected by commands. Reloading the scene will make them appear again.
orcinterestset orcinterestset orcA,orcB Causes orcA to turn their head to look at orcB, setting the target for the @selfinterest (or @playerinterest if used on the player) parameter.
chrname chrname newname Changes the targets name to newname. Not recommended to use on the player or Lore NPCs. This is disabled online.
alltps Grant access to all waypoints for fast travel.
alwin Opens the alchemy window
sflag sflag flagname,value Sets a Data Flag in the target's inventory to the value specified.

If the Data Flag does not exist, a new one with the flagname is created

removescriptflag removescriptflag flagname Deletes a Data Flag from the target's inventory, if it exists.
sflagdiscord sflagdiscard flagname Marks a data flag for deletion after the game closes, or when swapping to a different character.
strip Strips the target of any equipment they’re wearing, and makes them naked.
Spawn commands
  • spawn
  • spawnrandom
  • spawnrandomhuman
  • spawnrandomorc
  • spawnrandomiguapi

Spawns a random, dialogue-less NPC next to the target. This NPC becomes the new console target.

Spawned NPCs do not have dialogue by default, but can be given one with modspeech.

Unlike Fantasies, spawned NPCs can be fused with.

freezenode Freezes a target and stops all movement
unfreezenode Unfreezes a target.
menuskip Exits the menu. This can be placed into a "start.ini" file in the game's metadata folder to automatically play your character without having to hit "continue,"
NPC Commands npcon NPCName.bab

npcoff NPCName.bab

Enables and disables and NPC, NPCName, in the Mods editor via the console. The .bab file extension is required.
say say messsage Makes the target display a textbox including the message

Warp / Travel Commands

These commands quickly transport the target to a different location within the current scene or to other scenes.

Command Usage Effect
travel travel levelname Instantaneous transport to levelname. See Areas for more information.
travelquiet travelquiet levelname Does the same as travel, but will not flash the screen nor play a sound effect. This may freeze the game for a while.
tplist Shows a list of way points in the scene.
tp tp location Teleports you to one of way points retrieved by tplist.
tp2orc tp2orc name Teleports you to any orc in the current scene with the given name
tp2orcquiet tp2orcquiet name Does the same as tp2orc, but will not play a sound effect nor flash the view.
tp2refpos Teleports the target to the current coordinate set by refpos.
tp2refposquiet Same as tp2refpos, but will not play a sound or flash.
chrpos chrpos x,y,z Teleports the target to the specified coordinates.
chrrot chrrot x,y,z Gives the character a specific rotation. Only the y parameter works. x and z can be filled with 0.

Customization Commands

Customization commands allow you to color your orc's gear or load external files to create scars and tattoos.

Command Usage Effect
Color Equipment
  • colorleather R,G,B
  • colorcloth R,G,B
  • colorplate R,G,B
Allow you to assign custom colors to any applicable leather, cloth, or plate pieces you are wearing using RGB notation
tatui Opens the UI for adding tattoos and scars without needing to speak to Kult first.

See Creating Tattoos or Creating Scars for the relevant guides.


Generates a sample UV Map .png file in the %appdata%/Prasetto/ Bonfire/Tattoos folder of your Bonfire directory. This image acts as a guide for making custom scars and tattoos.

tattoo tattoo fileName

Imports the fileName tattoo/markings into an item in your character's inventory. Be mindful the data will be serialized into your character and will drastically increase the file size of the player orc. Too many tattoos will make it difficult to load your orc in online play.

See Creating Tattoos for a guide on tattoos.

scar scar fileName

Similar to tattoo: adds scars on your character.

In order to make a scar, non-black colors must be used (grayscale is the best). White appears the most vivid, while black colors will be completely invisible.Transparency controls the “softness” of the scar.

See Creating Scars for a guide on scars.

Admin / Online Commands

These commands are used to access special controls during online play.

Command Usage Effect
adminlogin adminlogin password

This lets you log into the server as an administrator, enabling you to use console commands and the below gm_ commands freely. Your password is created when launching a new server through NetBench

If the password is a null value, simply place an empty space after the command.


Opens a panel showing the number of players online.

If players are within the same scene, this can view the list of player names and their client IDs. You can also view any active buffs on other players and save a log of the console commands they’ve executed.

Note: This command can be used without logging in as an admin first. When this command is used with admin priviledges, this allows downloading a snapshot of a specific player's orc.

gm_ntassets Opens a panel that allows you to spawn or remove spawned objects online, such as camp fires or stone beds.
gm_ntassetlist Saves all spawned objects and writes them into an “assetdump.txt” file located in Bonfire’s AppData folder.

Note: This only saves assets for the current scene. You will need to rename the assetdump.txt file to save assets from multiple scenes.

gm_nttr Views tattoo streaming data when a player connects.
slutmode Automatically grants consent to all players within the current scene for sex and scroll usage.

This can also be specified on the NetBench console as a sort of server-wide setting. that affects all players.

Sex Commands

These command start sex animations with the current target and their current "interest"

Command Usage Effect
oldforeplay The target will start Foreplay with another orc, if they are close enough.
oldforeplaystop If the target is Foreplaying with someone, they will stop.
fap The targeted orc will masturbate.
fapstop If fap is used on the player, use this to make them stop masturbating in place of the ESC key.
floorfap1 Masturbation, but the target will lie on the ground.
floorfap1stop Stops floorfap1
sexswap Makes the top and bottom orcs swap places during sex.


Stops the current sex animation.
joinsex Makes the orc join in on another orc's sex act. currently only works with ssa1 and the Floor Fap Tease animation.
sca1 Acronym for "scene anal 1", will have the target and his interest engage on doggy-style anal sex on a nearby hot spot. If none exists in the scene, or if you’re too far away, nothing happens.
ssa1 This command starts a standing doggystyle animation that does not require a bed. The targeted orc will go into an invitational gesture, placing their hands on their hips. Another orc observing them can use the joinsex command to start the actual sex animation.
spr1 Starts the "Power Ride" or cowgirl animation. This also does not require a bed to be nearby. Like with ssa1 the target will go into an invitation and lay on the ground. A nearby orc who is observing them can use the joinsex command on themselves to start the animation.
sca2 Like sca1, but does missionary anal position.
sco1 Acronym for "scene oral 1". Unlike sca1 and sca2, this one will be played on the spot where the characters are standing, not requiring a predefined sex hotspot.
sc69 Like sco1, but does a 69 position.
scg2 Intended to be used as a geniefied orc, starts the blow job animation where the giver is charmed and pulled to the receiver.

Transformation commands

Commands for changing your orc's appearance.

Command Usage Effect
natty Returns your character to their last known naturally achieved shape (ie, from eating fruits). Natty will also cure you of corruption.

Similar to natty, but returns you to the shape your character had upon creation.

Warning: If your character was a genie for an extended period of time, origins may not restore your form.


Saves your character's current appearance as their new "natural" shape, for the natty command.

Be sure to save the game to make this change permanent.


Saves your character's current appearance as their new "original" shape, for the origins command.

Be sure to save the game to make this change permanent.

xl Instantly makes the target the max height, max penis size, maxed muscle, and minimum body fat.

Shows a list of all available hairstyles for the hair command.

This list is available on Hair/Beard Styles.

hair hair id,length Changes your hairstyle. Length is a decimal between 0 and 1

Shows a list of all available beards for the beard command.

This list is available on Hair/Beard Styles.

beard beard id,length Changes your beard style. Length is a decimal between 0 and 1
splice Turns your character into an average fusion of every character you've created
Genie's Curse
  • curse
  • cursebara
  • curseorc
  • curseiguapi
  • cursedorf
  • cursegoblin
  • geniefy

Adds Genie's Curse to the target.

curse will randomize the transformation, while the other curses will transform you into the race specified.

geniefy will instantly turn anyone into a full genie. If you are geniefied for an extended period of time, the origins command will not restore your form.

barasel Opens a window where you will see a preview of a “barafied” version of your orc. Clicking the mouse will change the preview’s appearance, and pressing the Enter key will apply a curse on your orc that transforms them into the bara preview.
purify Removes the Genie's Curse, but does not revert your orc's form. This also does not remove the Genie's tattoos received from a full curse.
swap swap orcA,orcB,duration,multiplier

Attempts to perform a body swap on two orcs. duration controls how long the swap should take in seconds, while multiplier controls the speed. 1 is slow, while 100 is the fastest. It is possible to have an incomplete body swap if either the duration or multiplier are set too low. Special Arguments, such as @self and @selfinterest can be used in the place of orc names.

convert convert orcA,orcB,duration,multiplier Similar to swap but changes orcB's body shape into orcA's body shape, without effecting orcA.
“Transformify” Commands Human
  • barafy target,strength,duration,burstdelay
  • barafylite target,strength,duration,burstdelay


  • orcify target,strength,duration,burstdelay
  • orcifylite target,strength,duration,burstdelay


  • iguapify target,strength,duration,burstdelay
  • iguapifylite target,strength,duration,burstdelay


  • dwarve target,strength,duration,burstdelay


  • goblinize target,strength,duration,burstdelay

The “Transformify” commands morph your character’s appearance towards the race specified. The “Lite” versions won’t change your current beard or hairstyle.

target – The name or Special Argument (@selfinterest, etc) for who will change.

strength – This is the percentage of the transformation. A value of 1 will be barely noticeable, while a value of a 100 is a full transformation.

duration – How long the transformation will take to complete in seconds.

burstdelay – Determines if the transformation should be applied in bursts, or be a smooth transition. A value of 5 will apply a little bit every 5 seconds, while a value of 0 will have no delay at all. Warning: Ration your duration, and burstdelay appropriately or else the transformation will stop before it’s complete.

Quickgrow Commands
  • quickgrow
  • quickgrow1
  • quickgrow2
  • quickgrow3
Accelerates whatever growth buffs the target may be experiencing, including the curse. quickgrow plays a random animation, while the rest play a specific one.
Pulsegrow Commands
  • pulsegrow1
  • pulsegrow2
  • pulsegrow3
  • pulsegrow4
Similar to quickgrow in that it accelerates any present growth buffs, except these will also play a mini cutscene.

Pulsegrow removes your shirt if you're wearing on, and if you're wearing the Leather Crop Top, it will be replaced by the leather collar, spiked bracers, and leather harness. However, if you're wearing the Mini Tank Top, it will remain on your character.

If the target has a curse, then this will cause it to advance towards geniefication. If the target also happens to be wearing the Genie's Bracers, this will cause all orcs within the current scene to become genie drones (this does not work online, however.)

ragtf Accelerates any ongoing transformations to their completion.

This only works while using one of the transformify commands, or if the target is cursed. If the target is cursed, this instantly progresses it towards geniefication.

Fusion commands

These commands are used to merge two orcs into one.

Fusions in Bonfire involve two entities called a "fusee" and a "host." The fusee is the orc who gets absorbed into the host's inventory. While absorbed, their orc data is temporarily deleted from the current scene, and will be unavailable as a target for further console commands until they are unfused from the host.

The host will always be the target who calls a fusion command. They will remain in the scene, meaning that you target a fusion by using the host's name.

Often the current target will return null after a fusion command is used, and must be reset with another target command.

Command Usage Effect
fuse fuse orcA,orcB

Fuses the two orcs specified. Special Arguments can be used in the place of the orc names.

orcA becomes the host body for the fusion, while orcB’s essence is stored in their inventory.

fusenew Instantly fuses the target with whomever they're looking at.
fusenewquick Similar to fusenew except size is applied instantly, rather than gradually
forcefusion The target orc will absorb whomever they're looking at. This will play an animation, and display dark tattoo markings.
unfuse Completely breaks up a fusion
unfusenewbyname unfusenewbyname orcName Removes a specific orc from a fusion.

Combat Commands

These are commands related to the combat system.

Command Usage Effect
capture Captures the target and makes them orbit the player. This only works if the target has been defeated.

Captures up to three defeated orcs around the target.

mergecaptured Forces all of the user's captured orcs to fuse.

Scroll commands

These commands are used in the creation of items called Scrolls. A Scroll works similarly to the batch command where they allow you to run a series of console commands with the press of a button. Scrolls are also reusable, effectively creating a shortcut for running the same commands over and over without having to type them all manually.

See the page on Scrolls for more details.

Command Usage Effect
oscreate oscreate scrollName Creates a blank scroll in the target’s inventory and opens the scroll editor.

scrollName represents the name you are giving the scroll.

recstart recstart scrollName

[DEPRECATED] All console commands used after this will be saved and stored in a scroll.

This has been succeeded by oscreate.


[DEPRECATED] Stops recording console commands and stores the scroll within the target's inventory.

This has been succeeded by oscreate.

orcscrollexec orcscrollexec scrollName If present, casts a recorded scroll within the target's inventory.
scrollcopy scrollcopy orcA,orcB,scrollName Copies a scroll scrollName from orcA's inventory to orcB's inventory. Special Arguments can be used in the place of names.
orcscrolldel orcscrolldel scrollName Deletes a scroll from the target’s inventory

Macro commands

These commands are used in the creation and execution of macros.

Macros are highly advanced Scrolls that can invoke Custom Actions found within the Dialogue Editor, such as sex and facial expressions. They also get access to Execution Conditions, which allow you to execute commands only when certain conditions are met. Lastly Macros can be automated to run repeatedly using the timedmacro command.

Macros used online will not transmit to other players (meaning, the player using the macro will see their effects, while other players won't see anything happen)

As of version 0.47.6, Macros are considered obsolete and it's much recommended that you use Lua instead.

Command Usage Effect

Opens the macro editor, allowing you to write logical macros.

Macros are saved in the %appdata%\Prasetto\Bonfire\Mods\rawdialogues folder of your Bonfire directory

macroinject macroinject macroFileNameormacroinject folder/macroFileName

Adds a macro scroll item to the target, which can be executed using commands like macroexec.

Macros can be injected from subdirectories as well.

macroexec macroexec macroName If present, executes a macro macroName from the target's inventory
timedmacro timedmacro macroName

To be used with invokedelay.Together, these commands run macroName every second for a set duration in seconds.


batch target @self;invokedelay 10;timedmacro macroName

Will execute macroName every second, for 10 seconds.

batch target @self;invokedelay Infinity;timedmacro macroName

Will execute macroName every second, forever, until it gets stopped by another process.

timedmacrostop timedmacrostop macroname This will stop execution of any macro with the given macroname. The macro itself will still exist in the inventory of the character that was running it.
timedmacropurge timedmacropurge macroname Same as timedmacrostop, but this one will also remove the macro from the target's inventory altogether.
macrocopy macrocopy orcA,orcB,macroName Copies a macro macroName from orcAs inventory to orcBs inventory. This command does not function during online play.
macrohide macrohide macroName Hides the selected macro in the target's inventory, but commands like macroexec and timedmacro can still access it.
macroshow macroshow macroName Un-hides a macro if it was hidden with macrohide

Lua commands

These commands enable the injection, execution, and automation of Lua scripts within a target's inventory. For more information, visit the Lua scripting page.

A full list of Lua functions can be found on the Lua API Reference.

Command Usage Effect
qorclua qorclua Lua Code Goes Here


qorclua orc.consolecommand("quickgrow1")

Allows you to easily execute Lua code directly from the console.

This creates a temporary lua script into the target's inventory that gets deleted after execution has completed.


oluainj luaScriptName


oluainj folderName/luaScriptName

Injects a Lua script within the console target's inventory.

Scripts must be stored within the Lua sub-folder in your Bonfire directory, located at:


If the Lua script contains the start() or update() functions, those will execute automatically.

Scripts can also be loaded from subdirectories within the Lua folder, by separating the folder names with a ( / ). Do note, however, that when the script gets injected, it will include the directory name.For example:

oluainj Orc_Follower/OF-API

Will inject the OF-API.lua file under the name of “Orc_Follower/OF-API,” and any execution commands must include the directory name:

oluacf Orc_Follower/OF-API,follow

Warning: If the Lua script contains errors, the console will print the following message:"Error reading lua file: Incorrect format and/or syntax."This occurs when your script contains syntax errors, or is trying to manipulate a property within Bonfire that doesn't exist, or is marked as "read-only.


oluacf luaScriptName,functionName


oluacf directoryName/luaScriptName,functionName

If the target contains luaScriptName within their inventory, it will execute functionName once, if it exists.

oluaiifr luaScriptName,functionName,duration


oluaiifr directoryName/luaScriptName,functionName,duration

Causes a single function to iterate and execute repeatedly for a set duration in seconds. When the duration is exceeded the iteration will stop.

Tip: Setting duration to "Infinity" will make the script run forever.


oluaria luaScriptName,functionName


oluaria directoryName/luaScriptName,functionName



Stops a function from iterating.

Using oluaria with no parameters will stop all iterating scripts in the target's inventory.


oluarem luaScriptName


oluarem directoryName/luaScriptName

Removes the Lua script from the target's inventory. This will also stop any related iterators.
oluashow oluashow ScriptName Hides a lua script in the target's inventory. It will still be visible with the showhiddenitems command, however.
oluahide oluahide ScriptName Reveals a lua script in the target's inventory.

Asset Commands

These commands let you call assets from Bonfire's internal library and spawn them into the world as objects. Objects spawned during single player will disappear when changing scenes or reloading the game, while objects spawned online will persist while the server is active.

A working list of available assets can be found on the Assets page.

Command Usage Effect

asset full/Path/To/Asset/File


asset newNameFromAssetNameSet

Loads an asset from the game’s files into memory. This asset becomes the console target for other asset commands.

If an asset instance has been saved and renamed with assetnameset, this command can target the instance using its new name.

assetnameset assetnameset newAssetName

Saves a copy of the asset loaded as a new instance, and assigns a unique name.

Next, the asset command can target this instance by using the new name as a parameter, rather than the full asset path.

assetpos assetpos x,y,z,rotx,roty,rotz,local

Spawns the instance loaded with asset at the desired coordinates, with the rotation specified.

local can be “true” or “false.” This indicates whether this asset will spawn on the world’s global axis, or the asset’s local axis. If the asset is attached to an orc, setting local to “true” will spawn the object based on the orc’s local axis instead.

assetpos2 assetpos2 x,y,z,rotx,roty,rotz,local

Translates or rotate the asset by the amount specified. For example, if y is 10, the asset will move up on the y-axis by 10 meters.

If the asset hasn’t been spawned with assetpos yet, the coordinates will act as the asset's spawning position instead..

assetrefposget Stores the selected asset’s X, Y, and Z coordinates, for use with tp2refpos or assetrefposset
assetrefrotget Stores the selected assets rotation for use with rot2refrot or assetrefrotset
assetrefposset Spawns an asset at the currently saved coordinates (but not rotation) saved with the refpos or assetrefposget commands
assetrefrotset Rotates the selected asset to match the rotation saved with refrot or assetrefrotget commands
Attachment commands
  • hrattachca
    • Attach to right hand·
  • hlattachca
    • Attach to left hand

Attaches an asset to the console target

The local parameter in the assetpos command will place the asset relative to the target’s location.

assetscalereset When an asset is attached to an orc, this will reset its scale relative to the orc, enabling it to grow and shrink

assetclear full/Path/To/Asset/File


assetclear newNameFromAssetNameSet

Deletes the asset instance specified.

Dialogue commands

These commands can create and inject new dialogue trees into NPCs.

Command Usage Effect

Opens the dialogue editor, allowing you to write custom dialogue trees without creating an NPC for them.

Dialogues are stored in the RawDialogues subfolder, located in the %appdata%/Prasetto/Bonfire/Mods/rawdialogues directory

modspeech modspeech rawDialogueName

Injects a custom dialogue into the target character’s inventory and sets it as their default speech. This change will persist even after saving and reloading the game.

Dialogues can be loaded from subdirectories within the RawDialogues folder as well.

diag2override diag2override dialogueName Selects a previously injected dialogue as the character’s new speech
modspeechmfd This marks the injected custom speech to be discarded upon saving or reloading the game, and restores the NPC's default dialogue.
modspeechmfk If modspeechmfd was used, then this restores the default behavior where the custom speech will persist after saving.
modspeechrestore Restores an NPC's previously modded speech.
showdiagindex Shows the dialogue index number for debugging purposes
omen omen rawDialogueName

Will read a raw dialogue of the given rawDialogueName from your RawDialogues folder, and bring it into the game as a monologue, featuring the current player character as the 1st voice (Person 1)

Dialogues can be loaded from subdirectories within the RawDialogues folder as well.

omenpos omenpos x,y,z,rX,rY,rZ,local

Controls the camera’s position during the monologue.·

x,y,z – The camera’s position·

rX,rY,rZ – The camera’s rotation·

local – If set to “true” or 1, the omen will move to the coordinates saved using refpos, and use the previously entered position and rotation as an offset. Otherwise, the camera will move to the coordinates specified.

Use this so that the omen dialogue camera is placed at a coherent position once the monologue starts, otherwise you will get awkward camera shots as the speech develops.

Movement Commands

These are commands that utilize AI Pathfinding to make an orc walk to a specific target or x,y,z coordinate on the map.

Command Usage Effect
walkto walkto target,duration,speed,allowInterruptionBool Makes the orc start walking towards the NPC, player, or Special Argument named as the target.

duration – indicates how long the orc will walk for in seconds. Use Infinity to make them walk until they reach their destination. This will cancel out if the orc reaches their target before the duration is completed.

speed – this is the orc’s walking (or running) speed.

allowInterruptionBool – this is a boolean parameter that accepts "true," "false," 1 as "true," or 0 as "false." If true, the affected Orc cannot be spoken to while they are walking.

walktorandom walktorandom duration The orc will walk a random direction for a specified duration in seconds.
walktoloc walktoloc target,x,y,z,duration,speed,interrupt Makes the target walk towards a specific x,y,z coordinate within the current scene.

duration - Indicates how long the target will walk for in seconds, up to Infinity. If this is set too short, they will stop walking before reaching their destination.

speed - Controls the target's walking (or running) speed.

interrupt - his is a boolean parameter that accepts "true," "false," 1 as "true," or 0 as "false." If true, the affected Orc cannot be spoken to while they are walking.

walkcmd Commands the console target to walk to a specific location on the map.

When used, this creates a rune under your cursor that travel's long the ground. When right-clicked, the target will walk to that location.

Misc. commands

These are commands that don't quite fit into any category.

Command Usage Effect
clickchoice clickchoice alias,commands


clickchoice Become Goblin,batch target @selfinterest;goblinize @selfinterest,100,10,0

clickchoice allows you to add custom commands to an NPC's interaction menu. This also appears online as the "Add Command" button.

alias refers to the name given to the custom command that will appear on the interaction menu.

command is the actual console command to be executed. This can also be a batch command, and is recommended you begin by either targeting @self, or @selfinterest

Clickchoice commands are persistent, meaning they will be present after saving and reloading the game. Clickchoices added to the player character before importing them into the NPC Editor will also be present.

clickchoicedel clickchoicedel alias Deletes a custom clickchoice by the name of its alias, if it exists.
beacon beacon name Find a patron totem of a specific name. Name is your username on Patreon. An item will be added to your inventory, which you can right click to get a hint of how far you are from the desired totem, if it exists.

Will detach the camera and turn it into free-floating view, that can be controlled with the mouse and WASD keys.

Hold down Ctrl if you need to use the mouse while hawk vision is enabled.

Esc key immediately returns the camera to the player character.

This command will drain your mana while in use.

hawkspawn While hawkvis is in use, this will warp the character to the same coordinates as the free-flying camera.
fadecolor fadecolor r,g,b,a,r2,g2,b2,a2,time

Creates a “Fade-to-color” effect, where the screen will fade to the color specified.

r,g,b,a is the starting color and transparency. All values are between 0 and 255.

r2,g2,b2,a2 is the ending color and transparency. All values are between 0 and 255.

time refers to the delay before the fade out effect happens. Time must be at least 1 second.

nudgebwd Moves the target one meter backward.
nudgefwd Moves the target one meter forward.
turnback Turns the target 180º around
animatorreset Resets the character’s animator out of a sex pose. This is useful in NPC dialogue when you want your characters to have sex multiple times within the span of a single branch of conversation.
setchrscene setchrscene sceneName,x,y,z

If the target is an NPC, it will set them up to spawn on a different scene at the given coordinates. This is useful when creating NPCs that need to change scenes during their "dating" progress

Scene names follow the same naming convention as those seen in the NPC editor (Outback1, Inn1, Sea1, etc). It will be saved as a hidden item flag on their inventory, and further executions of this command will overwrite any previous scene flags. See Areas for the full list of possible spawn locations.

Note: This will only work on “persistent” NPCs that don’t get cleared out when the scene reloads, such as lore or custom NPCs. Spawned orcs and fantasies get erased when the scene changes.

campos campos x,y,z,rotX,rotY,rotZ,zoom,orthographic,localized

This command will detach the camera from the current user (usually the player) and place it at the given position and rotation coordinates, with a given zoom/lens (in field of view angles. Normal field would be 60 degrees).

Orthographic is a boolean (true or false) and makes the camera either perspective-based or orthographic.

Localized is a boolean (true or false) and, if true, will apply the given coordinates relative to the current console target, instead of absolute world coordinates.

Note: this command detaches the camera and will not follow the player anymore. Use the camttach command in order to re-attach the camera to the current console target.

Note II: If campos is used without any parameters, it will output a line to the console containing the current camera coordinates, which you can copy and paste into your scripts and dialogues. Useful for creating custom vistas in conjunction with hawkvis

camttach Attaches the camera to the current console target, and makes it follow them around as it would the player.
obsrvis Similar to camttach, but works better for orcs who walk around the world. This is the camera used when pulled into a fusion online.
sit Makes your orc sit down
standup Makes your orc stand up
chuckle Makes your orc laugh
donaternd Gives the target a random assortment of clothing items from your inventory.

You can limit this to the clothing you're currently wearing (aka your entire outfit) by using donateaddworn

donateaddworn When used on yourself, it limits the the items granted by donaternd to just the items you're currently wearing.
  • dance
  • dance2
  • dance3
  • salute
  • salute2
  • wave
  • glee
  • flex
  • shrug
  • yes
  • no
  • lay
  • lay2
  • torch
  • laugh
  • lol
  • sit
  • stand
  • roar
  • thup
  • headahce
  • dance4
  • dance5
  • dance5b
  • bkiss1
Makes the target emote. The command takes an integer (0-9, etc) or a string directly referencing the emote name.

Special Arguments/Logic

Special Arguments can be given in certain situations for the above functions or to data flags

Category Argument Description

Targeting Arguments

These parameters can be used in the place of orc names when setting the console target, or as parameters in Scrolls, Macros, Lua Scripts or Dialogues.


A placeholder that returns the player’s name.


Returns the name of the orc the player is currently interacting with, even if they are just looking at each other.


A placeholder that return a different target in a variety of situations:

  • Console Commands - refers to the player who opened the console command window
  • Dialogue - this returns the current speaker, determined by the “Starring” setting in the NPC or Dialogue editors.
  • Scrolls – Refers to the caster
  • Macros – Refers to the macro user
  • Lua Scripts – Refers to the “orc.” instance who calls a Lua command

Scrolls intended to be used online should always open with “target @self” first.

@selfinterest Similar to @playerinterest, but applied to @self. @selfinterest is considered safe to use online.
@target Refers to the current console target.

Ex: After using target Celik to make him the focus of the console, @target will now refer to Celik.

@targetinterest Refers to the orc the current console target is looking at.

Ex: After using target Celik to make him the focus of the console, if Celik's head is turned to look at Oriol, then @targetinterest will refer to Oriol.

Math Arguments

Used by Data Flags to perform mathematical operations on their stored value.

These are used within NPC Dialogues and Macros. Since Lua already contains built-in features for mathematical operations, these will not work with the orc.setitemflag() function.

@math +number Increments flag value by number
@math -number Decrements flag value by number
@math *number Multiplies flag value by number
@math /number Divides flag value by number
@math ^number Raises a flags value to the power of number
@randint lowest,highest Returns a random integer value between lowest and highest
@randfloat lowest,highest Returns a random float value between lowest and highest

Comparison Operators

Returns either true or false depending on how a Data Flag’s stored value compares to another number.

These are used to check Execution Conditions within Macros and NPC Dialogues.They are also work with Lua’s orc.ifitemflag() function.

@>> number Returns true if the flag value is greater than number
@<< number Returns true if the flag value is lesser than number
@>= number Returns true if the flag value is greater than or equal to number
@<= number Returns true if the flag value is less than or equal to number
@!= number Returns true if the flag value is not equal to number.
@any Returns true if the data flag exists, regardless of actual value.

Dangerous commands

Use the following at your own peril. They circumvent normal game logic for a specific effect. They may break the game, user experience, or may be broken on upgrade. These commands are considered volatile.

Warning: All commands are case-sensitive! Most will either not work, or display incorrectly unless they’re entered exactly as they appear here.


  • buff buffName,duration
  • buffperma buffName
  • buffclear buffName
  • buffclearall
  • teachbuff buffName

Grants the target a buff that applies in increments of 1 for a set duration. Applying the same buff multiple times will stack its effects, and you can also achieve this with the batch command. Many of these buffs are viewable in the dialogue or macro editors as CustomBuff Actions.

As of version 0.50.X buffs now require a mana cost AND require that the caster has knowledge of the buff in order to use it. Details are given in the Scrolls page.

Note that when buffs are used online, they will only appear for players who were around at the time the buff was cast. Any new players who join after the buff was used will not see its effects. However, this can be bypassed by calling the orc.consolecommand() function within Lua’s Chunk Space, which causes code to execute once automatically when an orc loads into the scene.

Some buffs cost mana to cast.

buff grants a buff for a set duration in seconds. If the buff requires mana to cast, the cost is multiplied by the duration

buffperma will create a non-expiring buff. If the buff requires mana to cast, a permanent buff will a very high cost.

buffclear will stop specific buffs running on the target.

buffclearall will stop all running buffs on the target.

teachbuff when used within a scroll (ie: batch target @selfinterest;teachbuff MuscleIncrease) will grant the target new knowledge of the buff specified, provided the caster themselves know it.

  • Appear
    • The duration controls the duration of the fade-in effect.
  • AutoGenieCorruption
    • Enables normal corruption applied by curse to progress towards full genie corruption
  • BallSizeIncrease
  • BallSizeDecrease
  • BellyIncrease
  • BellyDecrease
  • BodyFatIncrease
  • BodyFatDecrease
  • CurseImmunity
    • Makes the target immune to all forms of the Genie's Curse
  • Disappear
    • The duration controls the duration of the fade-out effect.
  • Drool
  • Goblinize_BigBaraHuman
  • Goblinize_BigOrc
  • Goblinize_Dwarf
  • Goblinize_Goblin
  • Goblinize_Invert
  • Goblinize_Swap
  • Goblinize_SwapHeight
  • Goblinize_SwapMuscle
  • HardNCum
    • Gives your character an erection, and makes them cum at the end of duration
    • If used with buffperma, your character will only cum when something causes the buff to end.
  • HeightIncrease
  • HeightDecrease
  • HyperPenisLength
  • JawIncrease
  • JawDecrease
  • JumpBoost
    • Increases jump height
  • LatsIncrease
  • LatsDecrease
  • LegIncrease
  • LegDecrease
  • ManaRegen
  • MeiosGain
  • MuscleIncrease
  • MuscleDecrease
  • NippleIncrease
  • NippleDecrease
  • NoLookAtBody
    • Temporarily stops the user from looking at the camera or looking at another Orc. Useful for forceanim.
  • PenisBulger
    • Makes your penis occasionally twitch and get hard
  • ImpendingGrowth
    • Plays a delayed quickgrow animation at the end of duration to speed up any active growth buffs.
  • PecsIncrease
  • PecsDecrease
  • PenisGirthIncrease
  • PenisGirthDecrease
  • PenisLengthIncrease
  • PenisLengthDecrease
  • PenisShowerIncrease
  • PenisShowerDecrease
  • Permanator
    • Slowly makes your current appearance permanent (like resnatty)
  • PinkTrip
    • Makes you high.
  • Restorator
    • Slowly restores your character's natural shape.
  • Scruff
    • Adds body hair
  • SpellImmunity
    • Target will be immune to most transforming buffs and commands
  • Sweat
  • SweatLesser
  • SweatMinimum
  • Wax
    • Removes body hair


  • orccallback callbackName

Calls various internal game functions and effects.

These will clear out when the scene loads, but can be made “permanent” when called within the Chunk Space of a Lua Script.

  • appearBuff
    • After using either the hide command or Disappear buffs, use this to make the orc reappear again.
  • OrcSparkleGalaxyOverlayFiner
    • Gives your orc a smoke effect that normally appears during the fusion cutscene.
  • ghosteffecton
    • Adds a glowing blue effect, as seen on Kult
  • ghosteffectoff
    • Removes the glowing effect added via the callback above.
  • greenGlowSimple
    • Adds the glowing effect seen during fusion sequences.
  • greenGlowSimpleRemove
    • Removes above glowing effect.
  • mugshotoff
    • Turns off dialogue mugshot for this character.
  • mugshoton
    • Turns on dialogue mugshots for this character (default setting)
  • strip
    • Removes all of the target's clothing.
  • sex2diag
    • Use this command right after a sex interaction is finished when you need to continue the character's speech as normal dialogue (otherwise, continuing dialogue will result in the characters retaining the animation from the sex scene)
  • voidCameraOn
    • Turns on the “black camera” seen during orgasm and fusion
  • voidCameraOff
    • Turns off the "black camera" seen during orgasm and fusion


  • overlay overlayName

Adds a special effect on the target.

These will clear out when the scene loads, but can be made “permanent” when called within the Chunk Space of a Lua Script.

  • Tendrils1
    • Makes the genie's curse tendrils appear over the target.
  • HeadWear_GenieRubee1
    • Gives the target Eves' rune
  • HeadWear_GenieRubee2
    • Gives the target Levi's rune


The forceanim command makes the target play a specific gesture or idle animation.

This command is fairly complex as not all animation calls follow the exact same formatting, and several are divided into separate categories. When using an animation, pay close attention to the category it falls under to understand the correct format.

Note: For Armature animations, a pipe character ( | ) separates the category and the animation. There is no space between any of the keywords.

Note II: In some animations, your orc will turn their head observe another orc while the animation is playing, and this can look weird sometimes. Use the NoLookAtBody buff and set the duration for a brief amount of time (like 2.5 seconds or so) to temporarily stop this behavior.

Note III: Some animations, like Shrugging, require an extra "AdditiveExpressions" parameter. Be sure to include them when calling those commands.

NOTE IV: It is recommended you use the emote command instead, listed in the Misc Commands section.


forceanim animation


forceanim Idle animation


forceanim Gesture animation


forceanim Armature|animation

  • Dance1
  • Dance2
  • Dance4
  • Dance5
  • Dance5b
  • Floor.Lay1
  • Floor.Lay2
  • Floor.Lay3
  • Meditation
  • SmokePipe1
  • Flex1
  • Genie Summon 1
  • Glee1
  • No,AdditiveExpressions,0
  • Roar 1
  • Shrug1,AdditiveExpressions,0
  • Thumbs Up
  • Tribal Dance 1
  • Yes,AdditiveExpressions,0
  • Faint 1
  • Idle1
    • (Stops looping ainimations)
  • OrcSalute
  • OrcSalute2
  • Oww1,Expressions,0
  • Wave

CBT - Custom Bone Transforms

  • cbt bonename,scale,childbool
  • cbt bonename,scale
  • cbtrem

cbt scales a specific body part past the normal limit, at the cost of mana. These changes vanish when the profile loads, but can be made “permanent” when placed into the Chunk Space of a Lua Script.

cbtrem will clear out all modified bone scales.

bonename – The name of the bone to be scaled (case-sensitive)

scale – Multiplier between 0 and 1.5, where a value of 1 is the normal scale. Certain bones cannot be scaled under 1.

childbool (optional) – decides whether the scale will be isolated to the bonename specified, or if the scale should affect additional bones linked underneath (called the children). A value of “true” makes the scale isolated. A value of “false” will scale the bonename and its children. If this parameter is ommitted, childbool will be "false" by default.

All available bone names are listed below:

  • alrmr
  • alrml
  • armr
  • arml
  • bicepl
  • bicepr
  • buttl
  • buttr
  • calfl
  • calfr
  • clavl
  • clavr
  • footl
  • footr
  • gen
  • head
  • lowerjaw
  • neck1
  • neck2
  • pelvis
  • shoulderl
  • shoulderr
  • spine1
  • spine2
  • spine3
  • thighl
  • thighr