Commit graph

91 commits

Author SHA1 Message Date
Tropical 1767c3f6e9 chore: fmt 2026-03-30 09:37:24 -05:00
MatthewBeshay e911e07a58 Refactor C4JThread: modernise API naming and replace Windows constants
Rename all PascalCase methods to camelCase, replace Windows macro constants with C++ constexpr members, convert ThreadPriority to enum class, remove unused Sleep(), fix memory ordering on inline accessors, extract platform code into helpers.
2026-03-31 01:06:06 +11:00
MatthewBeshay 156a23d744 Remove dead _ENTITIES_RW_SECTION code and update stale critical section comments
The RW section code path was never compiled. Updated remaining comments to reflect mutex/lock terminology.
2026-03-31 00:23:35 +11:00
MatthewBeshay f1df21590b Merge dev and resolve formatting conflicts 2026-03-30 19:00:30 +11:00
MatthewBeshay bc6013ab70 Replace all CRITICAL_SECTION usage with std::mutex and std::lock_guard
Migrates 59 files from WinAPI CRITICAL_SECTION to portable C++ std::mutex/std::lock_guard/std::unique_lock. Removes Linux CRITICAL_SECTION shims from winapi_stubs.h.
2026-03-30 18:45:55 +11:00
Tropical c9b90cae2c chore: format everything 2026-03-30 02:17:54 -05:00
MatthewBeshay 28d68befd4 Replace remaining WinAPI types with standard C++ equivalents
DWORD→uint32_t, BYTE→uint8_t, HRESULT→int32_t, HANDLE→void*, UINT→uint32_t, INT→int32_t, WORD→uint16_t, LONG→int32_t, SHORT→int16_t, LONGLONG→int64_t, ULONG_PTR→uintptr_t, PBYTE→uint8_t*, LPWSTR/PWSTR→wchar_t*, FLOAT→float, CHAR→char, boolean→bool, CONST→const, TRUE→true, FALSE→false across 176 files (excluding vendor libs and Linux stubs).
2026-03-30 17:36:15 +11:00
MatthewBeshay a0fdc643d1 Merge branch 'upstream-dev' into cleanup/nullptr-replacement
# Conflicts:
#	Minecraft.Client/Network/PlayerChunkMap.cpp
#	Minecraft.Client/Network/PlayerList.cpp
#	Minecraft.Client/Network/ServerChunkCache.cpp
#	Minecraft.Client/Platform/Common/Consoles_App.cpp
#	Minecraft.Client/Platform/Common/DLC/DLCManager.cpp
#	Minecraft.Client/Platform/Common/GameRules/LevelGenerationOptions.cpp
#	Minecraft.Client/Platform/Common/GameRules/LevelRuleset.cpp
#	Minecraft.Client/Platform/Common/Tutorial/Tutorial.cpp
#	Minecraft.Client/Platform/Common/Tutorial/TutorialTask.cpp
#	Minecraft.Client/Platform/Common/UI/IUIScene_CreativeMenu.cpp
#	Minecraft.Client/Platform/Common/UI/UIComponent_Panorama.cpp
#	Minecraft.Client/Platform/Common/UI/UIController.cpp
#	Minecraft.Client/Platform/Common/UI/UIController.h
#	Minecraft.Client/Platform/Extrax64Stubs.cpp
#	Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Input.h
#	Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Storage.h
#	Minecraft.Client/Player/EntityTracker.cpp
#	Minecraft.Client/Player/ServerPlayer.cpp
#	Minecraft.Client/Rendering/EntityRenderers/PlayerRenderer.cpp
#	Minecraft.Client/Textures/Packs/DLCTexturePack.cpp
#	Minecraft.Client/Textures/Stitching/StitchedTexture.cpp
#	Minecraft.Client/Textures/Stitching/TextureMap.cpp
#	Minecraft.Client/Textures/Textures.cpp
#	Minecraft.World/Blocks/NotGateTile.cpp
#	Minecraft.World/Blocks/PressurePlateTile.cpp
#	Minecraft.World/Blocks/TileEntities/PotionBrewing.cpp
#	Minecraft.World/Enchantments/EnchantmentHelper.cpp
#	Minecraft.World/Entities/HangingEntity.cpp
#	Minecraft.World/Entities/LeashFenceKnotEntity.cpp
#	Minecraft.World/Entities/LivingEntity.cpp
#	Minecraft.World/Entities/Mobs/Boat.cpp
#	Minecraft.World/Entities/Mobs/Minecart.cpp
#	Minecraft.World/Entities/Mobs/Witch.cpp
#	Minecraft.World/Entities/SyncedEntityData.cpp
#	Minecraft.World/Items/LeashItem.cpp
#	Minecraft.World/Items/PotionItem.cpp
#	Minecraft.World/Level/BaseMobSpawner.cpp
#	Minecraft.World/Level/CustomLevelSource.cpp
#	Minecraft.World/Level/Level.cpp
#	Minecraft.World/Level/Storage/DirectoryLevelStorage.cpp
#	Minecraft.World/Level/Storage/McRegionLevelStorage.cpp
#	Minecraft.World/Level/Storage/RegionFileCache.cpp
#	Minecraft.World/Player/Player.cpp
#	Minecraft.World/WorldGen/Biomes/BiomeCache.cpp
#	Minecraft.World/WorldGen/Features/RandomScatteredLargeFeature.cpp
#	Minecraft.World/WorldGen/Layers/BiomeOverrideLayer.cpp
2026-03-30 16:28:40 +11:00
MatthewBeshay dfb0e3b03e refactor: replace NULL with nullptr across C++ codebase
Excludes vendored C libs (zlib, Miles, DirectXMath, boost, Iggy).
2026-03-30 16:25:52 +11:00
Tropical 51e61a12b4 refactor: replace some win32 typedefs 2026-03-30 00:16:26 -05:00
Tropical e45151ae64 refactor: expand AUTO_VAR macro 2026-03-29 23:59:05 -05:00
MatthewBeshay 6000900285 Merge branch 'upstream-dev' into cleanup/shared-portability-reset-v2
# Conflicts:
#	Minecraft.Client/Level/ServerLevel.cpp
#	Minecraft.Client/Minecraft.cpp
#	Minecraft.Client/MinecraftServer.cpp
#	Minecraft.Client/Network/ClientConnection.cpp
#	Minecraft.Client/Network/ServerChunkCache.cpp
#	Minecraft.Client/Platform/Common/Audio/SoundEngine.cpp
#	Minecraft.Client/Platform/Common/Consoles_App.cpp
#	Minecraft.Client/Platform/Common/Network/GameNetworkManager.cpp
#	Minecraft.Client/Platform/Common/Network/Sony/SonyCommerce.cpp
#	Minecraft.Client/Platform/Common/Network/Sony/SonyRemoteStorage.cpp
#	Minecraft.Client/Platform/Common/UI/UIController.cpp
#	Minecraft.Client/Platform/Common/UI/UIScene_CreateWorldMenu.cpp
#	Minecraft.Client/Platform/Common/UI/UIScene_EnchantingMenu.cpp
#	Minecraft.Client/Platform/Common/UI/UIScene_LaunchMoreOptionsMenu.cpp
#	Minecraft.Client/Platform/Common/UI/UIScene_LoadOrJoinMenu.cpp
#	Minecraft.Client/Platform/Common/UI/UIScene_MainMenu.cpp
#	Minecraft.Client/Platform/Common/XUI/XUI_Death.cpp
#	Minecraft.Client/Platform/Common/XUI/XUI_Leaderboards.cpp
#	Minecraft.Client/Platform/Common/XUI/XUI_MultiGameJoinLoad.cpp
#	Minecraft.Client/Platform/Common/XUI/XUI_PauseMenu.cpp
#	Minecraft.Client/Platform/Common/XUI/XUI_TransferToXboxOne.cpp
#	Minecraft.Client/Platform/Durango/Durango_Minecraft.cpp
#	Minecraft.Client/Platform/Linux/Linux_Minecraft.cpp
#	Minecraft.Client/Platform/Orbis/Orbis_Minecraft.cpp
#	Minecraft.Client/Platform/PS3/PS3Extras/boost_1_53_0/boost/spirit/home/lex/lexer/lexertl/lexer.hpp
#	Minecraft.Client/Platform/PS3/PS3_Minecraft.cpp
#	Minecraft.Client/Platform/PS3/SPU_Tasks/ChunkUpdate/TileRenderer_SPU.cpp
#	Minecraft.Client/Platform/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.cpp
#	Minecraft.Client/Platform/PS3/Xbox_Minecraft.cpp
#	Minecraft.Client/Platform/PSVita/PSVita_Minecraft.cpp
#	Minecraft.Client/Platform/Xbox/Xbox_Minecraft.cpp
#	Minecraft.Client/Platform/stdafx.h
#	Minecraft.Client/Player/LocalPlayer.cpp
#	Minecraft.Client/Rendering/Chunk.cpp
#	Minecraft.Client/Rendering/EntityRenderers/ItemRenderer.cpp
#	Minecraft.Client/Rendering/GameRenderer.cpp
#	Minecraft.Client/Rendering/LevelRenderer.cpp
#	Minecraft.Client/Textures/BufferedImage.cpp
#	Minecraft.Client/UI/Screens/AchievementScreen.cpp
#	Minecraft.Client/UI/Screens/ContainerScreen.cpp
#	Minecraft.Client/UI/Screens/TrapScreen.cpp
#	Minecraft.World/IO/Files/ConsoleSaveFileOriginal.cpp
#	Minecraft.World/IO/Files/File.cpp
#	Minecraft.World/Player/Player.cpp
#	Minecraft.World/Util/C4JThread.cpp
2026-03-30 15:21:08 +11:00
Tropical 06c73c821c
Merge pull request #312 from 4jcraft/refactor/replace-sleep
refactor: replace win32 thread sleeping and yielding with `std::thread` primitives
2026-03-27 18:47:47 -05:00
MatthewBeshay 8d3c504ee6 cleanup: flatten dead branches in world io level network and stats 2026-03-26 20:53:52 +11:00
MatthewBeshay 1fecbf297a cleanup: remove console branches from render texture and world helpers 2026-03-26 19:24:04 +11:00
MatthewBeshay ad5da38321 cleanup: remove console platform code from shared includes and build paths 2026-03-26 17:53:37 +11:00
Tropical 8e94b763a7 refactor: remove usage of win32 Sleep function for this_thread::sleep_for 2026-03-25 19:12:11 -05:00
orng 9ea379eb44 chore: fix formatting in files touched by
refactor/remove-BasicTypeContainers
2026-03-25 18:01:56 -05:00
orng f1ae42c659 refactor: remove basic type containers 2026-03-25 17:51:27 -05:00
MatthewBeshay fed9cf2d95 fix: resolve all build warnings and notes 2026-03-23 18:53:18 +11:00
Tropical 0a348b7f2f fix Socket implementation with new NetworkManager API 2026-03-22 04:24:14 -05:00
Tropical ce57edff9d fix strings, includes, the usual 2026-03-22 02:28:46 -05:00
Tropical 6c92bc0be8 more build fixes 2026-03-22 01:14:52 -05:00
MatthewBeshay 91b13bccee TU19: fix build fallout across Client, World, NBT and Network 2026-03-22 12:45:21 +11:00
Tropical 11a0440998 TU19: merge Minecraft.World/Network 2026-03-21 18:09:02 -05:00
Tropical 357fca24aa refactor: nuke __int64/__uint64 in Minecraft.World 2026-03-21 17:10:36 -05:00
notmatthewbeshay 16ae05769d Merge upstream/dev into issue/64-remove-winapi-primitives 2026-03-14 19:20:09 +11:00
Tropical 33d0737d1d chore: format Minecraft.World 2026-03-13 17:06:56 -05:00
notmatthewbeshay a2ddb7c2f0 Remove WinAPI ints from network and save helpers 2026-03-14 06:52:03 +11:00
notmatthewbeshay 0249bfd2bf Fix Linux build warnings 2026-03-14 04:37:55 +11:00
notmatthewbeshay 00d65b8487 Address remaining review feedback on buffer reads 2026-03-13 20:11:00 +11:00
notmatthewbeshay 883e98bde0 Address review feedback on protocol types 2026-03-13 19:47:32 +11:00
notmatthewbeshay bcc765f3e7 Merge remote-tracking branch 'upstream/dev' into issue/51-phase-1-portable-win32-cleanup
# Conflicts:
#	Minecraft.Client/Platform/Common/DLC/DLCManager.cpp
#	Minecraft.Client/Rendering/Tesselator.cpp
2026-03-13 15:16:43 +11:00
Nikita Edel 6cfc1efec2
Merge branch '4jcraft:dev' into fix-with-ubsan 2026-03-12 14:40:02 +01:00
MatthewBeshay dbdf4fdd22
Merge branch 'dev' into issue/51-phase-1-portable-win32-cleanup 2026-03-12 10:21:19 +11:00
Nikita Edel 69a8ce84b9 giant batch BOOOOM 2026-03-11 17:28:13 +01:00
MathiewMay e36e58609d Reverted the SetEntityMotionPacket.cpp changes 2026-03-11 08:42:19 -04:00
MathiewMay 77deb67b4a Revert "Rewrote the entity movement packets to use full 16-bit signed short increasing the entity ID limit from 2048 (artifical lce limit) to 32768 ids (0 to 32767)"
This reverts commit dac0e883b6.
2026-03-11 08:39:22 -04:00
MathiewMay 702839176e Revert " applied changes requested by tropicaaal"
This reverts commit 41d8202c47.

# Conflicts:
#	Minecraft.World/Network/Packets/MoveEntityPacket.cpp
2026-03-11 08:29:24 -04:00
notmatthewbeshay 5f8c9c8a25 Merge upstream/dev into issue/51-phase-1-portable-win32-cleanup 2026-03-11 17:09:16 +11:00
Tropical 32bd586c6e
Merge pull request #153 from MathiewMay/dev
Some checks are pending
Build (Linux, x86_64) / build-linux (push) Waiting to run
Build (Linux, x86_64) / build-linux-debug (push) Waiting to run
Changed entity id from 11-bit to 16-bit for movement and motion packets.
2026-03-11 00:31:32 -05:00
Tropical 5b4319556d refactor: remove redundant casts in MoveEntityPacket 2026-03-11 00:20:23 -05:00
notmatthewbeshay a503336887 Merge upstream/dev into issue/51-phase-1-portable-win32-cleanup 2026-03-11 16:02:48 +11:00
notmatthewbeshay 2256d0fadd Remove legacy Win32 thread entry state 2026-03-11 15:38:53 +11:00
notmatthewbeshay ee7945ea54 Use standard locals in storage and connection 2026-03-11 15:38:52 +11:00
notmatthewbeshay 9d41d3c359 Use fixed-width byte values in world data 2026-03-11 15:38:52 +11:00
notmatthewbeshay 0ab0fd9209 Standardise fixed-width integer usage in touched files 2026-03-11 15:38:42 +11:00
MathiewMay 41d8202c47 applied changes requested by tropicaaal
"i would prefer that these be cast to sized integer types int8_t for portability reasons."

 "The light layer changes are ultimately a hack over the broken renderer implementation and probably out of scope for this PR. There's an in-progress fix for the root cause of this, so this should be removed."

 "std::numeric_limits<int16_t>::max()"
2026-03-10 18:20:33 -04:00
Nikita Edel af16088015 improved a change 2026-03-10 20:13:01 +01:00
Nikita Edel f9fc430c43
Merge branch '4jcraft:dev' into dev 2026-03-10 19:34:42 +01:00