Hacker News new | past | comments | ask | show | jobs | submit login
Carmack release open source Wolfenstein for iPhone (joystiq.com)
72 points by pistoriusp on March 24, 2009 | hide | past | favorite | 23 comments




Thanks for that link, it was fantastic. It remained mostly non-technical and yet was still a great nerd read. I always thought Carmack wrote fun stuff (and not just in code.)


Thanks. A great read. I find it most valuable as a glimpse into the mind and approach of a 10x (or more) developer.


The license situation with this game is interesting. Carmack based this new port on an updated "Redux" version of his original codebase which is under GPL, so the resulting iPhone game is under GPL as well. But the iPhone user cannot benefit from the free license: although the source is available, it's not possible to install a freshly compiled version of the game on the device.

I suppose that someone could submit a free version of the app to the App Store, but Apple would probably reject it as a duplicate. (I'm not sure if Wolf3D includes artwork or other external assets that are not GPL'd. If so, then a free version would have to provide replacements for those assets, which would essentially make it a different game.)

Here's a question which I would love to have answered: does the "anti-tivoization clause" in version 3 of the GPL prevent the distribution of a GPLv3 application on an iPhone-style closed platform? Or is "tivoization" strictly limited to code that's shipped with hardware?


According to the FSF, GPLv3 is incompatible with the iPhone: http://www.fsf.org/blogs/community/why-free-software-and-app...


Only the code is open source, the assets would have to all be replaced (he talks a bit about this in the development notes).


This is amazing. I tried to run it in the iPhone Simulator but got a couple errors. Eventually I got it to run by commenting out some lines with functions references in the errors (366 and 405 in opengl_main.c if you have the SDK). I'm not sure what I broke but it works well enough to run when I switched to the 3.0 OS instead of the 2.0 default. It's not that much fun in the simulator since it isn't designed for use with one input.

When I tried to run it on my iPhone I kept on getting a "code signing identity" error with "John Carmack" or "Cass Everitt" mentioned. I spent a while messing around and eventually found Project -> Edit Project Settings, where I changed "Any iPhone OS Device" to the settings for my device, for each configuration setting.

Abra cadabra, I now have Wolfenstein on my iPhone and owe id $0.99 when the app is released.

The frame rate is less than ideal, but the controls are excellent (virtual thumbstick) and the game is very playable. I would actually probably be willing to pay $5 - $10, but a lot of that is for nostalgia and because I owe them for making this open source.


Thanks. I Was also having those linking errors when I was trying to build. I wonder if it has anything to do with the 3.0 SDK?


Looks like they released it, and at $4.99.


Looks like the plan was to release Episode 1 only (what the shareware Wolfenstein was) for $0.99, and Eps 1-6 for $5. I only see the $5 bundle on the app store though.


Open source at it's best:

1. original developer releases project as open source

2. 3rd party developer ports to OpenGL

3. years later original developer ports OpenGL version to iPhone

4. releases result as open source.


The man is amazingly unbothered by things, and he writes really interesting notes, too.

I started to get a sinking feeling. I searched around in the level for a view that would confirm my suspicion, and when I found a clear enough view of some angled geometry I saw the tell-tale mid-polygon affine swim in the texture as I rotated. They were using the software rasterizer on the iPhone. [..] The developers came back and said it [rewriting it for OpenGL] would take two months and exceed their budget.

[..] I told them to just send the project to me and I would do it myself. [..] my off the cuff estimate of "Two days!" was optimistic, but I did get it done in four

:D


To be fair, it's probably 10x harder to repurpose someone else's code than to repurpose your own. So it probably would've taken anywhere from 40-60 days for someone else to do it. Plus, Carmack's code isn't exactly clear. :)


Have you ever gone back and looked at your own code that is ~2 years old?

It usually takes some time for me to get familiar with what I was trying to achieve, I should comment more, but what I'm trying to get at is that code that ~18 years old is probably very different from the code you're making today.


Yes, however if you wrote the code you can remember "where things come from", why things are the way they are (you have a vague recollection of refactorings) and that helps for perspective. A third-party can't do that.


For those of us with non-jailbroken iPhones, it's not yet up on the App Store:

http://www.idsoftware.com/wolfenstein3dclassic/

Hopefully soon...


It's up now. Not free though.


Wonder how it compares with Quake for Pocket PC which I used to play about 4 years ago. Tricky to reproduce all the controls without many buttons but hopefully they'll come up with something. The accelerometer might come in handy.


Review at iPhone App Ratings.org:

http://www.iphoneappratings.org/wolfenstein-3d-classic

They also have a full copy of Carmacks texts on that page...


Yep, still has the ability to induce motion sickness. My thumbs are slightly too big for the controls it seems but I'm glad they didn't use tilt controls, that really doesn't work for me.


You can also get the source code for it at ftp://www.idsoftware.com/idstuff/wolf3d/wolf3d_iphone_v1.0_src.zip if you want to play around with iPhone development.


Pretty cool stuff - I remember playing this game non-stop back in the early 90's.

I think he's wrong about tearing open app bundles though - you can just unzip them.


I'm going back to Rage for a while, but I do expect Classic Doom to come fairly soon for the iPhone.

For those of us with jailbroken iPhones, Classic Doom has been available for it for a while.

http://code.google.com/p/iphonedoom/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: