Commit graph

434 commits

Author SHA1 Message Date
rtm516 fe9c56f591
Re-work compiler target options 2026-03-14 17:08:19 +00:00
rtm516 8c346e5f67
Always cleanup artifacts in nightly even if some builds fail 2026-03-14 12:18:27 +00:00
rtm516 de4cf39199
Drop CMakePresets.json version as we dont use v6 features 2026-03-14 12:05:58 +00:00
rtm516 1baa4fcb24
Update documentation 2026-03-14 12:03:25 +00:00
rtm516 7dff5fb12b
Fix robocopy error checking 2026-03-14 12:03:04 +00:00
rtm516 0f2a5b4319
Add clang flags (untested) 2026-03-14 11:00:36 +00:00
rtm516 ad55c38d02
Implement copilot suggestions 2026-03-14 10:59:58 +00:00
rtm516 980e5b9228
Correct path to xsb/xwb 2026-03-12 15:50:03 +00:00
rtm516 49b7d506e1
Remove include of terrain_MipmapLevel 2026-03-12 15:26:38 +00:00
rtm516 0b9a2ce3fd
Correct Iggy libs path 2026-03-12 15:15:42 +00:00
rtm516 a00ae64f36
Only set WIN32_EXECUTABLE on Windows 2026-03-12 15:00:39 +00:00
rtm516 51cbf16047
Fix EnsureGameHDD check 2026-03-12 15:00:06 +00:00
rtm516 ff4e0f8095
Define Iggy libs per platform 2026-03-12 14:37:55 +00:00
rtm516 e29b7b630e
Copy only current platform media 2026-03-12 14:37:36 +00:00
rtm516 7ae87ad51f
Handle per-platform source includes 2026-03-12 14:08:47 +00:00
rtm516 c6916c90bf
Exclude compat_shims from PCH 2026-03-12 00:17:28 +00:00
rtm516 1b705b1b63
Only use PCH for cpp 2026-03-12 00:03:53 +00:00
rtm516 7fd2dfa351
Use precompiled headers 2026-03-11 23:59:14 +00:00
rtm516 508fb98459
Force MSVC 2026-03-11 16:48:59 +00:00
rtm516 85fc4f6952
Disable vcpkg checks 2026-03-11 16:42:07 +00:00
rtm516 031170cdab
Update build workflows and output folder 2026-03-11 16:27:21 +00:00
rtm516 ac8710c08e
Update workflows 2026-03-11 15:56:20 +00:00
rtm516 93d7ed2aa7
Use incremental LTCG 2026-03-11 03:52:54 +00:00
rtm516 7badc298d3
Update readme and actions 2026-03-11 03:51:07 +00:00
rtm516 24ab1fb700
Remove remaining VS project files 2026-03-11 03:01:11 +00:00
rtm516 c88cde6b1e
Missing line 2026-03-11 02:58:08 +00:00
rtm516 cad2fe2965
Exclude more files and make sure GameHDD exists 2026-03-11 02:55:57 +00:00
rtm516 cca184d988
Seperate projects properly 2026-03-11 02:28:08 +00:00
rtm516 76bd513e84
Move BuildVer.h to common include and fix rebuild issue 2026-03-11 02:08:46 +00:00
rtm516 b286f33251
Match MSBuild flags 2026-03-10 23:25:36 +00:00
rtm516 25d084558a
Add platform defines 2026-03-10 23:24:53 +00:00
rtm516 16f4c85100
Revert audio changes from merge 2026-03-10 02:43:19 +00:00
rtm516 e6b43c5d12
Merge branch 'main' into feature/cmake-full 2026-03-10 02:40:44 +00:00
rtm516 2353ed6b3b
Merge branch 'main' into feature/cmake-full 2026-03-10 02:39:33 +00:00
Loki Rautio 58c236ead5 Disable git LFS
It was never even enabled properly to begin with
2026-03-09 20:49:50 -05:00
rtm516 251d69510e
Don't copy swf files 2026-03-10 01:44:06 +00:00
rtm516 41866187a7
Break out cmake source lists to platforms 2026-03-10 01:40:48 +00:00
Loki e6eafda90e
Remove another servers.txt reference 2026-03-09 18:27:02 -05:00
Loki 0fbc8903f3
Update README, remove servers.txt references 2026-03-09 18:26:00 -05:00
la e9dba1fa56
Prevent TNT Minecart exploding with TNT disabled (#1067)
Some checks are pending
MSBuild Debug Test / Build Windows64 (DEBUG) (push) Waiting to run
Nightly Release / Build Windows64 (push) Waiting to run
This set of changes was made to make the code better mimic TU20 based on its disassembly
2026-03-09 16:01:17 -05:00
Tuff CWC fe65ec24f1
Remove dead link from README (#1064) 2026-03-09 15:02:26 -05:00
Loki bda3b1078a
Port over RCE Patches from LCEMP (#1023)
Some checks are pending
MSBuild Debug Test / Build Windows64 (DEBUG) (push) Waiting to run
Nightly Release / Build Windows64 (push) Waiting to run
* LCEMP RCE Fixes WIP

Based on d017bfc30a

* Update to LCEMP's ByteArrayIO version

Fixes compilation since ours was missing some revisions from LCEMP

* Add additional safety checks missed in first pass

* Remove duplicate recipe count check
2026-03-09 06:53:08 -05:00
Loki Rautio a358a3caae Revert accidentally pushed "LCEMP RCE fixes"
This reverts commit d557ca2dfb.
2026-03-09 04:46:56 -05:00
Loki Rautio d557ca2dfb LCEMP RCE fixes
Based on commit d017bfc30a68888bf5c79b23cf5c4f607cf828bf
2026-03-09 04:45:14 -05:00
Loki Rautio 0c4f459904 Always show version overlay, add more info 2026-03-09 03:25:05 -05:00
MrTheShy 7a4f57e3e6
Reject duplicate UIDs on login and remove noisy gdraw debug log (#1013)
Some checks are pending
MSBuild Debug Test / Build Windows64 (DEBUG) (push) Waiting to run
Nightly Release / Build Windows64 (push) Waiting to run
Players joining a server with a UID already in use are now disconnected
instead of the existing player being force-kicked. The previous behaviour
introduced in #767 allowed two clients with the same UID to coexist,
causing invisible players and undefined behaviour.

Also removes a per-frame debug printf in gdraw_SetViewSizeAndWorldScale
that was left in from earlier resolution-fix work.
2026-03-08 23:10:00 -05:00
MrTheShy e2adaa082c
Fix split-screen UI wrong positioning on window resize (#989)
* Fix split-screen UI wrong positioning on window resize

In vertical split at window heights below 1080, ComputeTileScale's min-scale clamp (>= 1.0) prevented the SWF from scaling down to fit, cropping the bottom and causing repositionHud to shift HUD elements downward. Chat and Tooltips additionally applied an offset from ComputeSplitContentOffset that only produced correct values at the 1920x1080 design resolution.

Override the scale for vertical split so the SWF fits the full window height when it is shorter than the movie. Remove the broken content offset from Chat and Tooltips -- the tile crop already positions the content correctly.

* Fix gamma post-process in split-screen

The gamma shader sampled the full backbuffer texture (UV 0..1) into each player's viewport, stretching the entire screen into every split region. Extended the shader constant buffer with per-viewport UV offset and scale so each pass samples only its own portion of the backbuffer.

ComputeViewportForPlayer was hardcoded to top/bottom for 2 players, ignoring the vertical split setting. Rewrote it to read each player's m_iScreenSection directly, which already accounts for the split orientation preference.

Secondary players have no Graphics menu and cannot change gamma. CachePlayerGammas now reads the primary player's setting and applies it uniformly to all viewports.
2026-03-08 22:16:58 -05:00
MozzarellaRat 42164eeb89
Reimplement boat gravity again. (#988) 2026-03-08 21:12:13 -05:00
rtm516 91bf8d44fa
Use the correctly sized icons on 720p (#883)
* Use the correctly sized icons on 720p

* Improve check
2026-03-08 21:05:54 -05:00
MrTheShy af5d5a06d5
Revert the workaround of loading of hd textures (#999)
The previous crash fix forced HD skins at every resolution which made everything blurry at 720p and below because Iggy was downscaling 1080p assets.

The real problem was that 4J loaded the HD skin libraries (skinHD.swf, skinHDHud.swf etc) unconditionally on Win64 but the HD platform skin was only registered above 720p. At 720p or lower Iggy couldnt find platformskinHD.swf and crashed.

Now on Win64 we load both skin sets at startup, HD and non-HD, each with their own registered name so they dont conflict. loadMovie() picks 1080.swf or 720.swf based on actual screen height, and each scene SWF naturally imports the right skin chain. No crash, no blurriness.

4J already had the eLibraryFallback enum slots for this (including eLibraryFallback_Platform) but it was behind a debug-only guard and the platform skin slot was never actually loaded. Removed the guard and added the missing load.
2026-03-08 21:02:48 -05:00