[App]Halo Map Protector

Utilities designed primarily for Halo PC.
User avatar
Modzy





Posts: 31
Joined: Mon Nov 10, 2008 4:08 pm

[App]Halo Map Protector

Post by Modzy »

Modzy wrote:Us Macs' don't have a map protector so, I spent the passed 2 day writing this baby up for ya'll.

Heres a few pics:
Image

Image

Image

Image

Image

If nothing is entered into the text box, the app will use the default: "<Protected>"
This app works with all versions of Halo 1.
And I was nice and had a PC version made. :P

Mac Download

PC Download

Enjoy!
Last edited by Modzy on Mon Dec 22, 2008 10:02 pm, edited 5 times in total.
Image
User avatar
DEEhunter





Posts: 897
Joined: Sun Jun 19, 2005 4:04 pm
Location: 127.0.0.1
Contact:

Post by DEEhunter »

Does this work for halo CE?
Image

Deviantart | My City | Wmclan | Gamertag | [url=irc://irc.halomods.com/melon]#melon[/url]
User avatar
Modzy





Posts: 31
Joined: Mon Nov 10, 2008 4:08 pm

Post by Modzy »

DEEhunter wrote:Does this work for halo CE?
It should. Test it and post your results.
User avatar
DEEhunter





Posts: 897
Joined: Sun Jun 19, 2005 4:04 pm
Location: 127.0.0.1
Contact:

Post by DEEhunter »

It does work but it seems like a more customized version of the HEK protection system. The HEK version nulls the name out so all the user can see is the meta offsets. Also is reversible.

http://img114.imageshack.us/img114/364/ ... 155yz4.jpg
Image

Deviantart | My City | Wmclan | Gamertag | [url=irc://irc.halomods.com/melon]#melon[/url]
User avatar
Modzy





Posts: 31
Joined: Mon Nov 10, 2008 4:08 pm

Post by Modzy »

DEEhunter wrote:It does work but it seems like a more customized version of the HEK protection system. The HEK version nulls the name out so all the user can see is the meta offsets. Also is reversible.

http://img114.imageshack.us/img114/364/ ... 155yz4.jpg
This does the same thing as HEK+'s protection, except that it can't be un-done and lets you enter your own message.
User avatar
DEEhunter





Posts: 897
Joined: Sun Jun 19, 2005 4:04 pm
Location: 127.0.0.1
Contact:

Post by DEEhunter »

Lately, all the protection methods I have seen only change the name of the tags. More of a way to confuse users from getting them. Still a good tool though.
Image

Deviantart | My City | Wmclan | Gamertag | [url=irc://irc.halomods.com/melon]#melon[/url]
conure




Enthraller Articulatist 250

Posts: 365
Joined: Sun Apr 17, 2005 8:37 pm
Contact:

Post by conure »

Looks fun.
Question: What happens if the string is, on average, longer then the average unchanged string? Do you not allow this? Do you update the map magic?

While that question is unlikely, its important otherwise you may start overwriting the scnr tag.
Halomods member wrote:tags meta? There is no such thing for Halo PC.
User avatar
Modzy





Posts: 31
Joined: Mon Nov 10, 2008 4:08 pm

Post by Modzy »

conure wrote:Looks fun.
Question: What happens if the string is, on average, longer then the average unchanged string? Do you not allow this? Do you update the map magic?

While that question is unlikely, its important otherwise you may start overwriting the scnr tag.
I believe the string can be around 66,949 characters long, but anything that long will overwrite some tag names that were not protected for playability reasons.

If you get to the point that you overwrite the globals, then the map will crash.
User avatar
bcnipod





Posts: 3580
Joined: Tue May 15, 2007 8:52 am
Location: 45 Minutes outside Boston
Contact:

Post by bcnipod »

conure wrote:Looks fun.
Question: What happens if the string is, on average, longer then the average unchanged string? Do you not allow this? Do you update the map magic?

While that question is unlikely, its important otherwise you may start overwriting the scnr tag.
Conure, you should get to know Modzy. He had quite some fun with QAR, and knows a little bit.
Twitter: Dirk Gently | Major lulz
Mr. Brightside: Worst mod I've seen since 'Nam.
Website
User avatar
Altimit01




Connoisseur Snitch! Literarian 500

Posts: 947
Joined: Sun Jun 04, 2006 12:10 pm

Post by Altimit01 »

He's talking about the string section actually overwriting the first tag (scnr) by making it too long and is wondering if you shifted the meta data and redid the magic to compensate. Come to think of it the magic wouldn't need to be recalculated since it's just a function of the start of the index but you would need to effectively redo all of the offsets not only in the index but in the tags as well.

Edit: if you want to be really clever you could find the longest section of string data for tags that are going to be protected, use that combined length as your max string length, overwrite to the section and then have every tag redirect it's string offset to there instead of writing your protected string multiple times. Of course in that case you'd have to go into all of the meta data and rewrite the string offsets used by dependencies.
Image
Download Eschaton: Halomods | Filefront | Mediafire
User avatar
MoDFox





Posts: 1293
Joined: Wed Aug 03, 2005 5:01 pm
Location: Ontario, Canada.

Post by MoDFox »

Oooo Purdy, nice Modzy.
Idea: If possible maybe you could add a Password feature so you could unprotect it say if you lost yours and you needed to recover it?
User avatar
Modzy





Posts: 31
Joined: Mon Nov 10, 2008 4:08 pm

Post by Modzy »

Altimit01 wrote:Edit: if you want to be really clever you could find the longest section of string data for tags that are going to be protected, use that combined length as your max string length, overwrite to the section and then have every tag redirect it's string offset to there instead of writing your protected string multiple times. Of course in that case you'd have to go into all of the meta data and rewrite the string offsets used by dependencies.
This app only writes the protected string once. Its nulls out all other tag name data that is not needed for halo to run properly, and rewrites all protected tag name offsets to one place. This allows the user to protect the map multiple times if they want to change the message.

@ModFox: You mean like... to have a feature that encrypts the names instead of nulling them out?
User avatar
DeadHamster




Snitch! Advisor Articulatist 500

Posts: 2289
Joined: Thu Feb 15, 2007 9:38 pm

Post by DeadHamster »

hey i remember this. compiling only took what, 6-7 hours? haha, very nice tool.[/code]
User avatar
Altimit01




Connoisseur Snitch! Literarian 500

Posts: 947
Joined: Sun Jun 04, 2006 12:10 pm

Post by Altimit01 »

Well then there's probably problems with every single dependency if you look into string offsets they use. That is the simpler way to do it, but there's still the problem of having an overlong string. Does the program compensate for that or not?
Image
Download Eschaton: Halomods | Filefront | Mediafire
User avatar
MoDFox





Posts: 1293
Joined: Wed Aug 03, 2005 5:01 pm
Location: Ontario, Canada.

Post by MoDFox »

Modzy wrote:@ModFox: You mean like... to have a feature that encrypts the names instead of nulling them out?
Yea that type of thing, that way if you REALLY needed the tag you could get at it. Of course you'd still keep the whole null out thing, it would just be an option or something incase you thought you might lose it.
User avatar
Modzy





Posts: 31
Joined: Mon Nov 10, 2008 4:08 pm

Post by Modzy »

Altimit01 wrote:Well then there's probably problems with every single dependency if you look into string offsets they use. That is the simpler way to do it, but there's still the problem of having an overlong string. Does the program compensate for that or not?
No, there is a set length that the program can handle, but that length changes with each map. Yes, it does cause problems with dependencies, but only in map editors. Halo doesn't seem to mind the dependencies issue, and fixing it would be pointless because you're trying to lock down a map, not make it easier for someone to mod.
User avatar
Altimit01




Connoisseur Snitch! Literarian 500

Posts: 947
Joined: Sun Jun 04, 2006 12:10 pm

Post by Altimit01 »

Well the issue with dependencies is immaterial since you're nulling the rest of the string data. If you left it intact though, it'd be a vector to unprotect the map. Of course the dependency strings are what make 16-byte swaps better than HMT d-swapping. Something to do with CSS IIRC. If those get broken then any d-swaps in the protected mod will not be CSS. Good to see it at least accounts for max string length.

Of course these sorts of things are trivial to circumvent if you know what you're doing.
Image
Download Eschaton: Halomods | Filefront | Mediafire
User avatar
Modzy





Posts: 31
Joined: Mon Nov 10, 2008 4:08 pm

Post by Modzy »

Altimit01 wrote:Well the issue with dependencies is immaterial since you're nulling the rest of the string data. If you left it intact though, it'd be a vector to unprotect the map. Of course the dependency strings are what make 16-byte swaps better than HMT d-swapping. Something to do with CSS IIRC. If those get broken then any d-swaps in the protected mod will not be CSS. Good to see it at least accounts for max string length.

Of course these sorts of things are trivial to circumvent if you know what you're doing.
I never really had CSS in mind when writing it, but now that you bring it up I can think of a few ways of fixing the swap issues.
User avatar
bcnipod





Posts: 3580
Joined: Tue May 15, 2007 8:52 am
Location: 45 Minutes outside Boston
Contact:

Post by bcnipod »

Needs moar Maynard!
Twitter: Dirk Gently | Major lulz
Mr. Brightside: Worst mod I've seen since 'Nam.
Website
User avatar
Lambda





Posts: 365
Joined: Sun Sep 17, 2006 3:37 pm
Location: California

Post by Lambda »

sweet.
Image
softer on the eyes now
Post Reply