PDA

View Full Version : Quake 2 for DS WIP Update



wraggster
November 25th, 2007, 21:39
simonjhall the excellent coder who has brought an amazing port of Quake to the Nintendo DS has today gave some details of his work of bringing Quake 2 to the DS, heres the details:


Ok, just an update on this (dunno why I'm doing this!)
Thought I'd get off my arse this weekend and check out the Q2 code on my PC. I've not done a lot of work on it in the last six months, besides fix the load times. They were so slow that working on it is completely unproductive, as you've gotta sit around and surf the net for three minutes until you can get it to crash again!

Anyway, here's some info for those who care
- the game now takes about a minute to load (once the program has started)
- the world is now rendered with the DS' 3D hardware; the framerate looks very playable
- I'm an inch away from getting texturing in
- no models, GUI, etc
- the proper palettes are in (hence I can now nearly texture), as are the game fonts
- I've got the RAM usage down to a pretty low level. The existing system required an MMU and (virtually) allocated memory in a crazy way. One problem I had before I sorted this out was that I could *just* squeeze a demo into 32 + 4 megs. After looking into it I realised that 70% of that memory was actually going to waste! The *demos* ought to run in ~10 meg of RAM now.
- it's 8-bit write hell, and I'm gonna have to go strb hunting to sort that out!

No promises, but there's a chance I may actually work on this properly :-)

Pilot_51
November 25th, 2007, 22:49
Good to know progress is being made on it. This is my most anticipated DS port. Keep up the great work, Simon!

bassCore
November 25th, 2007, 23:56
You can do it, I know it.

Echo1
November 26th, 2007, 01:12
Good to hear that you're still working hard on it.

Sigma83
November 26th, 2007, 04:55
mmmm, rail gun *drool* :)

simonjhall
November 26th, 2007, 10:14
Texture mapping's in now, lighting to go in shortly...

fook123
November 26th, 2007, 11:18
I cant wait to get to try quake 2 on my ds.

Echo1
November 26th, 2007, 13:50
If it's going to anything like your port of Quake, it'll rock!

simonjhall
November 26th, 2007, 19:48
Lighting's in...this is just too easy :-S
Anyway, I can't decide whether or not to support coloured lighting. The software renderer uses only greyscale lighting, but the OpenGL version of the game used coloured lighting, yet many people complained about it...I can't decide what to do.

EDIT: forgot to clarify: this will ONLY EVER WORK on people's DS if there's a slot-2 RAM card plugged into the bottom slot. At the rate this is going, you'll require a minimum of 16 meg on the card, 32 meg recommended. It's unlikely to fit into the 8MB Opera RAM expansion.

Echo1
November 26th, 2007, 19:55
I have the 3-in-1 which has 16Mb. Hope that'll be enough.

bassCore
November 26th, 2007, 21:33
I have the M3CF, with 32 megs of ram i guees. Are there different versions for slot 1 and 2 cards, like M3Simply/M3CF or how does it work?

w00tman X
November 28th, 2007, 01:51
Well, looks like I'll have to get my hands on a RAM expansion. Can anyone recommend a slot-2 homebrew device that has 32 megs of extra RAM?

Anyways, this is great news. The more brilliant FPS games the DS gets, the better. Keep it up.

hazeythelazy
November 28th, 2007, 07:47
Coolness

hazeythelazy
November 28th, 2007, 07:48
Hey man it's a THOUGHT to make it ONLY for 2 slot solutions OR 1 slots with a EXRAM pack!

Be3f
November 28th, 2007, 17:10
simonjhall - awesome work! Will you release the source code, when it's done? Here's a Quake 2 to PSP port DevBlog by McZonk: http://emergencyexit.untergrund.net/
He (McZonk) also has huge problems with low memory (PSP has free 24 megs user RAM partition and no virtual memory) - your optimizations may be useful, and his (sources of the latest Q2-PSP public beta are avaluable there) may be too for your project! ;)

weaselboy246
November 28th, 2007, 19:00
God speed to ya Simon. Don't care a thing about the slowdown of using the EXRAM builds. So do what you need to just make it work. And screw colored lighting. :)

simonjhall
December 2nd, 2007, 23:26
Did a load of Q2 today, and I've decided to make a quick video (with me actually playing it) and stick it up your youtube, in order to show those "OMG 1fps!!1112" naysayers that the Quake2 on the DS is a very real possibility.
So anyway, here's me buzzing around the entry level. It's surprisingly hard to make a video of the DS, as well as use it at the same time :-)
The reason I never actually shoot the bad guys is cos I can't reach the L shoulder button due to the makeshift camera mount I made!

The framerate is still crap, but this time it's not due to the software renderer taking all the cycles. This time all the rendering's on the GPU, but the CPU hog is all the floating-point code used to set up the rendering.
Also the white pop-in is when the game runs out of VRAM and some new textures need to load in, so something has to be freed.


http://www.youtube.com/watch?v=Gt9jOEbHm_4

And here's a few pictures (much sharper)
http://img135.imageshack.us/img135/7731/imgp0703fe8.jpg
http://img511.imageshack.us/img511/1867/imgp0702vh6.jpg

Comments?

Da_ALC
December 3rd, 2007, 08:54
Yeah suggestion for which Slot2 cards support 32meg would be most welcomed by me also!

simonjhall
December 3rd, 2007, 11:36
So far, RAM doesn't seem to be a serious problem. Granted, I've only played through a few levels so I'm not yet sure why the PSP is having problems with memory. Running the level in the video was taking ~12 meg of RAM (4 + 8), and I could probably shrink it by streaming the textures from disk like I did with Q1.
There's still no chance of being able to play the game without slot-2 memory though.

Regarding which card to buy, I'd hold your horses a bit! I've still not decided if I'm gonna actually do the game due to the amount of work involved. At the moment it only runs on the 32MB Supercard, but there's no reason it won't run on any other 32MB card (eg the M3). At this stage it *ought* to run on a 16MB card, and if I get the time then I'll confirm that this is so. My 16MB EZ 3-in-1 is definately faster than my 32MB Supercard...

Echo1
December 3rd, 2007, 13:59
That's damned impressive (the vid). How you manage to get it working on the lil'DS in the first place is something else.:)

Da_ALC
December 3rd, 2007, 14:32
So far, RAM doesn't seem to be a serious problem. Granted, I've only played through a few levels so I'm not yet sure why the PSP is having problems with memory. Running the level in the video was taking ~12 meg of RAM (4 + 8), and I could probably shrink it by streaming the textures from disk like I did with Q1.
There's still no chance of being able to play the game without slot-2 memory though.

Regarding which card to buy, I'd hold your horses a bit! I've still not decided if I'm gonna actually do the game due to the amount of work involved. At the moment it only runs on the 32MB Supercard, but there's no reason it won't run on any other 32MB card (eg the M3). At this stage it *ought* to run on a 16MB card, and if I get the time then I'll confirm that this is so. My 16MB EZ 3-in-1 is definately faster than my 32MB Supercard...

Cheers for the quick reply ill hold back from buying for now.

simonjhall
December 22nd, 2007, 01:42
Hi guys, just some sneaky teasers to keep interest in this game alive :D
I've just this minute got coloured lighting into the game and thought I'd take some photos to show how it's going. It's a shame my camera doesn't capture how vibrant the colours look, though...
http://img508.imageshack.us/img508/1796/imgp0704hs0.th.jpg (http://img508.imageshack.us/my.php?image=imgp0704hs0.jpg)http://img171.imageshack.us/img171/3853/imgp0708bn8.th.jpg (http://img171.imageshack.us/my.php?image=imgp0708bn8.jpg)http://img177.imageshack.us/img177/2893/imgp0710wl8.th.jpg (http://img177.imageshack.us/my.php?image=imgp0710wl8.jpg)http://img257.imageshack.us/img257/6076/imgp0713ck9.th.jpg (http://img257.imageshack.us/my.php?image=imgp0713ck9.jpg)http://img180.imageshack.us/img180/9531/imgp0714si4.th.jpg (http://img180.imageshack.us/my.php?image=imgp0714si4.jpg)

In general, the game is progressing really well. The majority of the graphical effects are in, the full sound system in now there, save games are still a problem - but the game is pretty damn playable. It's looking as though a 16MB card is the required minimum, although I've not yet had it run out on memory when playing any levels.

Set your flash cards to stun.

PS: ImageShack seems to be crawling.

Pilot_51
December 22nd, 2007, 10:51
Could you get some video sometime soon like you did before? A video makes for some great mouth-watering show-off material, especially if it's as smooth as you make it sound.

Never mind, I just checked your YouTube profile (http://www.youtube.com/profile?user=simonjhall) and found a newer video. It definitely looks playable, but still a little slow and the textures loading and unloading are sort of an eyesore. Would the textures be fixed with a larger memory expansion and has the performance increased much since that video?


By the way, do you (or anyone else) have recommendations for a memory expansion? The cheaper the better as long as it's reliable and can handle Quake2DS in all its glory.

simonjhall
December 22nd, 2007, 12:24
No time for a video, I'm afraid - I'm about to go home for the hols! Takin' the laptop though! Plus whenever I make a video or take a photo, I'm always disappointed by the quality since it's so hard to focus, avoid aliasing patterns AND play the game! Hold on a bit longer...

In response to your other questions,
1) the amount of slot-2 memory can't increase the amount of textures renderable per frame. The amount of texture RAM is fixed at 512k.
2) the strobing and other texture loading/unloading problems have been sorted out. This won't happen now, except in EXTREME conditions! ie, it's not happened since!
3) the framerate is much better now, two to three times faster I'd say?

Tripsk8er333
December 22nd, 2007, 23:44
Wow! I am Amazed at your Coding skills just flat out amazed ! It has been a While since I have talked about this, but seriously This Is the BEST PORT TO THE DS SO FAR!!!! I Know this may sound to early for this Question But do you think There Will Be MULTI PLAYER in the Future? I Really hope so. :) But once again. WOW! Keep Up the Work Man.

If I was Rich I would Pay You for all the Work you have done, But sadly I am A broke Skater from Knoxville.

If I ever get some Money I will Help with the Donations


Thanks you for the Amazing work!!

Tripsk8er333

( Tester and Doc Writer for MinivMacDS )

simonjhall
January 2nd, 2008, 17:27
Yo, the game is coming on in leaps and bounds.
Since I've got nearly everything I want into the game now, just a feeler - what do YOU guys want in there? (no idea too silly :rofl:, except for double-tap jumping)
I wanna make this the most feature-packed port there is!

Existing stuff suggested
- automap
- cheat menu
- HDR effects
- model viewer
- built-in bots?
- directions to nearest secret
- in-game box art

anyone else got any little things they want in there?

Echo1
January 2nd, 2008, 20:39
Will it work okay using the EZ-Flash 3-in-1's 16mb memory?

Pilot_51
January 2nd, 2008, 21:12
All I really want is the multiplayer, cross-compatible with the PC version as is QuakeDS. The multiplayer (as with most games) is what made it one of my favorite games. I can take single player for awhile, it would be awesome playing through it on my DS, but it probably won't last as long as I want it to last.

I don't think you need to worry about compatibility with my favorite mod, No Item Quake (NIQ), which only the server needs to install and all it does is remove items and give everyone the same weapon (rotating weapons at a server-defined number of seconds).
The mods that my Quake2-playing friend likes might need looked into. His favorite is Weapons of Destruction: Lethal Orifice Examination (LOX), which as you might know, modifies the weapons with insane explosions and excessive power.

By the way, I like what you listed.
I never would've expected HDR effects.
Automap is somewhat expected (and wanted) in these types of ports, but it's always nice to be assured.
Is the model viewer just for the character customization or is it more than that? Regardless, it'll be nice to have.
I'm curious how the nearest secret directions will be displayed. An arrow on the map pointing towards it? By the way, it sounds like that might be best as a cheat feature or beginner-only feature rather than standard.

I can't really think of anything too silly to suggest. Oh, maybe get double-tap jumping! :thumbup:

simonjhall
January 2nd, 2008, 23:36
Will it work okay using the EZ-Flash 3-in-1's 16mb memory?Yes, that's my #1 card I develop with.
I almost squeezed the game onto the 8MB Opera expansion but I'm a few meg short of being able to do that, sorry. A 32 meg card is not necessary and you won't notice any benefit over a 16 meg card.


<snip>I'll have a look at multiplayer after the first release once I've sorted out all the issues with that. On the plus side the multiplayer maps run really really well (30fps+) on the DS so the only things that are letting it down at the mo are ping times and bandwidth!

I'm afraid there is likely to be little-to-no compatability with non-server-based mods since mods in Q2 have to be manually compiled for the machine they're going to be run on, unlike Q1. Custom maps etc will work fine though assuming they don't use lots of memory.

And yeah for the secrets thing I was thinking of a big arrow on the screen or something? And yeah only when you're playing with cheats turned on ;)

Oh and does anyone wanna step and take Q3? :rofl:

EDIT: if I do do multiplayer, of course it'll be compat with the PC :-D

Echo1
January 3rd, 2008, 05:13
That's good news that it'll only require a 16mb card. I can't wait till it's done. Q2 is one of my all-time fav fps on the PC. :)

Pilot_51
January 3rd, 2008, 07:23
I just ordered the EZFlash 3-in-1 expansion pack from DealExtreme in anticipation of the release.

I think I'll be donating soon for the hard work put into porting one of my favorite games of all time to the DS.

Edit: A month later (Feb. 5th) I finally got my 3-in-1 and it's working, so I'm all ready for the Quake2DS release.