• 🏆 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!
IcemanBo
Reaction score
628

Profile posts Latest activity Postings Experience Media Albums Resources About Medals

  • W
    I have put a new signature. I have asked MiniMage. He proves that my new signature is fine. If there is any unneccessary signature... Ya... Tell me... (There is a new signature because I love signature so much, it's pretty cool, of course you may advice me to delete it again if it is unneccessary.)

    Okay, I'm going to sleep. Thanks...!
    Ahh I see what you mean. Yeah I think I will leave it editable on Object Editor. Also, do you think it is slower if I triggered the damage instead of using the hard-coded Detonate ability?
    Well i will post my problem to the forum. For further explanation, as you saw my picture right below which means i can't play that map
    Hi, Here is my problem when tried to save with JNGP. I'm using 1.26a version of War3, and 2.0.7 for JNGP
    Hi IcemanBo, can you explain this part again? what do you mean?

    ----------
    - I don't very like you work so much with adding/removing abilities from object editor. It's better when it's triggered.
    User would have much more power when in comes to configuration.
    ----------
    Hey IcemanBo.

    I have a few questions concerning you and AoS maps.

    1. What kind of role do you prefer most? (Tank, DPS (physical/magical), Assassin, Bruiser (physical/magical) or support)
    2. What kind of abilities do you like most?
    3. Is there any ability that you would definately want to see in-game?

    If you can answer those, it would be awesome.
    I can't fix the stuck issue in my Dark Matter, I'm out of idea. The thing is affected units are still able to move and got their pathing disabled, means they can walk through cliffs. So pathing checker is obviously not enough. The only solution is to disable affected unit's movement, which makes the ability incredibly imbalanced.
    IcemanBo, is there by any chance a library or a system that allows users to make configurable slows?
    Hi IcemanBo

    I saw something, like this:


    Set x = Your Point
    Unit - Use x point

    Destructible - Use x point
    call RemoveLocation(x)


    this is good or not?
    Same here. I had two exams last week, and I had birthday party. Today is my birthday actually but I still need to travel cause tomorrow I still have duties at university...... So quite busy over here hehe
    haha! But when I visit your profile page here, I feel very cold...
    You have Aura of cold, something like that
    What do you think about this update of my Path checker? (removed the description cz it's too long to be posted here)
    library IsTerrainPathable initializer onInit

    // Configuration

    globals

    private constant integer PATH_CHECKER = 'h000'
    private constant integer FLY_CHECKER = 'h001'
    private constant integer WALK_CHECKER = 'h002'
    private constant integer BUILD_CHECKER = 'h003'

    private constant player DUMMY_PLAYER = Player(15)

    endglobals

    globals

    private unit PathChecker
    private rect Box
    private group Group = CreateGroup()
    private group Group2 = CreateGroup()
    private hashtable Hash = InitHashtable()

    constant integer PATHING_COLOR_WHITE = 0
    constant integer PATHING_COLOR_MAGENTA = 1
    constant integer PATHING_COLOR_CYAN = 2
    constant integer PATHING_COLOR_BLUE = 3
    constant integer PATHING_COLOR_YELLOW = 4
    constant integer PATHING_COLOR_RED = 5
    constant integer PATHING_COLOR_GREEN = 6
    constant integer PATHING_COLOR_BLACK = 7

    endglobals

    function IsTerrainWalkable takes real x, real y, boolean ignoreUnits returns boolean

    local unit fog
    local boolean b

    if ignoreUnits then
    return IssueBuildOrderById(PathChecker, WALK_CHECKER, x, y)
    else
    call MoveRectTo(Box, x, y)
    call GroupEnumUnitsInRect(Group, Box, null)
    loop
    set fog = FirstOfGroup(Group)
    exitwhen fog == null
    call GroupRemoveUnit(Group, fog)
    if IsUnitType(fog, UNIT_TYPE_GROUND) and not IsUnitType(fog, UNIT_TYPE_STRUCTURE) then
    call SaveReal(Hash, GetHandleId(fog), 0, GetUnitX(fog))
    call SaveReal(Hash, GetHandleId(fog), 1, GetUnitY(fog))
    call SetUnitX(fog, GetRectMaxX(Box))
    call SetUnitY(fog, GetRectMaxY(Box))
    call GroupAddUnit(Group2, fog)
    endif
    endloop
    set b = IssueBuildOrderById(PathChecker, WALK_CHECKER, x, y)
    loop
    set fog = FirstOfGroup(Group2)
    exitwhen fog == null
    call GroupRemoveUnit(Group2, fog)
    call SetUnitX(fog, LoadReal(Hash, GetHandleId(fog), 0))
    call SetUnitY(fog, LoadReal(Hash, GetHandleId(fog), 1))
    endloop
    return b
    endif
    endfunction

    function IsTerrainFlyable takes real x, real y returns boolean
    return IssueBuildOrderById(PathChecker, FLY_CHECKER, x, y)
    endfunction

    function IsTerrainBuildable takes real x, real y returns boolean
    return IssueBuildOrderById(PathChecker, BUILD_CHECKER, x, y)
    endfunction

    function GetTerrainPathingColor takes real x, real y, boolean ignoreUnits returns integer

    local integer color = 0

    if IsTerrainFlyable(x, y) then
    set color = color + 1
    endif

    if IsTerrainWalkable(x, y, ignoreUnits) then
    set color = color + 2
    endif

    if IsTerrainBuildable(x, y) then
    set color = color + 4
    endif

    return color
    endfunction

    private function onInit takes nothing returns nothing

    set PathChecker = CreateUnit(DUMMY_PLAYER, PATH_CHECKER, 0, 0, 0)
    call UnitRemoveAbility(PathChecker, 'Amov')
    call ShowUnit(PathChecker, false)

    if GetLocalPlayer() == DUMMY_PLAYER then
    call FogEnable(false)
    endif

    set Box = Rect(0, 0, 512, 512)

    endfunction

    endlibrary

    - Name is changed to IsTerrainPathable (or maybe PathabilityChecker, which one is better?)
    - I found that every ground non-structure units generate blue and magenta pathing around them. Causing function IsTerrainWalkable to always return false if targeted around those units, which is unlike the result of Vex's checker. So I have to allow user to chose whether they want to ignore those unit's pathability or not. But now, it requires 2 unit groups and hashtable. But still, using SetUnitX/Y doesn't move the blue pathing along, just like if you use that function upon structure units, causing IsTerrainBuildable to return wrong value. I don't know is that worth it or not? What do you think?
    - I did this update cz I can't use it in my Dark Matter spell due to it's behavior, and maybe can't be used as well in other certain type of spells. That's why I think it needs this update, but it costs the elegance and some speed :(
    sorry IcemanBo :/

    I thought you know anything lol like DrSuperGood lol

    Thanks for reply next time I will post in thread now
    hello IcemanBo ^_^

    since I dont have much time to make wc3 spells cuz of my project hehe...

    Can you help me something?

    You know VB? Visual Basic :)

    I dont know how to make a Database in Microsoft Access :/
    Alright, but I still wonder if it's good enough if it's just sort of adding some reading and more version the functionality from the original. Yeah, I'm concerned about 198 abilities I think, I'll try to get a much difference and improvement as possible.

    It's okay :)
    They move faster then normal and can't be selected. Some people don't want/like this and have found a way to fix this with my system.
    What don't you understand about the gold mine bug fix system? It's for fixing workers when they're townhall is too close to the mine. Though I thought I fixed that full stop bug...... Thanks for letting me know about that.
    If I made a system based on BonusMod that allows user to manipulate stats on units with better functionality, is it approvable?
  • Loading…
  • Loading…
  • Loading…
  • Loading…
  • Loading…
  • Loading…
  • Loading…
  • Loading…
Top