wiki:Hooks

Version 15 (modified by Alloc, 5 years ago) (diff)

--

Hooks are a way to add additional behaviour to the scripts. They are basically custom scripts that are called upon specific events. For example one could define a hook which is called on player connects and then send a message in the in-game chat to greet the new player.

All hooks have to executable files in SDTD_BASE/hooks/<name of hook>/<any name>.sh. The folder <name of hook> has to be in exactly the same case as the hook name column in the table below shows it.

If you want to use the functions of the management scripts in your hook you can add this to the start of your script:

#!/bin/bash
. /usr/local/lib/7dtd/common.sh

An example can be found in the greet.sh hook for playerConnect. Note that you have to use Bash as interpreter for your script if you want to use the script functions!

An example on how to use PHP for hooks can be found on the forum.

If you think a hook for another event could be interesting please create a ticket or contact me.

Currently the following hooks are defined:

Hook name

Called on event

Passed parameters

Examples

playerConnect

After a player has connected

  1. Instance name
  2. Player ID
  3. Entity ID
  4. Nickname
  5. Steam ID
  6. Client IP

playerDisconnect

After a player has disconnected

serverPreStart

Before an instance is started

  1. Instance name

serverPostStart

After an instance was started

serverPreStop

Before an instance is stopped

serverPostStop

After an instance was stopped

backup

After a backup was created

  1. Path of new backup folder

chat

After message was sent in the chat

  1. Instance name
  2. Message including player name

remoteCommand

After a command was executed from a client

  1. Instance name
  2. Executed command
  3. Player name

telnetCommand

After a command was executed from a telnet session

  1. Instance name
  2. Executed command
  3. Client IP

Attachments (3)

Download all attachments as: .zip