System UAC - Unit Aura Control

Romek

Super Moderator
Reaction score
963
The new version won't use GetHandleId in any way except for keys for hashtables.
So there won't be any realistic limits, and there won't be a need for PUI.

So.. Why do you guys want PUI? :confused:
 

Romek

Super Moderator
Reaction score
963
Major Updates:
  • 3.0
    • Complete rewrite of script. It's now more efficient, stable and virtually limitless.
    • Code is also littered with comments.
    • Renamed most methods:
      • UnitEnter -> unitEnter
      • UnitLeave -> unitLeave
      • UnitPeriodic -> unitPeriodic
      • OrFilter% -> orFilter%
      • AndFilter% -> andFilter%
      • MainDeath -> mainDeath
      • MainRevive -> mainRevive
      • TimerLoop -> timerLoop
      • MainUnit -> main
    • Added optional use of mainUnit instead of main
    • Some additional features have been removed (such as effects)
    • Added support for optional extensions
      • Created UAC Effects
      • Created UAC Filters
    • Created new readme
    • Added more safety and debugging options
    • pausing now works as it should
    • This should be the last major update. (Enough with the interface changes (sorry!))

Should be no more interface changes. Sorry about these ones. :p
This may also be the final version. (Though I'll probably end up fixing some errors and making new extensions).

The documentation is now a separate document. =)
 

Terrabull

Veteran Member (Done that)
Reaction score
38
I am using this system in my map, but I am having a few problems.

For some reason if I set it .neutral = false my allied units can't be effected by the aura.

I get effects popping up on my characters even if I set .enableeffects = false

I have buffs w/ grant an effect, but for some reason it's overwritten by this system.
Compounding the problem is that when it puts an effect on a unit, that effect never goes away.
 

Romek

Super Moderator
Reaction score
963
Fixed.

The effects extension had a silly error, and it doesn't seem as though _PASSIVE alliance detects neutral units; so I used a different method.

UACEffects - 1.1
UACFilters - 1.1
 

Romek

Super Moderator
Reaction score
963
Yes
 

Romek

Super Moderator
Reaction score
963
It seems to be a problem with the filters again (nothing to do with patches).
It's awfully annoying that there's no direct way of determining whether or not a unit is neutral to a player.

I'll do a bit of testing soon to find a good way of finding that out.
 

Troll-Brain

You can change this now in User CP.
Reaction score
85
It's awfully annoying that there's no direct way of determining whether or not a unit is neutral to a player.

IsUnitAlly, can't be used ?
An unit which is not an ally, neither an enemy should be a neutral one.
 

Romek

Super Moderator
Reaction score
963
Neutral units seem to be considered as allies. :thdown:
 

Romek

Super Moderator
Reaction score
963
Yup. :thdown:
I'll mess around with the Alliance Types, and see what I come up with.
 

Romek

Super Moderator
Reaction score
963
Ok, Fixed it.
[ljass]GetPlayerAlliance( .. .. , ALLIANCE_HELP_REQUEST)[/ljass] returned true only for real allies, whilst [ljass]IsUnitAlly(..)[/ljass] returned true for both of them.

Filters is now version 1.2 :)
 

Terrabull

Veteran Member (Done that)
Reaction score
38
Okay, having another problem.
There are three units, and one ability with three levels each corresponding to one unit.
When a unit is damaged by the ability, the aura that is associated with that unit is added to the damaged unit.
Using the periodic trigger the aura checks to see if the unit already has the ability or a higher level of the ability on it, if so, it does nothing. If it has a lower level ability, it raises the level of the ability.

Expected Results:
The damaged unit should get the proper aura from the attacking unit. This aura should never be duplicated, even if two different units w/ the aura-making ability are attacking the same unit.

Actual Results:
The unit being attacked gets all the auras of the attacking units.
 

Romek

Super Moderator
Reaction score
963
Ohh, I must've forgotten to add them again whilst I was recoding.

  • 3.1
    • Readded Tickers

JASS:
.
        ________________
         real ticker        'ticker' is, in seconds, how often the periodic functions of UAC are called for the
        ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯    particular instance. This includes the frequency at which units can become affected
            or unaffected, and how often unitPeriodic and timerLoop are called. This is automatically rounded down
            to a multiple of TIMEOUT. This is TIMEOUT by default. 
            
            set data.ticker = data.ticker + TIMEOUT
 

SanKakU

Member
Reaction score
21
i'm not sure i understand so let me ask...what does using/adding the tickers do? what if for example you wanted the aura to stun the units with the aura every 3 seconds? you need to times that 0.03125 by about a 100. doing something with the data.ticker will do that? what are you supposed to do, exactly?
 

Furby

Current occupation: News poster
Reaction score
144
You are implementing same module two times in one struct.

That does compile but doesn't actually work. :(

http://www.wc3c.net/vexorian/jasshelpermanual.html#module
..If implement attempts to implement a module that has already been implemented in a struct, the call is ignored as well..

This causes effects of Effect Module to never disappear from affected units when (non-hero) unit dies.

EDIT: I miss [ljass]onRemove[/ljass] method which would be called when aura gets destroyed.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top