I will keep editing this post with all our suggestions. Retrocompatibility with older maps is kept in mind.
- Increase the existing limits of in-game units, sprites, doodads, etc.
- More than two heights of terrain and more doodads, including wider ramps.
- More complex unit/weapon/upgrade settings, such as unit walking speed, ammount of supply it provides, permanent cloaking, weapon attack range, ammount of defense provided by each upgrade, etc.
- Being able to modify the orders available for a specific unit, such as if it can move or attack or in case of factories/workers the units/buildings they can build.
- Include the following extra trigger conditions/actions:
- Non-blocking waits: each time a wait trigger action is executed for one player any other trigger for the same player trying to execute a wait action gets put on hold until the first wait ends. A non-blocking wait action would be able to run even if there is already some wait in action.
- Variables: at the moment StarCraft only support boolean variables named switches. Some integer counters (such as death counters for unused units) are often used as integer variables, but their avalability strongly depends on the map, and doing simple arithmetic with them is extremely difficult. Trigger conditions/actions are needed to store/compare integer values and perform simple arithmetical operations with them.
- Unit identifiers: several techniques exist to keep track of a single unit in a custom map and make trigger actions operate upon it, but all of them are very limited. A trigger action is needed to assign a specific unit identifier to a particular unit and then have the option in the remaining trigger actions to target it.
- Unit stats: unit stats such as HP, energy and shields at the moment cannot be read and can only be set to a certain percentage. We would like to have trigger conditions and actions to check their values (equal, less than, more than) and to set them (to a fixed value or increase/decrease them a fixed ammount). Other stats such as ensnare, parasite, defense matrix, etc. cannot be checked or set in any form, and should also have corresponding trigger conditions/actions.
Other unit stats worth being modifiable by triggers: unit color, unit facing direction, unit build queue (factories), building being built (workers), unit weapon cooldown, unit target (in case it is attacking something or moving towards something), unit kill count, unit current speed. - Unit/weapon/upgrade/technology properties: a lot of attributes (such as unit max HP, cost, weapon damage, upgrade building time, etc.) can be modified on the map editor but remain fixed for the rest of the game. Trigger conditions/actions are needed to retrieve this information and modify it dynamically. This also includes the extended unit settings/possible orders included in the above suggestions.
- Player stats: a lot of attributes (such as which units the player can build, how many upgrades the player currently has, the force the player is in, etc.) can be modified on the map editor but remain fixed for the rest of the game. Trigger conditions/actions are needed to retrieve this information and modify it dynamically.
Other player stats would include the current player selection or the remaining game pauses the player still has. - Moving locations: actually locations can only be moved on top of a unit in another location. A trigger action is needed to move a location to a particular set of fixed coordinates. If variables are implemented, a trigger action will also be needed to save to a variable the position coordinates of a certain unit in a certain location.
- Orders: the order trigger action should be expanded to include other orders such as 'non-move', 'patrol', 'attack specific target', 'build unit' (factory buildings) or 'build building' (workers) or 'cast spell' (spell-casting units).
- Text commands: a trigger condition is needed which parses the text when a new message is sent by a certain player to interpret basic commands.
- Game data: trigger conditions/actions to check and modify the current game speed and the networking latency settings (even outside the range allowed by the game options menu), the force names, the map title, and the minimap color state (allies vs foes, or player color), and a trigger condition to check whether the map is being played in single player or in battle.net. These would provide a much better ambientation for the player.
- Non-blocking waits: each time a wait trigger action is executed for one player any other trigger for the same player trying to execute a wait action gets put on hold until the first wait ends. A non-blocking wait action would be able to run even if there is already some wait in action.
Post has been edited 5 time(s), last time on Apr 9 2016, 9:24 am by Clokr_.
?????