Commit Graph

489 Commits

Author SHA1 Message Date
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
Ben Noordhuis 9cfed859cf Fix potential buffer overflow. 2019-02-10 13:42:03 +03:00
Garux 4485ebf780 apply mbspc changes
http://linradiant.intron-trans.hu/downloads/mbspc.tar.gz
cfgq3.c, gldraw.c, botlib\l_log.c are not used
2019-02-10 01:36:18 +03:00
Garux a91a1c510f add bspc sources from Q3A 1.32 release 2019-02-10 01:18:46 +03:00
Garux 43a5b5513f fix indentation and typos 2019-01-27 21:37:37 +03:00
Garux 7884d9f1cd q3map2 * assign surfaceflags to brush 'bevel' planes, so physics like slick/nodamage/metalsteps function at brush edges and vertices
non bitwise materials in certain games are not handled
2019-01-27 19:41:16 +03:00
maek 01962a5afe Fix a bug that prevent -fast to behave correctly 2019-01-16 23:13:56 +03:00
Garux 034f06f18d * brushexport plugin: write Kd (diffuse color) and map_Kd (diffuse map) data to .mtl
* brushexport plugin fix: invert Y during YZ swap; invert V of UV coords (correct texturing)
	* brushexport plugin: default to 'Don't collapse' option
q3map2:	* obj export: save in popular 'Y = Up, -Z = Forward' format
	* picomodel::obj: load as popular 'Y = Up, -Z = Forward' format
	* picomodel::obj: fix support of back references in faces
2019-01-10 00:44:27 +03:00
Garux 5e50ac9ccf q3map2 * allow maps with only point entity@( 0, 0, 0 )
more informative prints
2018-12-26 02:59:12 +03:00
Garux 048b4a50f2 q3map2 * model autoclip: handle 'triangle points almost on line' case 2018-12-22 13:03:22 +03:00
Garux 674eacf842 q3map2: * fix map region -light compilation: load lights from .reg, not .map 2018-12-21 14:52:47 +03:00
Garux d716c4d0b9 tweak new miniz 2018-10-23 19:43:04 +03:00
Garux 2384269177 update miniz to recent version https://github.com/richgel999/miniz 2018-10-23 19:32:18 +03:00
Garux 614885f1fb fix typos 2018-10-07 23:36:13 +03:00
Garux f99cf57f27 fix some strncpy use 2018-09-29 21:34:03 +03:00
Garux 6ad88b42fa Q3map2: * fix reading of old wolf, et, etut bsps 2018-08-12 19:18:43 +03:00
Garux 3da4012f1e add required message_flush calls 2018-03-21 20:59:30 +03:00
Garux 43202af380 q3map2 * modify message flags system to allow SYS_WRN | SYS_VRB, SYS_ERR | SYS_NOXML etc combinations 2018-03-20 19:37:47 +03:00
Garux 0f65e67896 q3map2 * colored warnings and errors in Windows console 2018-03-17 20:39:10 +03:00
Garux 968e210f2d q3map2 * mark warning messages with respective flag for colorized monitoring output 2018-03-16 20:33:50 +03:00
Garux 5bf0dd5243 q3map2: * buffered broadcast xml stream to dramatically increase compilation monitoring speed 2018-03-13 22:51:30 +03:00
Garux 98270201b2 q3map2: * fix misspelled 'donotenterlarge' contentflag for RTCW & ET 2017-12-06 13:50:37 +03:00
Garux 80faa85d36 q3map2: fix -samplessearchboxsize msg printing 2017-10-27 21:10:18 +03:00
Garux 81c31337b5 q3map2 * add extra surfaceflags from quakelive 2017-10-27 17:02:41 +03:00
Garux 944f490a65 del BOM (some compilers complained) 2017-10-18 16:02:51 +03:00
Garux a2406ea3d7 q3map2: * Valve220 mapformat autodetection and support 2017-10-17 12:59:56 +03:00
Garux b0c4caa9d1 Radiant:
binds...
	* m3: apply texture name and alignment to selected primitives and faces
	cleaning
2017-08-02 09:46:24 +03:00
Garux 492f00b729 Radiant:
misc...
	* fix scaling for doom3 brush format
	* Pointfile function: try to also load .pts leak line file (q1), if .lin isn't found
	* snap transform origin for flip commands
	* change light intensity save format from %f to %g to prevent .99999 on transforms
	* support 'stupid quake bug' (invert pitch in angles)(generic and miscmodel ents)(cfg: entities="quake" in .game)
	* clipper: place 1st and 2nd points far, 3rd near to ease 3 points clipping
2017-08-02 09:44:51 +03:00
Garux e3fd576624 Q3map2:
code fixes

Radiant:

binds...
	* m1x2 on clipper point = do clip
menus...
	* misc->colors->opengl font selector
misc...
	* calculate farplane from g_MaxWorldCoord, g_MinWorldCoord (was const 32768)
	* 1.0f nearplane
	* numerous code fixes
2017-08-02 09:25:58 +03:00
Garux 461d008daa Q3map2:
* fix: parsing of /* */ comments, having * or / inside

Radiant:

misc...
	encapsulate RETURN_FALSE_IF_FAIL macros with do while 0: minus warnings
	* button to call color selector from ents inspector color entry
	* explanatory text on initial engine path configuration
	* don't show Global preferences by default, except first start
	* activate {xyview, camera, texbro glwidget} on mouse button press and scroll, so {texbro treeview and console} hotkeys do not override global ones
	* activate windows, containing xyview, camera, texbro on mouse scroll
	* fix: autoapplying trigger texture on entity creation is undoable
	* fix: texbro m1/2 x2 work, when some tag is loaded
	* bold key and spawnflags names in entity inspector entity description
	* fix: +CameraFreeMove* command, +shift, -CameraFreeMove*, -shift = still moving (reason: caps letter)
2017-08-02 09:20:56 +03:00
Garux 0261afc6df Q3map2:
* -backsplash (float)scale (float)distance: scale area lights backsplash fraction + set distance globally
		(distance < -900 to omit distance setting); def = 1 23; real area lights have no backsplash (scale = 0)
		q3map_backsplash shader keyword overrides this setting

Radiant:

binds...
	* alt + m1 click/drag in component modes: select objects
misc...
	* fix: selected entity and brush numbers display in 'Find brush' dialog
	* prefer to display texture width and height in status bar over name (PANGO_ELLIPSIZE_START)
	* allow search shortcut (ctr+f in win) in entity inspector -> entity class list
	* fix: don't save empty group entities (but worldspawn)
2017-08-02 09:19:22 +03:00
Garux dd7f4f1689 Radiant:
binds...
	* ctrl + shift + m1 (in texbro): open shader in external editor
misc...
	* fix: do not unmaximize external shader editor on win
	* fix: blank cursor in radiant after calling external shader editor on win
	* fix shader editors stuff for non uindowses
	* 'Shader Editor Command' preference is available on win (is used, if set; otherwise try default os action for file)
	* fix: 'Shader Editor Command' preference allows selecting executable via dialog
	* GDK_HAND2 cursor in clipper tool mode
	* fix: clipper points have numeric labels
	* '2d zoom in to mouse pointer' option works for alt + m2 zoom
	* '3d zoom in to mouse pointer' option (def = yes)
2017-08-02 09:18:45 +03:00
Garux 93ca259313 Q3map2:
* new slightly less careful, but much faster lightmaps packing algorithm (allocating... process)
	* -slowallocate switch to enable old lightmaps packing algorithm
	* Subsampling...collapsing...sorting...allocating...storing...projecting... timers
2017-08-02 09:16:57 +03:00
Garux ed4c8c2044 Q3map2:
* new area lights backsplash algorithm ( by Jelvan ), hijacking temp area lights ( to simulate volumetric behavior of source ones )
	* fix: create backsplash for area lights, while q3map_lightsubdivide'ing too
	* no backsplash for area lights, if surf == sky
	* report patches count in -info
	* -exportents to exports entities to a .ent file
	* unvanquished game support
	* -fs_basepath: can be used more than once to look in multiple paths (Sets the given path as main directory of the game)
	* -fs_game: can be used more than once (Sets a different game directory name (default for Q3A: baseq3))
	* -fs_pakpath <dir>: Specify additional custom path to assets (can be used more than once to look in multiple paths)
	* fix undocumented unexpected LokiInitPaths
	* -help option (-h, --help)
2017-08-02 09:16:24 +03:00
Garux 804c20949d Q3map2:
* _setmaxstdio(2048) for windows
	* game_qfusion update

Radiant:

misc...
	* wrap long command lines in build menu -> customize
	* map info dialog: + Total patches, Ingame entities, Group entities, Ingame group entities counts
	* fix: map info dialog -> sort by count works
	* fix of: minimize main wnd, close, start = cam, cons, texbro null size
2017-08-02 09:15:41 +03:00