Skip to content

Athelios/OverDark

Repository files navigation

OverDark

WebGL multiplayer sandbox game

Install

In ability to run game server the Python 3 and Python 3 PyPI packages installer is required

Prerequisites

pip3 install -r requirements.txt

Run

Application is based on web server so after running local web server you can connect by web browser (recommended Chrome)

python3 game.py [ip, port]

E.g. python3 game.py 127.0.0.1 80 -> http://localhost

Controls

Movement = WSAD
Toolbar = Wheel
Equip Item = Alt + Left/Right Mouse
Item primary function = Mouse
Item secondary function = Shift + Mouse
Inventory = E
Chat = T
Function = F

OverDark

Project structure

Server side:

game.py - Flask server, socketio hooks
server.py - Server, player classes
generator.py - World generation
actors.py - World actors

recipes - recipes for crafting table

Client side:

static/src/Game.js - Main game class
static/src/GUI.js - GUI, inventory
static/src/Terrain.js - World, chunks and actors spawn
static/src/Worker.js - Threaded chunk geometry builder
static/src/Actors.js - Equipped items functionality

static/textures/atlas.png - Terrain blocks texture atlas

Shared:

static/assets.json - All blocks, actors and items ids, models, materials, attributes.

About

WebGL multiplayer sandbox game

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published