Difference between revisions of "Autopilot/ap+"
From #openttdcoop wiki
(→standard) |
(→irc) |
||
Line 36: | Line 36: | ||
features added in ap+: | features added in ap+: | ||
− | * !rcon command can now be used by channel op's (from channel or privmsg) without | + | * !rcon command can now be used by channel op's (from channel or privmsg) without rcon password (e.g. !rcon pause) |
* custom !commands (see [[#custom commands|custom !commands]] for more details) | * custom !commands (see [[#custom commands|custom !commands]] for more details) | ||
* auto-rejoin after kick | * auto-rejoin after kick |
Revision as of 17:06, 5 August 2008
Contents
ap+
about
ap+ is a branch of Autopilot - trying to not lose too many features and to provide many more. development is at version ap+ 3.0 beta (started counting after autopilot's 2.x)
license
for license information please see Autopilot#License
features
standard
features from autopilot:
- Periodic automatic server password changes
-
Implementation of max_clients, max_companies and max_spectators settings in openttd.cfg (not normally available in OpenTTD revision 6280 and earlier) - Implementation of net_frame_freq setting in openttd.cfg
- Automatic pausing of the server when the number of connected clients is below a user-defined threshold
- Greeting of players, by name, as they join the server (up to three chat lines)
- Changes behaviour of exit console command to save the game to game.sav before closing the server
- Changes behaviour of save console command to use a default of game.sav if no file is specified
- adds version and license commands to console
- adds an admin pager facility to the game
features introduced in ap+:
- callback environment (used for all !commands and callbacks)
- custom in-game !commands
- callback on client joining the game (MOTD now takes place in here and can be sent to the new client privately)
- callback on changed server password
irc
requires: tcllib features from autopilot:
- Bridging of in-game chat with IRC channel, allowing IRC users to converse with players, and vice-versa.
- Provides channel and privmsg commands to query the players and companies on the server
- Provides channel and privmsg commands to show server version and newgrf settings
- Provides privmsg rcon commands, allowing IRC users with the rcon password to control the server
- Provides channel and privmsg commands allowing IRC users to learn the current password
- Supports CTCP VERSION and can identify to IRC services
features added in ap+:
- !rcon command can now be used by channel op's (from channel or privmsg) without rcon password (e.g. !rcon pause)
- custom !commands (see custom !commands for more details)
- auto-rejoin after kick
- !leave command (leave the channel, make bot rejoin with /invite)
features planed for ap+:
- capture console output and return to the command issueing irc client
- private chat between irc client and game client
mysql
unchanged, see Autopilot#MySQL module
signals
requires tclx ap+ provides kill signal catching and sourcing files from autopilot/signals/ appropriately please note that not all os's support all the signals that ap+ has support for. ap+ will filter the unsupported signals out of the list and output a warning. bin/ap-signal.sh links the kill signals to actions their respective signal tcl script performes (making it easier to determin what signal to send) (e.g. bin/ap-signal.sh IRC_QUIT will disconnect form the irc server)
custom commands
the custom !commands from irc currently (please not that this will change soon) have following available variables / procedures:
[who]
(string) returns the name of the nick that called on irc
[target]
(string) where was the message picked up from
::ap::say::everywhere "message"
send a message to the game / irc / mysql (if loaded of course)
::mod_irc::say::reply $isPrivate [who] "message"
reply in the same manor the server has been addressed (public chat / privmsg)
::mod_irc::say::public [who] "message"
say publicly to the channel, and highlight the client that addressed the server
::mod_irc::say::public "message"
just send a message to the irc channel
::mod_irc::say::private [who] message
send a privmsg to an irc client
::mod_irc::nickIsOp [who]
(bool) check if [who] is a channel op
::mod_irc::chatIsPrivate [target]
(boolean) true if we have been addressed in a privmsg
::ap::game::console "command\r"
execute a console command (please not the \r at the end of each command to issue)
::ap::game::pause and ::ap::game::unpause
pause / unpause the game
::ap::game::save [<name>]
save the game (default to game.sav, optionally specify a name)
as i am working on a cleaner callback environment please note that these details are bound to change / expand
svn
svn co http://svn.openttdcoop.org/tools/autopilot/branches/ap+