Callback Event
Callback Event
onAutoSaveRequest
Triggered periodically by the server to request data saving. Use saveDataToServer here.
onAutoSaveRequest(function()
-- code here
end)onDiscordMessageCreateCallback
Triggered when a message is created in a linked Discord channel.
Parameters
event
onDiscordMessageCreateCallback(function(event)
-- code here
end)onEventChangedCallback
Triggered when the server-wide event changes.
Parameters
newEventIDoldEventID
onEventChangedCallback(function(newEventID, oldEventID)
-- code here
end)onPlayerActionCallback
A generic callback for various player actions, often from UI buttons. data["action"] contains the action name.
Parameters
worldplayerdata
onPlayerActionCallback(function(world, player, data)
-- code here
end)onPlayerAddFriendCallback
Triggered when a player adds another player as a friend.
Parameters
worldplayeraddedPlayer
onPlayerAddFriendCallback(function(world, player, addedPlayer)
-- code here
end)onPlayerBoostClaimCallback
Triggered when a player claims a boost.
Parameters
player
onPlayerBoostClaimCallback(function(player)
-- code here
end)onPlayerCatchFishCallback
Triggered when a player catches a fish.
Parameters
worldplayeritemIDitemCount
onPlayerCatchFishCallback(function(world, player, itemID, itemCount)
-- code here
end)onPlayerCatchGhostCallback
Triggered when a player catches a ghost.
Parameters
worldplayeritemIDitemCount
onPlayerCatchGhostCallback(function(world, player, itemID, itemCount)
-- code here
end)onPlayerCommandCallback
Handles the execution of custom slash commands. Return true if you handle the command.
Parameters
worldplayerfullCommand
onPlayerCommandCallback(function(world, player, fullCommand)
-- code here
end)onPlayerConsumableCallback
Triggered when a player uses a consumable item.
Parameters
worldplayertileclickedPlayeritemID
onPlayerConsumableCallback(function(world, player, tile, clickedPlayer, itemID)
-- code here
end)onPlayerConvertItemCallback
Triggered when a player double-taps specific items to convert them (e.g., 100 WLs to 1 DL). Return true to prevent default behavior.
Parameters
worldplayeritem_id
onPlayerConvertItemCallback(function(world, player, item_id)
-- code here
end)onPlayerCrimeCallback
Related to moderation actions or "crimes".
Parameters
worldplayeritemIDitemCount
onPlayerCrimeCallback(function(world, player, itemID, itemCount)
-- code here
end)onPlayerDeathCallback
Triggered when a player dies or respawns. isRespawn is true if the player is respawning.
Parameters
worldplayerisRespawn
onPlayerDeathCallback(function(world, player, isRespawn)
-- code here
end)onPlayerDialogCallback
Handles player interactions with dialogs. The data table contains dialog_name and buttonClicked.
Parameters
worldplayerdata
onPlayerDialogCallback(function(world, player, data)
-- code here
end)onPlayerDisconnectCallback
Triggered when a player disconnects from the server.
Parameters
player
onPlayerDisconnectCallback(function(player)
-- code here
end)onPlayerDNACallback
Triggered when a player uses a DNA Combiner.
Parameters
worldplayerresultIDresultAmount
onPlayerDNACallback(function(world, player, resultID, resultAmount)
-- code here
end)onPlayerDropCallback
Triggered when a player drops an item. Return true to prevent the drop.
Parameters
worldplayeritemIDitemCount
onPlayerDropCallback(function(world, player, itemID, itemCount)
-- code here
end)onPlayerEarnGrowtokenCallback
Triggered when a player earns a Growtoken.
Parameters
worldplayeritemCount
onPlayerEarnGrowtokenCallback(function(world, player, itemCount)
-- code here
end)onPlayerEnterDoorCallback
Triggered when a player enters a door. Return true to prevent entry.
Parameters
worldplayertargetWorldNamedoorID
onPlayerEnterDoorCallback(function(world, player, targetWorldName, doorID)
-- code here
end)onPlayerEnterWorldCallback
Triggered when a player successfully enters a world.
Parameters
worldplayer
onPlayerEnterWorldCallback(function(world, player)
-- code here
end)onPlayerEquipClothingCallback
Triggered when a player tries to equip an item. Return true to prevent equipping.
Parameters
worldplayeritemID
onPlayerEquipClothingCallback(function(world, player, itemID)
-- code here
end)onPlayerEquippedClothingCallback
Called AFTER a player successfully equips an item.
Parameters
worldplayeritem_id
onPlayerEquippedClothingCallback(function(world, player, item_id)
-- code here
end)onPlayerFirePutOutCallback
Triggered when a player extinguishes a fire.
Parameters
worldplayertile
onPlayerFirePutOutCallback(function(world, player, tile)
-- code here
end)onPlayerFirstTimeLoginCallback
Triggered only on a player's very first login to the server.
Parameters
player
onPlayerFirstTimeLoginCallback(function(player)
-- code here
end)onPlayerGeigerCallback
Triggered when a player finds something with a Geiger counter.
Parameters
worldplayeritemIDitemCount
onPlayerGeigerCallback(function(world, player, itemID, itemCount)
-- code here
end)onPlayerGemsObtainedCallback
Triggered when a player obtains gems through various actions.
Parameters
worldplayeramount
onPlayerGemsObtainedCallback(function(world, player, amount)
-- code here
end)onPlayerHarmonicCallback
Related to harmonic crystals.
Parameters
worldplayertileitemIDitemCount
onPlayerHarmonicCallback(function(world, player, tile, itemID, itemCount)
-- code here
end)onPlayerHarvestCallback
Triggered when a player harvests a tree.
Parameters
worldplayertile
onPlayerHarvestCallback(function(world, player, tile)
-- code here
end)onPlayerKillCallback
Triggered when a player kills another player (e.g., in a PVP world).
Parameters
worldplayerkilledPlayer
onPlayerKillCallback(function(world, player, killedPlayer)
-- code here
end)onPlayerLeaveWorldCallback
Triggered when a player leaves a world.
Parameters
worldplayer
onPlayerLeaveWorldCallback(function(world, player)
-- code here
end)onPlayerLevelUPCallback
Triggered when a player levels up.
Parameters
worldplayerlevelReached
onPlayerLevelUPCallback(function(world, player, levelReached)
-- code here
end)onPlayerLoginCallback
Triggered when a player logs into the server.
Parameters
player
onPlayerLoginCallback(function(player)
-- code here
end)onPlayerPickupItemCallback
Triggered when a player picks up an item. Return true to prevent the pickup.
Parameters
worldplayeritemIDitemCount
onPlayerPickupItemCallback(function(world, player, itemID, itemCount)
-- code here
end)onPlayerPlantCallback
Triggered when a player plants a seed.
Parameters
worldplayertile
onPlayerPlantCallback(function(world, player, tile)
-- code here
end)onPlayerProviderCallback
Triggered when a player receives items from a provider block.
Parameters
worldplayertileitemIDitemCount
onPlayerProviderCallback(function(world, player, tile, itemID, itemCount)
-- code here
end)onPlayerPunchNPCCallback
Triggered when a player punches an NPC.
Parameters
worldplayernpc_player
onPlayerPunchNPCCallback(function(world, player, npc_player)
-- code here
end)onPlayerPunchPlayerCallback
Triggered when a player punches another player.
Parameters
worldplayersecond_player
onPlayerPunchPlayerCallback(function(world, player, second_player)
-- code here
end)onPlayerRawPacketCallback
A very low-level callback for handling raw network packets from a player. Advanced use only.
Parameters
playerdata
onPlayerRawPacketCallback(function(player, data)
-- code here
end)onPlayerRecycleCallback
Triggered when a player recycles an item. Return true to prevent recycling.
Parameters
worldplayeritem_iditem_amountgems_earned
onPlayerRecycleCallback(function(world, player, item_id, item_amount, gems_earned)
-- code here
end)onPlayerRegisterCallback
Triggered when a player registers a new account. Useful for giving starter packs.
Parameters
worldplayer
onPlayerRegisterCallback(function(world, player)
-- code here
end)onPlayerSurgeryCallback
Triggered during a surgery action. targetPlayer is the player receiving surgery (can be nil).
Parameters
worldplayeritemIDitemCounttargetPlayer
onPlayerSurgeryCallback(function(world, player, itemID, itemCount, targetPlayer)
-- code here
end)onPlayerTick
Called every 1000ms for each online player.
Parameters
player
onPlayerTick(function(player)
-- code here
end)onPlayerTradeCallback
Triggered upon a successful trade. items1 and items2 are tables of traded items.
Parameters
worldplayer1player2items1items2
onPlayerTradeCallback(function(world, player1, player2, items1, items2)
-- code here
end)onPlayerTrainFishCallback
Called once a player has trained a fish.
Parameters
worldplayer
onPlayerTrainFishCallback(function(world, player)
-- code here
end)onPlayerTrashCallback
Triggered when a player trashes an item. Return true to prevent trashing.
Parameters
worldplayeritem_iditem_amount
onPlayerTrashCallback(function(world, player, item_id, item_amount)
-- code here
end)onPlayerUnequipClothingCallback
Triggered when a player tries to unequip an item. Return true to prevent unequipping.
Parameters
worldplayeritemID
onPlayerUnequipClothingCallback(function(world, player, itemID)
-- code here
end)onPlayerUnequippedClothingCallback
Called AFTER a player successfully unequips an item.
Parameters
worldplayeritem_id
onPlayerUnequippedClothingCallback(function(world, player, item_id)
-- code here
end)onPlayerVariantCallback
A low-level callback for handling various client packets (variants). Advanced use only.
Parameters
playervariantdelaynetID
onPlayerVariantCallback(function(player, variant, delay, netID)
-- code here
end)onPlayerWrenchCallback
Triggered when a player wrenches another player or NPC. You can check wrenchingPlayer:getType() to see if it's an NPC (e.g., type 25 for Lua-spawned NPCs).
Parameters
worldplayerwrenchingPlayer
onPlayerWrenchCallback(function(world, player, wrenchingPlayer)
-- code here
end)onPlayerXPCallback
Triggered when a player gains experience points.
Parameters
worldplayeramount
onPlayerXPCallback(function(world, player, amount)
-- code here
end)onTick
Called every 100ms on the server globally.
onTick(function()
-- code here
end)onTileBreakCallback
A generic callback for when any tile is broken.
Parameters
worldplayertile
onTileBreakCallback(function(world, player, tile)
-- code here
end)onTilePlaceCallback
Triggered when a player places a tile. Return true to prevent placement.
Parameters
worldplayertileplacingID
onTilePlaceCallback(function(world, player, tile, placingID)
-- code here
end)onTilePunchCallback
Triggered when a player punches a tile. Return true to prevent the default break action.
Parameters
worldavatartile
onTilePunchCallback(function(world, avatar, tile)
-- code here
end)onTileWrenchCallback
Triggered when a player wrenches a tile.
Parameters
worldplayertile
onTileWrenchCallback(function(world, player, tile)
-- code here
end)onWorldLoaded
Called once a world is loaded into memory.
Parameters
world
onWorldLoaded(function(world)
-- code here
end)onWorldOffloaded
Called once a world is removed from memory.
Parameters
world
onWorldOffloaded(function(world)
-- code here
end)onWorldTick
Called every 100ms for each active world.
Parameters
world
onWorldTick(function(world)
-- code here
end)