Myven Client is an open-source PvP client for Eaglercraft 1.8, focused on UI customization, HUD modules, rendering improvements, settings management, and performance optimization.
Repository description: Open-source PvP client for Eaglercraft 1.8 focused on UI customization, HUD modules, rendering, settings, and performance.
Myven Client is intended as a learning and reference project for Eaglercraft client architecture. It demonstrates how a Java client codebase can be built through TeaVM into JavaScript and experimental WASM-GC browser targets while keeping a desktop debug runtime available for local development.
- Provide a clean, customizable Eaglercraft 1.8 client experience.
- Improve client UI, HUD editing, module settings, and profile management.
- Explore rendering improvements such as overlays, rounded UI, framebuffer anti-aliasing, and optimized draw paths.
- Share practical implementation patterns for Java -> TeaVM -> JavaScript / WASM-GC builds.
- Keep the project useful for education, maintenance, and community-driven improvements.
This project should be used only where allowed by server owners and applicable terms. Contributions that are designed to violate server rules, automate gameplay, abuse accounts, or attack services are out of scope.
- UI customization: ClickGUI, module settings, color controls, profile preferences, and rounded in-game UI.
- HUD modules: FPS, CPS, ping, direction, keystrokes, texture pack display, self name tag, hotbar and scoreboard positioning.
- Rendering improvements: block selection overlay, optional debug hitbox visualization, particle display customization, framebuffer reuse, and anti-aliased UI rendering.
- Privacy and display customization: nickname, skin, cape, tab list, scoreboard, and chat display options. Some legacy code paths may still use older internal module names.
- Settings management: persistent module settings, HUD layouts, color themes, profiles, and local browser storage integration.
- Performance optimization: skip inactive module work, reuse framebuffers, reduce unnecessary UI drawing, and keep browser builds efficient.
- Build workflow: Gradle targets for JavaScript offline builds, experimental WASM-GC bundles, and a desktop debug runtime.
eaglercraft-1_8-workspace- main Myven Client development workspace for Eaglercraft 1.8.eaglercraft-1_8-workspace/MYVEN_BUILD_MEMO.txt- detailed implementation notes and build references.eaglercraft-1_8-workspace/EAGLERCRAFTX_README.md- upstream EaglercraftX 1.8 README kept for reference.eagercraft-1.12-workspace- separate Eaglercraft/Eagercraft 1.12 workspace and references.wispcraftandwispcraft-latest- Wispcraft/Wisp integration sources and experiments.serve.ps1- local static file server helper for testing browser build output.
- Java 17 or newer.
- Windows PowerShell for the commands shown below.
- Node.js and npm or pnpm if you are working directly on Wispcraft sources.
- A modern browser for JavaScript and WASM-GC build testing.
Run build commands from the main 1.8 workspace:
cd .\eaglercraft-1_8-workspaceBuild the JavaScript offline client:
.\gradlew target_teavm_javascript:makeMainOfflineDownloadAlternative script:
.\target_teavm_javascript\MakeOfflineDownload.batExpected JavaScript outputs include:
target_teavm_javascript/javascript/EaglercraftX_1.8_Offline_en_US.htmltarget_teavm_javascript/javascript/classes.jstarget_teavm_javascript/javascript/assets.epk
Build the experimental WASM-GC offline bundle:
.\gradlew target_teavm_wasm_gc:makeMainWasmClientBundleAlternative script:
.\target_teavm_wasm_gc\MakeWASMClientBundle.batExpected WASM-GC outputs include:
target_teavm_wasm_gc/javascript_dist/MyvenClient_WASMGC_Offline.htmltarget_teavm_wasm_gc/javascript_dist/classes.wasmtarget_teavm_wasm_gc/javascript_dist/eagruntime.jstarget_teavm_wasm_gc/javascript_dist/wispcraft/index.js
Build the desktop debug distribution:
.\gradlew target_lwjgl_desktop:packageDesktopDistributionExpected output:
dist/MyvenClient-Desktop.zip
Desktop debug runtime:
cd .\eaglercraft-1_8-workspace
.\gradlew :target_lwjgl_desktop:eaglercraftDebugRuntimeAlternative script:
.\target_lwjgl_desktop\StartDesktopRuntime.batServe the JavaScript browser output from the repository root:
.\serve.ps1 -Port 8080 -DocRoot .\eaglercraft-1_8-workspace\target_teavm_javascript\javascriptServe the WASM-GC browser output from the repository root:
.\serve.ps1 -Port 8081 -DocRoot .\eaglercraft-1_8-workspace\target_teavm_wasm_gc\javascript_dist- Prefer changing source and build scripts rather than generated browser output files.
- For JavaScript output, check
target_teavm_javascript/build.gradle.kts. - For WASM-GC output, check
target_teavm_wasm_gc/build.gradle.kts. - For Myven modules, settings, HUD, and GUI code, start in
eaglercraft-1_8-workspace/src/main/java/com/myven/client/. - For in-game rendering and UI integration, inspect
eaglercraft-1_8-workspace/src/game/java/net/minecraft/client/. - For launch options and upstream browser runtime behavior, see
eaglercraft-1_8-workspace/EAGLERCRAFTX_README.md.
Issues and pull requests are welcome. Please read CONTRIBUTING.md before proposing changes, and keep changes aligned with the project's UI, HUD, rendering, settings, performance, documentation, and learning goals.
If you find a vulnerability or dangerous behavior, please follow SECURITY.md. Avoid publishing sensitive details or reusable abuse steps in public issues.
This repository contains code and assets from multiple upstream projects. The whole repository should not be treated as MIT-licensed.
Myven Client original additions are provided under the MIT License in LICENSE-MYVEN.md, where those additions are separable from upstream code. Upstream Eaglercraft, TeaVM, Wispcraft, desktop runtime libraries, and other third-party components remain under their own licenses and notices.
See NOTICE.md for attribution and license notes. If a file has its own license header or is located inside an upstream workspace with separate terms, that file's original terms take precedence over the Myven MIT notice.
Myven Client builds on the work of the EaglercraftX, TeaVM, Wispcraft, and broader Eaglercraft client-development communities.
Special thanks and attribution are due to EaglercraftX contributors including lax1dude, ayunami2000, and cire3, the TeaVM project and Eaglercraft TeaVM fork maintainers, the Wispcraft/MercuryWorkshop contributors, and the creators of client projects that informed the UI and architecture discussions around Myven, including Resent, Astra, and Pixel.
These credits are acknowledgements only. They do not change the license terms of any upstream project.