Commit graph

429 commits

Author SHA1 Message Date
Tropical 92fbafe432 ahhhhhhh 2026-03-21 21:13:21 -05:00
MatthewBeshay 91b13bccee TU19: fix build fallout across Client, World, NBT and Network 2026-03-22 12:45:21 +11:00
Tropical d9aa793075 build fixes 2026-03-21 19:19:31 -05:00
Tropical 401a19ad67 fix bad std::string replacements 2026-03-21 18:52:06 -05:00
Tropical 8df2c2bb47 TU19: update NBT library 2026-03-21 18:43:44 -05:00
MatthewBeshay 993617025b TU19: merge Minecraft.World/IO 2026-03-22 10:13:01 +11:00
Tropical 11a0440998 TU19: merge Minecraft.World/Network 2026-03-21 18:09:02 -05:00
Tropical 0f280b5ed3 TU19: merge Minecraft.World/WorldGen 2026-03-21 17:45:10 -05:00
Tropical eb23fc1a83 TU19: merge Minecraft.World/Util 2026-03-21 17:37:16 -05:00
Tropical a1e4726296 TU19: merge Minecraft.World/Stats 2026-03-21 17:30:42 -05:00
Tropical 3b52fd1369 TU19: add Minecraft.World/Scores 2026-03-21 17:28:02 -05:00
Tropical 75a4897381 TU19: merge Minecraft.World/Recipes 2026-03-21 17:27:44 -05:00
Tropical 19026c057b TU19: merge Minecraft.World/Player 2026-03-21 17:26:42 -05:00
Tropical fdf5b8f8b9 merge Minecraft.World.cpp 2026-03-21 17:14:48 -05:00
Tropical e7bafb17d0 missed some 2026-03-21 17:12:22 -05:00
Tropical 357fca24aa refactor: nuke __int64/__uint64 in Minecraft.World 2026-03-21 17:10:36 -05:00
Tropical 8036565022 missed these two 2026-03-21 17:08:54 -05:00
Tropical 86e08af338 TU19: merge Minecraft.World/Level 2026-03-21 17:07:51 -05:00
Tropical 29522d1ac9 TU19: merge Minecraft.World/Items 2026-03-21 16:39:12 -05:00
Tropical 3d3fa566c7 TU19: merge Minecraft.World/Entities 2026-03-21 16:29:02 -05:00
Tropical 405a87e078 TU19: merge Minecraft.World/Enchantments 2026-03-21 15:55:35 -05:00
Tropical 7d05b36f85 TU19: add Minecraft.World/Core 2026-03-21 15:54:53 -05:00
Tropical 9b6046cb83 TU19: merge Minecraft.World/Blocks 2026-03-21 15:52:50 -05:00
Tropical f25cd66f4d TU19: merge Minecraft.World/Containers
keeping virtual destructors where possible
2026-03-21 15:18:52 -05:00
Tropical db0a6b2e6a TU19: merge Minecraft.World/Commands 2026-03-21 15:14:17 -05:00
Tropical 36ca1d912e TU19: merge Minecraft.World/Headers 2026-03-21 15:13:02 -05:00
Tropical 7973172ae8 TU19: merge Minecraft.World/AI 2026-03-21 15:10:07 -05:00
MatthewBeshay e0f4194bfb Delete in-tree 4J libraries after extraction 2026-03-21 00:38:32 +11:00
MatthewBeshay 1845c64ad4 Decouple 4J libs for extraction to 4jlibs 2026-03-20 11:08:45 +11:00
Sally Knight 28ea3ab8cc feat(achievements): replace placeholder icons with actual game items 2026-03-19 04:17:31 +03:00
Nikita Edel b43f31d3b6 alloc dealloc missmatch 2026-03-16 21:46:19 +01:00
ffqq f46e8b3941
Merge pull request #155 from 4jcraft/feat/restore-java-gui
feat: restore unused java GUI
2026-03-16 18:36:17 +03:00
MatthewBeshay 66961260b4
Merge branch '4jcraft:dev' into chore/cpp26 2026-03-17 00:12:06 +11:00
Sally Knight 97172039dd Merge branch 'dev' into feat/restore-java-gui 2026-03-16 16:04:30 +03:00
Echo J. 60be363e8e FixedBiomeSource: Make sure BiomeSource functions get overriden
Fixes a segfault when creating a superflat world
2026-03-16 07:37:01 +00:00
notmatthewbeshay 591dd48cf6 Upgrade the project default to C++26 2026-03-16 18:18:52 +11:00
Tropical 1bad0a3048 Merge branch 'dev' into feat/iggy-dev 2026-03-15 15:30:59 -05:00
notmatthewbeshay 7feae96ceb Use standard thread IDs in C4JThread 2026-03-16 04:57:54 +11:00
notmatthewbeshay 4f5695d4af Use standard wait result types in C4JThread 2026-03-16 04:55:38 +11:00
notmatthewbeshay d5d507ae1f Remove FLOAT aliases from timing paths 2026-03-16 04:37:56 +11:00
Tropical 7bef36fb2e Merge branch 'dev' into feat/iggy-dev 2026-03-15 00:49:59 -05:00
Tropical 816cdcc312
Merge pull request #230 from MatthewBeshay/issue/64-remove-winapi-primitives
Issue/64 remove winapi primitives
2026-03-15 00:45:22 -05:00
Liriosha 35e0ac1d88
Added additional documentation to Achievement.cpp
Clang formatter was throwing a fit so hopefully changing a cpp file will fix it
2026-03-15 01:10:51 -04:00
Liriosha 106552d969
Clang format 2026-03-15 00:56:09 -04:00
Liriosha db5f7fc246
Added back 4J notes and removed some unneeded text 2026-03-15 00:56:09 -04:00
Tropical 1928c8b662 chore: fmt, remove subprojects 2026-03-14 22:46:47 -05:00
Sally Knight 3f2e7338cc feat: complete language class implementation
yes clang-format was used
2026-03-14 18:00:15 +03:00
Tropical f66b293e33 Merge branch 'dev' into feat/iggy-dev 2026-03-14 03:25:09 -05:00
notmatthewbeshay 16ae05769d Merge upstream/dev into issue/64-remove-winapi-primitives 2026-03-14 19:20:09 +11:00
Liriosha 345fe194f0
Getting this running again ow 2026-03-14 00:13:56 -04:00
Liriosha 69c9a478e3
apparently my git isnt synced so here 2026-03-13 23:47:12 -04:00
Liriosha d57e2ae906
Added some docs to test 2026-03-13 23:46:54 -04:00
Tropical 33d0737d1d chore: format Minecraft.World 2026-03-13 17:06:56 -05:00
notmatthewbeshay 3e7a72c9d3 Remove remaining primitive locals from system helpers 2026-03-14 06:54:39 +11:00
notmatthewbeshay a2ddb7c2f0 Remove WinAPI ints from network and save helpers 2026-03-14 06:52:03 +11:00
notmatthewbeshay 123877d887 Remove WinAPI types from thread naming 2026-03-14 06:32:13 +11:00
notmatthewbeshay 2180aaa4bc Remove DWORD from shared TLS keys 2026-03-14 06:28:46 +11:00
Tropical f4d8815285
Merge pull request #209 from Acemany/fix-file-delimeter
fix File class' delimeter and homepath detection
2026-03-13 13:36:17 -05:00
Acemany 40a783207c
Windows should support regular slashes 2026-03-13 20:46:48 +03:00
notmatthewbeshay 0249bfd2bf Fix Linux build warnings 2026-03-14 04:37:55 +11:00
niansa b11da90cbb Added string conversion for Iggy everywhere where needed 2026-03-13 12:34:28 -05: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
notmatthewbeshay e3d910c6a1 Merge remote-tracking branch 'origin/issue/51-phase-1-portable-win32-cleanup' into issue/51-phase-1-portable-win32-cleanup 2026-03-13 15:12:53 +11:00
notmatthewbeshay 85208b12b7 Keep network player limit as an int constant 2026-03-13 15:12:25 +11:00
Acemany 3cbd496186
Fix File class' delimeter and homepath detection
meow :3
deleted Minecraft::OS enum because we have #ifdef
mrrrp
changed save directory name to not mess with minecraft java
2026-03-13 06:10:44 +03:00
Nikita Edel ee33f0663f Merge branch '4jcraft:dev' into fix-with-ubsan 2026-03-12 17:17:38 +01:00
Nikita Edel 6d952e24f5 revising everything 2026-03-12 16:42:36 +01: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
Tropical ae84186d3a chore: remove #pragma warning directives
These are only recognized by MSVC and will throw *additional* warnings on other compilers.
2026-03-11 16:49:12 -05:00
Nikita Edel 5d88fa9cf5 add explanation 2026-03-11 20:02:11 +01:00
Nikita Edel c0198bb8a7 missed one error with clang 2026-03-11 19:41:31 +01:00
Nikita Edel ec82ee1ea1 final commit 2026-03-11 19:22:28 +01:00
Nikita Edel 1712cd4f47 the tutorial does not crash 2026-03-11 19:04:02 +01:00
Nikita Edel faa4a989ce new blob 2026-03-11 18:49:36 +01:00
MathiewMay 96e3832b22 Reverted the SetEntityMotionPacket.cpp changes 2026-03-11 13:36:49 -04:00
MathiewMay 026cb24d66 Revert "Fix entity ID TLS key recreating on every call of getSmallid() for linux, this caused a ID pool corruption."
This reverts commit 047615dbbe.
2026-03-11 13:29:14 -04:00
Nikita Edel b763a92f8e I FOUND I FOUND IT OMG 2026-03-11 17:42:03 +01:00
Nikita Edel 69a8ce84b9 giant batch BOOOOM 2026-03-11 17:28:13 +01:00
Nikita Edel ed13020cf3 s integer overflow, unsafe cast 2026-03-11 16:10:48 +01:00
Nikita Edel a24f9f5a5e better rounding and s int overflow 2026-03-11 14:21:04 +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
Nikita Edel 8395277c0c shift of signed int, s int overflow 2026-03-11 13:36:44 +01:00
Nikita Edel 63e4b9b18a next little patch of ub, unallocated variable, s int overflow 2026-03-11 13:36:44 +01:00
MathiewMay 047615dbbe Fix entity ID TLS key recreating on every call of getSmallid() for linux, this caused a ID pool corruption. 2026-03-11 08:34:20 -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
Nikita Edel 11aa08aece
Merge branch '4jcraft:dev' into fix-with-ubsan 2026-03-11 11:57:46 +01: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 dbc8071183 Use standard result types in file helpers 2026-03-11 15:38:53 +11:00
notmatthewbeshay 2256d0fadd Remove legacy Win32 thread entry state 2026-03-11 15:38:53 +11:00
notmatthewbeshay 78fdd89f9d Use platform TLS keys in old chunk storage 2026-03-11 15:38:53 +11:00
notmatthewbeshay a08cb8d190 Use platform TLS keys for entity small IDs 2026-03-11 15:38:53 +11:00
notmatthewbeshay 4e8d1c9e17 Use platform TLS keys in portal and piston state 2026-03-11 15:38:53 +11:00
notmatthewbeshay b2942ea9d8 Use platform TLS keys in level state 2026-03-11 15:38:53 +11:00
notmatthewbeshay c2b3537c62 Remove dead Win32 error state from compressed storage 2026-03-11 15:38:53 +11:00
notmatthewbeshay 6185c58203 Use standard callback pointers in sign verification 2026-03-11 15:38:52 +11:00
notmatthewbeshay ee7945ea54 Use standard locals in storage and connection 2026-03-11 15:38:52 +11:00
notmatthewbeshay d48bd03722 Use standard byte pointers in decompression helpers 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 a1fdebbc3b Use standard skin locals in player code 2026-03-11 15:38:51 +11:00
notmatthewbeshay 377e1d2192 Use standard wide string returns for item descriptions 2026-03-11 15:38:47 +11:00
notmatthewbeshay f7e6b02835 Use standard callback types in 4J input headers 2026-03-11 15:38:47 +11:00
notmatthewbeshay d2db55e050 Use standard thumbnail buffer types 2026-03-11 15:38:42 +11:00
notmatthewbeshay 3e89da8dff Use standard byte buffers for save image metadata 2026-03-11 15:38:42 +11:00
notmatthewbeshay 0437fb921f Use standard byte counts for base save data 2026-03-11 15:38:42 +11:00
notmatthewbeshay 0ab0fd9209 Standardise fixed-width integer usage in touched files 2026-03-11 15:38:42 +11:00
notmatthewbeshay 83ba8d8384 Use a portable seek origin for save files 2026-03-11 15:38:41 +11:00
notmatthewbeshay 45c22ab6cc Use bool for save file IO results 2026-03-11 15:38:41 +11:00
Nikita Edel caadcfe9db faulty casts of templated classes 2026-03-11 03:45:56 +01:00
Nikita Edel dfb200d037 integer oferflow, shift of negative value 2026-03-11 00:26:31 +01:00
Nikita Edel a006cc5aa0 uninitialized vptr
the vptr to isSolidRender() is not known before contruction of the Tile. Its true by default. if false, need to pass false. that is what i did. i verfied what isSolidRender() is in every file. and did exactly what isSolidRender() would return
2026-03-10 23:22:34 +01: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
MatthewBeshay 2a2558ace3
Merge branch '4jcraft:dev' into issue/51-phase-1-portable-win32-cleanup 2026-03-10 18:39:30 +11:00
MathiewMay dac0e883b6 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) 2026-03-09 21:45:08 -04:00
Nikita Edel 021c2809f4 purged -Wdelete-non-abstract-non-virtual-dtor 2026-03-10 02:13:56 +01:00
Tropical e4868446bd chore: add comments for 4jcraft-added functionality, undo #135 2026-03-09 19:46:54 -05:00
notmatthewbeshay d1b2b8cedb Use standard byte counts in save file IO 2026-03-10 10:20:17 +11:00
notmatthewbeshay 8be51f6270 Use standard pointers in save file IO 2026-03-10 10:14:02 +11:00
notmatthewbeshay 2b3c688b44 Use bool for save file close handles 2026-03-10 10:14:02 +11:00
notmatthewbeshay 0db324debd Remove LPVOID from split save file memory 2026-03-10 10:14:01 +11:00
notmatthewbeshay 647b3c6352 Remove LPVOID from original save file memory 2026-03-10 10:14:01 +11:00
notmatthewbeshay 32773137e1 Remove VOID from compression helpers 2026-03-10 10:14:01 +11:00
notmatthewbeshay afca289848 Remove DWORD from compression TLS storage 2026-03-10 10:14:01 +11:00
notmatthewbeshay fb3e4947c6 Remove LPVOID from file header APIs 2026-03-10 10:14:01 +11:00
notmatthewbeshay cc8c956358 Use standard byte types in socket queues 2026-03-10 10:14:01 +11:00
notmatthewbeshay 3da761347f Remove BYTE from mob effect packets 2026-03-10 10:14:01 +11:00
notmatthewbeshay 3aeb023869 Remove Win32 types from prelogin packets 2026-03-10 10:14:00 +11:00
notmatthewbeshay d041044000 Remove BYTE from network player IDs 2026-03-10 10:14:00 +11:00
notmatthewbeshay 990d3a9986 Remove BYTE from player user types 2026-03-10 10:14:00 +11:00
notmatthewbeshay b1de3b9065 Remove DWORD player indices from player state 2026-03-10 10:14:00 +11:00
notmatthewbeshay 3f374cecad Remove DWORD skin IDs from player customisation APIs 2026-03-10 10:14:00 +11:00
notmatthewbeshay 62a1aea3fc Remove Win32 types from login packets 2026-03-10 10:14:00 +11:00
notmatthewbeshay a3e09a5fd9 Remove Win32 types from add player packets 2026-03-10 10:14:00 +11:00
notmatthewbeshay bd2c3fca18 Remove DWORD skin IDs from texture geometry packets 2026-03-10 10:14:00 +11:00
notmatthewbeshay 85ddd0cca0 Remove Win32 byte types from texture and geometry packets 2026-03-10 10:14:00 +11:00
notmatthewbeshay 474d8b2896 Remove Win32 byte types from texture packets 2026-03-10 10:14:00 +11:00
notmatthewbeshay fca297538b Remove BYTE from block generation helpers 2026-03-10 10:13:59 +11:00
notmatthewbeshay b5ad58f65c Remove BYTE from entity event constants 2026-03-10 10:13:59 +11:00
notmatthewbeshay 52b462fffd Remove DWORD texture pack IDs from server prelogin state 2026-03-10 10:13:59 +11:00
notmatthewbeshay 3880df481a Remove DWORD from utility TLS headers 2026-03-10 10:13:58 +11:00
notmatthewbeshay 1687568ff7 Remove DWORD from FileHeader interface 2026-03-10 10:13:58 +11:00
notmatthewbeshay 22757b4b51 Remove HANDLE from zoned chunk storage headers 2026-03-10 10:13:58 +11:00