• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Custom Selection Circles and Confrmations


NEW COLORS FOR SELECTION CIRCLES AND ORDER CONFIRMATIONS

Have you ever wanted to have a different color for the selection circles? While many models exist to change the texture of selection circles, no tutorial or thread I could find gave a clear answer about how this could be done. Here is my formula for changing the in-game colors of selection circles and target confirmations.

WHAT YOU WILL NEED:

  1. WE or JNPG
  2. notepad
  3. pixlr.com or Photoshop
  4. BlpLab (available in THW Tools)

1. First open notepad.

2. Then add the following text:

[SelectionCircle]
// Defines different textures to be used based on selection circle size.
// The Size## value defines the largest size which uses the given textures.
// Note that the last size does not need a Size## value since anything bigger
// than the next size down uses it.
NumSizes=3
Size00=100
Texture00=ReplaceableTextures\Selection\SelectionCircleSmall
TextureDotted00=ReplaceableTextures\Selection\SelectionCircleSmallDotted

Size01=250
Texture01=war3mapImported\BlankIcon.blp
TextureDotted01=war3mapImported\BlankIcon.blp

Size01=400
Texture02=ReplaceableTextures\Selection\SelectionCircleLarge
TextureDotted02=ReplaceableTextures\Selection\SelectionCircleLargeDotted

// This value is multiplied by the SLK scale field to get the circle size
ScaleFactor=72

// This value is added to the selection circle height
// when on walkable doodads.
// Note: this is also applied to shadow images
ImageWalkableZOffset=15

// Colors
ColorFriend=255,75,150,200
ColorNeutral=255,255,255,200
ColorEnemy=255,0,0,200
AllyOffset=0.2

[TargetingColors]
TargetLightColor=255,75,150,200
SelTargetColor=255,255,150,0

NOTE: This creates a light blue color, but feel free to adjust the (rgb) values at =x,x,x,x. Note: alpha, red, green, blue

3. The save as war3mapMisc.txt and import into your map and delete the war3imported/ prefix on the pathname.

TA-DA! Now you have a custom color for your target confirmation indicator.

Now for that pesky green selection circle. This will not be as easy. Some people might use a trigger to:
  • Game - Enable selection and deselection functionality (Disable selection circles)
but this will remove every selection circle in the game. I only care about the Hero today, but you can use this for every unit if you want.

4. Now you need to make (or download) your new colored selection circle and import it and overwrite the pathname:

Abilities\Spells\Undead\VampiricAura\AuraRune6.blp

5. Now create a dummy spell with no icon. I like to use Item Armor Bonus (+1) and give the the ability the target attachment vampiric aura.

6. Then trigger the selection circle to appear when a unit is selected. Here is a simplified example. You should create conditions for neutral and enemy units.

  • SelectionCircle
    • Events
      • Player - Player 1 (Red) Selects a unit
      • Player - Player 2 (Blue) Selects a unit
      • Player - Player 3 (Teal) Selects a unit
      • Player - Player 4 (Purple) Selects a unit
      • Player - Player 5 (Yellow) Selects a unit
      • Player - Player 6 (Orange) Selects a unit
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Triggering unit)) Equal to (Triggering player)
          • ((Triggering unit) is A Hero) Equal to True
        • Then - Actions
          • Unit - Add Item Armor Bonus (+1) to (Temp_Unit)
        • Else - Actions
  • SelectionCircle off
    • Events
      • Player - Player 1 (Red) Deselects a unit
      • Player - Player 2 (Blue) Deselects a unit
      • Player - Player 3 (Teal) Deselects a unit
      • Player - Player 4 (Purple) Deselects a unit
      • Player - Player 5 (Yellow) Deselects a unit
      • Player - Player 6 (Orange) Deselects a unit
    • Conditions
      • (Owner of (Triggering unit)) Equal to (Triggering player)
    • Actions
      • Unit - Remove Item Armor Bonus (+1) from (Triggering unit)

And there you have it. Now I realize there are much cleaner and probably better ways to do this. I was just shocked that there was almost nothing on this topic so I wanted to share what I learned. Also, the GUI above isn't quite right, I am not trying to give a complete GUI explanation. If you can code, then you can do it better than me. Also, if you know how to model, then you could make a better model. I am using vampiric aura, but certainly a better model would help. If someone wants to be kind enough to edit the selectioncircle.mdl and post it here with a new path for custom skins, well that would be fantastic. However, I tried and failed to create my own so this is what I have for now. Hope you all like it!

226052-albums6645-picture102492.jpg
 
Last edited:

Chaosy

Tutorial Reviewer
Level 40
Joined
Jun 9, 2011
Messages
13,183
Useful, simple, good looking.

Rep+, wonderful job.

However wont this interfere with the misc that we use for terraining? the one that improves the raise and lower tool. I also think it's better to add a special effect attached to the unit rather than adding an ability. It requires less work in the object editor that way.
 
Useful, simple, good looking.

Rep+, wonderful job.

However wont this interfere with the misc that we use for terraining? the one that improves the raise and lower tool. I also think it's better to add a special effect attached to the unit rather than adding an ability. It requires less work in the object editor that way.

Yes, it could interfere with other game interface constants. What I did was I exported my changes and then used a complete war3mapMisc.txt file from my map. I can explain how to do that if necessary.

Special effects didn't work very well because when you destroy - special effect, it plays the death animation and it takes about 2 seconds for the aura to disappear. Using add/remove ability makes it turn off fast.

Thanks for checking this out. Honestly, I am not happy with my method. Sure it looks kinda cool, but I know there is a better way. If someone could create a simple template model that allowed for team colors, there might be a way to really make this look wonderful. For now, all I have is this trick.
 
Wait what? The circle got a death animation?

No no, the aura I used to replace it does. I might be editing this in a second. I've learned something new.

EDIT: I mixed up the rgba. I fixed it. For whatever reason, in Misc.txt it goes Alpha, red, green, blue ... so it's a,r,g,b.
 
Last edited:
Cool tutorial, only thing better would be a team colored mdx to represent the circle like you said. =)

Thanks for sharing this information.

Maybe, someone will make a nice team-colored selection circle model that allows you to attach custom skin to it... hint hint.

They might even add it to the pastebin and link it here to this tutorial ...
 
Last edited:
Maybe, someone will make a nice team-colored selection circle model that allows you to attach custom skin to it... hint hint.

They might even add it to the pastebin and link it here to this tutorial ...

You cant exactly do that, since team color is a square as a texture. Your selection must be a square to do that. If you make a selection circle team colored it will have outlined box edges and it would look weird...
 
"Selection Circle" refers to the green circle around the unit's feet that indicates that the unit has been selected. A "Confirmation" refers to a target point on the terrain, which is the target of a move order or the target of a spell that allows you to target the ground. Both are show in the picture I posted in the tutorial being light blue.
 
Top