2876 Commits

Author SHA1 Message Date
Fabian Greffrath
e8372539f0 optionally hide Items in stats widget
Fixes #2294
2025-06-24 08:16:02 +02:00
ceski
dad00953e5
Replace BETWEEN macro with CLAMP (#2293)
`clampi` and `clampf` functions are also available now.
2025-06-21 01:08:51 -07:00
elf-alchemist
70aa28dc82
added BEX mnemonic for beta pickup sprite (#2291) 2025-06-20 10:27:00 +02:00
ceski
f6325f138f Disable raw input for XInput devices under Windows 2025-06-18 20:19:34 -07:00
elf-alchemist
da417c51e1
enable all compatible scrollers on demo_compatibility (#2289) 2025-06-16 16:11:06 +02:00
elf-alchemist
d4bb4e8ae8
Fix REKKR autoload directory infinite recursion (#2287)
* fix REKKR autoload issue

* fix typo

* remove extraneous auto folder creation

* do not autoload from REKKR pwads
2025-06-12 17:46:21 +02:00
MelodicSpaceship
f237fb9941
Add rekkr-all autoload directory. (#2284)
* Add rekkr-all autoload directory.

* Make the requested changes to rekkr-all autoloading.

* Remove .wad extensions in calls to strncasecmp.

* Add space after commas for calls to strncasecmp.
2025-06-11 11:52:05 +02:00
ceski
c85e5d98d9 Add ambient sound example WAD 2025-06-08 06:08:09 -07:00
Roman Fomin
10a4fc359d
improvements to the SNDINFO parser (#2281)
* Always error out using `SC_Error`.

* Introduce `TK_RawString`, remove `SC_GetNextTokenLumpName`.

* Use `TK_RawString` for sound logical name and lump names.
2025-06-03 10:24:03 +07:00
elf-alchemist
451618d435
Implement separate Woof!-exclusive Thing flags (#2279)
* add MIRROREDCORPSE enemy corpses to Legacy of Rust

* implement 'Woof Bits' randomly flipped corspes

* add 'Woof Bits' to save data
2025-06-02 15:25:57 +07:00
ceski
c378d97aef
Add support for SNDINFO ambient sounds (#2280) 2025-06-02 00:12:36 -07:00
Roman Fomin
785984696d fix error if lump not found in TRAKINFO 2025-05-29 12:51:52 +07:00
Fabian Greffrath
ceacff0163
allow saving when recording a joined demo (#2273)
Saving is allowed when regularly recording a demo anyway
2025-05-27 12:01:38 +02:00
Fabian Greffrath
d8077adb64
support binding the non-US backslash key (#2271)
This is the key between Left Shift and Y on an ISO keyboard.
2025-05-25 10:48:30 +02:00
elf-alchemist
8553faabd8
fix Demoloop missing support for DeHackEd Text substitution (#2269) 2025-05-20 11:56:01 +02:00
Fabian Greffrath
3c4b90f30a pipe error handling functions through clang-format 2025-05-16 10:42:27 +02:00
Fabian Greffrath
cc0dc9af62 restrict screenblocks to maxscreenblocks boundaries 2025-05-15 22:30:59 +02:00
Fabian Greffrath
a6956ccac7 more elegant solution: append note to error message 2025-05-15 22:09:31 +02:00
Fabian Greffrath
d8c7ce1a69 distinguish error exits from success exits 2025-05-15 18:18:35 +02:00
Fabian Greffrath
dd94081ac0
make EV_VerticalDoor() consistent with DSDA-Doom (#2268)
Corresponding code:
ca3f4b1731/prboom2/src/p_doors.c (L679-L739)
2025-05-15 09:53:20 +02:00
Fabian Greffrath
cfe4431875 clarify that an error message is *not a crash* 2025-05-15 09:45:26 +02:00
Fabian Greffrath
81bf1e70c7
break quit messages after at most 42 chars (#2267)
if they do not contain explicit line breaks themselves

Fixes #2263
2025-05-14 06:33:13 +02:00
Fabian Greffrath
d28289ca1f
prepend function name to error messages (#2266)
* prepend function name to error messages

* adjust error messages accordingly
2025-05-14 06:32:17 +02:00
Fabian Greffrath
40e3447805 simplify check for PL_FLATMAPPING in do_draw_plane() 2025-05-13 21:47:07 +02:00
Alaux
4d4d91de0a
Consistently use pixel_t for screen buffer (#2262) 2025-05-10 13:42:32 -03:00
ceski
0ef7f192e3 Update README.md 2025-05-09 20:07:19 -07:00
ceski
f52e7728a9
Simplify IWAD list building, add more search locations (#2260)
* Don't add blank paths to wad list

* Simplify GOG paths

Removes redundant/invalid paths. Adds paths to original IWADs which are now included with DOOM + DOOM II.

* Simplify Steam paths

Removes invalid paths. Paths to wads are generated based on registry entries, like GOG.

* Add `const`

* Separate CE and GOG

* Update Linux Steam paths

Some of these games may be installed due to the popularity of modern Proton support. So it doesn't hurt to include their paths.

* Remove extra `steampath`
2025-05-08 12:07:30 -07:00
ceski
17e318b91b
Improve sound limiter (#2256) 2025-05-08 09:42:33 -07:00
Roman Fomin
ca5a4aef94 CI: continue of error 2025-05-08 15:36:33 +07:00
ceski
7530deae79
Free/destroy SDL video resources on shutdown (#2259)
* Rename `disable_endoom` to `fast_exit`

* Rename `D_AllowQuitSound` to `D_QuitSoundEnabled`

* Add separate `D_EndDoomEnabled` function

* Move all ENDOOM checks to `D_AllowEndDoom`

* Free/destroy SDL video resources on shutdown

* Simplify
2025-05-07 22:13:18 -07:00
Fabian Greffrath
232c1e478f
add a "prev map" key binding (#2046)
* add a "prev map" key binding

Fixes #2007

* simplify

* add safety measures

* simplify again

* fix

* simplify logic

* add to key binding menu instead of player specific chat keys

* start with gamemap 99 when crossing gameepisodes

* start new episode with gamemap = cur_map to allow a full gamemap circle

* fix UMAPINFO

* reset gamemap outside the while() condition

* do not let linear and UMAPINFO maps cross

* prevent G_GotoNextLevel() from cycling across levels that end the game

* check either UMAPINFO or linear progression in G_GotoNextLevel()

* don't report the map we couldn't find, but the map that we couldn't find a previous map for
2025-05-08 07:06:04 +02:00
Roman Fomin
7bc3712cfd CI: always update cache 2025-05-08 12:04:36 +07:00
Fabian Greffrath
7bfc01ff69
reset weapon carousel for zombie players (#2253)
Fixes #2252
2025-04-29 13:33:18 +02:00
Fabian Greffrath
0a789c7783 do not redefine deh_flag_t struct type in deh_mobjflags[] declaration 2025-04-28 15:06:44 +02:00
Roman Fomin
2361f851de fix buffer overflow in d_deh.c 2025-04-28 17:45:08 +07:00
Roman Fomin
550ceb4b3f CI: x-gha extension is deprecated, so we cache the vcpkg build ourselves. 2025-04-28 11:14:48 +07:00
Fabian Greffrath
b271de8949 replace a bool instance with proper boolean 2025-04-24 18:02:29 +07:00
Roman Fomin
4c6e114939
update TRAKINFO records (#2248) 2025-04-18 11:01:12 +07:00
Fabian Greffrath
48402d9d9c
handle extras.wad auto-loads between IWAD and all other PWADs (#2246)
Fixes #2241
2025-04-17 07:34:04 +07:00
Roman Fomin
742e091534
TRAKINFO: don't exit if lump is not found, refactoring (#2239) 2025-04-14 00:01:58 +07:00
Jack Li
6db48e1506 Prevent P_LookForPlayers from retrying sighting a player who failed (#528)
Mitigates the poor performance in Necromantic Thirst MAP25.

From Eternity Engine: 857826ba3e
2025-04-09 17:34:45 +02:00
Roman Fomin
4a057a6deb
enable ANIMATE feature for default sky and SKYDEFS (#2236) 2025-04-05 23:11:35 +07:00
Roman Fomin
4b8e9f7cd2
move savegame buffer size check to saveg_write* functions (#2235)
* Inline `saveg_write*` and `saveg_read*` functions for minor speedup.

* Simplify save buffer size checks.
2025-04-04 13:42:30 +07:00
elf-alchemist
bea52a7cf9
Partial ID24 line specials implementation (#2230)
* complevel/demo_version checks now de-macroized
* new `side` arg on ShootSpecialLine for two-sided activations
* new `rotation` floors and ceiling property
* 6 new W/S/G inventory-restting exits
* 24 new W/S/G music changer specials
* 9 new static rotation and offset specials
* 5 new static two-sided scroller specials

---------

Co-authored-by: Roman Fomin <rfomin@gmail.com>
2025-04-04 08:25:12 +07:00
Fabian Greffrath
a58fa465f6
turn max_pitch_angle into a config variable (#2234)
Fixes #2232
2025-04-02 09:20:22 +02:00
Roman Fomin
a59843fcfc CI: install CMake 3.31.6 for now 2025-04-02 11:28:32 +07:00
Roman Fomin
e2d6043f88 umapinfo: fix crash in bossaction parser 2025-03-30 12:43:11 +07:00
Roman Fomin
277fa46a61 fix save buffer size calculation 2025-03-27 21:38:56 +07:00
Roman Fomin
c4998a2e02 fix typo 2025-03-27 21:38:23 +07:00
Roman Fomin
8735e76a85
bring back original fuzz mode option (#2228)
* fix reset to default
2025-03-24 16:25:09 +07:00