UniSpy is a GameSpy Project that aims to create GameSpy services.
The server is written in python and is inspired by the old OpenSpy project.
See the wiki for more information about project and the UniSpy Server. You can also use our Software Development Kit to create games or learn about the UniSpySDK.
Technical papers and documentation about the GameSpy protocol and the games that use it, GameSpyDocs.
- The contributors of the project
- Luigi Auriemma for his gamespy papers that were used as a reference
- BattleSpy for their library, that we used as a base for UniSpy
- NetCoreServer for their TCP and UDP server
This project is licensed under the GNU Affero General Public License v3.0.
- The vscode extensions for C# development is become more and more hard to use, and microsoft abandoned the open-source OmniSharp project and replacing it with it's own closed source language server.
- The c# project seems hard to run by users, it require a lot of deploy knowledge and hard for collaborations, for the future of the gamespy emulator, I choose to rewrite this into a opensource and easy high level language - python.
- Run
docker network create unispyto setup a network for unispy - Run
docker build -f Dockerfile -t unispy-python .to build the docker image used for compose services - Run
docker compose -f docker-compose-unispy-env.yml up -dto setup postgresql and redis - Run
export UNISPY_CONFIG='<path of config.json>'to setup env config file path, remember replace symbol<path of config.json>with config file path (This is optional, if not config env the program will read the config file in common folder by default)
- Open with local vscode:
- Use vscode to open the src folder in devcontainer (make sure your vscode have devcontainer extension)
- Run
pip install -r requirements.txtto install the pip packages
- Open with github codespace:
- Github codespace vscode web can not install devcontainer, the project can not running in docker network
unispy. Therefore, replacehttp://unispy_backends:8080tohttp://localhost:8080andunispy_postgresql,unispy_redistolocalhostin config.json to use localhost postgres and redis in docker (we already setup in docker-compose-unispy-env.yml)
- Github codespace vscode web can not install devcontainer, the project can not running in docker network
