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

Warcraft 3 patch wish list

Status
Not open for further replies.

pyf

pyf

Level 32
Joined
Mar 21, 2016
Messages
2,985
Wow, how did you guys find all this out. @pyf you study music? :p

No. I simply used to be very much into computer stuff.
For me, these are only memories of previous discoveries / fun experiments.

For those who want to install v7.1a :
https://appdb.winehq.org/objectManager.php?sClass=version&iId=20968

More recent version with installer welcome...
I would suggest you do *not* associate any file extension with it, just in case...

Miles Sound System development history:
http://www.radgametools.com/msshist.htm
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
In the Miles Sound Player, midi files do loop.
Except one would also want looping MP3/WAV files as well. It is a very common feature of games, especially on consoles, that for some reason Blizzard has never implemented into any of its modern games.
Wow, how did you guys find all this out.
I make it my business to know a lot about everything related to computers.
But is it possible to just pass the .midi instructions to the sound chip and play them?
No it is not possible at all. Since Windows Vista that functionality has been discontinued. A software based midi synthesizer for DirectMusic still exists however the API is marked as extremely deprecated/obsolete and using it would defeat the purpose of Blizzard maintaining WC3.
 

pyf

pyf

Level 32
Joined
Mar 21, 2016
Messages
2,985
Except one would also want looping MP3/WAV files as well.

...which works with them too, in the Miles Sound Player 7.2g.
...
What ? Yes, I upgraded in the meantime.

I make it my business to know a lot about everything related to computers.

Since these installers are now very elusive to find, I have uploaded a quick and dirty Pastebin of some of them. Back then, they were all freely downloadable from the official RAD Game Tools site.

If someone is looking for something from them that was free to download, maybe I have it.
 

pyf

pyf

Level 32
Joined
Mar 21, 2016
Messages
2,985
According to the makeloop executable included with Miles, it does so "by decimating the input .WAV or .MP3 data to an integral number of frames and applying any required overlap-window precompensation."

Please see the attached txt file for additional info.

Hope it helps.
 

Attachments

  • makeloop.txt
    1.8 KB · Views: 71

Kyrbi0

Arena Moderator
Level 45
Joined
Jul 29, 2008
Messages
9,502
All this talk of sound, and none of how restrictive Blizzard is with the whole 'sound set' issue! I would love a solution that would let us import Sound Sets in as easily as models, textures, and the like. If not, at least some understanding as to *why* it's a problem.

I'd like them to include the models from the Funny Bunny Egg Hunt. They're official blizz models, much like the cars from their car racing map, but weren't included in a patch (unlike the cars from the racing map).
Would be nice, but can't you just export them from the map?
 
Level 5
Joined
Sep 6, 2010
Messages
91
As yet, I did not see new announcements about the next patch warcraft 3, I'll post some requests more to wish list meantime.

Undecided:
- Fix problems of destructible and pathing, when a destructible is created after having started a game, those pathing does not work as it should, especially walking by the sea.
- If possible give a function to get the full damage before passing through defense, art avoidance, critical damage etc.
- Fix the problem of vision of life and mana when it reaches a number more than 10,000
- Add classification "Ward"

Unfinished:
- If possible provide a system for handling the user interface, example http://www.hiveworkshop.com/threads/reverse-engineer-game-dll.268718/page-5
- If possible, provide functions to handle the "constants" of the game in real time
- If possible give a detonator, to move to any point on the map any destructible, position x, y, z.
- Obtaining data from the user interface for each player, such as obtaining the position of the mouse, handling players, shown on http://www.hiveworkshop.com/threads...replacement-for-reinventing-the-craft.244317/

Other:
- Detect when you click an icon, skill, item, build menu, etc.
- Resurrect normal units.
- Change the angle of a unit that has 0 motion using SetUnitFacing

Although I do not know exactly if Classic will bring a remastered game of Wc3, or will be for another game XD, by this post http://us.blizzard.com/en-us/company/careers/posting.html?id=16000KC. .. at least it gives me a relief that now are working on improving even more classic games, and they need help, even could include cof cof patreon to help them in something (Well I'm joking XD)
Greetings..
 
Last edited:
  • Like
Reactions: pyf

pyf

pyf

Level 32
Joined
Mar 21, 2016
Messages
2,985
Although I do not know exactly if Classic will bring a remastered game of Wc3, or will be for another game XD, by this post http://us.blizzard.com/en-us/company/careers/posting.html?id=16000KC. .. at least it gives me a relief that now are working on improving even more classic games, and they need help [...]

Nice find.
Some Hive members might wish to apply, in order to try to get things done their own way. :grin:

Classic also needs a senior software engineer, with "a passion to make life difficult for the “bad guys”".
Anyone up to the task here?


Even more job opportunities worldwide:
http://us.blizzard.com/en-us/company/careers/directory.html#region=Global
 

Rui

Rui

Level 41
Joined
Jan 7, 2005
Messages
7,550
People have been complaining about Blademasters for a while. Out of the blue, I thought of a few changes for him, with an extra editor change to go with it:
  • Base agility reduced by 1 or 2 points (lowers damage, attack speed and armor, which also serves to make him just a little less tanky)

  • Mirror Image now always spawns 3 illusions. Mana cost from 125 to 100/50/50 and cooldown to 10/10/4.

  • Wind Walk no longer deals bonus damage.

  • Critical Strike scrapped for a new, similar ability.
    • Critical Strike: The Blademaster's training prepares him to be attentive and spot enemies' weak points, dealing bonus damage. Every 6 seconds, the Blademaster's next attack will deal 2x/3x/4x bonus damage. Can trigger when Wind Walk breaks.

    • (Blizzard could make the above new ability useful by allowing the editor to customize not only bonus damage and cooldown, but also the red popup's display toggle, valid targets, bonus damage as a real value instead of only percentage, and damage type—set to Hero by default, but changeable to other things like Normal and Magic.)
 

Kyrbi0

Arena Moderator
Level 45
Joined
Jul 29, 2008
Messages
9,502
You and GhostThruster have, so far, provided some of the best analysis of the Blademaster I've seen in recent memory; I'd love to see you two duke it out (both philosophically &, since we can, physically (mod the game & see how it plays).
 
  • Like
Reactions: Rui

Deleted member 219079

D

Deleted member 219079

You have to remember that BM brings the DPS for the orc race. Nerf to BM must be justified by making a relevant orc unit stronger.
 

Kyrbi0

Arena Moderator
Level 45
Joined
Jul 29, 2008
Messages
9,502
You have to remember that BM brings the DPS for the orc race. Nerf to BM must be justified by making a relevant orc unit stronger.
Ah dannae about that... Isn't the whole point that the BM is far-and-away an overly empowered hero? Isn't he like, "if you play Orc and don't first-pick BM you are dumb" over-powered?

Normally I think you are right, but still.

//EDIT// - 4,444th post, w00t!
 

Deleted member 219079

D

Deleted member 219079

Yes if you don't first pick bm you are dumb :) also known as cheesing
 

Rui

Rui

Level 41
Joined
Jan 7, 2005
Messages
7,550
@Kyrbi0 Thanks :), but I would hardly call it an analysis. I was attempting to make the Blademaster less reliant on luck and a bit less of a nuisance early in the game, especially in team games where (at least it was so back in my day) it's not uncommon for more than 1 blademaster to raid a base and really hurt a player's economy, sometimes even killing the player's hero (using a TP scroll in a lvl1 hero is generally frowned upon).

The Mirror Image change is also an attempt to make him useful at other things. 3 copies of the Blademaster is a huge advantage for tanking creeps early in the game. Additionally, I'm unsure, but you might just be able to trap a unit with 3 illusions. Wind Walking into fleeing units and then using Mirror Image to disturb their course could be an idea to help the Orc player catch the stragglers. Finally, if these incentives aren't enough, Mirror Image could refresh Critical Strike. This is worth thinking about because Mirror Image is among the most unused abilities, if not the most unused itself. Orcs are essentially a melee race, which might see its prowess diminished if 0 DPS images are getting in the way.
 
Level 20
Joined
Aug 13, 2013
Messages
1,696
^ His windwalk is also op for mainly prioritizing to attack the workers silently which slows down the progress of the enemies economy. Increasing it's cooldown actually helps to nerf it. But I enjoy using it as an early strategy a long ago.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
Blizzard is consulting professional WC3 players for balance, it is better we keep to giving them ideas for modding.

A solution to windwalk would be to make it start cooling down only when not active. This would mean that after attacking a worker you are vulnerable and cannot wind walk for a minimum period of time.
 
Level 9
Joined
Jun 21, 2012
Messages
432
Blizzard is consulting professional WC3 players for balance, it is better we keep to giving them ideas for modding.

A solution to windwalk would be to make it start cooling down only when not active. This would mean that after attacking a worker you are vulnerable and cannot wind walk for a minimum period of time.
So. That means that another update will coming?
 

deepstrasz

Map Reviewer
Level 69
Joined
Jun 4, 2009
Messages
18,856
What about enabling more to infinite saving possibilities per player for LAN? As it's now, a player can only save once per game, so the last player that saves also creates the necessity for the host to recreate the room and load the map so further save states can be made.
 
Level 6
Joined
May 29, 2013
Messages
127
Please add the collision controle. which units struck and which units are not struck. It is already implemented in Goblin mines.
 
Level 2
Joined
Feb 28, 2011
Messages
15
A native for checking whether we're in a replay or not would be mighty useful. So far replay checking functions either have to waste pauses or use a method that isn't 100% reliable.

Oh and lightnings also get clobbered when save/loading game.

Sorry if mentioned already; too many pages to read through.
 
Last edited:
I haven't really had time to read this whole thread but here is my personal wishlist:
  • Jass natives for setting a unit's training progress just like you can set the construction progress of a structure.
  • Natives for resetting or applying the cooldown of individual spells.
  • Properly implementing the "burrowed" invisibility type so that we can use two different kinds of detection/invisibility.
  • Making it so that "Techtree - requirements" works for all spells (for instance Phoenix Fire) and not just some.
  • Allowing units to conduct production/research regardless of whether they are a structure.
  • Jass native for checking whether a path can be found from one point to another point, given a certain movement type. This would help SO MUCH when creating AI. Doesn't have to check for unit collisions, just the pathing map.
  • More unit classification tags, to get more control over which unit can target which. Right now we only have two usable ones (Ancient and Suicidal). A simple fix would be to add "Giant" and "Not Giant" to the list of "targets allowed".
  • An ability which manipulates a unit's attack range and/or projectile art.
  • A generic "a unit takes damage" event. I can understand if they decided to omit this to prevent events from spamming and slowing down the game, but let's face it - we use workarounds to solve this anyway, the only difference is that they are less stable and harder to use than a generic event would be.
  • Right now, disabled/paused units will not be targeted by phoenix fire, which is wrong. I'd love it if they could fix this.
 
Last edited:
Level 19
Joined
Dec 12, 2010
Messages
2,069
A simple fix would be to add "Giant" and "Not Giant" to the list of "targets allowed".
issue is, it's impossible. targets are stored in a single 32-bit integer, and all of those bits are already taken. theres no room for new targets, literally none. it would be hella quest to re-design whole targeting ssytem to work with 2 fields at once
 
Ah dannae about that... Isn't the whole point that the BM is far-and-away an overly empowered hero? Isn't he like, "if you play Orc and don't first-pick BM you are dumb" over-powered?
it's hard to say. IMO the racial matchups are all roughly 50% right now (varies on maps), so yes even though the BM is overly OP, the orc race relies on him to remain at that overall even footing.

as a non-orc player, i do think his effort-reward ratio is way too high, and a small nerf wouldn't hurt the orc race. i would have to play as orc tho to fully understand how powerful the bm is and how easy he is to control.

only change there is a consensus on is item bonuses shouldn't count in Critical Strike's damage multiplier.


i wish the ladder community took more advantage of wc3's modding capabilities. we could theoretically balance the game ourselves, just by playtesting and tweaking with one another. then again, i wish the average modder was more inclined towards melee wc3.
 
issue is, it's impossible. targets are stored in a single 32-bit integer, and all of those bits are already taken. theres no room for new targets, literally none. it would be hella quest to re-design whole targeting ssytem to work with 2 fields at once

Are you sure that they are all taken? It doesn't feel like there are 32 different target types... are there some hidden ones?
 
Level 19
Joined
Dec 12, 2010
Messages
2,069
i wish the ladder community took more advantage of wc3's modding capabilities. we could theoretically balance the game ourselves, just by playtesting and tweaking with one another. then again, i wish the average modder was more inclined towards melee wc3.
thats easy enough to do actually, question is how who would play those modified maps?

Are you sure that they are all taken? It doesn't feel like there are 32 different target types... are there some hidden ones?
v7KBwE6.png

31 to be precious

e: fck doublepost
 
Last edited:

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
actually switching to 64 from 32 isnt simple as is, not to speak you suggest to throw away tons of users. anyway, thats the lest possible thing ever to think of
He suggested declaring the flag field as a uint64_t as opposed to a uint32_t. It is literally a 1 minute change in the source code if it is well written. Sure it will be slower to manipulate that field then, but the difference is likely trivial.

I have absolutely no clue how it could possibly throw any user away. Care to elaborate?
 

Kyrbi0

Arena Moderator
Level 45
Joined
Jul 29, 2008
Messages
9,502
it's hard to say. IMO the racial matchups are all roughly 50% right now (varies on maps), so yes even though the BM is overly OP, the orc race relies on him to remain at that overall even footing.

...

... then again, i wish the average modder was more inclined towards melee wc3.
Just a side note; I'm really glad there are others willing to resurrect a conversation after 3.5 months. ^_^


Really? Hm. Interesting. I guess I've just bought into the narrative that "BM = OP".

Yeah, lol, would be nice I s'pose. I'm just really bad at games like this, & don't derive a lot of joy from playing competitively. Single-player/Campaigns tend to align with how I like RTS games to go.

thats easy enough to do actually, question is how who would play those modified maps?


v7KBwE6.png

31 to be precious

e: fck doublepost
Hm. I'm somewhat versed in computer/engineering stuff, so I see how this would be an issue (& how it could very well be difficult to change, depending on how convoluted the source code is).

However, I see an "easy" fix?... The current "Targets Allowed" list as presented is a confusing mix of Positive & Negative states; 'Invulnerable' & 'Vulnerable'? 'Ancient' & 'Non-Ancient'? This not only leads to wasted space, but some confusion on the part of the player/system ("wait, so there's 'can target Ancients' and 'can't target Ancients'. But then I can also check 'non-Ancient', so it 'can target Ancients AND non-Ancients', or 'can't target Ancients but CAN target non-Ancients' and there's not can't dont un-target non-un-Ancients...")

Rather, provide two fields/call two states: "Targets Allowed", "Targets Disallowed". They can be mirrored, providing for "Ancients" and "Non-Ancients", "Allied" and "Non-Allied", etc. The ones that aren't mirror-able then are freed space for other ones ("Giant", "Tauren", "Whatever", etc).

Now that I think about it that might be a totally dumb idea, but I've already written this much, so I'm sticking to my guns.
 
Level 19
Joined
Dec 12, 2010
Messages
2,069
However, I see an "easy" fix?... The current "Targets Allowed" list as presented is a confusing mix of Positive & Negative states; 'Invulnerable' & 'Vulnerable'? 'Ancient' & 'Non-Ancient'? This not only leads to wasted space, but some confusion on the part of the player/system ("wait, so there's 'can target Ancients' and 'can't target Ancients'. But then I can also check 'non-Ancient', so it 'can target Ancients AND non-Ancients', or 'can't target Ancients but CAN target non-Ancients' and there's not can't dont un-target non-un-Ancients...")

Rather, provide two fields/call two states: "Targets Allowed", "Targets Disallowed". They can be mirrored, providing for "Ancients" and "Non-Ancients", "Allied" and "Non-Allied", etc. The ones that aren't mirror-able then are freed space for other ones ("Giant", "Tauren", "Whatever", etc).
you may wonder, but "none" - is a flag #1. only this disallow ability from being activated. if you state no flags (means 0), ability can be used on any normal unit. non-hero allows to use it onto anything but heroes, hero - heroes+illusions only. they aren't that simple as they may seem.

He suggested declaring the flag field as a uint64_t as opposed to a uint32_t. It is literally a 1 minute change in the source code if it is well written. Sure it will be slower to manipulate that field then, but the difference is likely trivial.

I have absolutely no clue how it could possibly throw any user away. Care to elaborate?
well I thought you can't run 64-bit values inside 32-bit OS and/or old CPUs. Which is still vast majority for wc3. Internet grows fast and get cheaper even in 3rd world countries, hardware - only at rich countries. my analytics says there's many players from phillipines & east EU, mostly poor countries, where you can't gt updates that easily
 
Level 19
Joined
Dec 12, 2010
Messages
2,069
Invulnerable' & 'Vulnerable'
if you state "vulnerable" - it will do nothing by itself, 'cause by default it will only target vulnerable targets. state "invu" - and your skill will affects ONLY invulnerable units. So you need both to cover your unit with aura, for instance.

just an example of what I had to setup so ability can target anything (structure invul items ground units)
enemies,friend,ground,invu,terrain,vuln,item,structure,neutral,self
erase any of them and something is fucked
 
you may wonder, but "none" - is a flag #1. only this disallow ability from being activated. if you state no flags (means 0), ability can be used on any normal unit. non-hero allows to use it onto anything but heroes, hero - heroes+illusions only. they aren't that simple as they may seem.


well I thought you can't run 64-bit values inside 32-bit OS and/or old CPUs. Which is still vast majority for wc3. Internet grows fast and get cheaper even in 3rd world countries, hardware - only at rich countries. my analytics says there's many players from phillipines & east EU, mostly poor countries, where you can't gt updates that easily

You are talking about 64 vs 32 bit address bus which is an entirely different thing. Any computer can support 64 bit value types and fixed length values are included in the standard since 1999.

@Kyrbi0 yes, this might seem simple, but what happens to the maps that use the old convention? They become unsupported. However, if you just swap to 64 bit values everything still works, unless you have some binary format reader somewhere which expects the bytes to come in a certain order.
 
Last edited:

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
well I thought you can't run 64-bit values inside 32-bit OS and/or old CPUs.
Might be wise to learn some computer basics before trying to comment on computer related technical stuff.

x86 (used by 32 bit OS) alone cannot manipulate 64 bit fields in a single instruction. It can manipulate them more slowly using multiple instructions. In fact even the cheapest 8 bit micro processor can be made to manipulate 64 bit fields although obviously with a lot more instructions executed than a 32 bit processor.

x86-64 (used by 64 bit OS) can manipulate 64 bit fields in a single instruction. 64 bit fields are manipulated very efficiently and near the same speed as 32 bit fields in standard x86. Do note that in general 64 bit field instructions might take more cycles to execute than 32 bit field ones depending on how long the underlying functional units take to execute which can depend on the content of the fields. This difference of execution time can end up being completely masked by pipelining resulting in 1 instruction per clock tick under ideal conditions.

You are talking about 64 vs 32 bit address bus which is an entirely different thing.
He is talking about the instruction set. Even x86 alone could support a bigger than 32 bit address bus with the appropriate extension (available since late 1990s), just Windows never used the feature to help push x86-64 builds. Also when x86 runs in such a mode it is less efficient than x86-64 due to limitations of the available instructions and none of the speed benefits x86-64 brings.

However, if you just swap to 64 bit values everything still works, unless you have some binary format reader somewhere which expects the bytes to come in a certain order.
You need to increment file format version and change the way the file stream is decoded. One should not be reading/writing structs directly anyway for portability.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
do you think dev didnt use direct calls from within object structs? 'cause with additional 4byte offset tons of data may become non-functional. unless they used pre-made functions to store every offset (which I doubt), and it's invisible due to compilator
Unless the source code is really bad then changing a field size or position will have no effect on the mechanics of everything else. The compiler will automatically recompute all member variable offset addresses. This is why the memory hack was kind of a joke since all those address offsets people were finding are subject to potential change every patch.

Then, you (the people here; silly English) were gambling since the beginning of this debate.
As a computer scientist I have a rough idea of what should be done to make a change. I was just correcting false information, what clearly is not a problem or will not have to be done.
 
Level 19
Joined
Dec 12, 2010
Messages
2,069
This is why the memory hack was kind of a joke since all those address offsets people were finding are subject to potential change every patch.
nope, object structure kept unchanged, and there's many reasons why. one of which - there's no point to do so. only for adding these extra field for extending current value. Any new fields will go to the tail, as usual
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
nope, object structure kept unchanged, and there's many reasons why. one of which - there's no point to do so. only for adding these extra field for extending current value. Any new fields will go to the tail, as usual
They can also change with compiler and vary between platforms. There is no guarantee that the Mac version of WC3 has the same struct order and packing as the Windows version, although order is likely to be the same. Even if they are not subjected to change often, it is still possible with every patch they are.
 
Status
Not open for further replies.
Top