In Manifest, two players compete to control arcane nodes. Each player trains five heroes with whom to battle. Players take turns moving, attacking, and casting with their heroes, having five Action Points with which to act each turn. Superior tactics earns victory over the inferior.
The other day, I posted about the ability to display the attack range of a selected unit. Though the code worked mostly properly, ModDB's Kerloc, being his helpful self pitched in on the idea and helped me to write a far superior version of the command.
Check it out:
Ping Range
Events
Player - Player 1 (Red) types a chat message containing range as An exact match
Player - Player 2 (Blue) types a chat message containing range as An exact match
Conditions
Actions
Unit Group - Pick every unit in (Units owned by (Triggering player) matching (((Matching unit) is selected by (Triggering player)) Equal to False)) and do (Actions)
Loop - Actions
Unit Group - Remove (Picked unit) from (Units currently selected by (Triggering player))
Unit Group - Pick every unit in (Units currently selected by (Triggering player)) and do (Actions)
Loop - Actions
Set SelectedUnitOrigin = (Position of (Picked unit))
Set SelectedUnit = (Picked unit)
For each (Integer A) from 1 to 360, do (Actions)
Loop - Actions
Unit - Create 1 Circle of Power [effect] for Neutral Passive at (SelectedUnitOrigin offset by (Current acquisition range of SelectedUnit) towards (Real((Integer A))) degrees) facing 0.00 degrees
Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
Now, when players type range into chat, a helpful ring will display the attack range of the currently selected unit. The unit "circle of power" is nothing more than the special effect model for the Paladin's Holy Light. The best part of this trigger, in my opinion, is the genius expiration timer following the unit's creation. The guarantees both that the special effect's are destroyed and that players will not break the code by requesting multiple range displays in short succession.
Sadly, however, in its present form, this code sometimes glitches. The glitch comes from the "remove units from selection" action, which, somehow, causes previously selected units to remain selected and to break all sorts of triggers essential to the functioning of my turn-based infrastructure. I think the glitch has to do with the lag in the game's recognizing of the presently selected unit. I'm currently working on solutions.
In the meantime, take a look at this stellar video of the display range command in action.
A ping range feature in Manifest allows players to see the attack range of their units.
Like writing code? How about a challenge featuring an earlier draft of the Hero Revival code?
The first in what will bea periodic series of articles about classic WC3 mods. First up: the ingenious Don't Move the Tauren!.
Thus begins the legend of The Two Triggers. The story behind the creation of hero revival code continues.
Good luck!
You're not using vJass and ZinC?
I never learned Jass; I don't know why, really, I just chose not to. I took two semesters of Java in college, but having not practiced it since, my understanding is basically gone. I've been using the World Editor's standard trigger editor for a long time now, and I sort of challenged myself early on to write this entire game using it alone. I could have learned Jass, and honestly, probably should have, as I'm sure triggering this game would have been much easier, but I actually enjoy using the trigger editor a lot, and it's fun finding creative solutions to problems within the editor's confines.
That's the point: you can't push a map to it's edges.
But of course .. GUI alone can also fulfill your needs. (;
Yeah. There are definitely limitations. But I appreciate the challenge of working with the trigger editor alone, and using the tools that I have available to solve development hurdles. I'm proving to myself that I can accomplish something very big and very complex using only simple tools. It would have been nice to have additional options; I've run into a couple of instances where it's impossible to implement something I'd like. But I'm also fairly swamped with all of the options available to me already. The trigger editor and ability editor are in fact quite robust, and I am currently struggling to narrow down what to keep and what to cut. By the way, I read your stuff about Arcadia, looks really interesting.
Thanks. :>
I'm creating Arcadia for a Solo-Mapping-Competion on hiveworkshop.com.
Our current main-Project is Chernobyl - Lost Riddles. Hopefully the beta is starting within February. (;
Good luck with your project!