An open API service indexing awesome lists of open source software.

https://github.com/inada-s/zdxsv

Gundam vs. Zeta Gundam private game server
https://github.com/inada-s/zdxsv

Last synced: 4 days ago
JSON representation

Gundam vs. Zeta Gundam private game server

Awesome Lists containing this project

README

        

zdxsv
=====
Gundam vs Zeta Gundam private game server.

The brother project [gdxsv is here](https://github.com/inada-s/gdxsv).

## Introduction

[Mobile Suit Gundam: Gundam vs. Zeta Gundam](https://en.wikipedia.org/wiki/Mobile_Suit_Gundam:_Gundam_vs._Zeta_Gundam) was released on Playstation2 December 9, 2004.
This game has online mode, but the service ended in 2011. This project aims to keep the online mode alive for fans.

There are still many unimplemented parts, and there are many problems. We appreciate your contribution.

A server is running at [zdxsv.net](https://zdxsv.net) in Japan.

## Build and Run

Just call `make` to build the executable, which requires go1.13.

`zdxsv` command uses `ZDXSV_*` environment variables. Please see `.env` file the list of available environment variables.

### Commands
- `./bin/zdxsv initdb` initializes database file.
- `./bin/zdxsv dns` serves dns server, which is used to direct the game console to your server.
- `./bin/zdxsv login` serves login webpage. Aside from this, front-end server that supports SSLv2 is required.
- `./bin/zdxsv lobby` serves lobby.
- `./bin/zdxsv battle` serves battle.

## Run with docker-compose

In order to host actually connectable server, additional services are required.
All services are configured in `docker-compose` file.

Before running docker-compose, you must prepare some file with following way.

### Initialize database
```
ZDXSV_DB_NAME=zdxsv.db ./bin/zdxsv initdb
```

### Build router binary
```
make router
```

That bahaves proxy server, which detects incomming connection is GameConsole or not, and proxy it to upstream web or legacyweb server.

### Prepare .env file
There is the .env file in the root of this repository.
You must configure these environment variables to fit your environment.

The `auto-env-local` and `auto-env-dev` scripts might help you.

### Run
In default, `docker-compose.yml` and `docker-compose.override.yml` are used and it runs as local mode which aims to serve on LAN.
When you want to server on WAN, you should use dev-server mode.

Run as local mode.
```
docker-compose up --build
```

Run as dev-server mode.
```
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up --build
```