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

MPQ-extended maps

Status
Not open for further replies.
Level 26
Joined
Aug 18, 2009
Messages
4,097
They are mainly used for big maps when hitting the 8mb limit in multiplayer. Additionally, there are some files, especially UI configurations, which are only loaded on startup of wc3, which cannot be set specifically within the map.

I would like to know if there is progress/ideas distributing and applying maps' associated mpqs automatically. Wc3 would have to relaunch after the lobby, reconnect the players and restart the map for them. And as far as I know, no service does that.
 
It would really be neat, but is there even a way to relaunch, reconnect players, and restart the map? I mean, perhaps through LAN but I imagine it would be complex with BNet since it requires authentication. I imagine that would be one of the bigger obstacles.

The MPQ editing could be relatively easy. Perhaps the maps could include a txt file with instructions on what files to add/edit. Then a particular tool could add those files/perform the necessary edits (back-up the original files). The tool would also be able to revert the changes (again, by reading from the map [or you could inject the txt file into the war3mpq and revert it that way]).

Overall, that would be really cool since it would allow you to edit the fdf's and customize war3 to your farthest imagination.
--------
Another idea (although this idea is a bit more limited) is that maps could release packages of resources (go under Warcraft III/Packages or something). This could contain as many resources as they want. Then people could download them, extract to Warcraft III/Packages directory, and the custom stuff would appear.

Now, the issue comes for people who download it off BNet/LAN. They might not have the models on their comp. Thus, you would make 2 of every object/model. One would be a file included in the mpq (could be very compressed or something), and the other would use the path to the local file (in package directory). You would just detect if they have the local files or whether they have to rely on the imported files, and then choose the correct object to create. It would require a lot of map modification to support it, but it could work in theory.

How would you detect if they have the local package or not? There are probably a lot of ways. One way I can think of is putting a sound (a couple of kb) in the package and creating it via CreateSound(). Then you can load its properties (e.g. duration). If it is null/0, then they don't have the files. If it is an actual number then that player has the local files. This would require a lot of async operations, but I believe it is doable.
----

My idea doesn't have as many opportunities as your idea, I'm just throwing it out there.

EDIT: I imagine that your idea is mostly aimed towards things like fdf files (since you just made that thread), so my idea won't be of much help.
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
Yes, the mpq editing is no prob. The reconnection could be via peer-to-peer as well and does not necessarily have to be via the previous service. But ofc, it needs to be inited and wc3 somehow forced to travel the menus. Before Blizzard would provide such options, they could as well disable the size limit and allow the replacement of the remaining files (theoretically speaking, not like you can expect anything from them).
 
Status
Not open for further replies.
Top