• Stars
    star
    104
  • Rank 329,439 (Top 7 %)
  • Language
    C#
  • Created almost 3 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Official server for Super Mario Odyssey: Online

Super Mario Odyssey: Online Server

The official server for the Super Mario Odyssey: Online mod.

Windows Setup

  1. Download latest build from Releases
  2. Run Server.exe
  3. settings.json is autogenerated in step 2, modify it however you'd like.

Building (Mac/Linux Setup)

Must have the .NET 6 SDK and Git installed. Run these commands in your shell:

git clone https://github.com/Sanae6/SmoOnlineServer
cd SmoOnlineServer
# replace run with build to only build the server
dotnet run --project Server/Server.csproj -c Release

If you ran dotnet build instead of dotnet run, you can find the binary at Server/bin/net6.0/Release/Server.exe

Running under systemd

If you have systemd, you can use the existing systemd serivce.

cp smo.serivce /etc/systemd/system/smo.service
# edit ExecStart to your path for the server executable and change WorkingDirectory to the server directory
chmod +x filepath to the server executable
systemctl enable --now smo.service
# for TTY access i would recommand conspy but there is also reptyr, chvt

Run docker image

If you have docker on your system, you can use the existing docker image. That way you don't have to build this server yourself or manually handle executables.

docker  run  --rm  -it  -p 1027:1027  -v "/$PWD/data/://data/"  ghcr.io/sanae6/smo-online-server
# on Windows, depending on the shell you're using, $PWD might not work. Use an absolute path instead.

To always check for and use the latest server version you can add --pull=always to the options.

Alternatively there's a docker-compose.yml for docker-compose to simplify the command line options:

# update server
docker-compose pull

# start server
docker-compose up -d

# open the server cli
docker attach `docker-compose ps -q` --sig-proxy=false

# watch server logs
docker-compose logs --tail=20 --follow

# stop server
docker-compose stop

Commands

Run help to get what commands are available in the server console. Run the loadsettings command in the console to update the settings without restarting. Server address and port will require a server restart, but everything else should update when you run loadsettings.

Settings

Server

Address: the ip address of the server, default: 0.0.0.0 # this shouldn't be changed
Port: the port of the server, default 1027
Maxplayers: the max amount of players that can join, default: 8
Flip: flips the player upside down, defaults: enabled: true, pov: both
Scenario: sync's scenario's for all players on the server, default: false
Banlist: banned people are unable to join the server, default: false
PersistShines/Moons: Allows the server to remember moon progress across crashes/restarts

Discord

Note: Token and LogChannel needs to a string puts "" around it
Token: the token of the bot you want to load into, default: null
Prefix: the bot prefix to be used, default: $
LogChannel: logs the server console to that channel, default: null

More Repositories

1

Exlaunch.NET

Horribly incomplete C#-based Switch game modding framework
C#
16
star
2

denomira

A Deno module for parsing Among Us packets.
TypeScript
5
star
3

TaikoDiscordRPC

Discord Rich Presence mod for Taiko: TDM
C#
5
star
4

FreeLocalSaves

taiko local saves bepinex plugin, also see Repflez/TaikoModStuff and Fluto/TaikoMods
C#
4
star
5

announce

(Depreciated) An Among Us announcement server implementation written in Rust.
Rust
3
star
6

sanae-desktop

A replacement for the Windows Shell (explorer.exe)
JavaScript
3
star
7

example-discord-rpc-js

A sort of example for discord-rpc rich presence that I made in literal minutes
JavaScript
3
star
8

Monika2

It's Monika, but made in Rust instead of Python!
Rust
3
star
9

rabbit-patcher

A patching tool for Oh Jeez, Oh No, My Rabbits Are Gone, mainly used for adding speedrun improvement patches
C#
2
star
10

among-rs

Among Us protocol implemented in Rust
Rust
2
star
11

nca-header-dec-plus

Decrypt NCA headers using native bindings and more...
Rust
2
star
12

kissnitrogoodbye

Bans anyone who sends a message with a nitro url in it
JavaScript
2
star
13

ImperishableNight

Reimplementation of Imperishable Night's engine in C#
C#
2
star
14

GMPatch

Bootstrap app for booting and patching GameMaker Studio 2
C#
2
star
15

langserver-client

A Language Server Protocol client written in Node.js
2
star
16

moomoo-unpack

An unpacker for the moomoo.io javascript webpack.
JavaScript
2
star
17

exlaunch-cmake-smo

C++
2
star
18

swbd

A small desktop that uses Electron
JavaScript
2
star
19

sys-imgui

C++
1
star
20

SanaeGame

I'm learning OpenGL & GLFW and that's what this is for
C++
1
star
21

SmoCelesteGen

Celste in mario
C#
1
star
22

SequenceResearch

C++
1
star
23

HakoniwaByml

shitty byml parser and writer
C#
1
star
24

TinyYaz0

Teensy tiny very large yaz0 compressor/decompressor
C#
1
star
25

boxy-worlds-server

The server for Box Worlds, a game made for a game design class.
JavaScript
1
star
26

SanaeDanmakuEngine

A game engine meant for the loading and playing of Processing based scripts.
Java
1
star
27

fluffy-rotary-phone

A work in progress Lua based game engine.
C++
1
star
28

exlaunch-smo-online

another attempt to port smoo to exlaunch
C++
1
star