NetWrok is a Multiplayer Online Game server written in Python3.
It uses the asyncio module to provide a single threaded, asynchronous network server in the style of node.js. Clients connect via websocket and data is persisted in Postgresql, via the aiopg module.
The project goal is to create a no fuss, robust, highly efficient game server which can be deployed to a VPS or other server with minimal configuration. The API must be simple and understandable, yet flexible, adaptable, and easily extended by the backend game programmer. The database schema must be simple and easy to understand, and the network traffic must be human understandable and easy to debug.
Right now, NetWrok is considered pre-production. Not much is tested, and there could be some crazy implementations in here!
- Python >= 3.4
- aiopg: https://github.com/aio-libs/aiopg
- websockets: https://github.com/aaugustin/websockets
- PostgreSQL >= 9.3
NetWrok works with a single PostgreSQL instance, or a clustered setup.
- Digest Authentication - no plaintext passwords ever, anywhere.
- Register / Login / Reset Password / Ban / Unban / Roles
- Member Objects
- Contacts / Messaging
- Multiple Currencies / Wallet / General Ledger
- Create / Join / Leave / Say / Whisper
- Create / Join / Approve / Promote / Demote / Clan Objects
- Create / Join / Approve / Alliance Objects
- Per user arbitrary event registration, ready for your SQL reports.