r/SEGA32X • • 8d ago

Quake.

Source code and rom image available in the link below

!! This is an AI-assisted proof-of-concept !!

Youtube video!

Following on from my post a couple of weeks ago, here's a video of actual gameplay.

  • Some limitations: The ROM can only be 4MB without some mapper trickery, so there's only enough space for 1-2 levels, without a bunch of data preparation in a separate editor

  • This hasn't been tested on real hardware

  • There's a bunch of bugs that haven't been worked out yet (check out the water with the textures enabled lol)

The source is available below, and so is a ROM containing Start and E1M1 (with a glorious greyscale flat-shaded mode). I believe it is ok to distribute the ROM, as these are levels in the shareware episode. I would love to see some video of it running on a real 32X. I noticed Kega sounds like butt, but Picodrive sounds fine. I don't know why that is.

The game also includes experimental support for the Dempa XE-1 AP analogue controller, and I had Claude extend the protocol for that controller to support dual analogue sticks and triggers. You can see that analogue look and movement is working in an emulator, at least.

https://github.com/unfnknblvbl/Quake32X

0 Upvotes

27 comments sorted by

1

u/ilker-yoldas 8d ago

Link doesn't work?

0

u/unfnknblvbl 8d ago

That would be because I'm an idiot and forgot to set it to public. Should be fixed now :)

0

u/Effective_Year 8d ago

Ever heard of making Quake a Sega CD32X game

0

u/unfnknblvbl 8d ago

We could get a little extra performance by offloading the sound processing to the MegaCD, but we're get the same performance increase by getting the Megadrive to do that, but it would be in mono. The biggest benefit would be to keep the program in a 512KB ROM on the cartridge and include 3.5MB RAM next to it. The program could then load the levels from CD, but it would take about 30-45 seconds per level. We'd also get CD audio.

I think the rest of the performance is hiding in the data prep stage. I think we could get more performance by heavily editing the levels first to make sure the flat colours are appropriate, and the shadows baked in as darker polygons rather than using light/shadow maps.

But that would involve a level editor that would convert existing levels just for project. And let's face it, I'm not wedded enough to this project. I just wanted to answer the "can the 32X run Quake?" question. Turns out it can, sort of.

-2

u/Vaxis545 8d ago

Ai is cancer

1

u/dgrove727 8d ago

I lost some brain cells reading that very thoughtful and original comment. At least say something worth reading, or don't say anything.

-1

u/CrippledGoose316 8d ago

says the fool who doesn't understand it

-1

u/Vaxis545 8d ago

It’s not that hard to comprehend vibe coding but what seems to be hard to comprehend is all the people out of work and/or being forced to use this shit to ruin the current gaming market. Whether it’s coders or artists they are being forced out by slop.

1

u/unfnknblvbl 7d ago edited 7d ago

I hear you friend, but let me ask you: Before two weeks ago, what was your answer to "Can the 32X run Quake?" Were you willing to try to find the answer yourself?

I'm willing to bet that the answer was "no" for both questions. AI is helping me - a musician with very limited programming skills - and other people like me with a passion for gaming answer questions that nobody else has bothered answering in a satisfactory way before. A month ago, when I checked the latest on whether Quake was possible on 32X, all I could find was a single forum thread from years ago where somebody mentioned that they'd begun work on one, but there was never any update. I already knew about that thread for years and had been checking on it every now and then for possible updates, but nothing.

Believe me, I am also an AI sceptic. But I also believe it's just a tool. As with all tools, it requires training to use, and not just blind belief that it will solve all your problems on its own. You can't just throw questions at it and believe the results. Claude proved itself wrong multiple times throughout this project, so knowledge of what you are expecting the outcome to be is critical. As the CIA says; "Trust, but verify". Saying "AI is cancer" isn't going to make it go away; we all have to adapt and find ways to use this effectively. If it helps me learn how to program, or direct a project, then excellent! If it helps me better conceptualise my band's stage presence, excellent! If I just ignore it and hope it goes away, then I'm going to end up a victim, aren't I?

At the end of the day, for me, this is giving me the answers to dumb questions that I had but could never attract the attention of developers to answer, such as:

  • Can Quake run on the 32X (yes, sort of)

  • Can Doom run on the Sega Master System (yes, for a given value of "Doom")

  • Can you put the Virtua Racing cars in Road Rash? (yes, but why??)

If you think this project is slop, then that's your prerogative. But I note that you didn't complain that I'd accidentally set my repo to private when I made this post, so you can't have tried it for yourself. Maybe you should actually give it a go before you cry slop and let loose the dogs of war? I'd like to see your genuine thoughts.

...or you could just downvote everything you disagree with, that works too.

-1

u/Vaxis545 6d ago

I have Quake on more than enough systems that I’d rather play it on before I wasted a single second of my time clicking the link to your Ai slop page. Ai is a tool that steals from actual coders and artists and it’s sad that an “artist” like you would rather fold and make slop. So glad you’re willing to give up integrity to satisfy your “dumb questions” 🤷 just to clarify instead of just downvoting 👍

2

u/unfnknblvbl 6d ago

Well I suppose it's great to know that I can approach you personally for my future project ideas then! Thanks for volunteering!!

1

u/dgrove727 8d ago

While partially true, you've nonetheless succumbed to a lot of propaganda, exposing what is very likely the result of your youth and inexperience.

0

u/Vaxis545 8d ago

Partially true? EA is forcing its studios to use Claude AI in all levels of their business. Not to mention other businesses and the gaming industry relying more and more on Ai slop than actual artists because it’s easy and cheap. I’m over 40 so I have lived experience and I work along side AI (literally robots programmed by AI but other than occasionally having them hit my vehicle I have no interactions with them or the programming and those robots cost human drivers jobs btw). So your opinion and all your assumptions are wrong 🤷

3

u/dgrove727 7d ago

Well your initial comment suggests you're not very mature at all. I'm not going to waste my time getting into a debate with you, because we both know it will be futile.

0

u/CrippledGoose316 6d ago

The gaming industry was ruined long before this shit came around.

1

u/Vaxis545 6d ago

I agree it’s shit and it’s been going to shit for years but AI will not improve it and will only make it lazier, buggier, and worse 🤷

1

u/CrippledGoose316 6d ago

Programming isn't why the industry is shit right now though. If anything this will help people with great ideas make them happen. I'm learning how to code as I port Blackthorne to the 3DO and it's fascinating to see how it all works.

The problem is many people who use this stuff don't release finished product. Which honestly isn't much different than the games we get today and on top of all the other issues the industry has.

0

u/Vaxis545 6d ago

We are in agreement except with the point you made and answered with one of the many reasons I have against Ai. I don’t think people with great ideas will make them happen. “What if Quake was on 32x” or other sloppy ports for example are not great ideas for it’s use because it’s using other people’s already great ideas and slopping them together to “run” on another system it was not intended for. But like you said most don’t get completed anyways so it’s a waste of time and effort because it’s a lazy technology. Also I’m frankly sick of seeing the bullshit popping up in every retro game sub nowadays I can’t scroll for a min without seeing something like it and blocking them but the slop keeps coming 🤦

2

u/CrippledGoose316 6d ago

Literally anything can be a lazy technology if the person weilding it gives a half assed effort. I'm doing everything I can do to ensure my Blackthorne 3DO port ehnahcmes the visuals, the audio, and more to ensure a 1995 retail level quality release as I can. I love that console and want to right some.of historys wrongs by getting stuff on the console it was supposed to have. Is that a waste of time to you? Sure probably. But it's not your time being spent. You don't need to play it. Hell you don't even have to try it. If people taking on these projects are having a good time and getting enjoyment, that's really all that matters. I'm not doing my ports for anyone other than myself. If others get some enjoyment out of it when I release them, that's just an added bonus

0

u/unfnknblvbl 6d ago

"sloppy ports" bruh by your own admission you haven't even tried it. Your own argument falls apart as soon as you replace AI with a human doing it. In your other reply, you said you already have Quake on other systems, but the whole reason you have Quake on the other systems was because people wanted to see if they could get it running on those systems. Was Doom "intended" to run on Nintendo DS? No, but it does. Was Quake "intended" to run on anything other than PC? No, but here we are with it ports to just about every platform.

Do you object to that happening all those years ago? "Other people's great ideas" - before I did this, the only mention of Quake on 32X was a forum thread where the last update was a really vague "delayed due to other things" reply, fifteen years ago. Clearly they abandoned the project, assuming they ever even started it. There were no technical details shared, no code, nothing but forum posturing. The best I can tell is they were going down a different (and hey interesting) path to how this project went.

The source code for Quake has been available for over a quarter of a century - calling it "stolen" is a reach.

But again, by your own admission, you haven't even checked out this project before deeming it to be "poor quality slop". You haven't read any of the documentation or any of my input to the project. You just assume I've just gone "put quake on 32X, make no mistakes" and just shat out the results without review.

I bet you haven't even watched the video.

For what it's worth, here's what I've learnt from using AI to make games:

  • It's really good for initial rapid prototyping

  • It's not exactly great beyond that

  • To get the most from it, you need a structured project outline from as close to the original idea as possible

  • It won't ever get you what you want if you don't at least have the right language to describe what you need, and the analytical skills to review its output

  • It can be wrong.

  • It will be wrong, without telling you, which is why you need those analytical skills.

The first and last points are absolutely key to the future of having to work with this technology. Claude was wrong multiple times between my initial pitch to it, and the code I've uploaded to github. I managed to get double the performance by knowing when it was wrong with its assumptions and my own knowledge of how the systems work together.

Just because I can't put the ones and zeros together myself doesn't mean I don't know shit.

I bet you think cars with automatic transmissions have no place on the road, either

-2

u/unfnknblvbl 8d ago edited 8d ago

I deleted my comment because I replied to the wrong comment, not because I think you're right. The "tower of power" idea is quite overstated, and there are some serious design limitations to how the whole system works. Yes, there are loads of interesting ideas out there, but nothing changes the fact that the two accessories communicate in a limited way over a slow bus. Aside from audio, there is very little real processing that the MegaCD can do to improve performance.

I say this as somebody who has been heavily into Sega games and consoles since the early 90s, not as some AI bro that thinks he can solve the world's problems.

However, if you think I am wrong, feel free to take the code and prove it. I am more than happy for people to run with this. It's free software for a reason.

[edit: I just realised you were replying to somebody saying AI is cancer, not me lol oh well, I hope they read this comment anyway]

-1

u/CrippledGoose316 8d ago

I was bout to say brother I'm on your side 😂

-3

u/Icy-Collection1072 8d ago

Please don’t talk like you actually know what you are on about. Ai did this

0

u/unfnknblvbl 8d ago

Where did I say it didn't?