Stepmania Online est à l’orignie une modification de Stepmania permettant de jouer en réseau. Au fur et a mesure, cette modification fut incluse dans le jeu. Voici comment installer un serveur SMO.

Pour info, l’installation suivante a été réalisé sous Ubuntu 8.10 avec une installation de base. Je n’ai pas testé d’autres distributions, ni même avec Cygwin.

Avant de se lancer dans l’installation, il est nécessaire d’avoir les éléments suivants :

  • Les sources du serveur (Le dernier tarball peut être obtenu ici : http://smonline.svn.sourceforge.net…)
  • Les packages supplémentaires suivants :
    • g++-4.2
    • litool
    • libmysql-dev
    • libxml2-dev
    • libboost-regex-dev
    • automake
    • autoconf

Il faut obligatoirement utiliser g++-4.2. la version 4.3 ayant eu des modifications au niveau des headers rend la compilation impossible sans modification.

Allez dans le dossier ou vous avez télécharger le tarball et décompressez son contenu

tar xzvf SMOnline2.tar.gz

Entrez ensuite dans le dossier SMOnline2 et modifiez les droits du fichier autogen.sh en 777

chmod 777 autogen.sh

Lancez ensuite ce script avec sudo (pour Ububtu) afin de générer le fichiers configure

sudo ./autogen.sh

Lancez ensuite la configuration

sudo ./configure CXX=g++-4.2

Puis la compilation

sudo make

Vous pouvez ensuite, si vous le voulez, installer le binaire dans le dossier /usr/local/bin avec la commande

sudo make install

Enfin, vous pouvez terminer en faisant un nettoyage afin de supprimer les fichiers inutiles

sudo make clean (ou distclean pour enlever aussi les makfile/configure)

Avant de lancer le serveur, vous devez exécuter le script SQL StatsSqlTables.sql afin de créer les tables de stats nécéssaires (il ne crée pas la base). Vous devrez également créer les tables utilisateurs, soit en installant un forum phpBB, soit en exécutant ces 2 requêtes :

CREATE TABLE  `smo_forums`.`phpbb_users` (
  `user_id` int(10) NOT NULL auto_increment,
  `user_level` int(10) NOT NULL,
  `username` varchar(50) NOT NULL,
  `user_password` varchar(50) NOT NULL,
  PRIMARY KEY  (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1

CREATE TABLE  `smo_forums`.`phpbb_banlist` (
  `ban_userid` int(10) NOT NULL,
  PRIMARY KEY  (`ban_userid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1

Une fois les tables crées, il faudra modifier le fichier smoconfig.xml afin de modifier le user/password pour l’acces aux bases, ainsi que le nom des bases.

Une fois modifier, il suffit de lancer la commande

smonline2

Et le serveur se lance normalement sans erreur. A noter que le fichier smoconfig.xml doit se trouve dans le dossier où l’on lance la commande