[Jeu] EvolOnline.
1) Répertoire de travail :
[~] ➔ mkdir -p JEUX/EVOL [~] ➔ cd JEUX/EVOL/
2) Téléchargement du code source :
[~/JEUX/EVOL] ➔ git clone git@gitlab.com:evol/evol-all.git [~/JEUX/EVOL] ➔ cd evol-all/ [~/JEUX/EVOL/evol-all (master)] ➔
Remarque : Veillez créer une clé ssh et la transférer dans votre compte Gitlab.
3) Configuration de l’installation du serveur :
[~/JEUX/EVOL/evol-all (master)] ➔ ./init.sh local [~/JEUX/EVOL/evol-all (master)] ➔ cd tools/localserver/ [~/JEUX/EVOL/evol-all/tools/localserver (master)] ➔ ./installconfigs.sh
4) Compilation du serveur :
[~/JEUX/EVOL/evol-all/tools/localserver (master)] ➔ mkdir ../../server-plugin/build/ [~/JEUX/EVOL/evol-all/tools/localserver (master)] ➔ ./build.sh
Si la version de gcc est < à 4.8 :
[~/JEUX/EVOL/evol-all/tools/localserver (master)] ➔ ./build.sh old
Erreur :
CC skill.c In file included from skill.c:41:0: skill.c: In function ‘skill_graffitiremover’: ../common/nullpo.h:43:29: error: invalid operands to binary != (have ‘va_list’ and ‘v
Solution :
Ouvrir :
~/JEUX/EVOL/evol-all/server-code/src/map/skill.c
Chercher :
int skill_graffitiremover (struct block_list *bl, va_list ap) { struct skill_unit *su=NULL; nullpo_ret(bl); nullpo_ret(ap);
Remplacer par :
int skill_graffitiremover (struct block_list *bl, va_list ap) { struct skill_unit *su=NULL; //nullpo_ret(bl); //nullpo_ret(ap);
Chercher :
int skill_detonator(struct block_list *bl, va_list ap) { struct skill_unit *su=NULL; struct block_list *src; int unit_id; nullpo_ret(bl); nullpo_ret(ap);
Remplacer par :
int skill_detonator(struct block_list *bl, va_list ap) { struct skill_unit *su=NULL; struct block_list *src; int unit_id; //nullpo_ret(bl); //nullpo_ret(ap);
Erreur :
../../src/map/clif.c:151:9: error: 'for' loop initial declarations are only allowed in C99 or C11 mode for (int f = 23; f > 1; f --)
Ouvrir :
~/JEUX/EVOL/evol-all/server-code/src/evol/src/map/clif.c
Chercher :
memcpy(tmpBuf, md->name, 24); tmpBuf[24] = 0; for (int f = 23; f > 1; f --)
Remplacer par :
tmpBuf[24] = 0; int f; for (f = 23; f > 1; f --)
Chercher :
for (int f = 0; f < 24; f ++) { if (*ptr == ' ')
Remplacer par :
for (f = 0; f < 24; f ++) { if (*ptr == ' ')
5) Initialisation de la base de donnée :
[~/JEUX/EVOL/evol-all/tools/localserver (master)] ➔ ./initdb.sh Creating db and user... Enter mysql root password: Enter password:Creating tables...
6) Lancement du serveur :
[~/JEUX/EVOL/evol-all/tools/localserver (master)] ➔ cd ~/JEUX/EVOL/evol-all/server-data/ [~/JEUX/EVOL/evol-all/server-data (master)] ➔ [~/JEUX/EVOL/evol-all/server-data (master)] ➔ ./login-server [~/JEUX/EVOL/evol-all/server-data (master)] ➔ ./char-server [~/JEUX/EVOL/evol-all/server-data (master)] ➔ ./map-server
7) Téléchargement du client :
[~/JEUX/EVOL/evol-all/server-data (master)] ➔ cd .. [~/JEUX/EVOL/evol-all (master)] ➔ ./init.sh client [~/JEUX/EVOL/evol-all (master)] ➔ ./init.sh music [~/JEUX/EVOL/evol-all (master)] ➔ ./init.sh manaplus
8) Compilation :
[~/JEUX/EVOL/evol-all (master)] ➔ cd manaplus/ [~/JEUX/EVOL/evol-all/manaplus (master)] ➔ ./build.sh
Erreur :
./net/ea/playerhandler.h:62:35: error: ‘INT_MAX’ was not declared in this scope static const int NoStat = INT_MAX;
Ouvrir :
./src/net/ea/playerhandler.h
Chercher :
static const int NoStat = INT_MAX;
Remplacer par :
static const int NoStat = 10;
Remarque : 10 est une valeur que j'ai mis au "hasard". Rechercher la vrai valeur dans la code.
9) Lancement du client :
[~/JEUX/EVOL/evol-all/manaplus (master)⚡] ➔ cd ../tools/manaplus/ [~/JEUX/EVOL/evol-all/tools/manaplus (master)] ➔ ./connect_local_server.sh
10) Connexion au serveur :
Type : evol2
11) Capture d'écran :
12) Lien :
http://wiki.evolonline.org/guidelines/firstdevstep
Comments are closed, but trackbacks and pingbacks are open.