How to install big-brother-bot b3 on Debian for UrT UrbanTerror 43

Autre

Quick and dirty guide on how to install big-brother-bot b3 for urbanterror.

I don’t provide assistance!

System: Debian

This is in two parts:

  1. Install
  2. Config

I will not detail how to install MySQL, Python, etc. here, check digital ocean guide:

Install

Following https://github.com/BigBrotherBot/big-brother-bot/wiki/installation and https://github.com/BigBrotherBot/big-brother-bot/wiki

Python 2.7 & PIP

MySQL or MariaDB

You can install phpMyAdmin.

setuptools

pip install setuptools

Install B3

easy_install -U b3

If you get a error with pymysql, delete it from requirements.txt

Then install it separtly with

pip install PyMySQL==0.10.1

Don’t follow the doc, it’s outdated https://bigbrotherbot-user-documentation.readthedocs.io/en/latest/getting-started/first_run.html

In doubt, check the code…

Dump Database

Dump path: b3/sql/mysql

Dump order:

  1. b3-db.sql don’t forget to change the password
  2. b3.sql (note: you need to select the database or add USE b3; in beging of all the following files)
  3. b3-update-1.10.0.sql
  4. b3-update-1.3.0.sql
  5. b3-update-1.6.0.sql
  6. b3-update-1.7.0.sql
  7. b3-update-1.8.1.sql
  8. b3-update-1.9.0.sql

Config

You need to create a config file .ini or .xml

Use a generator: https://b3configs.reactiongaming.us/ (ini export bug) or my file: config.xml.

Note I’m in Europe, so my time_zone is CET.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <settings name="b3">
    <set name="bot_name">b3</set>
    <set name="bot_prefix">^0(^2b3^0)^7:</set>
    <set name="time_format">%I:%M%p %Z %y-%m-%d</set>
    <set name="time_zone">CET</set>
    <set name="log_level">9</set>
    <set name="logfile">YOUR_LOG_PATH/b3.log</set>
    <set name="parser">iourt43</set>
    <set name="database">mysql://YOUR_DATABASE_USER:YOUR_DATABASE_PASSWORD@localhost/YOUR_DATABASE_NAME</set>
  </settings>
  <settings name="server">
    <set name="public_ip">YOUR_IP</set>
    <set name="port">YOUR_PORT</set>
    <set name="rcon_ip">127.0.0.1</set>
    <set name="rcon_password">YOUR_RCON_PASSWORD</set>
    <set name="delay">0.33</set>
    <set name="lines_per_second">50</set>
    <set name="max_line_length">80</set>
    <set name="game_log">YOUR_URT_LOG_FILE/.q3a/q3ut4/games.log</set>
    <set name="permban_with_frozensand">no</set>
    <set name="tempban_with_frozensand">no</set>
  </settings>
  <settings name="autodoc">
    <set name="type">html</set>
    <set name="maxlevel">100</set>
    <set name="destination">@conf/b3_doc.html</set>
  </settings>
  <settings name="update">
    <set name="channel">iourt43</set>
  </settings>
  <settings name="messages">
    <set name="kicked_by">$clientname^7 was kicked $reason</set>
    <set name="kicked">$clientname^7 was kicked $reason</set>
    <set name="banned_by">$clientname^7 was banned $reason</set>
    <set name="banned">$clientname^7 was banned $reason</set>
    <set name="temp_banned_by">$clientname^7 was temp banned for $banduration^7 $reason</set>
    <set name="temp_banned">$clientname^7 was temp banned for $banduration^7 $reason</set>
    <set name="unbanned_by">$clientname^7 was un-banned $reason</set>
    <set name="unbanned">$clientname^7 was un-banned $reason</set>
  </settings>
  <settings name="plugins">
    <set name="external_dir">@b3/extplugins</set>
  </settings>
<plugins>
    <plugin name="admin" config="b3/conf/plugin_admin.ini"/>
  </plugins>
</configuration>

Sometime you get an error: « plugin not found ». A quick fix: don’t use @home, @b3 or @config but a relative or absolute path.

Launch it

python ./b3_run.py -c conf.xml

I try without a conf file or with conf.xml in different place, it doesn’t work, so add -c pathToConfFile

If you need more launching options, check b3/run.py file line 254

If it works great you will get something like the screen below, otherwise check your B3 log file : b3.log

If everything is ok, launch it in screen and enjoy!

In game, don’t forget to become a SuperAdmin with: !iamgod

Hope it was usefull!


Rémi

📚 Enthusiastic learner ||| 💡 Ideator ||| ❤️ Storytelling & Innovation ||| 🎓 MIAGE