https://github.com/tarnadas/net64plus-server
https://github.com/tarnadas/net64plus-server
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/tarnadas/net64plus-server
- Owner: Tarnadas
- License: mit
- Created: 2018-05-05T14:22:23.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2022-12-09T08:47:49.000Z (over 3 years ago)
- Last Synced: 2025-03-19T23:55:14.506Z (about 1 year ago)
- Language: JavaScript
- Size: 4.6 MB
- Stars: 70
- Watchers: 4
- Forks: 10
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Net64+ Server
[](https://github.com/Tarnadas/net64plus-server/releases)
[](https://github.com/Tarnadas/net64plus-server/releases)
[](https://hub.docker.com/r/tarnadas/net64plus-server)
[](https://hub.docker.com/r/tarnadas/net64plus-server)
[](https://lgtm.com/projects/g/Tarnadas/net64plus)
[](https://discord.gg/GgGUKH8)
[](https://travis-ci.org/Tarnadas/net64plus-server)
[](https://coveralls.io/github/Tarnadas/net64plus-server?branch=master)
Net64 aka SM64O allows playing Super Mario 64 in an online multiplayer mode. Net64+ is the official continuation of the program and features an integrated server list.
This repository includes the dedicated server software. For the client please visit the [client repository](https://github.com/Tarnadas/net64plus).
## Server List
There is a [public server list](https://net64-mod.github.io/servers) of all Net64+ server, that have enabled listing.
## Downloads
For user servers, there is a prebuilt Windows version with a few limitations, but it is much easier to host in general.
The prebuilt version is bundled with the [Net64+ Client](https://github.com/Tarnadas/net64plus/releases), but you can also download it in the [release section](https://github.com/Tarnadas/net64plus-server/releases).
## Installation
- download and install [Node 12](https://nodejs.org/en/download/)
- you can try using a later version of Node, but you will need to install C++ compilers
- on Windows you can do the following: `npm i -g windows-build-tools` / or use `yarn global add`
- install yarn. It's a package manager for npm, which is generally faster
- `git clone` this repository or [download as zip](https://github.com/Tarnadas/net64plus-server/archive/master.zip)
- modify `settings.json`
```js
{
"port": "3678", // make sure your port is forwarded
"enableWebHook": false, // set this to true, if you want your server to be listed
"gamemode": 1, // the initial gamemode
"enableGamemodeVote": true, // whether gamemode voting should be enabled
"passwordRequired": false, // whether password is required to join this server
"name": "A Net64+ Server", // display name for public server list
"domain": "", // domain of your server for public server list. keep it empty, if you don't have a domain
"description": "The **best** Net64+ server ever\n\n:unicorn_face:", // description for public server list
"apiKey": "" // this is required, if you want your server to be listed
}
```
- (OPTIONAL) if you want your server to be listed, go to [SMMDB](https://smmdb.net), login with Google, go to profile and get your API key
- _Do not share your API key, because it gives full access to your account_
- You can only list one server per API key
- `name` will be shortened to 40 characters at most
- `description` will be shortened to 200 characters at most
- `description` supports [Markdown](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) and [emojis](https://raw.githubusercontent.com/omnidan/node-emoji/master/lib/emoji.json)
- open a terminal in the folder of your server and execute the following commands
```bash
$ yarn install
$ yarn start
```
- (OPTIONAL) if you want to run your server indefinitely with auto restarts, I suggest to use pm2
```bash
$ yarn global add pm2
$ yarn build
$ pm2 start ./dist --name="net64 server"
```
## Docker
You can also pull [Net64+ Server from Docker Hub](https://hub.docker.com/r/tarnadas/net64plus-server).
Make sure that [Docker is installed](https://docs.docker.com/get-docker/) and running.
Then execute the following commands:
```bash
$ docker run --rm -it -p 3678:3678 tarnadas/net64plus-server
$
$ # or run it detached in background
$ docker run --rm -it -d -p 3678:3678 tarnadas/net64plus-server
```
You will still need to port-forward in order for this to work.
The Docker Container accepts all arguments that the regular Net64+ Server executable accepts as well.
```bash
Optional arguments:
-h, --help Show this help message and exit.
--port PORT, -P PORT
--gamemode GAMEMODE, -g GAMEMODE
--disableGamemodeVote, -G
--passwordRequired, -pr
--password PASSWORD, -p PASSWORD
--name NAME, -n NAME
--domain DOMAIN, -D DOMAIN
--description DESCRIPTION, -d DESCRIPTION
--enableWebHook, -w
--apiKey APIKEY, -k APIKEY
--verbose, -v
--skipPortCheck, -s
```
An example to host a public server on port 8080:
```bash
$ docker run --rm -it -d -p 8080:8080 tarnadas/net64plus-server -P 8080 -w -k $API_KEY -n "Public Net64+ Server" -d "This is a publicly hosted Net64+ Server"
```