--------------------
EEDevTools
A set of development tools for the Esenthel Engine.
Wiki
Download
Overview:
EEDevTools is a set of development tools for the Esenthel Engine. Currently, four tools are available: a developer's console, an events system (deprecated), a project creator, and the brand new tool, Luabind Generator.
Tools:
Last Updated: 1/12/12
--------------------
Luabind Generator:
Luabind Generator is a tool which wraps nearly the entire Esenthel Engine automatically for you by processing the C++ header files of the engine and outputting the Luabind-equivalent code, allowing you to use (most of) the engine through Lua scripts.
Boost, Lua, and Luabind are all required for the use of this tool. All the necessary files for include Lua and Luabind in your project are included with EEDevTools; however, Boost (
http://www.boost.org) needs to be downloaded separately. Just place the extracted /Boost folder in the /Include folder of your project (if following the tutorial).
--------------------
Project Creator:
Easily create ready-to-go Microsoft Visual Studio 2008/2010 projects for your Esenthel Engine game! Simply place the tool inside the EsenthelEngineSDK/Tools folder, fill out the form, and press 'Create'. VoilĂ ! Your brand new project has been created.
This tool works by using the VS projects included in the EsenthelEngineSDK\Tutorials folder as a template.
--------------------
Events Overview:
The events system allows you to visually create timelines of events for nearly all object types (excluding OBJ_DECAL and OBJ_MESH_OVERLAY) using the included tool, Events Editor. These events are then loaded into your game and executed from left-to-right order as they appear in each timeline.
An event timeline consists of three items: 1) an event type, 2) a function name, and 3) a target.
- An event type defines when the event should occur.
- The function name defines the function to be triggered by the event type, whenever it occurs.
- The target defines the actor that the function assigned to the function name should be triggered on.
Please watch the video tutorial* for more information.
* It is recommended to first download EEDevTools before watching the tutorial, so you may follow along with it.
Events Preview:
--------------------
Console Overview:
Included in the download is the source (written using Code Editor, support for Visual Studio also included) and a sample project that you can use to get the ball rolling. It includes things like changing graphics quality, renderers, wireframe mode, player models, and spawning items - all in real-time and all from within the console! These are, of course, just samples.
Console Features: (from Wiki)
Fully Customizable:
Code:
Color autocompleteRectColor = Color( 64, 64, 64, 128);
Color autocompleteTextColor = Color(192, 192, 192, 255);
CChar *blinkChar = "|";
Bool clearOnClose = true;
Bool closeOnExecute = true;
Bool eatKeys = true;
Bool enabled = false;
Color invalidTextColor = RED;
Byte maxHistory = 3;
Byte maxSearchResults = 5;
Color rectColor = Color( 0, 0, 0, 128);
Color selectedIndexRectColor = Color(128, 128, 128, 128);
Color textColor = WHITE;
KB_BUTTON toggleKey = KB_TILDE;
Note: Descriptions of each member is available in the source and should appear in the autocompletion window for both Code Editor and Visual Studio.
Compatible With Nearly All Data Types:
Bool, I8, U8 (Byte), I16, U16, I32 (Int), U32 (UInt), I64, U64, void, void(Byte)
Examples:
Code:
Bool displayFPS = false;
console.setCommand("cg_displayFPS", displayFPS);
----------
void setRenderer(Byte value)
{
Renderer.type((RENDER_TYPE)(RT_NUM - value));
}
console.setCommand("cg_setRenderer", setRenderer, 1, 3);
----------
void exit()
{
Exit();
}
console.setCommand("exit", exit);
console.setCommand("quit", exit);
Note: User inputted values are automatically clamped to the specified min/max values.
Polish Comes Standard:
- Autocomplete (like a search engine for your commands)
- Command prediction (the first autocomplete result is appended to the user input for quicker access, hit Enter to accept)
- History of executed commands (provides quicker access for calling the same command several times)
Console Preview: