Better Triggers
A custom trigger editor for Warcraft III: Reforged
What is this?
This is a custom, 3rd party trigger editor built from scratch.
Unlike plugins like Jass NewGen Pack 2 (JNGP), TESH and similar, this trigger editor is completely separate and works outside the World Editor. It expands with new features and aims to improve the user experience for both GUI users and scripters.
To support the new features this editor does not bundle trigger data (.wtg) with your map, but saves the data in a project folder in your filesystem. This also means you cannot swap back and forth between this editor and the World Editor's trigger editor. Although, it is possible to port existing triggers from a map to this editor from the 'New Project' window.
Feature Highlights
Source files outside your map
*This change required the removal of comments in the 'trigger explorer' because the World Editor allows comments with identical names; something a filesystem does not.*
Convert an existing map's triggers
If you are already working on a Warcraft 3 map and wish to port your triggers to this editor, you can. When creating a new project you can choose convert an already existing map's triggers. The editor will scan your map for triggers, variables, scripts etc. and converts them to source files readable by this editor.
*The illustrated image shows a converted project of mine.
Script live update
The editor automatically detects changes made to custom script files in your filesystem. This allows you to work directly in whatever text editor you want and removes the need to copy/paste from external source files into the editor.
Upgraded Script Editor
The built-in script editor has basic syntax highlighting and autocomplete for both Jass and Lua.
"StarCraft II"-inspired GUI
The GUI has been re-imagined and has the look and feel of Starcraft II's GUI. One of the great things about this is you no longer need to click multiple times on parameter links to get to the bottom of the parameter tree. All parameters are now individually clickable.
Local Variables in GUI
The GUI supports local variables.
Local variables can only be used in actions, hence why they are placed beneath conditions.
Keep in mind that locals like unit groups and player groups are created every time the trigger runs, so those are very prone to leaks.
2D Arrays
The GUI supports 2D arrays for global variables.
Frames in GUI
You can create custom UI with Frames in GUI.
Improved GUI to custom script conversion
You can convert a GUI trigger to custom script, but also convert it back to it's original GUI triggers if you regret it. Additionally, GUI to script conversion is also available for Lua mode.
Color Themes
Select between different editor color themes.