• 🏆 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!

[Ad] inWarcraft Mapping Wish List

Status
Not open for further replies.
Level 26
Joined
Aug 18, 2009
Messages
4,097
On inwarcraft.de, in the past month, we have collected some suggestions that would improve wc3 mapmaking. The requirements were that backwards compatibility should be maintained and that it should not stray too far away of the existing engine. The results were posted in blizzards suggestion forum now, although we do not expect much out of it. While I won't add new wishes or remove points, you are invited to discuss the detail or contribute to the next round. Despite being named inWarcraft's Wish List at the moment, we would actually like your cooperation in the matter. We just wanted to present this as a product of a community but not pretend it was of the whole wc3 world since it was not until now.

The thread is found here.
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
JASS:
call TriggerSyncStart()
if GetLocalPlayer() == p then
    call SyncStored...
endif
call TriggerSyncReady()

If that works, it's okay. Personally, I have only known of the unit selection morsing that you use SelectUnit function and the event. What was included in your thread and not listed yet, would be the GetHostPlayer function and PreloadObjectId. GetUnitTypeModelFile is a bit specific, reading object editor ingame stuff lacks in general.

Well, it's not really a problem that GetLocationZ takes a location but I've heard that the function is kind of async, like on animated walkable destructables because the animations are not in sync. Someone also mentioned it may depend on graphic level (probably likewise the models) or I know that temporary terrain deformations or such are not detected when the player has no visibility.

What would you use the thread natives for you proposed?

native LockThread takes thread t returns nothing
native UnlockThread takes thread t returns nothing
native GetCurrentThread takes nothing returns thread

you can lock bones to face a desired point/unit with offset

I think that native only worked with 1-2 bone names. I guess it would have a great potential though if extended.

Missiles were also suggested. Yes, and some "Unit finishes attack" event in the meaning of before damage directly after the cooldown and missiles launched would be good like for Nestharus' attack index stuff.

Images fix noted. And yeah, maybe some native way to display screen-related images and buttons but I guess that requires some new stuff in engine.

How is GetSelectingPlayer bugged, Tirlitti mentioned at the end of the first page? I only discovered it recently because JNGP does not show it in the function list. What's the difference to triggering player? Does it work for the specific unit is selected event?

The local object variables leak has to be fixed ofc.
 
Last edited:
Level 26
Joined
Aug 18, 2009
Messages
4,097
Round 2 will be posted in a few days.

Current wish list:
  • draw pathing manually on extra layer
  • downgrade researches
  • GetCodeId function getting unique integer ids for code parameters since Condition(code) is slow and can be destroyed/overwritten
  • SetUnitLookAt: enable all bones
  • new Events: create/destroy for most agents, catch minimap ping
  • set facing of structures in editor
  • detect ordering player on order events
  • set thread operation counter/limits and some message on thread break
  • custom soundsets
  • change interface ingame
  • change trade increases ingame
  • add/remove researches/research usages/unit trainings/upgrades to/from units
  • add/remove requirements to/from units/items/abilities/researches ingame
    -----------
  • GetHostPlayer
  • PreloadObjectId
  • fix images
  • fix local object variables leak
 
Level 8
Joined
Feb 21, 2005
Messages
110
Applying replaceable textures specifically to units/doodads would be awesome. Like, declaring ReplaceableId31 (LordaeronTree) for a Mountain Giant so you can use his alternate animation set (with the tree club) without actually grabbing a tree.
 

Bribe

Code Moderator
Level 50
Joined
Sep 26, 2009
Messages
9,456
Thread locking would be like this:

JASS:
function ...
    //Declare some locals
    loop
        //Do some periodic stuff
        
        //Pause the thread, set a timer so when it expires this thread is resumed,
        //issuing an "exact wait", so we can use this loop with the same locals without
        //needing complex structs.
    endloop
endfunction

With code array, it would be a more efficient, handle-friendly way to run dynamic code. Instead of ExecuteFunc which is 8x slower than ForForce, one could simply store code arguments avoiding the need to use triggers + conditions to do it.
 

Dr Super Good

Spell Reviewer
Level 63
Joined
Jan 18, 2005
Messages
27,180
Almost all the features on that wish list are already in StarCraft II.

I would personally like to see bug fixes more than new features.

Local handles declared with the local keyword should automatically cause the reference counter to be decremented at the end of a function just like local handles declared as function arguments.

Creating units should not cause a permanent memory leak.

Strings should be automatically garbage collected or at least a native should exist that can be periodically called to help free up disused strings.

Pausing a periodic timer should not cause the timer to lose the periodic status.

Creating quests during map initialization should not cause a game crash.
 
Level 17
Joined
Nov 13, 2006
Messages
1,814
mine:
- unit roation in vertical angle too (facing angle just rotate unit in horizontal) this could make easier the missile systems and full screen hero selection where u want rotate the dummy to left and right

- ofc file size limit too

- something solution for remove then 'Arav', or crown form bug effect if its dont needed anymore. or just make something solution for set flying height without staying the effect on unit (example after jump u climb up to cliff)

- instant channel ability casting without 0 blending time

- more keyboard event, like w,a,s,d and not just up/left/right/down

- could be nice a function for order the data in array (exactly how mysql ORDER work, where u can order ASC/DESC)

- fix/or make getpointpathable thing, where u can check if have something in position or can create unit there without problem

- dynamic camera what work when have something on way, without unit/item creating tricks

- vertical images

- remove doodas function

- hero ai system for non melee maps

- global variables in gui dont get udg_ in jass

- remove event function

- buffs levelable like ability

etc etc :D

(ofc most of thing work atm too but with tricks, but could be there a function what do it directly)
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
I would personally like to see bug fixes more than new features.

There are a lot of bugs mapmakers abuse for their advantage though. Backwards compatibility should not be broken or at least a good alternative offered. You probably mean only-disadvantageous stuff but at least we have developed circumventions around most of them.

Local handles declared with the local keyword should automatically cause the reference counter to be decremented at the end of a function just like local handles declared as function arguments.

Already enlisted as "fix local object variables leak", I write a more detailed description then.

Creating units should not cause a permanent memory leak.

This was only discovered by you in the recent past afaik. So does this really have weight at the moment?

mine:
- unit roation in vertical angle too (facing angle just rotate unit in horizontal) this could make easier the missile systems and full screen hero selection where u want rotate the dummy to left and right

Was object of the last wish list.

- ofc file size limit too

This also.

- something solution for remove then 'Arav', or crown form bug effect if its dont needed anymore. or just make something solution for set flying height without staying the effect on unit (example after jump u climb up to cliff)

I do not get it. You can set a unit's flying height after you have added and removed 'Amrf' once. The ability is not required to stay on this unit.

- instant channel ability casting without 0 blending time

Flags for using cast point animation time and back swing and parallel cast.

- more keyboard event, like w,a,s,d and not just up/left/right/down

Also object of the last wish list. But you should consider that this overlaps with unit orders, therefore decide what has to be prioritized/whether the other event is fired or in which order events take place.

- fix/or make getpointpathable thing, where u can check if have something in position or can create unit there without problem

What's the problem with existing solutions there?

- dynamic camera what work when have something on way, without unit/item creating tricks

I do not get it.

- hero ai system for non melee maps

Shall work how? The computer won't know what to do in your map. I actually consider the standard ai as a nuisance because it gets into conflict with what you want to realize.

- global variables in gui dont get udg_ in jass

Why? Global variables from GUI are scopeless and should be recognizable. Also, most likely, for a (v)Jass user there is no point cooperating with GUI.

- remove event function

Already in last wish list.

- buffs levelable like ability

There is not even an AddUnitBuff-function. Buffs are extensions of abilities, inherit behaviors of it and you can see the level of a buff in tooltip. It derives from the ability level.

etc etc :D

(ofc most of thing work atm too but with tricks, but could be there a function what do it directly)

The wish list shall contain key features that really help mapmakers in a lot of ways. We also proposed SetUnitState/AddUnitState but only because the current solutions for them are very inconvenient and have to be explained to every newbie. Things like sorting an array are easy to write, therefore would only boost performance. So the question is whether this is really a problem at this point to users.
 
Level 17
Joined
Nov 13, 2006
Messages
1,814
Was object of the last wish list.



This also.



I do not get it. You can set a unit's flying height after you have added and removed 'Amrf' once. The ability is not required to stay on this unit.



Flags for using cast point animation time and back swing and parallel cast.



Also object of the last wish list. But you should consider that this overlaps with unit orders, therefore decide what has to be prioritized/whether the other event is fired or in which order events take place.



What's the problem with existing solutions there?



I do not get it.



Shall work how? The computer won't know what to do in your map. I actually consider the standard ai as a nuisance because it gets into conflict with what you want to realize.



Why? Global variables from GUI are scopeless and should be recognizable. Also, most likely, for a (v)Jass user there is no point cooperating with GUI.



Already in last wish list.



There is not even an AddUnitBuff-function. Buffs are extensions of abilities, inherit behaviors of it and you can see the level of a buff in tooltip. It derives from the ability level.



The wish list shall contain key features that really help mapmakers in a lot of ways. We also proposed SetUnitState/AddUnitState but only because the current solutions for them are very inconvenient and have to be explained to every newbie. Things like sorting an array are easy to write, therefore would only boost performance. So the question is whether this is really a problem at this point to users.

1. yes just under that u can mean to more thing, mainly my problems was the angle setting
2. ofc u can set after add/remove crow form, but u also go over the cliffs, what normally way not allowed, i mean add/remove ability to unit with foot mov type, then this unit type after this bug cant be reseted again to normal foot mov type, he will act like flying unit later too just maybe with 0 height but still flying unit.

lets see example floor systems, there u must do crow form bug but then damn annoying when u go back to ground then still ur movement type not resetted, example that system what is on thehelper they solved with bear form trick (add bear form, order, remove) but u wanna do bear for for each unit type on map only for reset his movement type to default? another solution was make a dummy clone, hide original and add crown bugg to dummy but that also could be easier with simple SetUnitMoveType function, what atm not exist

(floor system: when have multiple floor, and u can go on&under the floors not like when u cant go over under the bridges )

3. about channel and backswing, correct me if it is wrong but u must set it on unit in object editor but then its applied if unit want cast different abilities no? what if i want ability what isnt instant and ability what instant same time? that few instant ability is a annoying limit

4. solution about getpathable? maybe the unit creating way what is the best way not faster than a native getpathable function (what not exist)

5. if u watched witchery advanced camera system in spell section then u understand what i mean (still Nest unit creation system instead item creation is more accurate and work better, just could be nice a native instead this tricks)

6."The computer won't know what to do in your map" - then neutral hostile player trolls why can use bloodlust and heal and etc? only thing what missing is seeking enemy but casting, ordering work with there def abilitites,no?

7. coz easily who not vjasser like me :p

8. but removeability function exist where u remove the buff like a normal ability, also if u have aura harder to check the ability level, coz problem is "whos aura applied on me" question, if have more aura. Yeah Nest also made a solution to this if u dont use default aura but could be nice with a single native function call :D

9. a newbie cant do array ordering system if he want order his multiboard by highest kills to lowest kills (example)
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
1. yes just under that u can mean to more thing, mainly my problems was the angle setting

Pitch, roll, yaw were specifically mentioned.

2. ofc u can set after add/remove crow form, but u also go over the cliffs, what normally way not allowed, i mean add/remove ability to unit with foot mov type, then this unit type after this bug cant be reseted again to normal foot mov type, he will act like flying unit later too just maybe with 0 height but still flying unit.

Crow form does not change the movement pathing. For foot units it's like they become hovering, just the graphical height settable. But yeah, probably a SetUnitMoveType function would not be too shabby.

3. about channel and backswing, correct me if it is wrong but u must set it on unit in object editor but then its applied if unit want cast different abilities no? what if i want ability what isnt instant and ability what instant same time? that few instant ability is a annoying limit

I said to flag the ability whether you want to use the unit's cast point/back swing or not. At the moment, channel abilities all do consider cast point but leave out back swing (which is ugly btw).

4. solution about getpathable? maybe the unit creating way what is the best way not faster than a native getpathable function (what not exist)

You can recycle dummies/units and it was also done with cheaper items. No doubt could there be faster approaches but looking through the forums, that did not appear to be a real performance problem for most.

5. if u watched witchery advanced camera system in spell section then u understand what i mean (still Nest unit creation system instead item creation is more accurate and work better, just could be nice a native instead this tricks)

Or perhaps you could just explain it to me?

6."The computer won't know what to do in your map" - then neutral hostile player trolls why can use bloodlust and heal and etc? only thing what missing is seeking enemy but casting, ordering work with there def abilitites,no?

Heal and Bloodlust are standard abilities, even automatable. Well, what you speak of is a very simple scenario with minor intelligence and wc3-enginewise. That maybe could be applied (turned on) for player/units. It does not work when you alter the abilities in their meaning. I believe Starcraft2 had a construction kit of adding different general behaviors to carve out an AI as a constellation of basic methods.

7. coz easily who not vjasser like me :p

Almost all jass users use vJass. Almost no jass user uses GUI. So operating from the GUI side, you may import scripts but they do not have to fiddle with the jass code, therefore the variable representation there is meaningless to them.

8. but removeability function exist where u remove the buff like a normal ability, also if u have aura harder to check the ability level, coz problem is "whos aura applied on me" question, if have more aura. Yeah Nest also made a solution to this if u dont use default aura but could be nice with a single native function call :D

RemoveBuff exists because buffs were designed to be droppable. It's an interface so for example death or dispel may cancel the spell effect too. There is not such that you can reset the level though and expect the ability to be updated. To check the buff level, a correction of GetUnitAbilityLevel would be more appropriate anyway.

9. a newbie cant do array ordering system if he want order his multiboard by highest kills to lowest kills (example)

There is a lot newbies cannot do. That's not only a rare problem but also fast told how to.
 
Level 17
Joined
Nov 13, 2006
Messages
1,814
Pitch, roll, yaw were specifically mentioned.



Crow form does not change the movement pathing. For foot units it's like they become hovering, just the graphical height settable. But yeah, probably a SetUnitMoveType function would not be too shabby.



I said to flag the ability whether you want to use the unit's cast point/back swing or not. At the moment, channel abilities all do consider cast point but leave out back swing (which is ugly btw).



You can recycle dummies/units and it was also done with cheaper items. No doubt could there be faster approaches but looking through the forums, that did not appear to be a real performance problem for most.



Or perhaps you could just explain it to me?



Heal and Bloodlust are standard abilities, even automatable. Well, what you speak of is a very simple scenario with minor intelligence and wc3-enginewise. That maybe could be applied (turned on) for player/units. It does not work when you alter the abilities in their meaning. I believe Starcraft2 had a construction kit of adding different general behaviors to carve out an AI as a constellation of basic methods.



Almost all jass users use vJass. Almost no jass user uses GUI. So operating from the GUI side, you may import scripts but they do not have to fiddle with the jass code, therefore the variable representation there is meaningless to them.



RemoveBuff exists because buffs were designed to be droppable. It's an interface so for example death or dispel may cancel the spell effect too. There is not such that you can reset the level though and expect the ability to be updated. To check the buff level, a correction of GetUnitAbilityLevel would be more appropriate anyway.



There is a lot newbies cannot do. That's not only a rare problem but also fast told how to.

1. atm u must make 360 unit each with different pitch angle if u want something smoothly, its pretty annoying, another way the vexorian dummy unit thing but i cant use it some (i talk about correct pitch for arrow when its flying in parabola)

2. then why i can go over the cliff sometimes in thix example map? http://www.hiveworkshop.com/forums/triggers-scripts-269/need-suggestive-feedback-212890/#post2115620 with peasant/priest?

3. right about recycling but kinda could be better a simple native function than 1 dummy recycler+something what move the unit/item allways

4. http://www.hiveworkshop.com/forums/...arch=advanced%20camera%20witchery&d=list&r=20 example here, u dont ahve problem with "omg a tree/structure is between camera and my hero" thing

5. ok but i mean here atleast a minor base ability useage, i dont talk about custom or less used abilities but could be nice if u make a paladin to player 2 then that paladin use his abilities, learn his spell, dont needed same hard core ai like here http://www.hiveworkshop.com/forums/spells-569/hero-ai-v4-3-3-a-209141/, but atleast a minimal for make more enjoyable a map without make trigger for basic things like ordering a boss for heal him self or use his ability on you

6. most of gui use custom script what count to jass :p

7. i started make my custom buff system because kinda annying if u want buff somebody lets say with 17% critical strike then kinda imposible without make alot ability or 1 with lv100, this is why i talk about buffs.
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
1. atm u must make 360 unit each with different pitch angle if u want something smoothly, its pretty annoying, another way the vexorian dummy unit thing but i cant use it some (i talk about correct pitch for arrow when its flying in parabola)

As I said, this wish was already stated in the first round.

2. then why i can go over the cliff sometimes in thix example map? http://www.hiveworkshop.com/forums/triggers-scripts-269/need-suggestive-feedback-212890/#post2115620 with peasant/priest?

call SetUnitPathing(u , false)

Everything seemed pretty buggy.

4. http://www.hiveworkshop.com/forums/...arch=advanced%20camera%20witchery&d=list&r=20 example here, u dont ahve problem with "omg a tree/structure is between camera and my hero" thing

camSys.jpg


An exact intelligent camera would not be so easy/performant I guess as the graphics have to be checked nor would it be flexible. Why not take a custom system for it? It's not like Blizzard should make our maps.

5. ok but i mean here atleast a minor base ability useage, i dont talk about custom or less used abilities but could be nice if u make a paladin to player 2 then that paladin use his abilities, learn his spell, dont needed same hard core ai like here http://www.hiveworkshop.com/forums/spells-569/hero-ai-v4-3-3-a-209141/, but atleast a minimal for make more enjoyable a map without make trigger for basic things like ordering a boss for heal him self or use his ability on you

I am not adept with wc3 ai but I know computer-controlled units do use some abilities on certain events. No idea how this differs to creeps. There are also actions to run ai scripts.

6. most of gui use custom script what count to jass :p

Fatal mistake btw, GUI users importing stuff they do not understand. Anyway, would then say display the real var name in variable editor so you can even change the prefix and it does not break backwards compatibility. You still have to pay attention to not name your variable after other identifiers like generated variables.

7. i started make my custom buff system because kinda annying if u want buff somebody lets say with 17% critical strike then kinda imposible without make alot ability or 1 with lv100, this is why i talk about buffs.

Setting the level of buffs does help you there how?
 
Level 17
Joined
Nov 13, 2006
Messages
1,814
As I said, this wish was already stated in the first round.



call SetUnitPathing(u , false)

Everything seemed pretty buggy.



camSys.jpg


An exact intelligent camera would not be so easy/performant I guess as the graphics have to be checked nor would it be flexible. Why not take a custom system for it? It's not like Blizzard should make our maps.



I am not adept with wc3 ai but I know computer-controlled units do use some abilities on certain events. No idea how this differs to creeps. There are also actions to run ai scripts.



Fatal mistake btw, GUI users importing stuff they do not understand. Anyway, would then say display the real var name in variable editor so you can even change the prefix and it does not break backwards compatibility. You still have to pay attention to not name your variable after other identifiers like generated variables.



Setting the level of buffs does help you there how?

2. so coz of collision is off? yea, that could be reason, so i think u have right
3. hehe, with me not happened when i tryed (ok already was madness from going out from city :D). point there
4. ai script work only if melee map with building etc,no?
5. ok alot people import spell from spell section without knowing exactly how its work :p
6. this is the point, u cant level it else still easier the checking the buff levels in Life steal, Attack speed perc, Damage Increase buff percentage, regeneration etc everywhere where have percentage could easier than useing alot variable.
ofc i used variables for make everything buffable on my map
 
Level 6
Joined
Mar 31, 2012
Messages
169
I would really like to see the creation of fresh corpses, in addition to the already-existing fleshy and skeletal corpses. To achieve this now, you need to have a custom doodad with the model of the unit you want dead - only with its stand and death animations swapped. That's a pain.

I have a question regarding the general purpose of the wish list. Do these ever make it anywhere? Are there third parties working to implement these functions into a third-party editor? I didn't think Blizzard was still running development for WarCraft III.
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
I would really like to see the creation of fresh corpses, in addition to the already-existing fleshy and skeletal corpses. To achieve this now, you need to have a custom doodad with the model of the unit you want dead - only with its stand and death animations swapped. That's a pain.

Like

JASS:
local unit u= CreateCorpse(Player(0), 'hpea', 0, 0, 0)

call UnitSuspendDecay(u, true)
call SetUnitBlendTime(u, 0)
call SetUnitAnimation(u, "death")
call SetUnitTimeScale(u, 100000)

?

Do these ever make it anywhere?

Just to the Battle.net suggestion forum, which Blizzard claims of they would read it.

I didn't think Blizzard was still running development for WarCraft III.

I do not think it either. But anyway, there are so many reappearing problems due to (minor) feature lack throughout the forums and "if this was possible"-cases that I thought it would be funny to collect and imagine which changes would make sense and what we would reply if Blizzard ever asked. Could also start a counter thread "What would you do if wc3 had those features".

Are there third parties working to implement these functions into a third-party editor?

Most of those suggestions are not realizable from the mapmaking size independent from the editor because the game interprets the map files by its own rules. You would need to modify the game then, which is illegal and would cause many compatibility problems. After all, you want to play many different maps with the community.
 
Level 6
Joined
Jun 19, 2010
Messages
143
how's about mapmaking program can work with multiple array like a matrix
a[n1,n2,n3] (matrix 1x3) instead of a[n1] only
Code:
matrix 2x3 
lal= [n1 n2 n3
      n4 n5 n6]
matrix 3x3
lal= l n1 n2 n3 l
___  l n4 n5 n6 l
___  l n7 n8 n9 l  (sorry my keyboard does have the "l")
blizzard can implement those I think.
 
Level 6
Joined
Mar 31, 2012
Messages
169
I'm unfortunately not familiar with JASS at all, but if that's a way to do it via JASS, I'll look into it. I was moreso looking for a simpler way to do so, like through direct trigger interpretation (like 'fleshy corpse' and 'skeletal corpse' in the 'create corpse of unit' trigger action - I never understood why 'fresh corpse' wasn't always there).
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
I'm unfortunately not familiar with JASS at all, but if that's a way to do it via JASS, I'll look into it. I was moreso looking for a simpler way to do so, like through direct trigger interpretation (like 'fleshy corpse' and 'skeletal corpse' in the 'create corpse of unit' trigger action - I never understood why 'fresh corpse' wasn't always there).

Those functions are available in GUI too
Animation - Change Unit Animation Speed
Animation - Change Unit Blend Time
Animation - Play Unit Animation
Unit - Suspend Corpse Decay

Well no, we always have to write our special stuff we want. I would not even know that anyone makes regular use of corpse creation. The wish list shall contain fundamental stuff or things that are highly inconvenient and/or frequently asked for by the community.
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
The third round somehow dove under because no/hardly wishes were done. Any more ideas from you?

Currently we have:
  • Heightened memory for tilesets for more tiles
  • Set negative flying height via trigger
  • Add EGUI functions to the standard distribution (in their own category)
  • Native 2d/3d arrays
 
Level 33
Joined
Mar 27, 2008
Messages
8,035
We can ask Blizzard to open up a $1000-$10,000 Kickstarter.com project to hire someone to make these changes, because apparently they don't have anyone on their staff to do this.
Even if there are people left, I think they would use their energy on other platform such as WoW or SCII or something.

OT:

Player - Disable Ability
I think we should allow the function SetPlayerAbilityAvailable should only affect Units, not Players.
Because sometimes we want to replace the casted ability with a sub-ability that requires us to activate it and once it is activated, the sub-ability will be removed and once again, the real ability is added (re-enable) to the unit, making the spell retains its cooldown.

If we are using the current method, and if we have 2 units having same ability, when Unit A cast the ability, we would disable the ability for that Player, right ?
And when the casted ability is disabled for that Player, Unit B would get affected as well, even when that unit does not cast any spell at all.

Adding Buff To Unit
They should allow the trigger to handle buff-adding system instead of just creating dummy units and order it to cast on a unit.

Remove Expiration Timer
Currently, we can only add expiration timer to a unit, not removing it.

Fix Add/Remove Classification Function
Currently, these 2 functions are somewhat, 'bugged' for some reasons.
There are some working and some not.
Refer here: List Of Add/Remove Classification Tests

Increase Max Unit's Movement Speed
Currently we have 522 as its max.
Something around 1000 ~ 2000 would be nice.
But I think this won't be the main issue to add to the WishList somehow.

Add Auto-cast For Channel
I don't know this, perhaps ?

Detecting Player Types Cheat Message
Can detect player uses cheat, and do something about it, it would be at Event perhaps.
 
Last edited:
Level 26
Joined
Aug 18, 2009
Messages
4,097
Player - Disable Ability
I think we should allow the function SetPlayerAbilityAvailable should only affect Units, not Players.[...]

For cooldown preservation, it would also be better if we had proper Get/SetCooldown functions. But of course, SetUnitAbilityAvailable would also be good for other purposes, hiding the icon in general without disallowing to cast it via trigger etc.

Adding Buff To Unit
They should allow the trigger to handle buff-adding system instead of just creating dummy units and order it to cast on a unit.

Permanent and timed, so you can do the blinking effect as well.

I think the others are good as well.

Not everything but of this was included in prior lists but yes, I will check it then.
 
Level 33
Joined
Mar 27, 2008
Messages
8,035
For cooldown preservation, it would also be better if we had proper Get/SetCooldown functions. But of course, SetUnitAbilityAvailable would also be good for other purposes, hiding the icon in general without disallowing to cast it via trigger etc.
I think SetUnitAbilityAvailable would just replace SetPlayerAbilityAvailable, both does the same thing any way, only SetUnitAbilityLevel gives us freedom.

But, I would think that chances for Blizzard to look upon these things are like, 1% ?
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
Yes, I read that article a while ago and do not understand what they consider "unsolicited". And yes, they claim that they would read it but not any evidence was ever displayed. What about their policy? They do not want to take ideas of other games but are okay with suggestions of people that do not belong to Blizzard?
 

Dr Super Good

Spell Reviewer
Level 63
Joined
Jan 18, 2005
Messages
27,180
People need to learn about the software life cycle...

Blizzard is not allowed to maintain WarCraft III anymore due to the software life cycle governing the software industry.

The only way any considerable patching will occur is if WarCraft III is re-released (eg ported to consoles so the code gets some work) or made open source (any lazy programmer can then spend time improving it if they wish which is a lot in this case).
 

nGy

nGy

Level 11
Joined
Apr 15, 2011
Messages
123
JASS:
native AddUnitAnimation takes unit whichUnit, string whichAnimation returns nothing
//Adds the bone movement of one of the unit's animations to the current animation.
native RemoveUnitAnimation takes unit whichUnit, string whichAnimation returns nothing
//Removes the bone movement of one of the unit's animations from the current animation
native ShowUI takes boolean show returns nothing
//combined with the possibility of custom ui this would be really awesome.
native SetUnitPortrait takes unit whichUnit, string modelName returns nothing
native SetUnitPortraitAnimation takes unit whichUnit, string whichAnimation returns nothing
native SetTerrainCliffLevel takes real x, real y, integer level, integer CliffType returns nothing
It would also be nice, if we could edit some of the gameplay constants for certain objects (like units/items/...) individually, freely choose for a unit to be a hero or to be a normal unit, set the vision range to higher values than 1800 and turn off auto-attacking for units (maybe by setting acq.-range to 0 or sth.).
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
JASS:
native AddUnitAnimation takes unit whichUnit, string whichAnimation returns nothing
//Adds the bone movement of one of the unit's animations to the current animation.
native RemoveUnitAnimation takes unit whichUnit, string whichAnimation returns nothing
//Removes the bone movement of one of the unit's animations from the current animation
native ShowUI takes boolean show returns nothing
//combined with the possibility of custom ui this would be really awesome.
native SetUnitPortrait takes unit whichUnit, string modelName returns nothing
native SetUnitPortraitAnimation takes unit whichUnit, string whichAnimation returns nothing
native SetTerrainCliffLevel takes real x, real y, integer level, integer CliffType returns nothing
It would also be nice, if we could edit some of the gameplay constants for certain objects (like units/items/...) individually, freely choose for a unit to be a hero or to be a normal unit, set the vision range to higher values than 1800 and turn off auto-attacking for units (maybe by setting acq.-range to 0 or sth.).

ShowUI --> there is ShowInterface but it also prevents most user control, switching to UI ingame was already listed I think

Which gameplay constants do you mean?
The hero state is connected to the raw id at the moment. Units that start with a capital letter there are considered heroes, changing that might kill some things.
Worker-classified units won't attack automatically unless they are offended by other workers.
 

nGy

nGy

Level 11
Joined
Apr 15, 2011
Messages
123
ShowUI --> there is ShowInterface but it also prevents most user control, switching to UI ingame was already listed I think

Which gameplay constants do you mean?
The hero state is connected to the raw id at the moment. Units that start with a capital letter there are considered heroes, changing that might kill some things.
Worker-classified units won't attack automatically unless they are offended by other workers.

I know there is "ShowInterface", but aside from preventing the user control, it also doesn't remove all overlayed graphics - there still is a frame (although this might be not quite hard to remove by importing custom texture).
For gameplay constants i was thinking about something like hero features (gained/required exp, max level, gains from attributes, revive cost, ...), item features (pick up/ drop range, ...), neutral behaviour, ...
About the hero thing: Yeah, I missed that one.
I know that worker-classified units won't auto-attack, but this has the side-effect that its icon will appear at the bottom-left corner of the screen, which isn't removable (correct me if I'm wrong). Also, those units will always flee from possible sources of damage, whereas non-worker units attack engaging units even if they're outside of acquisition-range.
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
Even if you replace the graphics, there is still a thick black brush in the UI, so I am not sure whether changing that is simple with the graphics engine at the moment.

What you mentioned with gameplay constants are a lot of different things and for some there are good enough workarounds like changing unit properties via trigger or catching the order of picking up items. Drop does not have one, so it would be more meaningful to add that.

The worker icon won't show when you add the classification ingame. They won't flee if you set the flag in object editor to false.
 
All I want is the following:

JASS:
code array
// So we don't have to deal with boolexpr arrays

function RunFunction takes code c returns nothing
// Runs a code so you dont have to bother with ForForce

function GetMouseX takes nothing returns real
function GetMouseY takes nothing returns real
// Returns screen coordinates

function SetMouseX takes real r returns nothing
function SetMouseY takes real r returns nothing
// Sets the mouse coordinates based on the screen

function SetUnitModel takes string path returns nothing
function GetUnitModel takes nothing returns string

function GetUnitPortraitModel takes nothing returns string
function SetUnitPortraitModel takes string path returns nothing

function DestroyTrackable takes trackable t returns nothing
function DestroyHashtable takes hashtable h returns nothing

function DestroyTerrainDeformation takes terraindeformation td returns nothing

And they should use BigInts for unit xp when a unit reaches level 6553 -.-
 
Level 5
Joined
Jun 24, 2012
Messages
112
Oooo. Great thread.

Here's mine:
- Set/Create cliffs via triggers.
- Create circular regions.
- Modify Hotkeys via triggers.
- Add abilities to items via triggers (haven;t looked to see if doable or not)
- Change item name/description via triggers.
- Add destructibles to groups.

Good luck! :p
 
Status
Not open for further replies.
Top