Eva - basic Defold module, designed for mobile games with meta-game. It provides a lot of additional API and systems for easier game development. It contains a lot of different modules, which can be used separately.
DISCLAIMER: Eva is not documented well, some functions can be broken. Eva is in development, so API can be changed in future versions.
It is public in educational purposes, so you can see how I do different things and use it in your own projects. I will be glad if you will use it in your projects, but I can't guarantee that it will work well.
Eva provides the foundation for your game.
Eva setup and initial configuration is quite massive, please read install instruction here
For some modules there are defined specific basic structure.
Proto Eva data description can be found here.
Google document with data example can be found here.
Rules for export can be found here (using sheets-exporter).
Otherwise, all data can be filled manually with designed structure.
Eva have defined workflow with Tiled. There is a special module for that:
What it can do?
Eva allows your to define new modules or rewrite existing one
currently not implemented
Module | Description | Status |
---|---|---|
ads | Interstitial and rewarded ads integration | ✅ |
cache | Provides any external resources cache | ❌ |
callbacks | Wrap callbacks to call it via id. Pass callbacks in messages | ✅ |
camera | In-game camera with drag, pinch and zoom | ✅ |
daily | Provides game daily bonus system | ✅ |
db | Contains all game configs, can verify it via protobuf | ✅ |
debug | Provides general debug options for eva systems | ✅ |
device | Provides utilitary device functions | ✅ |
errors | Provides lua errors handler | ❌ |
events | Eva event system | ✅ |
feature | Game system management, turn on/off and conditions for any features | ❌ |
festivals | Provides single or repeatable festivals system (halloween, weekend, etc) | ✅ |
game | Provides utilitary game functions | ✅ |
gdpr | Provides GDPR API functions | ✅ |
generator | Utilitary generator functons | ❌ |
grid | API to work with matrix field | ✅ |
hexgrid | API to work with hexagon field | ✅ |
iaps | Provides rich API above defold-iap module | ✅ |
input | Eva input system in go system | ✅ |
invoices | Eva invoices system. Delayed rewards, in-game mail, restricted time reward | ✅ |
isogrid | API to work with isometric matrix field | ✅ |
labels | Add labels to player for easier clusterization | ✅ |
lang | Eva localization module | ✅ |
migrations | Provides migrations on player's profile between game versions | ✅ |
offers | Provides game offers system | ✅ |
pathfinder | Pathfinding on any type of field (grid, isogrid, hexgrid) | ✅ |
promocode | Apply tokens and bonuses by promocode. Promocodes can be time restricted | ✅ |
proto | Protobuf module, load and provide API to work with | ✅ |
push | Notifications module | ✅ |
quests | Eva rich quests system | ✅ |
queue | Utilitary queue functions to work with sequence stuff | ❌ |
random | Utilitary random function | ❌ |
rate | "Rate us" in-game logic | ✅ |
rating | Rating utilitary functions (elo rating) | ✅ |
render | Provides different render effects and other render relative stuff | ❌ |
resources | Utilitary bundle resources function | ❌ |
saver | Provides API for save/load parts of data | ✅ |
server | Provide API to work with server | ❌ |
status | Status effects like passive or temporary bonuses | ❌ |
skill | Abilities with cast time, stacks and cooldown support | ❌ |
social | Provide API to work with social networks (facebook, google play, app center) | ❌ |
sound | Eva sound system | ✅ |
storage | Simple eva key-value persistent storage | ✅ |
tiled | Module to load map from tiled and provide API to it | ✅ |
timers | Eva timers/delayed results module | ✅ |
token | Eva general token module (any items in game) | ✅ |
trucks | Eva trucks system. It is periodic events with timers (foodtrack, traders, etc) | ✅ |
vibrate | Android/iOS vibrate module | ✅ |
utils | System utilitary functions | ✅ |
wallet | Wrap on token module, with player wallet token container | ✅ |
window | Eva windows API | ✅ |
eva.db
moduleeva.tiled
moduleMIT License, Insality
If you have any issues, questions or suggestions please create an issue or contact me: insality@gmail.com
Please support me if you like this project! It will help me keep engaged to update Defold libraries and make more useful content!