Commit Graph

53 Commits

Author SHA1 Message Date
Garux f9bc21ab12 * -lessbrushes switch: less brushes when decompiling Q1, HL maps at the expense of texturing 2023-01-18 21:36:11 +06:00
Garux f43f9da361 mbspc: * improve decompilation quality of Q1, HL maps greatly (texturing correctness, less brushes)
#87
#92
2023-01-18 21:33:23 +06:00
Garux 6fa7a8b5bd mbspc: decompilation: bump limits to be able to decompile all AD Q1 BSPv1 maps 2023-01-15 20:32:11 +06:00
Garux 18d4a0a1e7 mbspc: decompilation: avoid writing empty texture name 2023-01-15 20:30:08 +06:00
Garux d5b2c67812 fix simple warnings 2021-10-22 03:19:07 +03:00
Garux d82996d684 mbspc: fix q3 entities being loaded twice 2021-08-15 18:54:28 +03:00
Garux 6c00419653 fix spelling 2021-05-24 20:23:09 +03:00
Garux e62c6f4bb3 fix warnings 2021-01-03 06:24:58 +03:00
Garux ab80efd198 try to fix MAC compilation #40 2020-04-04 20:46:04 +03:00
Garux 85e5807397 try to fix MAC compilation #40 2020-04-04 19:40:56 +03:00
Garux b136b1a829 mbspc: * deduce OutputFile path out of input file path in -bsp2map, -bsp2map220, -entlist, -texinfo modes (like for .aas)
* append _decompiled suffix to decompiled map file names
2020-02-29 04:03:12 +03:00
Garux 5a032a991a mbspc: make builtin, html help, command line options consistent
enable -grapplereach: bugged in vanilla engine, but is likely fixed in OpenArena
remove -onlyents doc: doesn't exist in the code (wtf)
2020-02-29 02:05:38 +03:00
Garux aa44982b20 define more architectures in mbspc -> q_platform.h, as we do not define them in Makefile 2020-02-11 18:46:41 +03:00
Garux 64f6b4a4ac fix some warnings 2020-02-07 23:00:19 +03:00
Garux 1805e42582 make C code to compile with -std=c11 (though still many implicit function declarations) 2020-02-07 22:45:06 +03:00
Garux 70b6cc8696 make C code ODR compliant (-fno-common) 2020-02-07 22:41:56 +03:00
Garux 0290bd76fe remove NeXT preprocessor conditions 2020-02-03 23:58:43 +03:00
Garux eb70faddc8 use standard C bool type:
get rid of qfalse, qtrue aliases everywhere
replace qboolean in q3map2, q3data
redefine qboolean type in q2 tools, mbspc
2020-02-03 01:15:30 +03:00
Garux e5d040a770 fix simple warnings 2020-02-02 14:53:18 +03:00
Garux b2eb13b049 manage windows only strlwr(), strupr() 2020-01-29 16:42:03 +03:00
Garux 9cb2ab691e del myoffsetof macro 2020-01-29 04:09:12 +03:00
Garux b75d061ff0 fix mbspc linux compilation 2019-03-15 21:41:15 +03:00
Garux 4b1b789fa8 mbspc: use newer q_platform.h from ioq3, enables win64 compilation 2019-03-07 17:10:31 +03:00
Garux d1ac937b50 mbspc: add -bsp2map220 switch, writting map in Valve 220 format with correct textures alignment for Quake 1/2, SiN and Half-Life BSPs
+various improvements of decompiling
2019-02-11 18:25:50 +03:00
Garux a21a5c7290 mbspc: bump hl limits (by Garey) 2019-02-10 19:35:52 +03:00
Garux c0f417b9cb mbspc: bump limits to handle complex maps (by SpaKK)
http://www.quake3world.com/forum/viewtopic.php?f=10&t=51522
2019-02-10 19:05:19 +03:00
Garux 0a09aff18a mbspc: fix fixes 2019-02-10 17:22:42 +03:00
Thomas Köppe 8875e2dd80 Change winding_t and bspbrush_t to use flexible array members rather than size-1 arrays.
The arrays were always meant to be variably sized, and objects are only ever allocated dynamically. Object size computations are simplified with this change.

Flexible arrays were introduced in C99, so this change means that we will require a C99-conforming compiler henceforth.
2019-02-10 17:07:42 +03:00
TTimo 5064c1f163 more cleanups 2019-02-10 16:46:50 +03:00
Thomas Köppe fee0e36602 [bspc.c] Change directory variables to have static storage; they're
quite large for automatic storage.
2019-02-10 16:41:04 +03:00
Thomas Köppe 13a3b91cc3 [l_bsp_{hl,q1}.c] Fix erroneous use of comma operator 2019-02-10 16:37:32 +03:00
Thomas Köppe 39c70072da [l_bsp_{q1,q2,sin}.c] Fix undefined behaviour in array access 2019-02-10 16:36:35 +03:00
Victor Luchits 39a3819765 Fix compilation warnings caused by abs/fabs confusion 2019-02-10 16:31:09 +03:00
Victor Luchits 8143f33548 Do not call CheckPlaneAgainstParents on tiny splits 2019-02-10 16:29:34 +03:00
Joel Baxter e8522ae2c9 make AAS_LoadAASFile work with zero-sized lumps
AAS_LoadAASLump will return 0/NULL in an error case. However it will also
return the input buffer pointer if length is 0, and the input buffer pointer
may be 0/NULL in the case where AAS_LoadAASLump is meant to allocate memory.

This means that it can return 0/NULL in a perfectly legal case where the lump
length is 0. Since AAS_LoadAASFile inteprets this as a fatal error, that's
bad.

I'm not sure how to best disambiguate this, but a low-touch fix is for the
caller of AAS_LoadAASLump to be OK with a returned NULL pointer if the lump
length is 0.

Also: added a missing break statement to avoid a spurious "don't know what to
do" message when using the aasinfo switch.
2019-02-10 16:24:16 +03:00
Joel Baxter 4443f667cf update fields in the example custom config file
The settings in cfgq3.c had diverged from the actual fields and defaults in
these ways:
- extra field phys_maxacceleration
- missing fields phys_walkaccelerate, phys_swimaccelerate, rs_maxfallheight
- different defaults for phys_airaccelerate, phys_maxstep, phys_maxwaterjump

Also the code in aas_cfg.[ch] for reading the settings was missing
rs_maxfallheight.

It's brittle to require multiple different files to agree on these fields, but
rather than fix that issue this is just a band-aid to bring things back into
alignment so that custom configs based on the example file can be used again.
2019-02-10 16:22:18 +03:00
Chris Brooke 777cd9e09a QuakeLive fix-ups. 2019-02-10 16:17:16 +03:00
Chris Brooke 2d96a0053e Initial QuakeLive support. 2019-02-10 16:15:31 +03:00
Ben Noordhuis d8462c5831 Include func_static in AAS calculations unless spawnflags has bit 1 set. 2019-02-10 15:35:51 +03:00
Ben Noordhuis c897b97e01 Source and destination should not overlap in call to strcpy(), use memmove(). 2019-02-10 15:34:31 +03:00
Ben Noordhuis 2cba675936 Fix warning: format not a string literal and no format arguments. 2019-02-10 15:30:30 +03:00
Ben Noordhuis 91bcbfc593 Export function Q_strncpyz(). 2019-02-10 15:22:53 +03:00
Ben Noordhuis 693be64e51 Remove unused variables. 2019-02-10 15:12:40 +03:00
Ben Noordhuis d15f8e4baa Fix warning: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘long int’. 2019-02-10 14:59:22 +03:00
Ben Noordhuis 11f606b68a Fix warning: array subscript is above array bounds. 2019-02-10 14:51:00 +03:00
Ben Noordhuis 5dbe479244 Fix warnings: cast from pointer to integer of different size. 2019-02-10 14:45:24 +03:00
Ben Noordhuis fd22d6abbf Add #include, fixes 'implicit declaration of function' warnings. 2019-02-10 14:42:25 +03:00
Ben Noordhuis b6ebec81cb Fix warning: format not a string literal and no format arguments. Also: use vsnprintf(), not vsprintf() - that's a buffer overrun waiting to happen. 2019-02-10 14:15:34 +03:00
Ben Noordhuis a265802dff Fix warning: cast from pointer to integer of different size. 2019-02-10 14:09:43 +03:00
Ben Noordhuis ca7fb9b9ed Replace non-standard #include <malloc.h> with <stdlib.h> 2019-02-10 13:50:57 +03:00