iWolf3D

Discuss anything not covered by any of the other categories.
Post Reply
r00k
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

iWolf3D

Post by r00k »

Hmmm, somehow this went by unnoticed by me until today. ftp://ftp.idsoftware.com/idstuff/wolf3d/ It's just a simple iPhone app version of Wolf3D. But, John Carmack decided to use some source ports of Quake2 that uses Wolf3D data to modernize it enough to run on iOS. I havent dug into the source extensively, but it could be possible to use as maybe a stencil to make an iQuake clone from. I think it would be kinda cool to have an app version of Quake to just be if anything an observer watching online games (QTV) or just watching demos to kill the time.

John Carmack writes...

The original Wolfenstein 3D code was written in late 1991 / early 1992 using 16 bit Turbo C and the TASM assembler and targeted at 286 based MSDOS systems with VGA graphics and ideally a bit of extended or expanded memory.

I released the original source for Wolfenstein 3D many years ago, originally under a not-for-commercial purposes license, then later under the GPL. The old code is still available in various places ( http://www.btinternet.com/~belowe/ ) but it isn't very useful on modern platforms. There are several open source projects that have modernized the code so that it works on 32 bit systems and can take advantage of OpenGL acceleration. I started the iphone version with the Wolf3D Redux codebase ( http://wolf3dredux.sourceforge.net/ ), which apparently incorporated a lot of code from NewWolf ( http://newwolf.sourceforge.net/ ).

At first, I considered trying to build the iphone version as a patch, but when I decided to turn the little research project into a commercial release (and do it in a hurry), I started making more wholesale changes. The Redux codebase had basically gutted the Quake 2 codebase and grafted Wolfenstein into it, which had some nice points, but it meant that the system code was many times as large as the actual Wolfenstein game code. It wasn't really hurting anything, and I considered leaving it all in, but it was such a mess that I finally flattened everything out and cut out about half of the environment code. No attempt was made to make this project portable, although it wouldn't be very hard to clean that up.

In the past, Id source releases did not include any data files, and you had to extract data files from a commercially obtained version of the game if you wanted to experiment with the original game data. Because it isn't possible for users to tear open an app bundle from the App Store to get at the data, I am including it with the source code to make it easy. You are on-your-honor to buy a copy at the App Store before using the data. :-) The source code is under the GPL, but the data is still strictly copyright Id Software with no license given to distribute outside this code release package or to use for any commercial purpose. You are certainly free to replace all the data and make commercial applications, as long as the code is made available under the GPL.

/newCode/wolf The 32 bit Wolfenstein code
/newCode/env The Quake 2 derived code
/newCode/iphone The newly written iphone code and xcode project files
/newCode/Tremor Unodified ogg Tremor code for the background music
/base Game data

I can't say there is a lot of really good code here -- the wolf code is mutated, the quake 2 code is vestigial, and the new code was written in a hurry, but it does all hang together as a pretty fun game to play, and a good testbed for various things.

If anyone does build another quality commercial application based on this code, let us know, and we can probably do some kind of cross linking.

John Carmack
2009/03/20
ceriux
Posts: 2230
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

Re: iWolf3D

Post by ceriux »

there's already an android version of quake (which i believe is playable) so i think there may already be an iphone version.
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: iWolf3D

Post by Spike »

inputs when all you have is a touch screen means that you'd die repeatedly if you ever did play a proper game against someone on a PC.

iphone apps supposedly need a mac for the various dev tools, which is a fairly major barrier for me. android looks easy enough if you can get over the required java stub code, set up the environment and then thunk through to native code (I started an fte android port, no sound and the menus might need resizing for touchscreens). For both systems you need gles capabilities first, as well as an engine that doesn't leak/need too much memory.
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: iWolf3D

Post by toneddu2000 »

There's a Darkplaces iOS version on DP source, but I think it's in a VEEEEERY alpha stage.
Meadow Fun!! - my first commercial game, made with FTEQW game engine
Post Reply