From 6fa7a8b5bd8abdf583111370d4a48a9b865f422e Mon Sep 17 00:00:00 2001 From: Garux Date: Sun, 15 Jan 2023 20:32:11 +0600 Subject: [PATCH] mbspc: decompilation: bump limits to be able to decompile all AD Q1 BSPv1 maps --- tools/mbspc/mbspc/l_bsp_ent.h | 2 +- tools/mbspc/mbspc/l_bsp_q1.h | 20 ++++++++++---------- tools/mbspc/mbspc/q2files.h | 12 ++++++------ tools/mbspc/qcommon/qfiles.h | 6 +++--- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/mbspc/mbspc/l_bsp_ent.h b/tools/mbspc/mbspc/l_bsp_ent.h index 461b91c7..45c540e8 100644 --- a/tools/mbspc/mbspc/l_bsp_ent.h +++ b/tools/mbspc/mbspc/l_bsp_ent.h @@ -21,7 +21,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef MAX_MAP_ENTITIES -#define MAX_MAP_ENTITIES 2048 +#define MAX_MAP_ENTITIES 4096 #endif typedef struct epair_s diff --git a/tools/mbspc/mbspc/l_bsp_q1.h b/tools/mbspc/mbspc/l_bsp_q1.h index 07b0b648..ac161e62 100644 --- a/tools/mbspc/mbspc/l_bsp_q1.h +++ b/tools/mbspc/mbspc/l_bsp_q1.h @@ -25,23 +25,23 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #define Q1_MAX_MAP_HULLS 4 -#define Q1_MAX_MAP_MODELS 256 +#define Q1_MAX_MAP_MODELS 1024 #define Q1_MAX_MAP_BRUSHES 4096 #define Q1_MAX_MAP_ENTITIES 1024 -#define Q1_MAX_MAP_ENTSTRING 65536 +#define Q1_MAX_MAP_ENTSTRING 0x80000 -#define Q1_MAX_MAP_PLANES 8192 +#define Q1_MAX_MAP_PLANES 32768 #define Q1_MAX_MAP_NODES 32767 // because negative shorts are contents -#define Q1_MAX_MAP_CLIPNODES 32767 // -#define Q1_MAX_MAP_LEAFS 32767 // +#define Q1_MAX_MAP_CLIPNODES 0xFFFF // +#define Q1_MAX_MAP_LEAFS 32767 // #define Q1_MAX_MAP_VERTS 65535 #define Q1_MAX_MAP_FACES 65535 #define Q1_MAX_MAP_MARKSURFACES 65535 -#define Q1_MAX_MAP_TEXINFO 4096 +#define Q1_MAX_MAP_TEXINFO 8192 #define Q1_MAX_MAP_EDGES 256000 #define Q1_MAX_MAP_SURFEDGES 512000 -#define Q1_MAX_MAP_MIPTEX 0x200000 -#define Q1_MAX_MAP_LIGHTING 0x100000 +#define Q1_MAX_MAP_MIPTEX 0x1000000 +#define Q1_MAX_MAP_LIGHTING 0x200000 #define Q1_MAX_MAP_VISIBILITY 0x100000 // key / value pair sizes @@ -88,7 +88,7 @@ typedef struct typedef struct { - int version; + int version; q1_lump_t lumps[Q1_HEADER_LUMPS]; } q1_dheader_t; @@ -179,7 +179,7 @@ typedef struct short side; int firstedge; // we must support > 64k edges - short numedges; + short numedges; short texinfo; // lighting info diff --git a/tools/mbspc/mbspc/q2files.h b/tools/mbspc/mbspc/q2files.h index fcb829e6..15a50614 100644 --- a/tools/mbspc/mbspc/q2files.h +++ b/tools/mbspc/mbspc/q2files.h @@ -100,7 +100,7 @@ typedef struct short t; } dstvert_t; -typedef struct +typedef struct { short index_xyz[3]; short index_st[3]; @@ -156,7 +156,7 @@ typedef struct int ofs_st; // byte offset from start for stverts int ofs_tris; // offset for dtriangles int ofs_frames; // offset for first frame - int ofs_glcmds; + int ofs_glcmds; int ofs_end; // end of file } dmdl_t; @@ -229,7 +229,7 @@ typedef struct miptex_s // 16 bit short limits #define MAX_MAP_MODELS 1024 #define MAX_MAP_BRUSHES 8192 -#define MAX_MAP_ENTITIES 2048 +#define MAX_MAP_ENTITIES 4096 #define MAX_MAP_ENTSTRING 0x40000 #define MAX_MAP_TEXINFO 8192 @@ -237,7 +237,7 @@ typedef struct miptex_s #define MAX_MAP_AREAPORTALS 1024 #define MAX_MAP_PLANES 65536 #define MAX_MAP_NODES 65536 -#define MAX_MAP_BRUSHSIDES 65536 +#define MAX_MAP_BRUSHSIDES 0x20000 #define MAX_MAP_LEAFS 65536 #define MAX_MAP_VERTS 65536 #define MAX_MAP_FACES 65536 @@ -285,7 +285,7 @@ typedef struct typedef struct { int ident; - int version; + int version; lump_t lumps[HEADER_LUMPS]; } dheader_t; @@ -418,7 +418,7 @@ typedef struct short side; int firstedge; // we must support > 64k edges - short numedges; + short numedges; short texinfo; // lighting info diff --git a/tools/mbspc/qcommon/qfiles.h b/tools/mbspc/qcommon/qfiles.h index 3cfee73e..46293898 100644 --- a/tools/mbspc/qcommon/qfiles.h +++ b/tools/mbspc/qcommon/qfiles.h @@ -120,7 +120,7 @@ typedef struct md3Tag_s { ** XyzNormals sizeof( md3XyzNormal_t ) * numVerts * numFrames */ typedef struct { - int ident; // + int ident; // char name[MAX_QPATH]; // polyset name @@ -167,7 +167,7 @@ typedef struct { int flags; int numFrames; - int numTags; + int numTags; int numSurfaces; int numSkins; @@ -420,7 +420,7 @@ typedef struct { // expense of more memory allocation in the utilities #define MAX_MAP_MODELS 0x400 #define MAX_MAP_BRUSHES 0x8000 -#define MAX_MAP_ENTITIES 0x800 +#define MAX_MAP_ENTITIES 0x1000 #define MAX_MAP_ENTSTRING 0x40000 #define MAX_MAP_SHADERS 0x400