The engine offers an easy way to create videogames. Desing rol games, platforms, arcade and much more...using the multiple engine features or adding new ones if you have some C# programming knowledge.
You could create the games using the levels editor or programming new or custom features using the libraries included in the engine, without programming the game bases from zero.
This project is currently in the developing phase. Most of the features are already developed, others will be developed soon. Some of the features will be developed depending on the reach of the project in the future and the users needs.
The engine will include this features, some of them are already implemented, others will be implemented soon Nuestro motor se desarrollará con las siguientes características, algunas de ellas ya están implementadas, otras se implementarán en el futuro
Create game objects with graphics, sound effects and movement. Then they will be added to a level where they will interact with the other game objects following the physics mecanics, collisions, checkpoints, etc.
Background music and sound effects can be added to each game event.
Load png, jpeg or gif images for creating the backgrounds, characters, game objects...The engine provides an easy way to create sprites, selecting the orientation and the sprite action. The grid system allows the edit and selection of each sprite once the image is loaded. For defining the sprites from the base image, you must selected the grid rows and columns number, and the sprites will be cutted out. After that you must edit each sprite defining its orientation and action associated and its duration.
Been able to create games based on real images opens up a world of possibilities. Try to create a game with friends or family pictures, it could be an amazing gift.
The engine is ready to create multiplayer games connecting the game players to a server. You must select the data that will be sent through the network, to maintain the server updated but without increasing too much the network load and subsequently the delay.
The options of reconnection in case of connection loss and the dynamic access to game rooms will be available soon. Several players could access simultaneously to the game rooms, and the players could be replaced in case any left the room.
Add any game resource in the appropriate language. The game detects automatically the language of the system where is being executed and it will show the resources associated to that language. The language could also be changed in a menu.
Create custom menus for the user to save the game, to change the settings...The engine also provides a system to create inventory menus, to shop, to equip objets. So the player could play in an intuitive and comfortable way.
Choose the game saving mode. It could be saved automatically or based on level checkpoints or through the menus.
You could also see the saved games and load one of them.
Simple abilities system for assigning different abilities to characters, creatures, objects... The engine also includes the possibility of generating spells, automatically or through commands. The commands could be assigned to a specified input or be activated through events or artificial intelligence.
Design amazing backgrounds setting a different visual scrolling speed to each other, getting great background effects and more realistic games.
Add to the game objects artificial intelligence components that will produce behaviours based on other objects functionality.
System for searching optimal and adaptative strategies, with a learning system based on the enemy strategies. The Nash equilibrium could be reached where the A.I would adapt its behaviour analyizing the players strategy.
Path Finding system developed, the characters will move following the shortest path when a path calculation will be needed.
A balanced system is included to help the check of the available strategies and see if they could be used.
A level could be complemented with texts and images. Character names, statistics shown with graphics or text, scores, messages shown during the game...
The game statistics could be general, such as the score of the whole team, the gold, the elapsed time... The statistics could also belong to a character: life, mana, experience...With the customizable HUD system provided we could chose the shown statistics for each level. The messages could also be customized when the character evolves or reaches a specified checkpoint.
Tooltips could alse been added to any object, helping the player to understand the game in a tutorial or during the game.
You could equip any character, improving its statistics. Choose the objects that will be shown with the character and their position relative to the character. You could modify your characters with many equip possibilites, wapons, shields, vehicles improvements...
The game automatically adapts to the resolution screen, you don't have to choose the resolution manually, although it could have resolution adjust options in the future. With the camera system you could choose the region of the game that will be shown.
You could desing your games for being used with multiple input devices. From the common pc input devices such as the keyboard and the mouse. to compatible gamepads, touch screens, even the RealSense camera.
The levels editor has integrated support for the RealSense camera, making easy to assign gestures to the actions in the game.
In addition the commands could be reassigned to the different input devices, depending on the device where the game will be executed or the availability of those controls.
The engine uses the Monogame technology, which allows the game export to multiple platforms, based on the same native code, so the created games will be working on several platforms: PC, XBOX, Linux, Windows Phone 8, Web, Android*, IOS*, MacOS*
*For the games could be deployed in Android, IOS and MacOS it's needed to use Xamarin, licensing required.
Add the game objects and specify its appereance probability in the generated level. You can add fixed game objects, such as the character, or the background. The rest of characters could be random objects like any other additional backgrounds or objects that interact with the character, even the enemies.
You just have to specify where the objects would appear and their appeareance probability, and after setting up those parameters, each time the level will be loaded different results will be obtained. This won't affect the saved games, the random level load will happen just the first time a level is loaded.
This will allow, for example, a Roguelike game creation, due to the random maps creation.
If you want to design a turn based game, with team combats, turns based strategy games, RPGs... The engine provides a turns system and you only must add this functionality to you game.
Each game object could be in a state: idle, walking, attacking, etc. Through a simple states diagram you could define the valid transitions from one state to another and the command that triggers that transition.
For instance in the diagram you could set that a character goes from the idle state to the walking state through the walking command triggered by a specific key. When the key is not pressed the character will return to the idle state. The states design its made in a very intuintive way.
The advanced users with .NET and C# programming knowledge could develop improvements for their games based on the already existent functionalities of the engine.
In addition to the existing mechanics the users could program custom mechanics. And we would like that this new mechanics could be shared and/or sold in a common market. With some C# programming knowledge you could create new mechanics for the games created with the engine. These could be shared with the others users, increasing the number of videogames that could be created.