5 ms·
Doom (1993) Encryption
- gigatexal 7y agoMore and more gems coming out of the source code from the mind of Carmack.
- tehmillhouse 7y agoAxiom Verge (2015) uses the same trick to avoid the `strings` utility, but with parametrized cheat codes. (Back then I took it apart in a decompiler and looked up all the cheats, see https://trollbu.de/axiomverge/ https://trollbu.de/axiomverge/)
- shakna 7y agoI think this small piece of nostalgia (and memories of struggling with extenders) is fairly timeless, and many game devs still say something similar today: > We are going to use the 1.95 4GWPRO dos extender for the new version and patch, but if you have difficulty with it, we will provide other executables that you can try with the 1. 8 DOS4GW extender and 1.94 4GWPRO extender. > Yes, we think this business with flakey extender versions is a pain, too. The price we pay for want to make this game on a platform with a market. PC's. DOS. Sigh. - Dave Taylor
- Jare 7y agoHeh DOS4GW was incredibly stable compared to the one that 3DStudio 4 used, what was the name... Pharlap?
- bluedino 7y agoPhar Lap was named after a horse! DOS4GW was probably the most common, especially with PC games. PMODE was pretty popular with the hobbyist market. CWSDPMI was also pretty popular once DJGGP started being used with it instead of Go32 (which I think wasn't even a full dpmi provider)
- Jare 7y agoYeah I was using PMode for our demos since it came out in 94, but for my 1995 game I stuck with DOS4GW, and after Win95 and the GameSDK came out it was time to move to Win32.
- royjacobs 7y agoIn my experience DOS/4GW was pretty stable. The only times it used to spam my mode13h screen full of registers was when I did something wrong myself.
- tambourine_man 7y agoIf you enjoy this kind of content do yourself a favor and follow this guy. It’s an amazing account.
- TravHatesMe 7y agoIs this not considered obfuscation? I thought encyption implies there is a key of some kind to decode the message. This seems like obfuscating binary and translating it at runtime, à la security-through-obscurity.
- treve 7y agoBased on the algorithm in the tweet, it looks like it's reversible. This would imply that it's indeed encryption and not a hash function or anything.
- TravHatesMe 7y agoThere is nothing preventing someone from decoding this message. Sure it's a bit of a hassle to reverse-engineer the isomorphic function but there is nothing secure about this. The cheat codes are not encrypted, they are obfuscated. Wikipedia defines encryption as "the process of encoding a message or information in such a way that only authorized parties can access it and those who are not authorized cannot."
- blotter_paper 7y agoI've only read the beginning of that Tweetstorm, but it looks like a transposition cipher (which is considered a form of encryption). Even ROT13 is encryption, despite being trivial to break; a diary lock which can be picked with a paperclip is still a lock, it's just a bad one. https://en.wikipedia.org/wiki/Transposition_cipher https://en.wikipedia.org/wiki/Transposition_cipher
- wolf550e 7y agoA Caesar cipher is encryption, there this too is encryption. Is the encryption very weak? Yes.
- sowbug 7y agoThat's a poor definition. If I read someone's GPG password off a Post-It on their desk, I can decrypt any information encrypted with it, but I'm not authorized to do so. A better definition would distinguish between those in possession of both the algorithm and all its inputs, and those who aren't in possession, and rather than saying they "cannot" access the encoded information, it would say that access is impractical or at least cumbersome. By that better definition, it's still encryption, because it made it cumbersome for someone to access the codes without understanding the encryption method.
- tosteris 7y agoSimilar efforts to hide string literals were used 5 years earlier in one of the first Internet worms: Morris worm. http://spaf.cerias.purdue.edu/tech-reps/823.pdf http://spaf.cerias.purdue.edu/tech-reps/823.pdf sect. 5.1.7
- quotemstr 7y agoHuh. I'd forgotten that only five years elapsed between the Morris worm and DOOM. That's amazing progress in a very short time.
- ibejoeb 7y agoNeat stuff, but this really affirms, to me, that Twitter is a really terrible platform for any content longer than a single tweet.
- philshem 7y agoA Twitter thread to explain why @foone uses Twitter threads: https://twitter.com/foone/status/1066547670477488128?s=21 https://twitter.com/foone/status/1066547670477488128?s=21
- LIV2 7y agoIs there a reason someone can't just ramble in a blog post?
- packetslave 7y agobecause... he/she doesn't WANT to?
- foone 7y agoADHD. If I have a long-form blog post to write end, I get caught up in going back and rephrasing and re-editing and such, and it never gets finished. Twitter's paragraph-size chunks with minimal editing (if I really have to, I can delete the last post and re-create it) means that I can't get stuck in the process of editing and revising, so I have to keep moving forward. So it's really the only way I can write. My wife's gone through and rewritten some twitter threads into a blogpost for me, but she hasn't gotten to this one yet. BTW, You can also use a threadreader/unroller to make a pseudo-blog-post out of it.
- QualityReboot 7y agoYou produce some of the most interesting threads I've read on Twitter. Thanks for sharing as much as you do. Out of curiosity, why not mastodon? Do you see a path from Twitter to a federated or decentralized service?
- 7y ago
- hinkley 7y agoIf the cheat codes appear in the code in a particular order, wouldn’t people tend to document them in order of appearance? I don’t see why two people wouldn’t generate the same list from the same code base.
- _Microft 7y agoFoone's is easily one of the most interesting and weird accounts to follow on Twitter. Check out this thread starting with a response on the toxicity of Rhodium and prepare for one hell of a ride! https://twitter.com/Foone/status/1190340638899724288 https://twitter.com/Foone/status/1190340638899724288