This README is just a quick start document. You can find more detailed documentation of Spunky Bot at https://spunkybot.de.
What is Spunky Bot?
Spunky Bot is a lightweight game server administration bot and RCON tool. Its purpose is to administer, manage and maintain an Urban Terror 4.1 / 4.2 / 4.3 server and to provide real time statistics data for players. Spunky Bot is a cross-platform package and offers in-game commands without authentication and automated administration even when no admin is online. The code of Spunky Bot is inspired by the eb2k9 bot by Shawn Haggard, which was released under the Beerware License.
If you want to know more, this is a list of selected starting points:
- Introduction to Spunky Bot
- The full list of commands
- There is much more inside the official documentation
- Lightweight and fast
- Real time game statistics
- Different user groups and levels
- Supports all RCON commands
- Supports temporary and permanent bans of players
- Supports rotation messages
- Stores all player related information in a SQLite database
- Runs 'out of the box', no other software requirements
- Urban Terror 4.1.1 / 4.2.023 / 4.3.4
- Python 2.6 / 2.7
- SQLite 3 database
- Cross-platform (tested on Debian 6 - 10, Ubuntu 10.04 - 20.04, CentOS 6 / 7, macOS 10.13, Windows 7 / 10)
- Supporting 32-bit and 64-bit operating systems
It's easy to get started with Spunky Bot:
- Modify the Urban Terror server config file as follows:
seta g_logsync "1" seta g_loghits "1" seta g_friendlyfire "2"
- Restart your Urban Terror server
- Modify the Spunky Bot configuration file
/conf/settings.confand set game server port and RCON password
- In-game displayed rules/advertisements are contained in the file
- If you do not want to display the rotation messages, set the value
show_rules=0in the config file
- Run the application manually:
- Or use the provided systemd or sysVinit script to run Spunky Bot as daemon
First start instruction:
- Connect to your game server and type
!iamgodin the global chat to get the admin level "Head Admin". This command is only once available.
You can find all details in the latest documentation.
The description of all available commands as well as the admin levels and rights is located under the subfolder
You can keep up-to-date with the changes that we have made via our releases page.
Spunky Bot is currently maintained under the Semantic Versioning guidelines. Releases will be numbered with the following format:
For additional information, visit the Spunky Bot website at https://www.spunkybot.de.
If you have any questions about Spunky Bot or need help, please use the mailing list.
- Joining the mailing list:
- Send an email to mailto:firstname.lastname@example.org
- or subscribe via web: https://groups.google.com/forum/#!forum/spunkybot/join
- Leaving the mailing list:
- Send an email to mailto:email@example.com
- or unsubscribe via web: https://groups.google.com/forum/#!forum/spunkybot/unsubscribe
- If you joined the group, you can post to this group:
- Send an email to firstname.lastname@example.org
If you have bug reports or feature suggestions, please use the issue tracker.
You can help us in different ways:
- Open an issue with suggestions for improvements
- Fork this repository and submit a pull request:
- Click the Fork button to create your personal fork
- Create your feature branch (
git checkout -b new-feature)
- Commit your changes (
git commit -am 'Add some feature')
- Push to the branch (
git push origin new-feature)
- Create a new pull request
- Improve the documentation (separate repository)
By contributing code to this project in any form, including sending a pull request via GitHub, a code fragment or patch via mail or public discussion groups, you agree to release your code under the terms of the MIT license that you can find in the LICENSE file included in this source distribution.
Please see the CONTRIBUTING guide for information regarding the contribution process.
The code of Spunky Bot is released under the MIT License. See the LICENSE file for the full license text.
Third Party Libraries
- RCON: pyquake3.py
- The library has been modified to fix some error handling issues and fulfill the PEP8 conformance. This file is released under the GNU General Public License.
- GeoIP: pygeoip.py
- The library has been extended with the list
GeoIP_country_nameto support full country names (e.g. Germany for country_code DE). This file is released under the MIT License.
- The library has been extended with the list
- GeoLite database: www.maxmind.com
- The GeoLite databases created by MaxMind are distributed under the Creative Commons Attribution-ShareAlike 4.0 International License and the MaxMind Open Data License.
- Schedule: schedule.py
- This file is released under the MIT License.
Urban Terror® and FrozenSand™ are trademarks, or registered trademarks of Frozensand Games Limited.
We really appreciate all kinds of feedback and contributions. Thanks for using and supporting Spunky Bot!