• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!
  • ✅ The POLL for Hive's Texturing Contest #34 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!
  • ✅ The POLL for Hive's Techtree Contest #20 is OPEN! Vote for the TOP 3 FACTIONS! 🔗Click here to cast your vote!

Showing circles as FX for boss mechanics

Level 6
Joined
Jul 3, 2006
Messages
102
I am going for MMO-like mechanics for my bosses whereby I want to have FX showing locations where the player must move out of or into. For starters, red and green circles.
I have a custom model of a circle as a simple plane (I'm not a real modeller, just took something and edited it) and when I try to show it either as an effect or as a unit with that model, it gets blended into the terrain.

Is there any configuration I could use (different FX maybe/3D?) to achieve this without getting hindered by the terrain? How do auras manage to do it in general?

Example screenshots:
1767341278430.png

1767341302098.png

1767341333978.png
 
Move it higher on the Z axis, if it's at 0 it will clip with terrain elevation like that
This doesn't seem like a good solution for the general case, is there any way to have it follow the terrain akin to target selection circles?

I have made it a dummy unit for now, so that I can scale it and set Movement - None. If I set to Fly the plane rotates based on the terrain underneath which is a big no. I am creating the dummy and giving it crow form to set a height. This does not seem to work properly.

JASS:
// Creates a red circle effect.
function createRedCircleFX takes real x, real y, real duration, real scale returns unit
    local location loc = Location(x,y)
    local real height = GetLocationZ(loc) + 100
    local unit u = CreateUnit(Player(15), 'e00I', x, y, 0)
    call UnitAddAbility(u, 'Amrf')
    call SetUnitFlyHeight(u, height, 3000)
    call UnitApplyTimedLife(u, 'BTLF', duration)
    call SetUnitScale(u, scale, scale, scale)
    call RemoveLocation(loc)
    return u
endfunction
 
If it is just a texture, then you could use it as an ubersplat. Ubersplats are the textures beneath structures and they are projected onto the terrain.
It will, however, require you to export splats/ubersplatdata.slk file from WC3's casc file, add new row for your custom ubersplat and then import it into your map under same path.
 
This seems like what you want:
 
This seems like what you want:
This looks like the behavior I get with dummy units that are allowed to tilt, like I mentioned a few posts above. Will try it.

If it is just a texture, then you could use it as an ubersplat. Ubersplats are the textures beneath structures and they are projected onto the terrain.
It will, however, require you to export splats/ubersplatdata.slk file from WC3's casc file, add new row for your custom ubersplat and then import it into your map under same path.
This sounds quite a hassle. If my other options do not pan out, I will give this a try.
 
Back
Top