Main Page
Gothic 1 Remake Multiplayer
G1R:MP Scripting Wiki
Build multiplayer resources and gamemodes with Lua 5.1. This wiki documents the server, client, networking, gameplay, database, and RmlUi APIs exposed by G1R:MP.
Lua 5.1 • server and client resources • authoritative gameplay • RmlUi
AVAILABLE AND IMPROVED FROM UPDATE 0.1.2
The following 29 server-side Lua functions are available from G1R:MP 0.1.2. Existing lifecycle, inventory, JSON, NPC, monster, and world-item APIs also include corrected or expanded behavior from this update.
Accounts and consumables (4): completePlayerConsumableFinalize • completePlayerConsumableUse • getPlayerAccountBindingSerial • getPlayerConsumableNames
World items (1): spawnItem — see also the World item catalog.
Monster identity, health, and combat (5): setMonsterName • setMonsterIdVisible • setMonsterMaxHealth • getMonsterAttackDamage • setMonsterAttackDamage
Monster navigation (6): setMonsterNavigationMode • setMonsterNavigationCollisionMode • setMonsterMoveGoal • stopMonsterMovement • testMonsterMove • walkMonsterTo
NPC identity and navigation (7): setNpcIdVisible • setNpcObstacleBehavior • setNpcNavigationMode • setNpcNavigationCollisionMode • setNpcMoveGoal • stopNpcMovement • testNpcMove
Custom navigation blockers (6): createAiNavigationBlocker • updateAiNavigationBlocker • setAiNavigationBlockerEnabled • destroyAiNavigationBlocker • getAiNavigationBlockerData • getAiNavigationBlockers — see NPC and monster navigation collision.
Events available from 0.1.2 (8): onNpcIdVisibilityChange • onMonsterNameChange • onMonsterIdVisibilityChange • onMonsterMoveBlocked • onMonsterMoveComplete • onNpcMoveBlocked • onNpcMoveComplete • onWorldItemDrop. Existing onPlayerJoin, onPlayerQuit, onWorldItemPickup, and onWorldItemSpawn contracts are also improved from 0.1.2.
Start here
Find the right entry point for your first resource.
Reference by execution side
Check where a function is available before using it.
Gameplay
Scripting systems
Your first server script
The following example welcomes a joining player and places them at an authoritative spawn point:
addEventHandler("onPlayerJoin", root, function(playerId)
setPlayerName(playerId, "Newcomer")
spawnPlayer(playerId, 12.0, 24.0, 2.0, 90)
outputChatBox("Welcome to G1R:MP!", playerId, 225, 195, 110)
end)
See onPlayerJoin, addEventHandler, setPlayerName, spawnPlayer, and outputChatBox for parameter details and additional examples.
Documentation status
The reference contains 236 Lua functions from earlier releases plus 29 functions introduced in update 0.1.2. It also contains 80 events from earlier releases plus 8 events introduced in update 0.1.2. Selected existing pages carry an improved from 0.1.2 marker where their contract changed. See Lua API catalogs for validated skin, monster, equipment, progression, and gameplay keys. APIs marked experimental have validated contracts but may still change while the multiplayer runtime is under active development.