This extension serves as a syntax highlighting tool for writing AI scripts in Age of Empires 2. It will apply this highlighting to any
This image demonstrates some of the features described below.
Completion and signature help
When typing a command or object this will trigger a popup with suggestions for likely objects that you may want. Some commands even have examples demonstrating how to use them. Hitting tab will insert the highlighted object. There is also descriptive text to aid you in deciding which completion you may want. You can also hover over parameters and commands to see the same help text.
When filling a command, a helpful popup provides guidance about what the required parameter types for the command are. The next parameter at your cursor position will be bold and underlined with a description of the parameter.
This extension currently provides very rudimentary syntax highlighting as demonstrated below (image uses the
See this example for how to define your own colors for the different syntax components.
Snippets are also provided to quickly create new rules.
These are features that are considered good enough to be tested by people, but may still need some tweaking. By default experimental features are turned off to ensure the average person has a stable experience with the extension.
To turn them on, go to the settings (
Current experimental features:
Why ANOTHER code editor?
Building the editing features on top of Visual Studio Code offers several benefits:
To be clear, the original author of this code has never used or attempted to use any existing AI script editor, so this is in no way a critique of those editors.
This is an alpha version after all, so there are going to be issues. For example, missing or incorrect commands/unit/building/tech IDs. If you come across a bug using the extension, please submit an issue to the github repository or via this thread on the aiscripters forums.
Feel free to submit issues to the github repository, and I will try to look into them when I have time.
Alternatively, for the real go-getters out there, you can fork the repository, make changes and submit a pull request!
The following people and resources have contributed a non-trivial amount to the development of this extension. Seriously, this extension would not be as good as it is without them:
Please refer to the CHANGELOG for a reference of changes in this and previous releases.