ProductPromotion
Logo

Elixir

made by https://0x3d.site

GitHub - entice/entice: Docs for the entice project
Docs for the entice project. Contribute to entice/entice development by creating an account on GitHub.
Visit Site

GitHub - entice/entice: Docs for the entice project

GitHub - entice/entice: Docs for the entice project

Entice

The MMORPG implementation

The distributed entity-component-system framework

Project

This aims to create a game-server & client-modification for a popular MMO (can you guess which one? :P). You can find more information on how it works in the subprojects of entice. If you're interested in using the API, you can find the complete documentation here in this repository.

  • Milestones - These define the features we implemented and are working on
  • Routes - The public & secured HTTP API for the server
  • Topics - The secured Websocket API for the server as an overview. This is the place to start when you are looking for how things of this server work internally (API wise).
  • FAQ & Known Bugs - Common questions and bugs that we encountered but could not fix or only work-around

Overview

The client is a middle-man between the server and its API and the actual game-client. It modifies the latter ones behaviour and encapsulates it in a way that all the game-client 'sees' of the world is this modified environment. Every network communication is intercepted and reacted upon in this layer. This provides the benefit for the server to use an entirely different protocol, and for the client to crash less often since yet unimplemented behaviour of the server can be simulated in this layer.

The web project provides an HTTP/Websocket access point for any API consumer (mainly the client layer) and communicates both with the database and the entity system. This provides every player with her own view of the ingame world.

The logic project aims to provide a boilerplate-less code base for the actual gameplay components that the web project provides access to and the client uses. This is a consumer of the bare entity-framework that lies underneath.

The entity project provides a rather universial implementation of a distributed entity-component-system, which comes in the shape of so called entities, attributes and behaviours. Attributes and behaviours are in contrast to components and systems process-local copies of their counterparts. This design works especially well in a highly parallel environment.

The skill project provides implementation for the wide range of in-game skills the players can use. (This might become part of the logic project in the future)

The utils project provides, as the name suggests, utility functionality for the server. Very universial and unspecific components that are used in the other server projects reside here.

Collaboration

Fork any entice repo, change whatever you would like to and create a pull-request. Any help is much appreciated, and if you want to get in touch with us, we're idling on irc.rizon.net #gwlpr.

License

The WTFPL. Also please check the LICENSE documents that come with the different repositories for other licenses.


       DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
                   Version 2, December 2004

Copyright (C) 2004 Sam Hocevar <[email protected]>

Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.

           DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
  TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

 0. You just DO WHAT THE FUCK YOU WANT TO.


Articles
to learn more about the elixir concepts.

Resources
which are currently available to browse on.

mail [email protected] to add your project or resources here 🔥.

FAQ's
to know more about the topic.

mail [email protected] to add your project or resources here 🔥.

Queries
or most google FAQ's about Elixir.

mail [email protected] to add more queries here 🔍.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory