stupid idea

Discuss anything not covered by any of the other categories.
ceriux
Posts: 2230
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

stupid idea

Post by ceriux »

i think it would be cool be able to load quake and quakec into the doom3 engine. i could see new mods start popping up left and right. is the network code for doom3 better than quakes? i wonder how it would feel to play quake through the doom 3 engine.
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: stupid idea

Post by qbism »

Not stupid, just a massive time investment. But some similar things already exist. Are you thinking a quake-themed world and monsters updated to D3 engine and physics? See Shambler's Castle (betting it's not quakec tho). Or, an engine that behaves like quake with blocky levels but with D3 graphics? There's Epsilon and Kleshik mods.
Nahuel
Posts: 495
Joined: Wed Jan 12, 2011 8:42 pm
Location: mar del plata

Re: stupid idea

Post by Nahuel »

i think the problem is not the qc interpreter, is the bsp interpreter :(
hi, I am nahuel, I love quake and qc.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: stupid idea

Post by revelator »

Doom3's bsp interpreter is actually rather flexible :) i had success porting bloods map format to it with some help from the tools from transfusion.
The sprites are another ballgame though :S

P.s im no mapper so that tells something about it does'nt it ? :)
Productivity is a state of mind.
ceriux
Posts: 2230
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

Re: stupid idea

Post by ceriux »

i mean loading all of quake and its assets into the doom3 engine. sort of how fte can run games other than quake.
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: stupid idea

Post by Spike »

there are a few embeddable QCVMs out there, FrikaC wrote one, I wrote one.
getting doom 3 to run QC code, you'd need to:
1) provide a QCVM.
2) provide the builtins (pr_cmds.c)
3) provide the physics (sv_phys.c+world.c+sv_move.c)
4) provide some sort of network compatibility (fte translates server-side, you'd probably need something similar)
5) add support for .mdl
6) add support for .bsp and its stupid hulls so that clip brushes work.
7) emulate a whole boat-load of cvars and console commands so that evil mods don't bug out.
8) write lots and lots and lots and lots of extensions so that some of the awesome q1 mods that require various different engine extensions actually work.

and you still wouldn't have cool stuff like csqc, greatly limiting what the mod can actually do, nor any network compat with anything else.

If you want to do it because you think it would be awesome or whatever, then go for it, but I wouldn't recommend treating it like a serious project unless you genuinely intend to go a whole lot further... Its a cool project, but you'll spend ages perfecting it and you probably won't get many serious users.
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Re: stupid idea

Post by goldenboy »

Why?

I'm not sure Quake's levels would run very well in idtech4, the vis mechanism is rather different. You'd have to modify them to work well. I'm also not sure if Doom 3 does lightmaps at all, so you would lose the lighting.

The AI works differently in Doom 3.

It would be a better bet to just port some of the assets, relight and revis everything and use the Doom 3 gamecode to create new monster code/AI.

It would then play much like Doom 3, although you can of course change the movement speed and stuff.

It wouldn't make a lot of sense since you can already have realtime lighting (which is Doom 3's main shtick, its levels are still 95% brushwork) in FTE and Darkplaces. Particles and shaders too. Most people just don't use these things well.

90% of what makes Doom 3 look great is actually the quality of the artwork, not the engine.
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: stupid idea

Post by toneddu2000 »

I would be pretty happy just to have quakec inside Doom3 engine! Why? No more SSQC and CSQC, nowadays (well, kinda...) physics with rigidbody colliders, ragdolls, modern UI with flash, etc. BUT with the ease of quakec, so even non programmers (like me) could be able to wet their hands on code! :D
Meadow Fun!! - my first commercial game, made with FTEQW game engine
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Re: stupid idea

Post by leileilol »

I can't see much practicality by mixing Qc into Doom3.
i should not be here
ceriux
Posts: 2230
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

Re: stupid idea

Post by ceriux »

the reason the idea popped into head is the same as what toneddu mentioned. that way non programmers like myself could make things for the engine. but also because i think it would be cool to play quake in a newer engine.
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Re: stupid idea

Post by leileilol »

But Doom3 already has a scripting system, and to be honest, the programming language barrier is going to be the least of your worries....
i should not be here
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: stupid idea

Post by toneddu2000 »

yeah, but, for what I now(and until doomworld won't get up again I can't correct myself), you can't create a full game just with scripts. You need C++ code skills (so pointers, typecasting, a good learning of UML standards and such) to create AI, GUI and so on (at least for what I understood but, I confess, I didn't find a complete guide on how to create a game from scratch with doom3 engine).
Instead with quakec is simple, very simple to create a game and compiling is just s breeze! :D
Meadow Fun!! - my first commercial game, made with FTEQW game engine
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Re: stupid idea

Post by goldenboy »

Instead with quakec is simple, very simple to create a game
Wait a minute. I don't think so. Creating a 3D game from scratch is hard, especially when you're not familiar with programming. And programming is the easiest part of it. You make it sound as if C++ was this extremely obscure, hardcore programming language... that is not true. If you want to make a game with QuakeC today, I'd be surprised if you wouldn't eventually be using structs, arrays, struct arrays, and heck, maybe even pointers. Why? Because they make the job a lot easier. People are already using classes and pointers in QC today. These things are not rocket science - they are extremely well documented on the net and C++ has a huge community. QuakeC is really similar to C, anyway, and C++ is mostly just C with classes and a few extra bells and whistles.

Compiling C code isn't magically more difficult than compiling QC code. A compiler is involved in both cases, only one pops out a .dll while the other pops out a .dat.

You can have physics driven boxes and ragdolls in FTE too, with QC. ODE is a very good physics engine that's well documented. There are videos on Youtube that show what ODE can do in Nexuiz or Xonotic.

Also, Flash isn't the thing that magically gives your game an awesome UI. The thing that does that is called "design" and has more to do with brains than with engines.
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: stupid idea

Post by toneddu2000 »

I really suggest you to start design a game with Unity and UDK (which use both C# and Unrealscript) and take a look at the difference between writing a class with UnrealScript (which is intepreted and very NOOB to use) and download from GitHub all the Unreal Engine 4 Visual Studio Enviroment in C++. Most users couldn't even compile it! That's why hordes of semi/indie - devs migrate to a simpler solution like Unity. Its "game code" (very wrong definition, I admit) is pure OO, but with the Mono framework writing a class is trivial because you can focusing on game development without paying attention to "Why the hell this macro compiles fine on MS Visual Studio 2008 but not on VS 2013?!" and stuff.
Compiling C code isn't magically more difficult than compiling QC code. A compiler is involved in both cases, only one pops out a .dll while the other pops out a .dat.
I completely disagree. I compiled FTE, DP, QuakeSpasm, Doom 3 and other bunch of engines and the task is hard, really hard if you do not know very well the engine and the OS which you're compiling on. Quakec is: ./fteqcc.bin progs.src - done.
You can have physics driven boxes and ragdolls in FTE too, with QC. ODE is a very good physics engine that's well documented. There are videos on Youtube that show what ODE can do in Nexuiz or Xonotic.
The only video of ragdolls in FTE I've ever seen is mine :lol: (but if you know others let me know, it's always good to steal hints by others)! And, I must say, it wasn't so easy to implement. If Spike didn't help me, I couldn't even handle the task.
Also, Flash isn't the thing that magically gives your game an awesome UI. The thing that does that is called "design" and has more to do with brains than with engines.
I couldn't disagree more, I'm sorry. Working with plane UI with Unity was a disaster, before approaching on NGUI and DFGUI. On UDK. in two weeks, I have finished my entire GUI workflow, thanks to Scaleform interation. And the brain, was the same! :P
Engine matters, does matter. IMO
Meadow Fun!! - my first commercial game, made with FTEQW game engine
frag.machine
Posts: 2126
Joined: Sat Nov 25, 2006 1:49 pm

Re: stupid idea

Post by frag.machine »

Do you know what would be a really interesting project ? A simplory minecraft-like engine with some quakec-like scripting language.
Easy to code the game logic, easy to create assets, this would be pretty much a LEGO engine. Modding in Java is not exactly easy (specially because Minecraft wasn't created with modding features in mind), so slap a quakec/Lua interpreter on int, add some builtins to manage world generation, and call it a day.
I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
Post Reply