• 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.

Is there any way to do Random Heroes in Melee without causing the tiers to go up a level and without changing every. single. hero?

Level 4
Joined
Mar 10, 2021
Messages
26
I decided to make myself a fun melee brawl with random heroes as an option, but I have come up against a wall: the method I am using is replacing a hero once it has been trained. The replaced hero is a "random" icon as far as the player is concerned, but it interacts with the melee triggers neatly.

However, as none of us are ever allowed to have fun easily, I have now learned that even if I remove the trained hero or replace them they still count. So, warcraft thinks I am on tier 3. I have tried so many things but nothing seems to work. I wanted to keep the heroes intact so players COULD take racial hero picks if they wanted, but I am seriously not able to come up with a solution. Even pushing everyone's tiers down doesn't work, the second random hero will cause the same problem. I don't understand what Blizzard expected when they used the word "replaced," because every time I try it I ALWAYS have to work around the trigger and it's often easier not to use it.

EDIT: There was no way to rectify the system, Warcraft III is such a mess
 
Last edited:
Level 34
Joined
May 14, 2021
Messages
1,601
Maybe someone has even posted a similar problem like yours long before:

Those threads seem to be outdated since no one has even found an exact solution about your problem.

I have also edited a melee map with the Random Hero trigger, but I don't know how to make those problems appear so that computer players will stick to normal heroes instead of random heroes (basically, when you train your own random hero, you'll get a random hero for every race + neutral, regardless of your playable race).
 

Uncle

Warcraft Moderator
Level 73
Joined
Aug 10, 2018
Messages
7,875
Here's a start to a system. It still needs some work, like using a queue system to cancel training and prevent training in certain situations. It also doesn't randomize anything (defaults to Paladin) but I figured you had logic for that already.
 

Attachments

  • Random Hero System 1.w3m
    23.8 KB · Views: 4
Last edited:
Level 30
Joined
Aug 29, 2012
Messages
1,383
Did you try removing everything from this "hero" line in the constants? Never really tried it, the tier system is a mystery to me

1735677405395.png
 
Level 14
Joined
Jan 10, 2023
Messages
248
If you are trying to make an unexploitable system, that disallows exploits rather than punishes players (who may not realize that it is a flaw or that they will be penalized) which I recommend you do, I would say despite all of the excellent recommendations here, you are correct: there is no way to use these native systems to your liking unless you are happy with (# of Hero Types) * (# of Tech Tiers) <= 9. In short, 2-4 Heroes if you want to have any tiers at all.

I have made a system of tracking hero limits that is very overwhelming for such a use as this and that I haven't finished the API on and I can confirm that you not find a system that has no exploits without the above mentioned 2-4 Hero type maximum.
I spent the day on this because I like a challenge and it was a part of my system (tiers) that I abandoned and decidedly will not support in my system, but your post made me want to try this out to make sure I couldn't find I solution at scale.. since my system has more to do will allowing creative uses for heroes and I decided not to support tiers because they were just too far out of scope for my system.

They main reason why this won't work is because the only way to allow for more hero types/tiers is to do as Uncle or deepstrasz has said, but in both of those cases I can find an exploit (I will say Uncle, I was extremely impressed (except that I had to use greedisgood !) and I'm sure more work would solve my exploit - I'm coming from a position of "how much work do you want to do" - but I did manage to get 5 Paladins by upgrading to a Castle immediately and then queuing 7 randoms before the first one trained.

The exploit in both cases comes down to the fact that if the Random dummy is a 'HERO' as defined in the gameplay constants, then you will un into the problem you know, the restriction I mentioned, or the exploit I found in Uncles where you can que a Random que a Paladin and get both on tier 1.

As Luashine mentioned (and absolutely most importantly) even Uncle can't predict all of your nuanced needs - One major question is are non-random heroes still an option? As in, can I choose from the normal 4 OR the random? If so we need to consider that you should not be able to que a non-random hero after a random hero. What if I randomly get a Paladin and already have my tier 2 hero queued and it's a Paladin? The alternative would be to make all heroes unavailable until you have a slot (total heroes limited to 1 at init, and then when tier 2 is hit increase to 2, but if they lose tier 2, decrease back to 1, et c.) This would be more complicated

That being said, you are never MAKING a game with the World Editor, you are twisting the arm of a game.
Pick your battles and work with WC3 when you can.

I would highly recommend this as a solution:
Make "Random Hero" a sold non-hero unit and use the neutral building unit stock availability to limit it. This takes it out of the queue and simplifies the system a lot. An idea I had in mind to justify it is it could have a start-stock delay equivalent to the hero spawn time + altar build time, so players choosing a random hero have the advantage of getting to keep their capital liquid until the instant their hero spawns, but in the same spawn time as non-random heroes for the first hero, and the benefit of spawning their hero immediately after tech-up on the second and third hero.

Wait about 6 more months until I finally finish the API for my "Sorted Max Heroes" system (SMH for short - you might appreciate my intentional and sarcastic name - inspired by the very same frustrations you are feeling with this xD), but even that will force you to (quickly and easily) make all heroes unavailable or hero-type-groups until the player unlocks them, removing the player's ability to hover over the unavailable unit and read its tooltip. The idea behind the system is to compartmentalize hero types into groups, give hero-value-weights (Paladin to count as 2 heroes if wanted, or 2 Archmages for a total of 24 Heroes because an Archmage is 12 Bloodmages, and only Bloodmages are heroes) because an Archmage is worth ) and give greater and more importantly easier tracking hierarchal potential to the shanty system while accounting for in-game possibilities such as 'constructed' heroes and the cancelation thereof (which of course works by a whole different and frustratingly parallel system to training heroes).

My purpose in making it was for my own use in making a game where nearly everything is a hero and the total Hero count operates somewhat like a food limit. Don't wait is my point. I'm 31 with no wife or kids and a job and I thought the job was supposed to help with the wife and kids, God knows when I'll finish and frankly, your use is already decidedly out of my scope and I'm like 3 months into this system and you'll need to learn vJASS to use it anyway...

Do the "sold unit" solution" or work with one of these guys... I'm really only suggesting the "sold unit" because I think that philosophy of "bend the game don't break it" is best in most cases.

Anyway, I know I'm late, but I hope this helps, only because I've felt the same frustration and strongly agree with these guys that we don't have a whole lot of direction for helping you and the solutions are hackneyed at best.
 
Top