Ensage is a .NET development platform. Ensage provides a huge API that you can make use of to create assemblies.
Main source of Ensage features are assemblies. There are volunteer developers who take care of maintaining and developing assemblies, but anyone is free to create their own assembly. Every assembly is released open source which allows everyone to cooperate with the developer, help him to eliminate bugs, but also to learn from the code and gain knowledge for developing.
List of features provided by assemblies is truly endless. There is plenty of ways assemblies can use in order to help the player.
Here are some of the most important ones:
Ensage is a tool and it's in the developers responsibility to use the API wisely.
Almost every assembly can be configured via the Ensage in-game menu. All adjusted settings are saved. Some hero related assemblies may save settings only for the current hero, which means you can also make different configurations for each hero.
The Loader is a bridge between Ensage and the game.
It is used to compile, load and unload assemblies and to create assembly profiles, which allow you to quickly switch between sets of assemblies which should be loaded.
Ensage can run only on 64bit Windows 7/8/8.1/10 (XP and Vista are not supported).
If you are unsure whether your Windows is 64bit or 32bit see our Is My Windows 64bit? guide.
Ensage also requires you to start DotA 2 with "-console" option.
(Go to Steam>Libraries>Right click on DotA2>Select Properties>Tab General>Click on "Set launch options" and type in the "-console" option)
Following programs are required for Ensage to run properly.
Download and install them even if you have done so in past to ensure they are up to date.
Microsoft Build Tools is required to compile assemblies locally. If you are interested in developing assemblies, please download and install this as well.
For proper installation please follow these steps
Once you have successfully installed the loader, you may proceed to installing assemblies....(tbd)
Please make sure to follow these steps when launching Ensage.
These are loader hotkeys, they affect currently loaded assemblies. You should remember them as they can save your game in case a bug occurs and are quite useful while developing/testing.
Following hotkeys are used by the Ensage in-game menu:
When you are heading to play a real game, normal or ranked, you should never use assemblies that you didn't try before or you aren't used to, if you do that then it will most likely ruin the game for you and your team mates.
In order to enjoy your games with assemblies please follow these steps:
(For more info see our General guide for testing assemblies)
In case you don't like how to assembly works, if you experience bugs or FPS drops or if it isn't working at all, then please unload the assembly and provide constructive feedback to the assembly developer. If you don't know how to do that then check out our General feedback guide.
In other case, you may proceed to real games, but remember that there can occur situations in real games which can cause that the assembly stops working as intended. If you experience such situation remember to press the F6 key which will unload all assemblies, you can also just unload the certain assembly in the loader if you are sure that's the one which causes unintended actions, but then need to press F5.
After the game make sure to head back to forums and post the constructive feedback so the developer would be aware of the bug that occurred.
If you are testing some assembly during development, F5 is the hotkey you will stick to. When you find a bug, you usually fix it in the code, recompile it in the loader and then press the hotkey to load the updated version of assembly. You can also use the F8, but since it recompiles all assemblies, you should use it only if there are no other assemblies loaded except the one you are testing.
Remember that you should always test the assembly before you release it/release the update to make sure there are no exceptions when assembly gets loaded in the game.
See our General guide for testing assemblies to get better idea on how to properly test assemblies
It looks like you're new here. If you want to get involved, click one of these buttons!