Warcraft III cannot be saved. The original program code was written in 3 months or so back in the 2000s, based on a render engine from the Warcraft Legacy, Role-Playing Strategy (RPS) game engine that eventually split off to become WoW.
That original engine cut a lot of corners in design because it was only intended to be a 3D way to play an advanced form of Warcraft 2, but with new races. Try playing the oldest public release of Reign of Chaos, and specifically its map editor, and then you will understand what I mean. The original unit editor does not allow the map developer to change fundamental aspects of the units, such as their soundset or whether they have attacks. It was a limited unit stat editor similar to how you could tweak how much damage units do in Warcraft 2.
Everything done in Warcraft 3 modding since then and everything added in The Frozen Throne was more or less hacked into the existing system. At the same time, modern high-paid software developers are often trained to focus more on how they do their job than to focus on what they do. Generally the reason for this is because of how many software projects have suffered over the past several decades from problems due to multiple authors and unreadable code. It has been a very real problem for many people, so having the society of trained software developers look for what is "right" or "wrong" in how code is written is often a high-value way to train people. We encourage them to build software that could be read and understood by someone else, even if we suddenly had to switch out who was writing the code.
In this way, "how" we do something becomes more important than "what" we do unless people are really, really careful about it.
For a number of years I learned to think like this, and it was more than a little bit difficult when I found myself working under a new mamager who cared more about what I did, and whether I did it, than how "well" I did it from some abstract design perspective. I haven't fully decided which design philosophy is correct for my personal hobbies ("how" versus "what") but I find that the manager who cares more about "what" we do than "how" we do it is in a position to be able to pay me more. And I had not originally expected that. The allure of wanting to make good code, or perfect code, has been very real for me at times.
So that's mostly personal anecdote but I want now to get back to what Warcraft 3 is. It is this 3d RTS game with shortsighted hacks added in The Frozen Throne to expand what kinds of mods were possible.
During the development of Reforged, thinkers and people who understood the gameplay of Warcraft III,
but not the technology, had some big ideas about what they wanted this game to become. And those ideas are all technologies that could exist within the laws of nature and how computers work, but they were not a 3D version of Warcraft 2 from the year 2002. They were something more.
Obviously this presents a huge problem or conflict between management and technologists.
For technologists who believe that the "how" is important, the only way to make the Warcraft 3 technology be what the people and managers wish that it was would be to reinvent the technology many times over until we achieved a more perfect design. Also, because the Starcraft 2 design is almost a decade ahead of Warcraft 3 in terms of this "design" side -- and that same Starcraft 2 system has been used inside Blizzard for other projects such as Heroes of the Storm -- it is only natural that any skilled developer who has worked around other parts of the company at Blizzard Entertainment and then turns and looks at the Warcraft 3 technology is going to feel a sort of
pain. For him to do that, he must forgo the benefits of decades of engine design that was done on the engine shared between Starcraft 2 and Heroes of the Storm.
Someone put in this position as a technologist would end up absolutely resenting working on Warcraft 3 engine, because it is all designed wrong inside. It is something designed in a hurry. It is something that, when they look at it, they don't just
think they can create a better engine than Warcraft 3, they
know they can create a better engine than Warcraft 3. And as people who worked with Starcraft 2 and Heroes of the Storm, they literally have experience with that "better" engine. I mean, they have personal experiences and know that they are objectively right about this,
that Warcraft 3 is bad. And I am not an insider when I say this, I am just guessing based on my experiences modding these games as a player/user and also based on my experiences from getting my degree in Computer Science and working for a few years as a software developer.
But this problem is something that becomes a very, very deep problem. At some point, any sane software engineer in this position would revolt against his managers and go and build Warcraft 3 on the Starcraft 2 engine to prove how much easier and better it was. Again these are all just my personal theories, but why did Blizzard
publish a Starcraft 2 patch that included all Warcraft 3 content as an extra mod shortly after Reforged launched? It was not done as a part of Reforged. I firmly believe that Reforged does not run on the Starcraft 2 engine. It is very plausible that that mod released for Starcraft 2 was made by a developer to prove to himself that Warcraft 3 was as bad as he thought it was, and that modding on that Starcraft 2 engine was
objectively easier. And he probably found out that he was right about his conclusion, and probably believes that he made the world a better place by offering a way for modders to mod Warcraft 3 more easily than anything Reforged has to offer
or will ever have to offer.
And this is why you cannot save Warcraft 3. Because to reinvent it to be what people think they want it to be, instead of what it is, would be an incredible technology effort and it would not feel very rewarding for the technologists undertaking the project, because they are likely to come from other parts of the company where this work "was already done."
It gets worse. Even if you create Warcraft 3 on the Starcraft 2 engine, as some insider at Blizzard did, people would probably not use it. People do not make their choices based on intimate knowledge of the technology. (They do not have that knowledge!) So, someone who wants to make a Warcraft 3 custom game is not going to open the "Starcraft 2" editor. This is not the first idea to cross his mind. Not because he is right or wrong, but because of society and the way technology is named.
Furthermore, if Blizzard were to make the reinvented Warcraft 3 -- let us say "the Reforged engine people can imagine they wish they wanted to have" -- this engine would not support the existing Warcraft 3 custom maps, which are all unilaterally "bad" technology
IF YOU CARE ABOUT "HOW" IT IS MADE AND NOT "WHAT" IT ACHIEVES. Almost every single Warcraft 3 map with more than a little bit of customization crossed the line and used stupid technologies, such as:
- "Dummy units" to "cast a spell" to achieve a desired outcome, because programming that outcome directly is not supported in the retarded-limited engine
- "Dummy units" or "dummy effects" to imitate missiles
- "Damage detection" systems that use a 9999% damage reduction armor ability added to any unit hit by an attack to cancel the incoming damage, reprocess it, and then possibly repeat it
- "Index allocators" to pair each game unit with an arbitrary magic number, for the purpose of then using this number as an array index in one of many parallel arrays, since Warcraft 3 did not offer any convenient system of data structures until only recently with some of the stuff on Reforged that is still behind a learning curve barrier and not immediately obviously available to new users
- "File overrides" to replace ingame files with custom ones to hack them into looking or behaving in a different way due to the lack of any better api
- "Triggered abilities" where one ability with a hardcoded action is used to fire custom user events to pretend that the ability has additional ingame actions, effects or behaviors (even though there is no way to define a new subclass of CAbility on a Warcraft 3 map, nor to change how any of them function from in a map, and there never has been)
This list was in no particular order and is only a few examples that came to my mind. An exhaustive list of "bad" design decisions used every day in Warcraft 3 mapping would be much, much longer.
So, for the reasons stated above, to even talking about "saving" Warcraft 3 is nonsense. It never was more than it is, and the only thing dead about it are the Battle.net 1.0 servers.
Reforged is a different technology than the Warcraft 3. It is a valiant effort to reinvent the technology over and over to make it into what some managers wished it was, although it isn't. For Blizzard to expend further resources trying to "improve" Reforged, at this point, would be unimagineable to me. The managers don't want the technologists to suffer, and the technologists don't want to do tasks that seem unreasonable for the sake of some ill-begotten idea invented by someone less familiar with technology than they are -- invented only to serve some players who refuse to move on to other game engines that are easier to support.
As for me, for years I went too deep into Warcraft III modding. I don't do it because it is right or reasonable. It's not. With this hobby, I choose to do whatever I want because I choose to, even if that hurts other peoples' feelings or is a bad idea.
Knowing all this stuff that I said above, it was clear to me from when Reforged was announced that no matter how good Reforged was, it would never be as good as I wanted, because I want that ephemeral, abstract better technology. In the end I wanted the same thing as whoever it was developing Reforged who tried to explain to the people around him that Warcraft 3 is a terrible technology. But the Reforged announcement made it clear. They were doing what they could with the Warcraft 3 technology despite its limits.
And while they spent their time doing that, I forced myself to prepare for the future that was to come. The future where I wanted that better technology and could not have it. The future where no matter how pretty the model of a Footman is, in order to make the Footman game object unselectable I would still have to add the 'Aloc' integer to his ability list to give him CAbilityLocust rather than just calling some reasonable function like "SetUnitSelectable" or better yet
Unit.setSelectable(boolean) or something similar.
This future has come to pass more or less as expected. In my efforts to create the alternate system of my own game technology, I was forced to see one solemn truth. What I actually wanted was to be able to change the existing Warcraft 3 technology from sourcecode in absolutely any way I wanted, rather than to have to invent something new or invent the same thing over again. I want the source code of the 2003 game, "The Frozen Throne", to be mine to modify and recompile in any way that I desire -- with no strings attached and no obligation for me to modify it in a way that is profitable for anyone, not even myself. This is a simple but powerful truth.
For each of us, for everyone, we probably want something different. This one truth that I arrived at -- the one thing that I want -- is probably not what you want from Warcraft 3. So when you talk about saving it, you do not probably even want from the game what I want. What saves it for you does not save it for me.
So, for lack of a better option, I assume Blizzard will do nothing at all. You cannot save this.