Build 8763
SVN-
Generale
Fix stupid menu bug
Nickname SVN e nomi Git sono unificati per persona.
Fix stupid menu bug
GCC 9.3.0 Windows build fix
Fix GCC 9.3.0 signedness warning
Add file selector for choosing which .sf2 bank to use
This also adds a menu option for OPL3 stereo mode. Windows MME output device selection is probably next (this can already be done through the console).
Stylistic changes to driver_winmm
This changes the code formatting and style of driver_winmm to better match our style guidelines.
Move a couple things around in the audiolib headers so we can access them from the game code
I forgot this bunch of SDL2 headers like an idiot
Fix IF crouch jumping and unintentional automatic crouching under sprites
ifndef EDUKE32_STANDALONE a couple more hard-coded Duke3D sound IDs that were missed previously
Reduce width of a couple fields in memberlabel_t
Make gamestructures a proper object
Macros for a couple hardcoded values
This lets the player jump into the vents in DUKEDC3.MAP
Since this is Duke3D, I'm sure this change breaks something else.
Re-enable ignoring 256 units of curb when clipping against ceilings
This fixes getting stuck on tiny lips created by sloppy slopes in the undersized vents in DUKEDC3.MAP.
Bump clang-format ColumnLimit to 165
Rename ZOFFSET1 to ACTOR_FLOOR_OFFSET and use ACTOR_MAXFALLINGZVEL in several places where it should have been used
Fix stupid typo that broke conveyor belts
Improve player input locking logic
This fixes the issue with mouse input and viewscreens.
Print HRESULT error message when DwmGetCompositionTimingInfo() fails (wtf?)
Fix hilarious bug where holding the strafe modifier and pressing turn left/right moved the player in the wrong direction
Revert "Hackish fix for spline interpolation crash in libxmp-lite"
Add -nosteam command line parameter
Call communityapiInit() from the game's app_main() instead of baselayer_init()
Add r_maxfps -1, an automatic setting that limits the framerate to the refresh rate -1 for each increment over 60Hz the refresh rate is
E.g 60Hz > 59 fps 120Hz > 118 fps 144Hz > 141 fps 165Hz > 162 fps This also changes G_FPSLimit() back to a more simplistic calculation, because what was there didn't quite seem to make sense.
Custom driver-independent VSync implementation for Windows
Fix Ion Fury autodetection issue
Calculate game loop timing using fractional ticks
This should be ifndef NETCODE_DISABLE
This is pretty useless at this point
Rename EDUKE32_SIMPLE_MENU to EDUKE32_RETAIL_MENU
This fixes things like shrunk player behavior at the expense of the return of issues like the player automatically stepping up onto sprite architecture.
Remove file accidentally added in r8424
Fix Mapster32 undo/redo corruption issue
Don't build SW and the Kenbuild test game by default in VS
Recalculate horizycent because ydim can be changed in renderSetTarget
Revert "Windows: Remove keyboard layout switching entirely"
This change was not well thought out and breaks a number of things for users of foreign keyboards. Unfortunately, we are still at a point where removing keyboard layout switching is a QOL downgrade.
This should fix rare stalls of several seconds when changing window focus on some Windows systems, related to changing the keyboard layout
Fix SW compilation under VS
Fix Mapster32 undo corruption issue
This is a __restricted area
Theoretically, this will help the compiler generate more optimized code. In practicality, I haven't seen any difference yet but I don't think giving the compiler hints as to the intended operation of the code is ever really a bad thing.
Track cache1d block overhead differently
These shouldn't be references
Map SDL joystick device trackball input to mouse input
Shitcan the few uses of the bool type in the VM after reading some things and dicking around on godbolt.org
Update the Microsoft resource compiler scripts used for Windows binaries
This adds the version control revision plus build time to the properties of the resulting binary, and updates some of the legal text. The executable version number has also been bumped from the longstanding "1.9.9.9" to "2.0.0.4", symbolic of the year EDuke32 was first released in. Future Fury binaries will now say "2.0.1.9" to match its first non-preview release as well.
This workaround doesn't appear to be necessary anymore
Moreover, I couldn't really find any information about the problem this was supposed to resolve when I attempted to research it. The code has already been #if 0'd out for a while.
Fix keyboard layout change console message and make sure windowsPlatformCleanup() gets called from uninitsystem()
I swear, the amount of trivial differences between toolchain setups drives me up the wall sometimes
Use stat() instead of fopen() to detect existing files when saving screenshots
This helps the player not fall off of the edges of certain types of moving sectors as easily
Don't activate gamefunc_Toggle_Crouch if cheat_phase is non-zero
This fixes most issues with the player clipping through the walls of rotating sectors
Boost OPL3 output to about the level of WinMM
Retain friendly names for audiolib drivers disabled at compile time
Add mus_al_additive to control the behavior mentioned in r8232 and rename mus_adlibstereo to mus_al_stereo
Better stereo suppport in OPL3 emulator
Patch from Nuke.YKT
Fix issue with tempo when changing back and forth between OPL3 and WinMM MIDI output
Apparently, a long while back when I limited snd_numvoices to 128 I forgot to change the menu to reflect it
Fix mus_adlibstereo
Revert a copy/paste error fix in the AdLib code because the fixed version doesn't work right with the timbres Blood ships with
Fix AdLib timbre loading
Fix min/max values for audiolib cvars
I thought this would work but I'm stupid :D
Tweak the priority classes set by win_priorityclass
Fix issue causing maps to sometimes fail to load
Band-aid fix an issue with the tile packer preventing MSVC builds from working
Prefer uint32_t over unsigned int