juce / fiveserver

Open-Source network server for PES5 and PES6 families of the game
https://sites.google.com/site/fiveservercom/home
BSD 2-Clause "Simplified" License
38 stars 17 forks source link

Fiveserver

Copyright (C) 2011-2021 juce and reddwarf License: BSD-style

ABOUT

Fiveserver is a pure-Python implementation of network server for the following games:

Pro Evolution Soccer 5 Winning Eleven 9 Winning Eleven 9 Liveware Evolution Pro Evolution Soccer 6 Winning Eleven 2007

Notable features:

INSTALL

The following two-step installation sequence should work as is on any Unix OS, such as Linux (any flavour), FreeBSD or Mac OSX. If you are using Windows, then it is recommended that you download a pre-built Windows-specific package from http://sites.google.com/site/fiveservercom/

  1. Python 3 and dependencies If you are on modern Debian or Ubuntu Linux then this should install everything you need:

    sudo apt-get -y update sudo apt-get install libmysqlclient-dev python3 python3-venv python3-dev gcc make

Otherwise, you will need to use your OS tools to install:

* Python 3
* libmysqlclient.
* gcc or clang
* make
  1. Return to fiveserver source directory and install Python environment and packages by issuing this command (as yourself, not root):

    make install

This will create an isolated Python environment and install all Python packages needed to run Fiveserver/Sixserver

CONFIGURE MYSQL DATABASES

The following instructions assume that you can use a command-line mysql client utility to connect to your MySQL server with a root account.

For Fiveserver (PES5/WE9/WE9LE), you will need to create a database and grant appropriate permissions. If you use default database name and login/password (you can change all of those in ./etc/conf/fiveserver.yaml), then it would be this:

create database fiveserver;
create user 'fiveserver'@'%' identified by 'we9le';
grant select, insert, update on sixserver.* to 'fiveserver'@'%';
use fiveserver;
source ./sql/schema.sql

For Sixserver (PES6/WE2007), you will need to create a database and grant appropriate permissions. If you use default database name and login/password (you can change all of those in ./etc/conf/sixserver.yaml), then it would be this:

create database sixserver;
create user 'sixserver'@'%' identified by 'proevo';
grant select, insert, update on sixserver.* to 'sixserver'@'%';
use sixserver;
source ./sql/schema6.sql

USAGE

The service.sh script can be used to run both services (fiveserver and sixserver) or to launch them in the background. Just run the script without any arguments to see all available options:

./service.sh 
Usage ./service.sh {fiveserver|sixserver} {run|start|stop|status}

For example, to start fiveserver service, you would do:

./service.sh fiveserver start