Live data from Hacker News

Warcraft 3: Remastered Will Work with Old Custom Maps

playwarcraft3.com

11–20 of 154 posts

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#11
post #6

Unfortunately I doubt it will still have LAN. A sorely missed feature that makes a game really feel like it's yours after purchase rather than just on lease until the servers shut down. I'd be happily corrected about this though.

This is Blizzard. They're still running the "Battle.net" servers for games they released over 20 years ago.

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#12
post #9

Interesting - will they only work with the latest patch (1.12 I think?) as custom maps did? There were some breaking changes that meant you couldn’t use older versions of maps. I’m very excited for this - so much creativity flowed out of that map maker - it created (or rather, popularized) multi billion dollar genres in MOBAs and tower defense. Hope wintermaul wars gets popular - that was one of my favorites.

Island Troll Tribes was one of my favorites. I wonder if this will also create a DotA 1 scene (though IceFrog will not work on it).

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#13
post #6

Unfortunately I doubt it will still have LAN. A sorely missed feature that makes a game really feel like it's yours after purchase rather than just on lease until the servers shut down. I'd be happily corrected about this though.

This is Blizzard. They're still running the "Battle.net" servers for games they released over 20 years ago.

What about when Blizzard doesn't exists anymore ?

This summer with a group of friends we wanted to play Battlefied 2 (2005), official support for that game ended years ago, and even with the unofficial patches, we couldn't play in a fully offline LAN, the game needs to ping a specific server to enable, even local, multiplayer.

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#14
I recently pre-ordered and got access to the original wc3 which they've since patched with updates.

I started working on a new custom map, which now has support for Lua and all kinds of new natives like UI natives that allow you to completely customize the UI.

Unfortunately, the debugging tools are abysmal. There is currently a player desync happening in multiplayer in my map (somehow different players disagree with their local emulation), but I am given absolutely zero information about it. No stack traces, there's no way to add breakpoints or logs, prints slow things down to a crawl and so aren't really reasonable to try to debug with either. I've done manual tests slowly by removing parts of code, but due to the random nature of the desync, it's really challenging to solve anything this way. Even if I remove some modules and can't get a desync anymore, doesn't mean it's fixed - it's possible I just never hit the specific circumstance that causes it.

Whenever errors occur during load, I just get an error dialog with an empty box. Whenever errors occur during runtime, it just stifles the error and continues without logging or warning or anything. Lua has `debug.traceback()` but it seems Blizzard has prevented calling it. It's like trying to code without a compiler, without stack traces and without a debugger. Very challenging.

I'm extremely excited for reforged, but I really hope there are better debugging tools added for Lua (perhaps for JASS as well, although I'm not as familiar with the need there). If anyone from Blizzard is reading this, I'd say that's my number one concern right now.

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#15
post #8

The story of making the Starcraft 1 custom maps work on the remaster is pretty amazing: http://0xeb.net/wp-content/uploads/2018/02/StarCraft_EUD_Emu... Basically a lot of the maps were using a buffer overflow in the scripting to read and write all kinds of internal data structures in the game engine. If you're rewriting a game from scratch, how can you possibly make the new engine bug-compatible with the original to…

No. We mostly played by the rules in wc3. Back in the day we used the so called return bug which years later was shown to be able to be used for arbitrary code execution. This was quickly fixed but we got new natives to account for this loss. [1] Not as long ago there was another bug found which could be abused to run arbitrary bytecode [2] but that again was fixed a patch or two later and nowadays i don't know of any way to run any non-jass/non-lua code. We mostly get changes in the natives provided by wc3 in newer patches which sometimes break backwards compability. [3]

[1]: https://en.wikipedia.org/wiki/JASS#Return_Bug_Security_Vulne...

[2]: https://www.hiveworkshop.com/threads/accessing-memory-from-t...

[3]: https://www.hiveworkshop.com/threads/1-28-x-era-versions-bre...

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#17
I was the QA Lead for Grapics on WarCraft3. This was Blizzards first 3D game and the early engine was very error prone but with the meticulous attention to detail and the sheer amount of time we spent polishing. This game turned out flawless for its time. Early on there were many models that would glitch and there was a massive artifact issue that would happen in multiplayer games. I’m sure the developers found it very frustrating but we fixed it! The solution was hand crafted per model every time. There were ~800 bugs in graphics.

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#18
post #8

The story of making the Starcraft 1 custom maps work on the remaster is pretty amazing: http://0xeb.net/wp-content/uploads/2018/02/StarCraft_EUD_Emu... Basically a lot of the maps were using a buffer overflow in the scripting to read and write all kinds of internal data structures in the game engine. If you're rewriting a game from scratch, how can you possibly make the new engine bug-compatible with the original to…

> If you're rewriting a game from scratch, how can you possibly make the new engine bug-compatible with the original to this extent?

Well you have the original source so you can derive the memory map and then just create an artificial "buffer overflow area" where the maps can write to that you then copy into the actual game data.

Re: Warcraft 3: Remastered Will Work with Old Custom Maps

#20

Earlier quoted context omitted.

This is Blizzard. They're still running the "Battle.net" servers for games they released over 20 years ago.

What about when Blizzard doesn't exists anymore ? This summer with a group of friends we wanted to play Battlefied 2 (2005), official support for that game ended years ago, and even with the unofficial patches, we couldn't play in a fully offline LAN, the game needs to ping a specific server to enable, even local, multiplayer.

An interested group will reverse engineer and reimplement the server-side components.
Post reply on HN