All Projects → inaka → Serpents

inaka / Serpents

Licence: apache-2.0
Multi-Player Game on top of HDP protocol

Programming Languages

erlang
1774 projects

Projects that are alternatives of or similar to Serpents

Ozz Animation
Open source c++ skeletal animation library and toolset
Stars: ✭ 1,250 (+2504.17%)
Mutual labels:  game, sse
Nanohttp
A very micro HTTP framework.
Stars: ✭ 47 (-2.08%)
Mutual labels:  rest
Zatackax
Remake of "Achtung, die Kurve!"
Stars: ✭ 42 (-12.5%)
Mutual labels:  game
Gameina
🎮 — GameINA adalah Web Portal Game yang dibuat oleh SYAUQIZAIDAN KHAIRAN KHALAF. Dilengkapi Game Market, Website Based Game dan Layanan Top-up yang dibuat untuk membantu para developer di Indonesia GameINA dibuat ditujukan agar para developer dan publisher indonesia dapat memasarkan gamenya di platform game milik negaranya sendiri.
Stars: ✭ 45 (-6.25%)
Mutual labels:  game
Clash Royale Clone
A Unity clone of Supercell's Clash of Clans spin-off mobile game Clash Royale with possibly some twists.
Stars: ✭ 43 (-10.42%)
Mutual labels:  game
Github3.py
Hi, I'm a library for interacting with GItHub's REST API in a convenient and ergonomic way. I work on Python 3.6+.
Stars: ✭ 1,029 (+2043.75%)
Mutual labels:  rest
Littleshooter2
Little shooter remake using React
Stars: ✭ 42 (-12.5%)
Mutual labels:  game
Crsfml Examples
Simple games made with CrSFML
Stars: ✭ 47 (-2.08%)
Mutual labels:  game
Pocket Island
Stars: ✭ 1,032 (+2050%)
Mutual labels:  game
Forgottenserver
A free and open-source MMORPG server emulator written in C++
Stars: ✭ 1,024 (+2033.33%)
Mutual labels:  game
Dito
Dito.js is a declarative and modern web framework with a focus on API driven development, based on Objection.js, Koa.js and Vue.js – Released in 2018 under the MIT license, with support by Lineto.com
Stars: ✭ 44 (-8.33%)
Mutual labels:  rest
Knights province
Knights Province missions and wiki.
Stars: ✭ 43 (-10.42%)
Mutual labels:  game
Yii2 Nested Rest
Nested routing support to the Yii RESTful API framework
Stars: ✭ 45 (-6.25%)
Mutual labels:  rest
Shudan
A highly customizable, low-level Preact Goban component.
Stars: ✭ 43 (-10.42%)
Mutual labels:  game
Opentomb
An open-source Tomb Raider 1-5 engine remake
Stars: ✭ 1,035 (+2056.25%)
Mutual labels:  game
Tank island
Top down 2D shooter game that involves blowing up tanks
Stars: ✭ 42 (-12.5%)
Mutual labels:  game
Tft Overlay Outdated
TFT Overlay - Team and item builder for League of Legends Teamfight Tactics
Stars: ✭ 44 (-8.33%)
Mutual labels:  game
Vainglory Assets
Community provided art, schemas, and other assets that make using the Vainglory API easier
Stars: ✭ 45 (-6.25%)
Mutual labels:  game
Go Restful Api
An idiomatic Go REST API starter kit (boilerplate) following SOLID principles and Clean Architecture
Stars: ✭ 1,043 (+2072.92%)
Mutual labels:  rest
Quilly S Adventure
A little adventure game written in Kotlin using LibGDX,LibKTX,Box2D and Ashley
Stars: ✭ 47 (-2.08%)
Mutual labels:  game

Serpents

Multi-Player Game on top of HDP protocol or REST+SSE

Introduction

Serpents is the classic snakes game where each player controls a serpent that moves around a board. When the serpent eats a fruit it grows according to how much food the fruit provides. If the serpent hits anything but a fruit (being that a wall, another serpent or even its own body) the serpent dies.

The Server

This repo provides the game server. Players should write their clients on their own (and that is part of the game). To do that they can use one of two protocols:

  • HTTP: A RESTful API with an additional SSE endpoint for updates
  • HDP: An UDP based protocol

To start the server, run

$ rebar3 compile && rebar3 shell

Or you can generate a release with rebar3 release and then start it

$ ./_build/default/rel/serpents/bin/serpents start

The Website

Once the server is started you can open http://localhost:8585 and start creating and watching games.

Player Examples

If you don't know where to start in order to write your serpents client, you can check the sample clients provided in the src/clients folder. There are 2 clients there:

  • ai: An collection of automatic clients that connect to a game and automatically move the serpents according to their algorithms
  • wx: An interactive client built on top of wx

Contact Us

If you find any bugs or have a problem while using this project, please open an issue in this repo (or a pull request :)).

And you can check all of our open-source projects at inaka.github.io

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].