id Software Special – pcgames Print Titelthema & Webartikel

Print-Ausgabe 2/16 hat ein 20-seitiges Special gemacht anlässlich des 25-jährigen Jubiläums von id. Mit den Themen Doom 4, id History, Doom Mods.

Enthalten ist ein zweiseitiges Din 1A Poster (Classic und Doom 4). Die DVD Version enthält beide Doom Classic Titel DRM-frei. Leider hab ich das Heft ohne DVD erwischt, Mist.

Der Doom 4 Artikel im Heft scheint noch exklusiv zu sein, online ist eine reine Fakten Auflistung daraus erhältlich.

Der Text von Heft- und Online Artikel sind identisch bei:
id History-Artikel
Doom 1 2 3 Mod Auswahl
Zwei Webseiten. Ganz gute Auswahl. Mit Tipps und Videos. Klassiker sind dabei für Classic Doom wie Star Wars Doom, Aliens Mod, Requiem. Adventures of Square muss ich noch spielen. In Hell für Doom 3 wird empfohlen. Fragging Free und Desolated gehören da als Tipp noch rein :)


id History

Der Artikel dreht sich um die Geschichte von id Software. (pcgames). Der Text beginnt mit einem ‚Doom 4 Angespielt Video‘ welches mir gut gefallen hat als Überblick. Für solch einen Text finde ich das im Grossen und Ganzen ganz gut. Sind auch Dinge drin die mir wichtig sind (IOS Spiele, Strife wird genannt, Quake hilft beim ersten Machinima).

Paar Sachen sind vielleicht nicht so ganz richtig. Doom 2 kann eigentlich nicht de-indiziert sein, höchstens die BFG Version. Im Original sind doch die zwei Wolfenstein 3D Secret Level enthalten. Weiss nicht ob John Carmack „streitbar“ ist. Carmack’s Weggang ist schon was komplizierter gewesen als dort angegeben, wahrscheinlich gabs Streit mit Bethesda bzw. Richtungsdiskussionen. Wir wissen ja immer noch nichts genaues darüber. Weil John bisher kein „Ich sag wie es war“-Interview gegeben hat. Kann sein das solange er weiter in der Branche arbeitet (Oculus), er auch nicht darüber öffentlich sprechen wird. Rage HD ist mehr als „nett“, eher einer der besten Railshooter für Highscore Jagd zum damaligen Erscheinen. Auf Tim Willits hätte mehr eingegangen werden müssen, der Chef Designer von Doom 3 und Rage.


Doom 4

Neues aus dem Heft. Vorsicht Spoiler.

„Wer [in Doom] stehen bleibt, der stirbt“
„Wir haben einen Grossteil der Entwicklungszeit auf die Kämpfe verwendet“
„Wir wollen, dass das Spiel anspruchsvoll ist“
– Marty Stratton über Doom 4 –

Thema Bewegung: Mini-Jetpack für Spieler und ausweichen in der Luft, Sprungschanzen, hochziehen an Kanten, Doppelsprung, durch Portale laufen.

Thema Waffenupgrades: Plasmagun lähmt Gegner, Machinegun kann zum Geschützturm werden (achso, hatte ich im game informer Heft nicht verstanden), Rockets können im Flug detoniert werden.

Kampfanzug Upgrades, im Spiel sind Level einzeln anwählbar, es gibt Herausforderungen ala „erledige drei Gegner mit einem Schuss“, Autosaves / keine manuellen Speicherpunkte. Für Snapmap (ähnlich wie Neverwinter Nights Tools) erscheinen vielleicht noch komplexere Tools für Modder.

20 Jahre Doom: John Carmack Interview

wired hat John Carmack auf drei Seiten interviewt. Was ich schön finde, natürlich sagt John was über seine Arbeit, aber er spricht auch Arbeiten und Features an die nicht allein von ihm stammen.

Über Doom

unvorher gesehene Modbarkeit mit Wölfchen

interne Diskussionen wie modifizierbar und „frei“ ein Spiel sein soll. John wollte immer Source Code und Tools freigeben, egal ob dadurch Einnahmen flöten gingen.

Ich muss noch mal einwerfen, id hat ja auch davon profitiert. Begeisterung der Amateur Mapper. Gibt Leute die gelangten erst durch Doom & Quake Maps ins Business. Image, Engine Lizenzen, kommerzielle Fanmapping-Cooperationen bei Doom Episode 4 und Final Doom. Es ist wohl wahr, id hätte Doom stärker melken können, aber sie hätten den Bedarf nach Maps & Mods nicht hätten allein stillen können.

Coder vs Gamedesigner
„The gameplay, in terms of how weapons work, how world interactive items work, all of that, how the AI works, that was all still largely my code at that time. [..] But the personality of the game, in terms of dialing in exactly how much damage things do, tuning it, changing speed, [Doom co-creator John] Romero had a big part doing that. A lot of his fingerprints were on the core tuning elements of it.“ (Wie heisst es so schön im Masters of Doom-Buch, Dreamteam der zwei Johns)

Höllensymbolik und Moraldebatte. „On the thematic side of things, I pushed certainly for the demonic aspect of it.“

die Gaming Business Kritik an Doom „There was no filtering on the pixels, the colors were banding [vereinigend, streifig]“. (Ich bin da anderer Meinung, Pixel Look forever!)

Neuzeit

er beschäftigte sich noch mal mit Classic Doom für die iOS Version. Als Code verwendete er eine bestehende Open Source Version. (Übrigens die Version gibts nicht über deutschen iTunes Store zu kaufen)

entschuldigt sich dafür das Doom 3 BFG nicht wie versprochen für Oculus VR erschienen ist. Es klingt so als wenn die nicht mehr kommt, aus Zeitmangel und anderen Gründen kommt. Irgendwann will er darüber sprechen was da los war.

es war falsch für id in so lange Spiel-Entwicklungsphasen zu gelangen. (Von uns wird wohl keiner wiedersprechen wollen)

Doom 4. Er muss da diplomatisch zu schweigen. Aber „That’s something I can’t really go into much in detail. It’s been hard—one of the things that was a little bit surprising that you might not think so from the outside, but deciding exactly what the essence of Doom is, with this 20-year history, is a heck of a lot harder than you might think. You get multiple Doom fans that have different views of what the core essence of it is, and there’s been a design challenge through all of it.“

Also wir hatten das hier schon öfters thematisiert. Die Schwierigkeit alte und neue Spieler anzusprechen plus noch was Neues zu bieten. Alles unter einen Hut zu bringen ist ein Brainfuck. Wenn jemand das schafft, dann id.

20 Jahre Wolf 3D: freie Browser Version und Carmack Audio Kommentar

Seit zwanzig Jahren kämpft sich unser Lieblingspole und 1-Man-Army B.J. Blazkowicz auf der Allies Seite durch die Wolfenstein Serie. BJ werden wir sicherlich noch in zukünftigen Wolfenstein Spielen wiedersehen. Vielleicht ist der Doom Marine sogar ein Nachfahre von BJ.

id Software und Bethesda feiern auf Bethblog den 20. Geburtstag von Hundefelsen 3D.

Eine freie Browser Version vom Wölfchen ist von Bethesda erschienen (3d.wolfenstein.com). Allerdings ist da eine fette IP Ländersperre für deutsche Spieler am Werk. Am besten nach anderen Seiten suchen die das kopiert haben.

Weiter hat John Carmack zum Geburtstag einen Entwickler Kommentar aufgenommen (Alternativlink youtube).

Carmack spricht natürlich eher über die Technik als übers Gameplay. Ist wirklich schön gemacht. Er findet beim Spielen zwei Bugs; sagt das die Deutschen eine grünes Blut-Roboter Version haben wollten; in der Super Nintendo Version wurden die Schäferhunde gegen „german evil rats“ ausgetauscht da man damals in einem Nintendo Spiel nicht auf Hunde schiessen durfte; die Classic Game Portierungen auf iOS hätten im Spass gemacht [übrigens über deutsches iTunes nicht erhältlich]; sagt er hätte damals bei der Entwicklung eigener Spielen nicht die Zeit gehabt alles durch zu spielen weil er mit der Technik beschäftigt war; er mochte die Saturn Version; kurze Entwicklung -simples Gameplay – lange Spielzeit.

Bethblog bietet zusätzlich noch andere Dinge als Geburtstagsgeschenk an (Steam Angebot, kostenloses iOS Spiel), aber Deutsche haben nichts davon.


Happy 20th, Wolfenstein 3D

Update: Steam users can celebrate Wolfenstein’s anniversary with these deals…

  • Wolf Pack for $3.75 (75% off) — includes Return to Castle Wolfenstein, Spear of Destiny, and Wolfenstein 3D
  • id Software Super Pack for $49.99 (50% off) — includes so many games, you should just visit Steam to get the lowdown.

Original Post: This past Saturday marked the 20th anniversary of id Software’s legendary FPS game, Wolfenstein 3D. To commemorate the occasion, we’ve got a few treats so you can “Get Psyched!”.

At wolfenstein.bethsoft.com, you can relive all the glory of id’s seminal shooter with a free-to-play browser version of the game. And for limited time, iOS users can download Wolfenstein 3D Classic Platinum for free on iTunes.

For a retrospective on the game, Nick and I recently sat down with John Carmack for a director’s commentary track. Watch the video above, as he discusses his memories of the game while playing the original DOS release.

Last but not least, we’ve put up two Wolfenstein items on Xbox LIVE’s Avatar Marketplace. Purchase a Wolfenstein t-shirt (male/female) for 80 Microsoft Point and the Classic B.J. Blaskowicz Mask for 160 points.

Have a favorite memory of Wolf 3D? Feel free to share it with us in the comments section.

Matt Grandstaff via Bethblog.com

RAGE – Clusterfuck, Grafik Treiber, Tweaks, deutsche Version, Secrets

Wie es scheint verkaufen deutsche Onlineshops und der Einzelhandel bereits RAGE vor der offiziellen Europa-Veröffentlichung. Freigeschaltet in Steam wird es aber erst am Freitag sein bei uns in Europa (Steam Countdown).

Clusterfuck
Bericht über Rage Start auf kotaku, Carmack wütent über Treiber Probleme und sagt „The driver issues at launch have been a real cluster fuck„.

Grafik Treiber
• Bis Nvidia einen neuen Grafiktreiber extra für Rage anbietet gibts die Empfehlung den aktuellsten Betatreiber zu nutzen, das ist im Moment der Betatreiber für die BF3 Beta, 285.38 (Nvidia Download)
• Für Rage wurde bereits ein fehlerbereinigter ATI Catalyst veröffentlicht. Jetzt ist eine neue Version erschienen, der soll auch gleichzeitig für die BF3 Beta sein. Catalyst 11.10 Preview Driver Version 2. (BluesNews, Beth Blog)

Tweaks und Probleme
• id arbeitet an einem Patch um mehr Grafik Optionen anzubieten so dass man keine manuellen Tweaks mehr braucht um.
• Beth Community Manager gstaff über Problemlösungen (Bethsoft Forum)
• High Resolution Texturen: Config überschreibt Autolauncher und macht aus 4k dann 8k Texturen (GeForce)
• Texturen Probleme loswerden (Hardwareluxx)
• id erklärt auf kotaku was zu Tweaken ist.

Für ein PC Spiel von id Software  ziemlich ungewöhnlich ist nur so wenig Einstellungsmöglichkeiten im Optionsmenü bereit zu stellen. id arbeitet gerade an einem Patch für mehr Ingame Einstellungen. In der Zwischenzeit kann die id tech-Grafikengine aber schon manipuliert werden kann. Das geschieht entweder durch Festlegung von Startparameter einer exe Verknüpfung, durch Befehlseingabe in die Ingame Konsole, oder Befehle und Werte werden in den Config-Files gespeichert. Die jetzt überall auftauchenden Tweak-Hilfen erklären wie das geht.

Rätsel um deutsche Version
Es wurde  von pcgames und gamestar behauptet das die deutsche Version nur in deutscher Sprache spielbar sei, die Info stammte offenbar von Bethesda selbst. Bei Konsolenversionen ist laut golem keine Spracheinstellung möglich. Jetzt aber haben deutsche PC Steam-Käufer gesagt sie könnten die Sprache in Englisch umstellen, der Download betrage 300 MB. Was ist jetzt mit den physischen Datenträgern aus dem Einzelhandel, kann man dort die Sprache auch umstellen? Es wird auf eine Info von Seiten Bethesda gewartet.

• Secret Rooms (Quake, Doom, Wolfenstein) und Easter Eggs (IGN)
• Secret: Quake Classic-Raum in Rage. (kotaku)

• Da sind vereinzelt Reviews in denen Rage nicht so gut weg kommt (5 Inch Floppy Backup, Nerdseite arstechnica). Mir egal, ich will losspielen, wann kommt endliche meine Bestellung aus UK *heul*.

Erinnerungen von John Carmack zum 15. Geburtstag von Quake

Am 22. Juni 1996 wurde Quake veröffentlicht. Zm Geburtstag sagt John Carmack im Bethblog ein paar Worte zur Entstehung von Quake 1. Magischer Moment sei gewesen als er auf einen Shambler blickte, es gab Zweifel an der freien Mauskontrolle (hihi), er traf seine Frau als die das erste Quake-Frauen-Turnier organisierte und mehr.

Als Extra verlinkt Bethesda auf ein Video welches den Release von QuakeWorld zeigt. QW ist der nachgereichte Multiplayer von id für Quake 1, er enthielt überarbeiteten Netcode auf Client Seite und sorgte für modernes Spielen über Internet. Bei den einen werden Erinnerungen wach, Jüngere können lachen über Spieler die Drehen statt zu Strafen oder sogar einen Joystick benutzen.

QuakeWorld wird natürlich noch immer mit Begeisterung gespielt, dass muss man trotz Nostalgie Faktor sagen. Einfach das Rundumpaket nQuake downloaden, installieren und einen von vielen Online Servern betreten.


Today marks the 15th birthday of Quake, the game that gave birth to online multiplayer shooters and even won an Emmy. In fact, Quake’s legacy is far too reaching to sum up here, so rather than pontificate ourselves, we got the id guys to say a few words before we blew out the candles.

When asked to recall Quake, id Software president Todd Hollenshead offered this amusing anecdote: “One of my all time best game moments is still grabbing the rune at the end of the first episode and awakening the lava monster! I’m sure that level also inspired the USMC commercial with the Marine fighting the lava demon. Compare the screenie to the video. :)”

Also check out the video above, taken during the QuakeWorld launch event in 1996. The footage illustrates what a monstrous event Quake was in gaming history, and features a short historical Q&A session with John Carmack.

And finally, to cap off our celebration, a note today from the desk of Carmack himself:

“I could write an awful lot about Quake, but since we are in the final crunch for Rage right now, I’ll have to settle for just a few random thoughts.

I have a bit more subdued memory of Quake than many of our other projects, because the development was so tough. It was the first project where I really had to grapple with my personal limitations; I had bitten off a little more than I could chew with all the big steps at once – full 3D world, 3D characters, light maps, PVS calculations, game scripting, client / server networking, etc. No matter how hard I worked, things just weren’t getting done when we wanted them to.

My defining memory of the game was fairly early in development, when I no-clipped up into a ceiling corner and looked down as a Shambler walked through the world with its feet firmly planted on the ground. This looked like nothing I had ever seen before; it really did seem like I had a window into another world. Of course, as soon as he had to turn, the feet started to slide around because we didn’t have pivot points and individual joint modifications back then, but it was still pretty magical.

It seems silly now, but at the time we were very concerned that people wouldn’t be able to deal with free look mouse control, and we had lots of options to restrict pitch changes and auto-center when you started moving.

The internet gaming aspect was almost an accident. I had moved from Doom’s peer-to-peer networking to client/server primarily to allow late game entry, and UDP was supported because I was still doing a lot of the development on NEXTSEP unix workstations. The idea of playing over the internet was always there, but I didn’t think it would be practical for many people due to the long latencies and variable performance of typical connections. When it turned out that people were doing it despite the low quality, it gave me the incentive to develop the alternative QuakeWorld executable with the various latency reduction mechanisms.

The other important alternative executable was glQuake, which played a significant role in the early days of 3D accelerators. 3DFX was the gold standard back then – Nvidia’s RIVA128 had poor subpixel precision and didn’t handle all the blend modes properly. In fact, almost everyone was under the incorrect assumption that blending was only good for alpha transparency, even companies like 3DLabs that should have known better.

Competitive deathmatch had gotten started with Doom, but the Red Annihilation Quake tournament was a high point, where I gave my first turbo Ferrari away to Thresh for his dominating tournament win.

I look back at Quake as the golden age of game modding, before the standards rose so high that it required almost a full time commitment to do something relevant. I am very proud that many of today’s industry greats trace their start back to working with Quake.

The most important thing about quake for me was that I met my wife when she organized the first all-female Quake tournament. She still thinks Quake was the seminal achievement of Id, and she glowers at me whenever I bemoan how random the design was. :)”

Gepostet von Matt Grandstaff via Bethblog.com

John Carmack discusses RAGE on iPhone / iPad / iPod

This month we’re privileged to share a special diary from the legendary John Carmack, technical director and co-founder of id Software. In addition to his current work on RAGE — coming to Xbox 360, Games for Windows, and PlayStation 3 on September 13, 2011 — and id Tech 5 technology, John has been working on an iPhone/iPad/iPod touch version of RAGE that will introduce gamers to the game’s story and world.

Round of applause for John Carmack…

RAGE for iPhone

Our mobile development efforts at id took some twists and turns in the last year. The plan was always to do something RAGE-related on the iPhone/iPad/iPod touch next, but with all the big things going on at id, the mobile efforts weren’t front and center on the priority list. There had been a bit of background work going on, but it was only towards the end of July that I was able to sit down and write the core engine code that would drive the project.

I was excited about how well it turned out, and since this was right before QuakeCon, I broke with tradition and did a live technology demo during my keynote. In hindsight, I probably introduced it poorly. I said something like “Its RAGE. On the iPhone. At 60 frames a second.” Some people took that to mean that the entire PC/console game experience was going to be on the iPhone, which is definitely not the case.

What I showed was a technology demo, written from scratch, but using the RAGE content creation pipeline and media. We do not have the full RAGE game running on iOS, and we do not plan to try. While it would (amazingly!) actually be possible to compile the full-blown PC/console RAGE game for an iPhone4 with some effort, it would be a hopelessly bad idea. Even the latest and greatest mobile devices are still a fraction of the power of a 360 or PS3, let alone a high end gaming PC, so none of the carefully made performance tradeoffs would be appropriate for the platform, to say nothing of the vast differences in controls.

What we do have is something unlike anything ever seen on the iOS platforms. It is glorious, and a lot of fun. Development has been proceeding at high intensity since QuakeCon, and we hope to have the app out by the end of November.

The technical decision to use our megatexture content creation pipeline for the game levels had consequences for its scope. The data required for the game is big. Really, really big. Seeing Myst do well on the iPhone with a 700 meg download gave me some confidence that users would still download huge apps, and that became the target size for our standard definition version, but the high definition version for iPad / iPhone 4 will be around twice that size. This is more like getting a movie than an app, so be prepared for a long download. Still, for perspective, the full scale RAGE game is around 20 gigs of data with JPEG-XR compression, so 0.7 gigs of non-transcoded data is obviously a tiny slice of it.

Since we weren’t going to be able to have lots of hugely expansive levels, we knew that there would be some disappointment if we went out at a high price point, no matter how good it looked. We have experimented with a range of price points on the iPhone titles so far, but we had avoided the very low end. We decided that this would be a good opportunity to try a  $0.99 SD / $1.99 HD price point.  We need to stay focused on not letting the project creep out of control, but I think people will be very happy with the value.

The little slice of RAGE that we decided to build the iPhone product around is “Mutant Bash TV”, a post apocalyptic combat game show in the RAGE wasteland. This is the perfect setup for a quintessential first person shooter game play experience — you pick your targets, aim your shots, time your reloads, dodge the bad guys, and try and make it through to the end of the level with a better score than last time. Beyond basic survival, there are pickups, head shots, and hit streak multipliers to add more options to the gameplay, and there is a broad range of skill levels available from keep-hitting-fire-and-you-should-make-it to almost-impossible.

A large goal of the project has been to make sure that the levels can be replayed many times. The key is making the gamplay itself the rewarding aspect, rather than story progression, character development, or any kind of surprises. Many of the elements that made Doom Resurrection good the first time you played it hurt the replayability, for instance. RAGE iOS is all action, all the time. I have played the game dozens of times, and testing it is still fun instead of a chore.

Technical Geek Details

The id Tech 5 engine uses a uniform paged virtual texture system for basically everything in the game. While the algorithm would be possible on 3GS and later devices, it has a substantial per-fragment processing cost, and updating individual pages in a physical texture is not possible with PVRTC format textures. The approach used for mobile RAGE is to do the texture streaming based on variable sized contiguous “texture islands” in the world. This is much faster, but it forces geometric subdivision of large surfaces, and must be completely predictive instead of feedback reactive. Characters, items, and UI are traditionally textured.

We build the levels and preview them in RAGE on the PC, then run a profiling / extraction tool to generate the map data for the iOS game. This tool takes the path through the game and determines which texture islands are going to be visible, and at what resolution and orientation. The pixels for the texture island are extracted from the big RAGE page file, then anisotropically filtered into as many different versions as needed, and packed into 1024×1024 textures that are PVRTC compressed for the device.

The packing into the textures has conflicting goals – to minimize total app size you want to cram texture islands in everywhere they can fit, but you also don’t want to scatter the islands needed for a given view into a hundred different textures, or radically change your working set in nearby views. As with many NP complete problems, I wound up with a greedy value metric optimizing allocation strategy.

Managing over a gig of media made dealing with flash memory IO and process memory management very important, and I did a lot of performance investigations to figure things out.

Critically, almost all of the data is static, and can be freely discarded. iOS does not have a swapfile, so if you use too much dynamic memory, the OS gives you a warning or two, then kills your process. The bane of iOS developers is that “too much” is not defined, and in fact varies based on what other apps (Safari, Mail, iPod, etc) that are in memory have done. If you read all your game data into memory, the OS can’t do anything with it, and you are in danger. However, if all of your data is in a read-only memory mapped file, the OS can throw it out at will. This will cause a game hitch when you need it next, but it beats an abrupt termination. The low memory warning does still cause the frame rate to go to hell for a couple seconds as all the other apps try to discard things, even if the game doesn’t do much.

Interestingly, you can only memory map about 700 megs of virtual address space, which is a bit surprising for a 32 bit OS. I expected at least twice that, if not close to 3 gigs. We sometimes have a decent fraction of this mapped.

A page fault to a memory mapped file takes between 1.8 ms on an iPhone 4 and 2.2 ms on an iPod 2, and brings in 32k of data. There appears to be an optimization where if you fault at the very beginning of a file, it brings in 128k instead of 32k, which has implications for file headers.

I am pleased to report that fcntl( fd, F_NOCACHE ) works exactly as desired on iOS – I always worry about behavior of historic unix flags on Apple OSs. Using this and page aligned target memory will bypass the file cache and give very repeatable performance ranging from the page fault bandwidth with 32k reads up to 30 mb/s for one meg reads (22 mb/s for the old iPod). This is fractionally faster than straight reads due to the zero copy, but the important point is that it won’t evict any other buffer data that may have better temporal locality. All the world megatexture data is managed with uncached reads, since I know what I need well ahead of time, and there is a clear case for eviction. When you are past a given area, those unique textures won’t be needed again, unlike, say monster animations and audio, which are likely to reappear later.

I pre-touch the relevant world geometry in the uncached read thread after a texture read has completed, but in hindsight I should have bundled the world geometry directly with the textures and also gotten that with uncached reads.

OpenAL appears to have a limit of 1024 sound buffers, which we bumped into. We could dynamically create and destroy the static buffer mappings without too much trouble, but that is a reasonable number for us to stay under.

Another behavior of OpenAL that surprised me was finding (by looking at the disassembly) that it touches every 4k of the buffer on a Play() command. This makes some sense, forcing it to page the entire thing into ram so you don’t get broken sound mixing, but it does unpredictably stall the thread issuing the call. I had sort of hoped that they were just eating the page faults in the mixing thread with a decent sized mix ahead buffer, but I presume that they found pathological cases of a dozen sound buffers faulting while the GPU is sucking up all the bus bandwidth or some such. I may yet queue all OpenAL commands to a separate thread, so if it has to page stuff in, the audio will just be slightly delayed instead of hitching the framerate.

I wish I could prioritize the queuing of flash reads – game thread CPU faults highest, sound samples medium, and textures lowest. I did find that breaking the big texture reads up into chunks helped with the worst case CPU stalls.

There are two project technical decisions that I fretted over a lot:

Because I knew that the basic rendering technology could be expressed with fixed function rendering, the game is written to OpenGL ES 1.1, and can run on the older MBX GPU platforms. While it is nice to support older platforms, all evidence is that they are a negligible part of the market, and I did give up some optimization and feature opportunities for the decision.

It was sort of fun to dust off the old fixed function puzzle skills. For instance, getting monochrome dynamic lighting on top of the DOT3 normal mapping in a single pass involved sticking the lighting factor in the alpha channel of the texture environment color so it feeds through to the blender, where a GL_SRC_ALPHA, GL_ZERO blend mode effects the modulation on the opaque characters. This sort of fixed function trickery still makes me smile a bit, but it isn’t a relevant skill in the modern world of fragment shaders.

The other big one is the codebase lineage.

My personally written set of iPhone code includes the renderer for Wolfenstein RPG, all the iPhone specific code in Wolfenstein Classic and Doom Classic, and a few one-off test applications. At this point, I feel that I have a pretty good idea of what The Right Thing To Do on the platform is, but I don’t have a mature expression of that in a full game. There is some decent code in Doom Classic, but it is all C, and I would prefer to do new game development in (restrained) C++.

What we did have was Doom Resurrection, which was developed for us by Escalation Studios, with only a few pointers here and there from me. The play style was a pretty close match (there is much more freedom to look around in RAGE), so it seemed like a sensible thing. This fits with the school of thought that says “never throw away the code” (http://www.joelonsoftware.com/articles/fog0000000069.html ). I take issue with various parts of that, and much of my success over the years has involved wadding things up and throwing it all away, but there is still some wisdom there.

I have a good idea what the codebase would look like if I wrote it from scratch. It would have under 100k of mutable CPU data, there wouldn’t be a resource related character string in sight, and it would run at 60 fps on new platforms / 30 fps on old ones. I’m sure I could do it in four months or so (but I am probably wrong). Unfortunately, I can’t put four months into an iPhone project. I’m pushing it with two months —  I have the final big RAGE crunch and forward looking R&D to get back to.

So we built on the Resurrection codebase, which traded expediency for various compromise in code efficiency. It was an interesting experience for me, since almost all the code that I normally deal with has my “coding DNA” on it, because the id Software coding standards were basically “program the way John does.”  The Escalation programmers come from a completely different background, and the codebase is all STL this, boost that, fill-up-the-property list, dispatch the event, and delegate that.

I had been harboring some suspicions that our big codebases might benefit from the application of some more of the various “modern” C++ design patterns, despite seeing other large game codebases suffer under them. I have since recanted that suspicion.

I whine a lot about it (occasionally on twitter), and I sometimes point out various object lessons to the other mobile programmers, but in the end, it works, and it was probably the right decision.

John Carmack 10-26-2010 via Bethblog.com

John Romero und id Software erinneren sich an QTest Veröffentlichung

QTest hat nun auch schon wieder 14 Jahre auf dem Buckel. QTest war damals nur der Multiplayer, doch mit Tricks liessen sich auch Monster dazuschalten die im Programmcode steckten.

Der Quake 1 Multiplayer enthielt damals schon alles, was einen modernen 3D Shooter ausmachte. Übrigens, Quake World & Bunnyhopping hielt erst später Einzug in den Multiplayer.

John Romero
erinnert sich auf seiner Seite an das Erscheinen der QTest Version.

Bethblog
bietet aktuelle Statements von id Software Mitarbeitern an zum damaligen Erscheinen der QTest Version.


Fourteen years ago today, the pioneering developers at id Software released QTest, the first public beta of the original Quake.

Contained within a massive 4.1mb package, QTest served as the first glimpse of many groundbreaking gaming features that we now take for granted. Realtime 3D graphics, mouselook support, built-in TCP/IP multiplayer; Quake ushered in an entirely new era of shooters, and we’re still feeling the aftershocks.

To mark the occasion, I asked the guys at id to share some of their memories of February 24, 1996. Read on for comments from John Carmack, Tim Willits, and more — along with a few stories from the team here at Bethesda.

John Carmack, Co-founder and Technical Director, id Software:

We were watching a live online chat when the upload went live.  When the first person got it, there was a great clamor for reports about what it looked like.  Unfortunately, one of the first things reported was “There is a turtle in the corner of the screen.”  I had a check in the code to draw that icon as a sign that you were running at 10 frames a second or less, so you should reduce quality settings to get a more playable experience.  Quake was one of the first PC apps where floating point performance was a critical factor, which meant that Intel’s Pentium processor had a huge lead over the competing AMD and Cyrix processors of the time, which had FPUs that were more similar to the 486.  A lot of systems weren’t really up to it.

We eventually removed the “turtle check” from our games, because some people felt that we were insulting their systems, but there was also an interesting effect that was a product of the times — we found that a lot of people would crank up the resolution until the frame rate dragged down to about 10 fps, regardless of their CPU speed.  Competitive gamers may disbelieve this, but for players that were more interested in the then-novel experience of exploring a modeled virtual world, getting the visual fidelity up above 320×200 resolution was important enough to make the game only barely-interactive.  Most people had to wait a bit longer for glQuake and the 3DFX Voodoo to start getting the best of both worlds.

Tim Willits, Creative Director, id Software:

I don’t personally have any good stories about releasing Qtest. I was too nervous to really enjoy the experience.I did like kicking everyone’s ass online in Quake before I was quickly bypassed in skill by any self-respecting Quake player.

Pat Duffy, Lead Artist, id Software:

I was 2 months out of college, attempting to make a living with an art degree. I had played Doom before, having discovered it hidden on a server in the college computer room, but it was Qtest that set me on the path to becoming a video game developer. I had landed my first job as a graphic designer and was working late hours when Robert told me I had to stop everything and go over to see Qtest. I didn’t know what it was, but when he said it was by the Doom guys I was on my way.

I remember sitting there looking around in-game after he loaded it up, I didn’t care about the networking model he was talking about, I just couldn’t believe how big a visual leap had been made from Doom (and everything else out there). While he began to dig deeper into what id was doing I kept looking at the game, walking around, shooting the walls, and being amazed by the lighting, art, and 3d rendering. I knew right then that this is what I needed to do with my life…and nowhere but id Software would be an acceptable studio, these guys KNEW what it was all about.  It took me 5 years to get my foot in the door at id, and every day since then has been another day at my dream job, working with some of the most talented people in the industry…all thanks to Qtest.

Adam Pyle, Community Manager, id Software:

I was seventeen years old, an avid fan of id Software and NIN.  Before the release of QTest there had been preview coverage in gaming magazines that piqued my interest, which made me keep my eye glued to any news coming out of id.  The day of its release became the start of a passion yet to be matched within my gaming universe.  I found the unique blend of tech and gothic themes and the unparalleled detail within a 3D world to be mesmerizing. But it was perhaps the soundscape that took me in like no other.

William Shen, Associate Designer, Bethesda Game Studios:

Looking back, seeing the NiN logo on the box of nailgun ammo for the first time is my sharpest memory. I think there’s something definitively 1990’s about all that. Quake and NiN. It was like a revolution of young male nerd anger. Also, Quake dude had an axe. A bloody axe. That’s hardcore.

Jason Bergman, Senior Producer, Bethesda Game Studios:

What I remember most about the release of QTest was the anticipation behind it. It was going to be INSANE. There had been some screenshots released, but really, there was so much we didn’t know. The community that had sprung up around Quake (well before its release) was enormous (or at least, it was by our standards at the time). People were waiting for QTest not just to play it, but also to start hacking it and working on level editors and other utilities (this was long before games shipped with modding tools, so people had to write their own).

It was really exciting to be part of that community. As a huge fan of Doom, and a fairly active member of the burgeoning Quake community, I was constantly refreshing sites like Blue’s Quake Rag (now Blue’s News), Redwood’s Quake Page (sadly defunct) and sCary’s Quakeholio (now Shacknews) for the latest news. When it was finally released, I was hanging out in the Java chat room on a site called Aftershock (run by Joost Schuur, who moved on to work at GameSpy fairly early on and has been there ever since). John Romero (THE John Romero!) hopped on the channel and announced that it was out.

I downloaded it as soon as I was able to get through to an FTP site (probably either CDROM.com or one of its many mirrors), rounded up some guys in my dorm and we played deathmatch for many, many hours. For a test release, there was a LOT of content in that thing…awesome weapons like the nailgun, full 3D graphics (!) and an early version of one of the greatest deathmatch levels of all time (DM2 forever!).

A lot changed between QTest and and that initial retail version of Quake, and I guess it probably seems quaint to people who are used to the constant stream of news over Twitter and the many big gaming sites these days, but the release of QTest was huge for the community back then. And those guys who couldn’t wait to start hacking the game? They’re now a Who’s Who of the gaming industry, and you’ll find their names in the credits of games like Modern Warfare 2, Left 4 Dead, Borderlands, Gears of War…pretty much any of the major shooters from the last few years (including subsequent games from id). The Quake community was tightly knit and very, very motivated. It was a pretty unique time in the gaming industry.

Also the game was awesome. Did I mention that?

Gepostet via Bethblog.com