Q3DM3D Duke3d map for Q3

10 replies [Last post]
ZK
zk's picture
Offline
Joined: Aug 2010
Posts:
RO Romania

just finished an old project to play the classic hollywood holocaust map from Duke Nukem in Quake 3
Video with a quick quicktour, gameplay and link to download + contributions in the description.

Replay if you try it and give us some feedback Happy

Anabolic 007
Vladimir Putin's picture
Offline
Joined: Oct 2024
Posts:
NL Netherlands
Re: Q3DM3D Duke3d map for Q3


Dude, I thought it would be more fun to play with bots than running around the map alone, so I tried generating an .aas file for bots. But you have a geometry problem. I've attached a detailed description below.

PROBLEM DESCRIPTION

Map: q3dn3d.bsp

ISSUE:
The map has a geometry leak. BSPC version 1.7 cannot generate an AAS file for maps with leaks because it cannot determine which areas are inside the map geometry and which are outside.

COMMAND USED:
bspc.exe -bsp2aas q3dn3d.bsp

SOLUTION - Fix the map leak

- Open the map in a map editor (NetRadiant, GtkRadiant, etc.)
- Find the leak point (where geometry is not sealed)
- Close the geometry by adding brushes to seal the leak
- Recompile the map
- Then generate AAS file

TECHNICAL DETAILS:

What is a map leak:
A map leak occurs when the map geometry is not completely sealed. There is a path from inside the map to the void (outside the map boundaries). BSPC needs a sealed map to determine which areas are walkable for bots.

Why AAS generation fails:
BSPC uses a flood fill algorithm to determine walkable areas. If there is a leak, the flood fill escapes to the void, making it impossible to determine the interior of the map. This is why the error "no entities inside" appears - the flood fill cannot find a sealed interior space.

Additional warnings:
- Duplicate planes in brushes 470, 490, 638, 640, 730
- Mirrored plane in brush 1204
- Bounds out of range in brushes 1204 and 1205 (coordinates exceed normal map limits)

These warnings may also contribute to the problem, but the leak is the primary issue preventing AAS generation.

ERROR MESSAGE:

ERROR: **** leaked ****
WARNING: no entities inside
 
BSPC OUTPUT:
BSPC version 1.7, Dec 22 1999 19:37:59 by Mr Elusive
bsp2aas: q3dn3d.bsp to q3dn3d.aas
-- Q3_LoadMapFromBSP --
Loading map from q3dn3d.bsp...
creating planar surface planes...
searching visible brush sides...
     0 brush sides2518 brush sides textured out of 7237
Entity 0, Brush 470: duplicate plane
Entity 0, Brush 490: duplicate plane
Entity 0, Brush 638: duplicate plane
Entity 0, Brush 640: duplicate plane
Entity 0, Brush 730: duplicate plane
Entity 0, Brush 1204: mirrored plane
entity 0, brush 1204: bounds out of range
ob->mins[1] = -2627.000000, ob->maxs[1] = 8192.000000
entity 0, brush 1205: bounds out of range
ob->mins[1] = -2627.000000, ob->maxs[1] = 8192.000000
-------- Brush CSG ---------
  1880 original brushes
  1695 output brushes
-------- Brush BSP ---------
  1695 brushes
  4777 visible faces
     0 nonvisible faces
 12569 total sides
Win32 multi-threading
     1 threads max
depth first bsp building
two tiny brushes (multiple instances)
 31821 splits
  5151 KB of peak total bsp memory
BSP tree created in     4 seconds
------- Prune Nodes --------
24544 pruned nodes
---- Node Portalization ----
    68 tiny portals
  1465 KB of portal memory
  3666 KB of winding memory
------ FloodEntities -------
WARNING: no entities inside
ERROR: **** leaked ****
 
Closed log bspc.log

rUnThEoN?!
Site administrator
Skullheadq3's picture
Offline
Joined: Dec 2005
Posts:
DE Germany
Re: Q3DM3D Duke3d map for Q3

cool job, especially because the original Build Engine featured something like non eucledean Rooms, aka you can infinite teleport forward without leaving the grid. Basically you can build 2 rooms above each other with the same coordinates and depending on how you enter you are either in Room A or Room B.

PS: if i wanna play duke3d i just play the original.

hurrenson: "This idiot is apparently not familiar with a rail/sniper style."

ZK
zk's picture
Offline
Joined: Aug 2010
Posts:
RO Romania
Re: Q3DM3D Duke3d map for Q3

Cool... tks for the feedback.I fixed the leak and generated the .aas file.I released a new version with the file.
I've tested and the bots are ok now.

Download:
https://github.com/jzk-dev/Q3DN3D_MAP

I would appreciate a new feedback Happy

Anabolic 007
Vladimir Putin's picture
Offline
Joined: Oct 2024
Posts:
NL Netherlands
Re: Q3DM3D Duke3d map for Q3

Almost everything is good. It was there at the start, but then I got distracted and looked, and it evened out at another spawn.

I don't think it's a big deal. The map is nice, the bots run fast. Overall, I like it.

You can test it on any of these servers using the command:

/callvote map Q3DN3D

! RAIL-Box
! 007 Clan Arena
! 007 FFA FastRail
! 007 FFA RailNewDM17
! 007 1v1 Rail-DM17
! 007 CTF e5r
! 007 Rus Freeze Plus
! 007 Rus Rail Freeze
! 007 BFG-Speed
! 007 OPENBOXMEGARAIL

Do you use this tool - NetRadiant Grux?
There is one map that has the same geometry leak as you did - Coldrun.
But I'm a complete noob when it comes to using NetRadiant.

Anabolic 007
Vladimir Putin's picture
Offline
Joined: Oct 2024
Posts:
NL Netherlands
Re: Q3DM3D Duke3d map for Q3

Bots seem to run fine in FFA, but when they split into teams (I played ! 007 Clan Arena), the bots on my team are incredibly slow. One of the four bots on the other team was also slow. I don't know the reason for this.
I think the map needs to be tested more in different modes

ZK
zk's picture
Offline
Joined: Aug 2010
Posts:
RO Romania
Re: Q3DM3D Duke3d map for Q3

Problem is that I learned many things about mapping only at the end of the project.
The map has many tiny portals and unsealed rooms/brushes and to find and fix then its too much job.
Maybe that's why some bots gets confused... and we may spawn in broken places/behind rooms Confused

ZK
zk's picture
Offline
Joined: Aug 2010
Posts:
RO Romania
Re: Q3DM3D Duke3d map for Q3

I use NetRadiant... not Grux version.To fix the geometry leak I just opened the .map, selected everything and pressed Snap to grid.Compiled to generate the bsp and then the .aasYou can try if you have the .map

Anabolic 007
Vladimir Putin's picture
Offline
Joined: Oct 2024
Posts:
NL Netherlands
Re: Q3DM3D Duke3d map for Q3

I don't have a .map file, but I think in any case, if I put in the effort and time, it can't fail.

Anabolic 007
Vladimir Putin's picture
Offline
Joined: Oct 2024
Posts:
NL Netherlands
Re: Q3DM3D Duke3d map for Q3
ZK wrote:

and we may spawn in broken places/behind rooms Confused

By the way, you can rewrite spawns in a simpler way. You can simply experiment with the .add file and the /viewpos command to view coordinates while you're in the game.

ZK
zk's picture
Offline
Joined: Aug 2010
Posts:
RO Romania
Re: Q3DM3D Duke3d map for Q3
Anabolic 007 wrote:

You can simply experiment with the .add file and the /viewpos command to view coordinates while you're in the game.

Thanks for that... I was trying to understand how they found the coordinates on the map to generate these files xD