Moving forward, protected maps should NOT be supported

19 posts in this topic


On 3/4/2021 at 5:41 AM, Vuthakral said:

I mean, I do it but only for test maps. In the event they get leaked I don't want my unfinished work being spread around by the you-know-who part of the community and resulting in my finished work never getting any attention, and getting buried solely by the over-saturated environment surrounding it using old tags.. It has happened time and time again, so please don't tell me that's an invalid reason.

On 3/4/2021 at 5:41 AM, Vuthakral said:

If it's selfish for an artist to want their finished product that they put way more effort into to be known than an unfinished slice of what they made then I don't want to be part of this community any more.

It isn't selfish to want these things, but map protection really isn't the answer anymore.


On 3/4/2021 at 5:41 AM, Vuthakral said:

People didn't want their tags to get corrupted & reused in a broken format.

Ironically, plenty of forms of map protection can result in irreversible damage to the tags even without extracting the map and just playing the map as-is. This is because map protection, in itself, is a form of corruption.


On 3/4/2021 at 5:41 AM, Vuthakral said:

You do realize that a good chunk of custom maps are protected right?

Sure! From querying the HAC2 repo using a protection checker a couple years ago, we found that around 1/3rd of the maps out there end up getting flagged as protected.


The HAC2 map repo has 6000 maps today. If the average is the same as it was a year ago, then that's 2000 maps. And if each map, on average, took 10 hours to make, then that's 20000 hours of total effort from hundreds of people. Of course, many of those same protected maps have assets stolen from other maps and are more-or-less just copy-paste rips, and some maps may be outliers with tons of time put into them, so it's difficult to assess how much time was put into designing those maps.


All-in-all, it's a lot of maps and some real time put into those maps, and I'm certainly not going to discount that.


On 3/4/2021 at 5:41 AM, Vuthakral said:

Don't get me wrong; I don't like the concept of people who use map protection for purely selfish reasons and I don't deny that there are people who use it on finished maps, but I get moderately offended at the notion that every single person to ever protect their maps is entirely selfish, or that they don't have valid reason or are automatically invalid for doing so. This is a disgusting mentality to have in general regardless of the topic.

I never said it was selfish (though I think most reasons are selfish). My argument is that there's no valid reason to do it since maps are trivial to deprotect.


What I personally think is selfish is expecting someone like me to write 500+ lines of C code to support a shader tag that might actually be an object or sound tag because the map was protected.

You see, Halo doesn't care because, in most tags, it relies on context for when those references are read (e.g. I'm firing a projectile from a weapon I spawned a while ago - the projectile is obviously an object because that's what weapons reference in a trigger, and the weapon is obviously an object because it was spawned) - context a program, script, or mod can't have because it's not a game engine. Therefore, I have to go through every single possible tag in a chain to find all of the shader tags (or tags that can be shader tags), thus I'd basically be writing a map deprotector at this point in every single script if I wanted to query all of the shader tags in a map while supporting protected maps.

With the Vulkan renderer I'm working on which contains my exact usecase, I've found this work to be utter hell. So, I've been considering adding behavior that disables it and uses Halo PC's crusty, broken D3D9 renderer if a map is detected to be protected, though it probably won't be feasible, so I'll likely just have to write down in the readme that if you enable this, protected maps may not work anymore.


Here's another way to look at it: People who have protected their maps clearly did not want other people to read them. So, by not supporting protected maps in tools, scripts, and mods, we are honoring their wishes. Surely you can appreciate that?


On 3/4/2021 at 8:00 PM, Sunstriker7 said:

I think this entire discussion is an important lesson in data security. If you are worried about your art being stolen protecting your maps will not help you. And it never did. The only way to prevent that is to never give away your data.


The real way to deal with art theft is to discourage it as a community. Which we do.

Sadly, yeah, if you want to ensure your stuff doesn't get stolen, you don't post it (which kinda makes making maps pointless if you won't share it). Map protection may have only guaranteed this at first, but nowadays, it's not the answer.


Having the community look out for each other? I really like this idea!

Enclusion and Sunstriker7 like this

Share this post

Link to post
Share on other sites

As of the last update, MCC now supports Custom Edition maps, but it appears to have checks in place to prevent protected maps from loading. Apparently this was done to prevent people from complaining about these maps not working. This basically means that a lot of those 2000+ maps I mentioned in my previous post are basically left in the dust in terms of them working on the latest version of the game - especially a version you can actually purchase for cheap ($10, sometimes even $5 on Steam).


In my opinion, I don't think it is unreasonable to expect a newer version of the engine to NOT support maps that were deliberately corrupted.


And, of course, I love being proven right!

Share this post

Link to post
Share on other sites

A bit of a year-long bump, but I think it is worth noting that, in recent news, 343 Industries are planning on dropping Custom Edition map support. This means that, if you want to run your maps on the latest version of the game, you will have to extract the tags and then fix them up and rebuild the map for Halo: Combat Evolved Anniversary.


If any maps you liked were protected, then this will not be possible without fixing the maps. In fact, even today, map protection is still used. As previously stated, those map developers made a conscious decision to corrupt their maps, and in doing so, their content was essentially restricted to only one version of the game forever.


All of this was to prevent people from extracting their tags and using them in new maps. However, moving forward, this is ironically the only way you will be able to play these classics on newer versions of the game.


Despite this, there is a question raised in this thread: Should we respect their choices and leave their maps in the dust, the way the authors technically intended? Some people may say "Yes" here, and that's fair. Personally, I think we should absolutely not respect this decision. After all, it is unreasonable to expect someone in the 2000's to mid-2010's to know that this would be Halo PC's future. After all, Microsoft had long kept Halo as an Xbox console exclusive despite the player base having asked for a new Halo FPS on PC since Halo 2 Vista, effectively dashing away any hopes of us getting a new Halo PC release.


Therefore, as a community, we should preserve Halo PC's history by porting our favorite maps to this newer engine. However, it does mean that a nontrivial amount of effort will be required for some maps, especially as later-generation protectors became a thing which did worse things than just nuke the tag paths.


Now it's more important than ever to keep map protection out of Halo as:

  • Map protection does not work with CEA
  • Custom Edition maps will not work with CEA
  • Protected Custom Edition maps are stuck on Halo Custom Edition

Therefore, map protection should absolutely not be supported or enabled. Instead, we should support high quality map deprotectors that allow us to preserve these classic gameplay experiences.


I, myself, am working on a new map decorruptor in Invader targeting various forms of map corruption, ranging from map protection to issues caused by Eschaton. One longstanding goal has been to port Phoenix 3 and Ice Floe into the CEA map format, but because of artifacts created by Eschaton's map rebuilding process among a few tag-related issues and weird tag paths (e.g. +++++++++++++++), it's not so simple to port it into loose tags.


Enclusion, Sunstriker7 and Takka like this

Share this post

Link to post
Share on other sites
7 hours ago, Kavawuvi said:

weird tag paths (e.g. +++++++++++++++), it's not so simple to port it into loose tags

I remember an old xfire chat like 14 years ago where Tucker was proud that nobody was going to steal his dynamic fire method because of his tag obfuscation method. I bet he regrets it now.


In my opinion this situation falls under the category of abandonware and original creators wishes are no longer valid anyway.

Enclusion, Takka and Kavawuvi like this

Share this post

Link to post
Share on other sites
1 hour ago, Sunstriker7 said:

I remember an old xfire chat like 14 years ago where Tucker was proud that nobody was going to steal his dynamic fire method because of his tag obfuscation method. I bet he regrets it now.

Hahah, well it wasn't purposeful obfuscation. 

Kavawuvi, Sunstriker7 and Enclusion like this

Oddly, this is familiar to you... as if from an old dream.  

Share this post

Link to post
Share on other sites

I'll will report any illegal and non-consensual breaches of map protection to the appropriate legal authorities! :v
Prosecution will be swift and just! Punishment will be severe!


Can't have tag theft in Halo! Not under my watch! >:v

Sceny, Sunstriker7 and Enclusion like this

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.