From f3281c037f1f1450f95efcedead567d8d4e8dd24 Mon Sep 17 00:00:00 2001 From: lax1dude Date: Sun, 15 Jun 2025 21:43:43 -0700 Subject: [PATCH] Update #52 - Fixed various issues with the client --- README.md | 2 + client_version | 2 +- .../minecraft/network/PacketBuffer.edit.java | 12 +- .../client/C00PacketLoginStart.edit.java | 6 +- .../C01PacketEncryptionResponse.edit.java | 7 +- .../S01PacketEncryptionRequest.edit.java | 7 +- .../play/server/S21PacketChunkData.edit.java | 6 +- .../play/server/S34PacketMaps.edit.java | 6 +- .../assets/minecraft/lang/en_US.edit.lang | 8 +- .../buffer/EaglerLWJGLFloatBuffer.java | 4 +- .../internal/buffer/EaglerLWJGLIntBuffer.java | 4 +- .../buffer/EaglerLWJGLShortBuffer.java | 4 +- .../eaglercraft/v1_8/EaglercraftVersion.java | 8 +- .../minecraft/GuiScreenVSyncReEnabled.java | 2 +- .../GuiScreenVideoSettingsWarning.java | 4 - .../v1_8/opengl/EaglerMeshLoader.java | 4 +- .../v1_8/opengl/EaglercraftGPU.java | 22 +-- .../v1_8/opengl/SoftGLVertexArray.java | 33 ++-- .../eaglercraft/v1_8/opengl/StreamBuffer.java | 23 +-- .../ext/deferred/D3DCmpLod0IssueCheck.java | 149 ++++++++++++++++++ .../ext/deferred/EaglerDeferredPipeline.java | 80 +--------- .../ext/deferred/GBufferPipelineCompiler.java | 6 + .../ext/deferred/LensFlareMeshRenderer.java | 4 +- .../opengl/ext/deferred/LightSourceMesh.java | 13 +- .../opengl/ext/deferred/SkyboxRenderer.java | 13 +- .../ext/deferred/program/ShaderCompiler.java | 23 ++- .../texture/EaglerBitwisePackedTexture.java | 68 +++++--- .../deferred/texture/PBRTextureMapUtils.java | 12 +- .../client/ClientV5MessageHandler.java | 2 +- .../socket/protocol/client/StateFlags.java | 8 +- .../message/InjectedMessageController.java | 5 +- .../message/LegacyMessageController.java | 2 +- .../protocol/message/MessageController.java | 5 + .../message/PacketBufferInputWrapper.java | 6 +- .../v1_8/sp/server/export/EPKDecompiler.java | 33 ++-- .../protocol/GamePacketInputBuffer.java | 2 +- .../client/CPacketWebViewMessageV4EAG.java | 2 +- .../server/SPacketWebViewMessageV4EAG.java | 2 +- .../protocol/util/SimpleInputBufferImpl.java | 8 +- sources/resources/EPKVersionIdentifier.txt | 2 +- .../opts_template_eaglercraftX_1_8.txt | 5 +- .../opts_template_eaglercraftX_1_8_demo.txt | 5 +- ...template_eaglercraftX_1_8_html5Cursors.txt | 5 +- .../glsl/deferred/accel_particle_forward.fsh | 15 +- .../textures/blocks/grass_side_snowed_s.ebp | Bin 132 -> 142 bytes ..._comparison.glsl => check_d3d_cmplod0.fsh} | 38 +++-- .../eagler/glsl/deferred/clouds_sample.fsh | 15 +- .../eagler/glsl/deferred/deferred_combine.fsh | 19 ++- .../eagler/glsl/deferred/forward_core.fsh | 23 ++- .../deferred/forward_glass_highlights.fsh | 16 +- .../glsl/deferred/realistic_water_render.fsh | 18 +-- .../glsl/deferred/reproject_control.fsh | 8 +- .../glsl/deferred/shader_pack_info.json | 2 +- .../eagler/glsl/deferred/shadows_sun.fsh | 8 +- .../eagler/glsl/deferred/skybox_render.fsh | 4 +- .../eagler/glsl/deferred/ssao_generate.fsh | 6 +- .../glsl/deferred/subsurface_scattering.fsh | 4 +- .../accel_particle_dynamiclights.fsh | 12 +- .../glsl/dynamiclights/core_dynamiclights.fsh | 16 +- .../resources/assets/eagler/silence_loop.wav | Bin 0 -> 8044 bytes .../setup/workspace_template/build.gradle.kts | 1 + .../desktopRuntime/d3dcompiler_47.dll | Bin 4916728 -> 4916728 bytes .../desktopRuntime/libEGL.dll | Bin 482080 -> 512096 bytes .../desktopRuntime/libEGL.so.1 | Bin 244376 -> 241440 bytes .../desktopRuntime/libGLESv2.dll | Bin 7977760 -> 7881312 bytes .../desktopRuntime/libGLESv2.so | Bin 6874408 -> 6510376 bytes .../desktopRuntime/libvulkan.so.1 | Bin 611384 -> 586448 bytes .../desktopRuntime/vulkan-1.dll | Bin 957728 -> 911456 bytes .../target_teavm_wasm_gc/build.gradle.kts | 4 +- .../javascript/classes.wasm-deobfuscator.wasm | Bin 37416 -> 37418 bytes .../javascript/epw_meta.txt | 6 +- .../v1_8/internal/PlatformAudio.java | 23 ++- .../v1_8/internal/PlatformInput.java | 76 ++------- .../v1_8/internal/teavm/ClientMain.java | 48 +++++- .../v1_8/internal/teavm/EPKLoader.java | 61 ++++--- .../v1_8/internal/teavm/PCMToWAVLoader.java | 3 - .../teavm/TeaVMClientConfigAdapter.java | 16 ++ .../teavm/TeaVMClientConfigAdapterHooks.java | 12 +- .../teavm/opts/JSEaglercraftXOptsRoot.java | 6 + .../v1_8/internal/PlatformApplication.java | 20 ++- .../v1_8/internal/PlatformAudio.java | 35 ++-- .../v1_8/internal/PlatformInput.java | 6 +- .../v1_8/internal/PlatformRuntime.java | 1 + .../v1_8/internal/PlatformVoiceClient.java | 10 +- .../BetterJSStringConverter.java | 4 + .../internal/wasm_gc_teavm/ClientMain.java | 20 +++ .../internal/wasm_gc_teavm/EPKLoader.java | 60 ++++--- .../WASMGCClientConfigAdapter.java | 14 ++ .../WASMGCClientConfigAdapterHooks.java | 12 +- .../opts/JSEaglercraftXOptsRoot.java | 6 + sources/wasm-gc-teavm/js/eagruntime_main.js | 51 +++++- .../wasm-gc-teavm/js/platformApplication.js | 16 +- sources/wasm-gc-teavm/js/platformAudio.js | 43 +++++ sources/wasm-gc-teavm/js/platformInput.js | 6 +- 94 files changed, 882 insertions(+), 506 deletions(-) create mode 100644 sources/main/java/net/lax1dude/eaglercraft/v1_8/opengl/ext/deferred/D3DCmpLod0IssueCheck.java rename sources/resources/assets/eagler/glsl/deferred/{lib/branchless_comparison.glsl => check_d3d_cmplod0.fsh} (52%) create mode 100644 sources/resources/assets/eagler/silence_loop.wav diff --git a/README.md b/README.md index 00e3e530..f07016fd 100644 --- a/README.md +++ b/README.md @@ -162,6 +162,8 @@ The default eaglercraftXOpts values is this: - `singleThreadMode:` if the game should run the client and integrated server in the same context instead of creating a worker object - `enableEPKVersionCheck:` if the game should attempt to bypass the browser's cache and retry downloading assets.epk when its outdated - `enforceVSync:` (WASM only) if the game should automatically re-enable VSync at launch if its disabled +- `keepAliveHack:` if the game should embed a looping `