Be a Supporter!

mikemike

Main News Movies Games Audio Favorites Reviews Stats 1,264 Fans
Follow mike

"DOOM is the new Hello World"

12/4/08 by mike
Updated 12/4/08

The first thought on everyone's mind once Adobe released Alchemy: "Time for Doom in the web browser!"

Naturally, it's only the demo. id Software still actively sells Doom -- on both Xbox LIVE and Steam -- so if you've never played it, you should pick up the full version.

There are a few things missing in the port:

- No music. Doom's music files are MIDI, and Flash can't natively play MIDI files. I was tempted to include OCRemix's Doom soundtrack as MP3, but even a few of the songs would be bigger than 2.5 meg Flash file!

- No mouse control. Flash has no way of "locking" the mouse to the game area, so it's impossible to do true Quake-style mouselook. I'll be ranting about this more in a future post.

- Bad keyboard controls. Doom's original keyboard controls (ALT, CTRL, etc.) don't get along with Flash and caused odd behavior on different platforms. I changed them around, but what I really need to add is configurable controls.

- Yea, the secret is missing in E1M1 and the BFG isn't there. These weren't in the shareware version! :)

As per the GPL license, the source code for the port is publicly available! Feel free to play around with it here:
http://github.com/Herschel/flash-doom/
tree/master

Also, check out Max's AS3 Doom engine. He actually reprogrammed the DOOM-style raycasting engine in AS3, before Alchemy was even announced! Wow!


Comments

You must be logged in to comment on this post.


virtuamanvirtuaman

2/26/10

so technically. You could write a full game in the DOOM engine as a mod, then port it to flash, then release it as a 100% flash game. Pretty cool. I have always wanted to create a DOOM like engine in flash and have many "FLASHDOOM" failed attempts lying around my backup DVDs. I think I will stick to 2D for now it is easier.

good work on porting it tho, impressive.


mr-jonesmr-jones

3/6/09

Very cool.

I learned Morse code yesterday, because I randomly decided that I should make a chat program with Java, where users would input via Morse code.

Something about using new technologies to go backwards is just entertaining. Not that a fast-loading FPS in a browser is necessarily "backwards," but you know what I mean.

Typically, "alchemy" seems to suggest transmuting worthless materials into gold. However, what you have used Alchemy for, I think, is turning gold into platinum. Well done, sir.

Now I wish to see mp3 files imprinted onto a vinyl record, along with a player that can read them.


elementellelementell

1/26/09

document.write(*DOOM*)

Amidoinitrite


its realy cool but, are you going to make the full version?
i ask this because ms-dos no longer exists so i cant play it from disc :(


Yeah customizable would be a great addition, fantastic port either way.


EmmDubyaEmmDubya

1/6/09

You have the best username on the site.


SiirJezzSiirJezz

1/3/09

I didn't read what you just wrote, but you have the gold aura, so I love you anyway. :3


desi101desi101

1/1/09

blam the real 9/11 story


sirtom93sirtom93

1/1/09

ID themselves made quake for the browser - being quake live. I for one don't see how c code could be converted to actionscript, because they have completely different standard functions etc...


PhalanxPhalanx

12/31/08

I <3 Doom


DJ-DeniDJ-Deni

12/28/08

I heard you converted it from EXE to SWF.


SteranceSterance

12/16/08

Can heretic be next please? I think there was a shareware version of that... man i grew up playing these games. Command Keen too... he made me try out pogo sticks.

This alchemy thing is pretty sweet. I'm still not sure how you use a graphics api like SDL with it though, i'll have to look more into it. I've always understood C better than AS anyways. Nice work on the Doom port! :D


Hey, I'm Max. I appreciate the link. Good job on the game.


xellonxellon

12/14/08

DOOOOOOOOOOM...


TorruntTorrunt

12/11/08

http://www.actionscriptarchitect.com/
2007/10/03/first-person-3d-engine/

That guy made some 3D first person shooters for Flash, and it has mouselook :O It works pretty well actually, you should try out the Demo's if you haven't already.

12/11/08 (Updated 12/12/08) mike responds:

Sweet engine!

Unfortunately, the mouse-look requires clicking inside the Flash and dragging with the button held down. Keeping the button held down like this is the only way Flash can be 'aware' of the mouse's position once it leaves the Flash area. Sadly, it's the best Flash can do. :( Flash also only keeps track of movement to the edge of the browser screen. What we really need is a way to 'lock' the mouse pointer within the Flash area, and to grab the relative movement of the mouse, NOT just the cursor position.


RionHunterRionHunter

12/10/08

oh, and can you do duke nukem next? :D


RionHunterRionHunter

12/10/08

Supposedly you can port most music sorts.
I would've thought that midi would've been capable with C++ ...?


Why do I have your page bookmarked....

Oh well. Hi Mike!


CyberdevilCyberdevil

12/7/08

Wow. Best flash game I've ever played, not only because of my neverdying devotion towards the original series, heh, everything is great, I havn't seen any other seemingly threedimensional shooters with this much gameplay involved.

Will you be porting Doom 2 too? Maybe the Plutonium special? TNT? A few open source WADs packed together as one game? Now that it's possible, there is so much you can do with this . . .


The thing I love about you is that I never understand a fucking thing you're on about, yet it all sounds so interesting. Sure, this post makes sense, but all your others about programming sound like a foreign language to me, and I'd love to understand it. You must be one hell of a smart bloke to keep alll that stored in your head.


mikew114mikew114

12/6/08

DOOM SONG! DOOM DOOMY DOOM DOOM DOOM DOOM DOOM DA DOOM!


oh snack


Wraith2000Wraith2000

12/6/08

It was pretty impressive, despite its flaws.

Handles just like Doom. Its just a little clunky.


gnome42gnome42

12/6/08

nothing can replace Hello World.


Atgod88Atgod88

12/5/08

what are the odds of you porting the full version since I my credit card is maxed out therefore steam will bend me over a chair if I try to purchase anything


want sex now.


omg you're so cool!


Coulden't you just try simply just plane old action scripting in so the screen stays locked to your mouse? The only problem I could see is where you drag your moues off screen but hey a least you can use it!

12/7/08 mike responds:

Dragging the mouse out of the screen is really the crux of the problem. Then you get people clicking outside the window on accident, and it all goes to hell from there!

I could make it scroll depending on how far away from the center of the screen the mouse is, but it's really not the same as true mouselook.


cHuntercHunter

12/4/08

Do Shadow Warrior or Duke Nukem next. :P


FatmanpezFatmanpez

12/4/08

thanks for releasing it,Im no scripter but I will try to get some wads working


igottigott

12/4/08

I liked Arena or Street Fighter.


Looks like you beat him


rockyace42rockyace42

12/4/08

I love DOOM and have favorited your game, but don't you think you're getting a little bit too much credit for this??? Technically, all you did was put it in alchemy and change it a teeny bit, but then again, no one else did. Can we expect to see another alchemy-created flash in the future from you??? PLEASE???!!!

12/7/08 mike responds:

I don't presume any credit -- the folks at id Software are the ones who made the game awesome. :)


araskin500araskin500

12/4/08

It's very interesting that you can bring old games like Doom into flash. I wonder if you can edit those games, maybe make new enemies or levels entirely?

12/7/08 mike responds:

there's 15 years worth of Doom levels and mods out there that could potentially plugged in!


HadesHades

12/4/08

It has it's flaws, but still, it's really a nice piece of work. Really brought back some good memories.