Q2-and-others map support - FTE / DP

Discuss programming topics for the various GPL'd game engine sources.
Post Reply
CocoT
Posts: 695
Joined: Tue Dec 14, 2004 5:39 pm
Location: Belly-Gum
Contact:

Q2-and-others map support - FTE / DP

Post by CocoT »

I've always been a fan of engines supporting multiple map formats. Not so much for the eye-candy than the fact that, I think, there might be interesting ways to incorporate those maps into our mods.

The way FTE supports more formats than DP impressed me. Besides Half-Life, Quake2 and Quake3, others work pretty well, too. Kingpin worked. Heretic2 worked. Elite Force worked. Wolfenstein worked... and some others might work but I couldn't check properly because of funky spawnpoints.
Problem with FTE is that is not very NQ-friendly and running "regular" (read non-QW) mods on it is a bit of a pain.

Apparently, Q2 maps are "not supported yet" by DP. Is that support ever going to happen or have you abandonned the idea, Lordhavoc? Also, how come Wolfenstein maps, which are Q3-based, can be loaded in FTE but not in DP?

I suspect that map-loading code might be a process in the engine source that is external to networking code, right? (it's a real question, I'm a total noob in terms of engine-coding). Does that mean that, with the FTE source code but different settings, one could compile a NQ exe instead of the QW exe and that this new exe would be able to load the afore-mentionned Q2-Q3 maps?
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Post by leileilol »

in 2003 Doom maps almost worked.
i should not be here
Entar
Posts: 439
Joined: Fri Nov 05, 2004 7:27 pm
Location: At my computer
Contact:

Re: Q2-and-others map support - FTE / DP

Post by Entar »

CocoT wrote:Does that mean that, with the FTE source code but different settings, one could compile a NQ exe instead of the QW exe and that this new exe would be able to load the afore-mentionned Q2-Q3 maps?
FTEQW already supports NetQuake and QuakeWorld entirely, so I'm not sure what you mean by compiling a NQ exe as opposed to a QW exe...
CocoT
Posts: 695
Joined: Tue Dec 14, 2004 5:39 pm
Location: Belly-Gum
Contact:

Post by CocoT »

Sorry, my noobiness in engines probably makes me express myself awkwardly :P I meant a version of the engine just like Darkplaces (which FTE might already offer, I don't know). Now, I've seen that FTE does load custom progs.dat (doesn't need to be qw), but the problem I seem to have with it is that, well, first loading takes forever and then, for odd reasons, the maps I play randomly restart when I play Ultimate Quad Capture. It might be because of some incompatibility between my QC code and the way FTE is coded, though.

I've heard about compatibility with Doom and always thought it was a kind of urban legend :P It might sound silly to some, but I think it'd be cool. I mean, there are a bunch of Doom2 maps out there whose architecture, while not being super-complex, is still very nice and some duel packs which could totally fit Quake. But then I do have this ideal vision of a single Quake engine able to read dozens of different map formats, so I'm probably biased ;)
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Post by Spike »

Further to what Entar said...
fteqw.exe supports both NQ and QW in a single program. the only difference between the differently named exes is the different support for renderers (ftemingl.exe is the exception here, which supports only qw).

When you start a map, FTE looks for various named progs. qwprogs.dat or progs.dat. It looks for qwprogs.dat first if deathmatch is set and progs.dat first if deathmatch is not set. After that it tries the other. It picks up which sort of mod you're running by looking at the progs (there's a crc in the header which is specific to either nq, qw, h2, h2w). You can force it to use a specific progs with the 'progs' cvar.
The logic behind this is that most mods provide only one sort of progs, and that qwprogs is usually better optimised for networking, but qwprogs usually doesn't support single player. It uses filesystem 'depth' so it'll pick up the one from your mod's dir first.
and some others might work but I couldn't check properly because of funky spawnpoints.
Spectator mode doesn't care if there are no spawn points.
Noclip allows you to adjust player positions if required.
Problem with FTE is that is not very NQ-friendly and running "regular" (read non-QW) mods on it is a bit of a pain.
Please elaborate.
in 2003 Doom maps almost worked.
Clipping was never stable. It was always possible to walk through walls if you went through at the 'correct' angle.
After my failed fourth attempt to rewrite clipping I simply didn't bother to reinstate the older more-stable code (the version where you get stuck if you run up steps, as opposed to the version where you can run through all walls). I think we counted 5 different tracing functions in doom's code (when I say 'we', I mean TimeServ because I was too lazy to look further than the unofficial map specs). This isn't an option in FTE/Quake where physics code is dependant upon only traceboxes and where physics can be implemented in the mod itself. Tracking which sector the player is currently in is also not possible, so the code ended up having to calculate multiple sectors for the player to currently be in, and to work out which linedefs were being crossed at any one point in order to find out the ceiling/floor heights of those sectors. Quake maps are _sooooo_ much cleaner. Crushing ceilings and doors were always going to be a pain too. Doom maps were still a long way off working. Anyway, a bit of a tangent... :/
CocoT
Posts: 695
Joined: Tue Dec 14, 2004 5:39 pm
Location: Belly-Gum
Contact:

Post by CocoT »

Hi Spike :)

I've been using the GL version so far, so I guess it'd be worth it trying it with plain fteqw.exe. I had already played around with the "progs" cvar and the "deathmatch" cvar so that the mod does seem to load properly and, for a couple of minutes at least, there is no problem at all. It's the random reloading that startles me (something that doesn't happen with other engines, otherwise I wouldn't point it out, of course). When I was saying it was a bit of a pain, I mainly referred to that and what seemed to me rather long loading time, even for regular Quake maps.
Don't get me wrong, I love FTE. It's the only engine I use when playing online :) And I'm again impressed by its smooth support of Quake2 maps. It's the closest today to the multiple-maps-loading engine I'm dreaming of! ;)

I've fiddled a bit with wad2map in the last hour and have this issue of texture names not being relocated into the map file. Not surprising, as the author of the utility plainly said that this was a "to-do", and then added it would probably not see the light... Are there by any chance any other utility that does/fixes that? The Aardappel map I converted actually played pretty nicely, but well, the use of the same texture all over was kind of boring :P
CocoT
Posts: 695
Joined: Tue Dec 14, 2004 5:39 pm
Location: Belly-Gum
Contact:

Post by CocoT »

Oh never mind, I think I figured out how to have the texture info in there: use DoomTex ;)
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Post by Spike »

CocoT wrote:When I was saying it was a bit of a pain, I mainly referred to that and what seemed to me rather long loading time, even for regular Quake maps.
fs_cache 1

halves loading time
TimeServ
Posts: 38
Joined: Wed Jun 08, 2005 4:02 pm

Post by TimeServ »

Kingpin worked. Heretic2 worked. Elite Force worked. Wolfenstein worked... and some others might work but I couldn't check properly because of funky spawnpoints.
Did you have to do anything special to Kingpin/Heretic 2/Elite Force maps to get them to load? Did they have textures?
Apparently, Q2 maps are "not supported yet" by DP. Is that support ever going to happen or have you abandonned the idea, Lordhavoc? Also, how come Wolfenstein maps, which are Q3-based, can be loaded in FTE but not in DP?
I can't speak for LordHavoc directly, but I see a lot of code commented out for Q2 BSP loading in DP's CVS. About RTCW/ET maps, they have different version numbers but if I remember correctly they're not really too different from base Q3 maps format wise so it's probably just the version check keeping DP from loading those maps.

It'd be nice to get Doom maps to work because that would allow FTE to come closer to become a unified id engine, but the problems with Doom map support don't even stop with tracing. I think there was a time Spike and I thought of loading Wolf 3D maps too, but the format is convoluted and undocumented so that kind of trailed off.
Last edited by TimeServ on Thu Dec 07, 2006 2:37 am, edited 1 time in total.
CocoT
Posts: 695
Joined: Tue Dec 14, 2004 5:39 pm
Location: Belly-Gum
Contact:

Post by CocoT »

The Elite Force maps loaded easily, but the ones I tried had custom graphics, it's true. They work just as Q3 maps, I guess. Heretic2 maps loaded like Q2 maps but I did have to convert m8 files to wal files for textures. Kingpin maps loaded like Q2 maps, I must admit I didn't bother about textures, thinking it would probably be the same.
The Elite Force maps looked the best, but then many of them are, I believe, Q3 conversions, so the interest in using them might be a bit limited. Heretic2 maps looked quite good, I must say.
I've tried to load Q2 maps together with high-quality textures from Q2 retexturing projects and didn't get those high-res textures to load. I'll have to fiddle some more with that to figure out how do that it :)

I get what you mean with the RTWC maps. It makes sense. It'd be nice if it'd be just a line or two to change to make it work!
I've fiddled around with Doom2 maps and, after some conversions, loaded some of them with high-res textures from retexturing packs. They looked good. Still felt a LOT like Doom2 maps, but, hey, what do I expect ;)
I admit converting a couple of Wolf3d maps in combination with a retexturing pack crossed my mind, but I didn't "dare" doing it :)
Post Reply