gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > PocketQuakeDS - Port possibility?

#51181 - deltro - Wed Aug 17, 2005 1:04 am

I know we're not supposed to make port requests, but I don't so much consider this to be a port request as a 'Hey, this might be of interest' kind of thing.

http://quake.pocketmatrix.com/

This has been out for a while, it is a port of Quake to several handheld processors/OS's, it's been ported to MIPS, ARM, and SH3, - virtually all the major handheld processors, there is also the source included on the website.

I know nothing of programming, and probably never will, but I've recently been thriving off of the DS homebrew scene, and the 2 recent FPS ports have been the subject of my attention recently (.-. I don't have a GBA Flash Card) but I'd love to see a more recent FPS be ported.

Good luck.

Cheers,

Deltro

#51185 - MrAdults - Wed Aug 17, 2005 2:23 am

I can't speak for others, but the reason I haven't tried porting Quake is primarily the high memory requirements. There are solutions for everything you'd likely encounter (some at the expense of performance), but it would be a rather long and arduous process.

If you look at the N64 version of Quake you will see the atrocities that had to be committed against its level geometry just to get it running on there, although the DS might excel beyond the N64 there as long as you can keep the vert count below the hardware limit.

-Rich

#51188 - deltro - Wed Aug 17, 2005 2:38 am

I dunno, but QII ran pretty beautifully on N64.

- Please realize that I haven't taken into account any of these factors- ram, polys... etc.

I personally think that it should be able to run on the DS- however much work this entails, I don't know, because, as I said before I know nothing of coding. I just noticed that this Quake port ran on another ARM chip, and that the DS runs on an ARM chip- and I decided to bring this to everyone's attention on the offchance someone thought they could do it.

#51237 - TheChuckster - Wed Aug 17, 2005 1:07 pm

8 megabytes of RAM appears to be the system requirement for Quake for noninternet play.

#51239 - deltro - Wed Aug 17, 2005 1:32 pm

Didn't notice that... perhaps it isn't possible then ._.

#51240 - Mithos - Wed Aug 17, 2005 1:46 pm

About 3 or 4 weeks ago there was another program/software that whould never be able to run on Nintendo DS.

The actual developers of that program/software said so themself, but the week after that that program/software actually was playable on DS, and today its even with sound and play a quite few games.

ScummVM 0.1 is that program/software.

So you NEVER know, QuakeDS might be playable someday.

#51243 - El Hobito - Wed Aug 17, 2005 3:02 pm

you cant compare ram requirements of a pc and ram requirements in the ds. Think about it would original doom have run on a pc with 256 KB of ram? yet it could play (yes it was a bit simplified) doom and there was a tech demo of it running quake as well. Flash memory is incredibly fast thats why the ds need v little ram where as machines with a slow device such as pc (hard disk) or optical device(psp) need lots of ram. Hence it would never work with a gbamp but would fly by in an m3 which adds an extra 32MB of ram

#51244 - deltro - Wed Aug 17, 2005 3:10 pm

El Hobito wrote:
you cant compare ram requirements of a pc and ram requirements in the ds. Think about it would original doom have run on a pc with 256 KB of ram? yet it could play (yes it was a bit simplified) doom and there was a tech demo of it running quake as well. Flash memory is incredibly fast thats why the ds need v little ram where as machines with a slow device such as pc (hard disk) or optical device(psp) need lots of ram. Hence it would never work with a gbamp but would fly by in an m3 which adds an extra 32MB of ram
Can you please clarify your english?

#51245 - MrAdults - Wed Aug 17, 2005 3:28 pm

I never said it was impossible, quite the contrary:
Quote:
There are solutions for everything you'd likely encounter (some at the expense of performance), but it would be a rather long and arduous process.

It's entirely possible, but you'll be taking a slight speed hit have to either swap assets from rom or just use them directly. That's also ignoring the fact that with the current 32mb limitation the full version of Quake would require compression to work, making it unreasonable to access assets from rom on the fly. The shareware version would be fine, though, or you could split episodes up between seperate images and probably have enough room for each individually.

On top of all that, you'll be converting the renderer to use a fixedpoint system, which given the renderer's architecture is actually a lot easier than it otherwise might be. But still by no means trivial.

Then on top of that, you've got geometry counts. If you're using hardware rendering (which is the only reasonable way to go here for speed) you have a vertex limit of 2048 per frame. This does not equal tri/poly count, but tri/poly count can be some inidication of the verts used in the scene. Turn on r_speeds and just run through e1m1, and you'll see there are areas where this easily shoots above 3500. So yeah, good luck with that too. (see my comment about N64 Quake)

Of course, if you think I'm wrong and that it should be very easy, feel free to get started.

-Rich

#51248 - El Hobito - Wed Aug 17, 2005 4:03 pm

that seems pretty clear to me what dont dont you understand?
In any case i recon the only real practical way of doing it would be via the m3 with its own ram and cf ability it wouldnt be too hard to load each level individually off the card. quakes rendering engine is very basic and had very little in the way of optimisations (it doesnt even have backface culling) so there should be plenty of room for improvement i would imagine.
Unfortunately this is beyond my knowledge since im predominately a java programmer so i'm still a way off anything this large.

#51249 - Mithos - Wed Aug 17, 2005 4:15 pm

MrAdults wrote:
I never said it was impossible, quite the contrary:


Ahh, my misstake then.

However, a straight port might now be possible, but you actually needs to do a remake, somewhat like the developers of DoomDS are doing in a "larger" scale.

#51271 - mike260 - Wed Aug 17, 2005 9:19 pm

deltro wrote:
I know we're not supposed to make port requests...


Really? I'd be well interested in hearing what games people would want to see ported. My personal shortlist of things I'd be looking into if I had any time is:

Tekken 3
Descent
Something loosely based on Uplink


Regarding Quake, the PS1 and N64 ports of Quake and Quake2 were massive engineering efforts. Eg, for Q2 on the Playstation, they had to:
- Reimplement most of the codebase
- Rebuild every level from scratch
- Rebuild every character to use skeletal animation

#51278 - josath - Wed Aug 17, 2005 11:31 pm

Is it me, or is it getting a bit warm in here?

Descent DS: http://darkfader.net/ds/files/ensata.png

and yes, the source to both descent 1 and descent 2 has been released a long time ago

descent 1: http://d1x.warpcore.org/
descent 2: http://www.icculus.org/d2x/ (also plays descent 1)

#51282 - El Hobito - Wed Aug 17, 2005 11:35 pm

(see above)
lets stop this now! Stop being a hypocryte and lets get back on topic.

I used to know quake like the back of my hand. The ds could definately do pocketquake imo even if it is only on the m3. I just wish java handn't corrupted my c skills so badly :(


Last edited by El Hobito on Wed Aug 17, 2005 11:41 pm; edited 1 time in total

#51283 - neonext - Wed Aug 17, 2005 11:35 pm

josath wrote:
Is it me, or is it getting a bit warm in here?

Descent DS: http://darkfader.net/ds/files/ensata.png

and yes, the source to both descent 1 and descent 2 has been released a long time ago

descent 1: http://d1x.warpcore.org/
descent 2: http://www.icculus.org/d2x/ (also plays descent 1)


awesome!

#51284 - mike260 - Wed Aug 17, 2005 11:45 pm

josath wrote:
Is it me, or is it getting a bit warm in here?

Descent DS: http://darkfader.net/ds/files/ensata.png

and yes, the source to both descent 1 and descent 2 has been released a long time ago

descent 1: http://d1x.warpcore.org/
descent 2: http://www.icculus.org/d2x/ (also plays descent 1)


I took a look at this a few months back...it's the nastiest codebase I have ever seen; reimplementing the game-logic from scratch (with some cut'n'pasting) would probably be easier than a straight port.

I got as far as extracting and converting the models and levels, and writing enough code that you could fly around levels (with placeholder collision), but then I hit a busy period at work and never went back to it. Indications were that coming up with a workable control-scheme would be quite hard.

#51285 - El Hobito - Wed Aug 17, 2005 11:45 pm

correct me if im wrong but i recall that there were some descent pics v similar to that one that were simply mock ups. So i believe that pic is fake.

#51311 - tepples - Thu Aug 18, 2005 5:11 am

If you're looking for Engrish, it split.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#51312 - look - Thu Aug 18, 2005 5:14 am

wot a waist ov a gud fread!

#51327 - El Hobito - Thu Aug 18, 2005 9:45 am

tepples wrote:
If you're looking for Engrish, it split.

lol, cut it out like a diseased growth!

#51328 - unrequited - Thu Aug 18, 2005 9:48 am

josath wrote:
Is it me, or is it getting a bit warm in here?

Descent DS: http://darkfader.net/ds/files/ensata.png

and yes, the source to both descent 1 and descent 2 has been released a long time ago

descent 1: http://d1x.warpcore.org/
descent 2: http://www.icculus.org/d2x/ (also plays descent 1)


I just wet my pants.
_________________
-Unrequited

#51331 - El Hobito - Thu Aug 18, 2005 11:15 am

darkfader wrote:
ensata.png - Ensata 1.3c. the official emulator running Descent DS ;P (photoshopped of course).


dont get too excited folks!

#51342 - Defect - Thu Aug 18, 2005 4:32 pm

I think quake could be ported to the DS quite easily. From an art perspective i can tell you that there are MANY areas of quake that can be optimized.

The model textures for example have some of the most unoptimized skin bases i've seen, they could easily be halved and still have higher resolutions. They would of course need to be almost completely remade though.

Overall texture use could be improved alot with a shader system which would reduce the memory needed for animated textures greatly.

The quake1 engine did not have an entitie called a func_areaportal which was placed inside a door and would stop the engine from drawing what was behind the door even when it was closed. Engines these days incorporate this function automatically.

Level designs can be improved apon alot and take into consideration the way the engine draws its levels alot more.

Quake wasnt designed for the DS but I have no doubt it can be ported quite easily.

#51343 - MrAdults - Thu Aug 18, 2005 4:38 pm

Quote:
Quake wasnt designed for the DS but I have no doubt it can be ported quite easily.

Awesome. So we can expect that within a couple weeks then? Looking forward to it!

-Rich

#51344 - Defect - Thu Aug 18, 2005 4:44 pm

I think the big drawcard for quake1 is its multiplayer. I personally think the singleplayer aspect is quite boring, untill wireless network code could be implimented it wouldnt be as great as it sounds.

How about some more people help with the DoomDS engine, then you will have some good singleplayer action.

#51345 - deltro - Thu Aug 18, 2005 4:47 pm

Defect wrote:
I think the big drawcard for quake1 is its multiplayer. I personally think the singleplayer aspect is quite boring, untill wireless network code could be implimented it wouldnt be as great as it sounds.

How about some more people help with the DoomDS engine, then you will have some good singleplayer action.
But I like jumping ._.

#51346 - Mithos - Thu Aug 18, 2005 4:49 pm

Defect wrote:
I think the big drawcard for quake1 is its multiplayer.


I agree, they should have not made the multiplayer part... Multiplayer (unless co-op) is boring.. ;p

#51347 - Dannon - Thu Aug 18, 2005 4:51 pm

Why don't you start porting it as a team, each converting a small portion, though this would be confusing if a few people were working on it, it would make the port easier overall, leave wi-fi out for now but with a space for it then when wi-fi is sorted it can be slipped into place, hopefully.....

#51350 - Defect - Thu Aug 18, 2005 5:09 pm

Thats what i'm doing with DoomDS, but not many people are willing to step up and give the engine a go. There are a few people tinkering on certain aspects of it, but not as much as i would like.

There is still alot of art to be worked on so its not like we are waiting for the engine for a release. I am eager to do some testing on the DS though.

#51359 - tepples - Thu Aug 18, 2005 6:55 pm

deltro wrote:
But I like jumping ._.

Super Mario Bros. 2K5 is coming soon to the Nintendo DS from Nintendo.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#51370 - josath - Thu Aug 18, 2005 8:18 pm

mike260 wrote:

I took a look at this a few months back...
I got as far as extracting and converting the models and levels, and writing enough code that you could fly around levels (with placeholder collision)

Wow, any possibility of releasing the demo?


mike260 wrote:

Indications were that coming up with a workable control-scheme would be quite hard.

What about this:
* drag on the touch-screen to look around (like metroid)
* a throttle on the side / bottom of the touch screen (like a progress bar...you can set your speed)
* use dpad for strafing (up, down, left, right)
* and then L for shooting?

Any other options (change weapons, look behind, roll) can be buttons on the touchscreen.

#51597 - Cheeseslayer - Mon Aug 22, 2005 5:50 am

It wouldn't be worthwhile making a direct port.

It should be remade with the 3 monsters that didn't make it into the final version.



Just a suggestion.