Commit graph

5,040 commits

Author SHA1 Message Date
Magnus Norddahl
e3cde7a9e9 More big beautiful porting 2025-08-08 00:43:45 +02:00
Magnus Norddahl
3fdd22ef91 Merge remote-tracking branch 'gzdoom/master' into big_beautiful_merge 2025-08-06 21:06:53 +02:00
nashmuhandes
24aea22ef2 Move the "custom inverse map" options from Light to Appearance (this option has nothing to do with lighting; it's actually related to the fullscreen inverted effect of the invulnerability powerup) 2025-08-06 08:24:06 +08:00
Magnus Norddahl
23a344b086 Apply sunlight as a true light source for line horizons 2025-08-05 10:53:26 +02:00
Boondorl
316b18a4d9 Added built-in delta time handling
Allows tracking time since last-rendered frame in seconds.
2025-08-02 19:44:00 -03:00
Boondorl
86375c1b79 Move travelling to two-step system
Mark Actors meant to travel early so their flag can be written into the snapshot, followed by moving them over all at once at the same time as previously. On finish, destroy any marked Actors to prevent duplication in hubs. Switch to a unique function that does the verification instead of ChangeStatNum and lock out STAT_TRAVELLING entirely since it shouldn't be used for regular gameplay.
2025-08-02 17:35:16 -03:00
Boondorl
00d2b43ce0 Remember statnum when travelling
Also cleans up the functions a little.
2025-08-02 17:35:16 -03:00
Boondorl
d7d71177d7 Reworked Travelling logic
Added safety barriers for STAT_STATIC and STAT_TRAVELLING to avoid potential exploits. Properly clear all internal fields pointing towards non-read barriered data and always relink properly when finishing travelling. Moved ZScript callback to after travelling has finished for all Thinkers, that way everything is initialized correctly.  Allow arbitrary thinkers (excluding native ones) to be added to the travelling list (for Actors, their positioning will need to be handled by modders). Ensure lights get re-enabled after travelling.
2025-08-02 17:35:16 -03:00
Marcus Minhorst
7ccd0dd3cd Fix oboe 2025-08-02 15:04:34 -03:00
nashmuhandes
346f4c0e87 Add gl_weapon_purelightlevel to make view weapon sprites/models match sector light levels purely 2025-08-02 12:00:50 -04:00
Sally Coolatta
4cc5fe942d Save/Load menu: Add delete bind for gamepads 2025-07-30 12:56:06 -03:00
Rachael Alexanderson
9d92686c0a
- language update 2025-07-29 23:53:44 -04:00
Boondorl
b6b3c311e1 Export DecalBase
Allows setting this between Actors with type safety. Now also serializes these fields.
2025-07-28 15:24:04 -03:00
Boondorl
4acc5f2a7d Lock down MessageBox handler 2025-07-28 14:36:54 -03:00
Boondorl
a4ed63033e Fixed quick save rotator breaking save logic
The game should only ever save during the gameplay loop and never on the spot. Also fixes the quick save rotator skipping certain checks.
2025-07-28 02:50:10 -04:00
nashmuhandes
21ba4e6ab0 Add missing item tags for items in Doom and Chex Quest. There are mods out there that read tags. The accompanying language entries have been sent to the localization spreadsheet. 2025-07-27 17:34:08 -03:00
Marcus Minhorst
05f19f4ac0 Fixed oob array access when using m_use_mouse=1 2025-07-27 17:33:44 -03:00
Marcus Minhorst
9a6569a916 Added option to disable sound when moving cursor by hovering. 2025-07-27 17:33:44 -03:00
Marcus Minhorst
cbe710b549 Added option to disable sound when moving cursor by using scrollwheel. 2025-07-27 17:33:44 -03:00
Boondorl
12fac42bab Mark appropriate voidptr fields as readonly 2025-07-27 03:56:33 -04:00
Boondorl
66c5beccbd Added UUID for game sessions
Allows the SavegameManager to destroy all saves related to the current UUID session so hardcore mods can enforce this safely instead of needing to go nuclear.
2025-07-26 11:43:59 -03:00
Magnus Norddahl
b23617475c Use palette textures for translucent/sprites and apply the translation remap when requesting an indexed texture 2025-07-25 02:50:45 +02:00
Magnus Norddahl
56e796cd3e Fix sunlight for vid_rendermode 2 2025-07-23 23:19:28 +02:00
Magnus Norddahl
4fa00d01ea Fix sunlight artifact 2025-07-22 20:23:53 +02:00
nashmuhandes
9fc4acf440 Fix sun lightmaps with gl_texture 0 2025-07-22 22:58:12 +08:00
nashmuhandes
47f6f4cb1c Allow the blood splat decal distance to be customizable in MAPINFO's GameInfo block 2025-07-22 10:37:22 -03:00
Dileep V. Reddy
19291c5e5c Sprite lean/angled roll with geometric consistency in multiplayer and mirrors. An ANGLEDROLL flag ties actor's sprite-rolling axis to physical direction instead of viewpoint. Y-Billboarding occurs about a rolled axis (unlike flatsprites which don't billboard). This makes roll consistent when viewed from all angles and in reflections. Useful for sprite-based laser beams and lean mechanics with third-person cameras and/or multiplayer mods. 2025-07-22 10:36:07 -03:00
Magnus Norddahl
3e6943fb4f Code for building a lightprobe AABB tree 2025-07-20 07:54:33 +02:00
dpjudas
e5db8d998a Make uLightProbeIndex take precedence over probemap, if specified 2025-07-19 21:14:55 +02:00
Magnus Norddahl
1efa5b19cd Add tile world position information to lightmapper copy pass 2025-07-19 02:28:19 +02:00
Magnus Norddahl
8faa4e65bc Create probemap texture for every lightmap atlas texture 2025-07-18 19:28:57 +02:00
Magnus Norddahl
9e8d76cc1e Prepare pbr shader to find the closest light probes from a texture 2025-07-18 16:39:14 +02:00
VileCornstarch
e2e9e76709 Expose CloseDialog 2025-07-17 23:28:10 -03:00
Marcus Minhorst
79855337c8 Fixed oob array access 2025-07-17 23:24:45 -03:00
Boondorl
73445f6f6a Fixed arithmetic state jumps going out-of-bounds 2025-07-17 03:19:52 -03:00
Magnus Norddahl
a9c1fdf23a Add specular highlights to sunlight 2025-07-17 02:52:28 +02:00
Magnus Norddahl
924a44e94d Change gl_raytrace back to its direct ray tracing 2025-07-16 09:33:42 +02:00
Wohlstand
ee7e913e1a Added gaining factor for OPL Synth Emulation too
Also, fixed default gaining values at libADL and libOPN (they should be 1.0, not 0.5)
2025-07-15 17:17:47 -04:00
Wohlstand
c461ecf19b ADLMIDI: Added support for GENMIDI as a custom bank
Now, libADLMIDI can use GENMIDI bank too as the "OPL Synth Emulation"
2025-07-15 17:17:47 -04:00
Wohlstand
798ceddea6 Added gain for libADLMIDI and for libOPNMIDI 2025-07-15 17:17:47 -04:00
Wohlstand
8954463f0e Added new libADLMIDI and libOPNMIDI options
Not yet translated
2025-07-15 17:17:47 -04:00
DyNaM1Kk
99af0fb970 Added the Discord RPC option to the menu 2025-07-15 15:34:22 -04:00
Marcus Minhorst
b40af0c923 Add hideInsteadOfGraying bool 2025-07-15 00:16:06 -03:00
Marcus Minhorst
6b22be3e28 Expose visible flag to menudef 2025-07-15 00:16:06 -03:00
Marcus Minhorst
32cf838ecf Added Home/End menu binds 2025-07-12 22:33:02 -03:00
Marcus Minhorst
bef78dbe19 Scrolling now makes sound if cursor moves 2025-07-12 22:33:02 -03:00
Marcus Minhorst
37ba8a6a4d Refactored. Scrolling no longer always moves cursor 2025-07-12 22:33:02 -03:00
Marcus Minhorst
2923afc99a Refactored. Scrolling now jumps 2 items again 2025-07-12 22:33:02 -03:00
Marcus Minhorst
23b69769e8 Fixed optionmenu regression
Option menu would index into a negative item if natigating up and wrapping
around in a menu with exactly N items where only N items can be displayed.
2025-07-11 17:47:16 -03:00
Boondorl
8a020fbe9d Mark offensive items and ammo as WEAPONSPAWN
Better filters these when playing in co-op mode with multiplayer things enabled.
2025-07-10 14:12:21 -03:00