Customized Cfx.re/FiveM client and FXServer source tree for the Watermelon ecosystem.
Private Source · Custom Launcher · Runtime Updater · Custom Auth · Anti-Cheat
WatermelonClient is a customized Cfx.re/FiveM client and server stack with launcher branding, custom authentication, launcher UI, runtime update delivery, and anti-cheat integration.
This repository is intended to stay private. It contains client, server, UI, release tooling, and private integration points that should not be distributed as a public source release.
| Area | Description |
|---|---|
| Launcher | WatermelonClient bootstrap, installer, updater, branding, and update URL handling. |
| Runtime | Customized Five client runtime components and identity bridge. |
| FXServer | Custom authentication, ticket verification, identifiers, and HWID mapping. |
| Launcher UI | Login, register, server preview, account, and launcher frontend under ext/cfx-ui. |
| Anti-Cheat | Watermelon anti-cheat component, local detection, and backend log reporting. |
| Release Tools | Bootstrap/runtime packaging and upload scripts for the Watermelon runtime backend. |
| Path | Purpose |
|---|---|
code/client/launcher |
Bootstrap, installer, updater, and launcher branding. |
code/components |
Client runtime components and custom native modules. |
code/components/citizen-server-impl/src |
FXServer custom auth and identity logic. |
code/components/watermelon-anticheat |
Watermelon anti-cheat source. |
ext/cfx-ui/src/cfx/apps/mpMenu |
Launcher UI source. |
tools |
Runtime/bootstrap upload and maintenance scripts. |
docs |
Build, release, and project documentation. |
.docs |
Internal GitHub workflow and maintainer notes. |
- Documentation Index
- Build and Release Guide
- Project Docs
- Native Build Notes
- Source Layout
- Internal GitHub Workflow
- Private File Rules
Fresh checkout and project generation:
git clone https://github.com/mukii936/wsc.git -c core.symlinks=true
cd wsc
git submodule update --jobs=16 --init
git lfs install
git lfs pull
pip install setuptools
.\fxd.cmd get-chrome
.\prebuild.cmd
.\fxd.cmd gen -game five
.\fxd.cmd vs -game fiveUse fxd vs -game five for normal development. Use direct MSBuild commands when rebuilding a specific release component.
Build launcher only:
& 'C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe' code\build\five\CitiLaunch.vcxproj /p:Configuration=Release /p:Platform=x64 /m:1 /v:minimalBuild anti-cheat:
& 'C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe' code\build\five\watermelon-anticheat.vcxproj /p:Configuration=Release /p:Platform=x64 /m:1 /v:minimalBuild common runtime components:
& 'C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe' code\build\five\glue.vcxproj /p:Configuration=Release /p:Platform=x64 /m:1 /v:minimal
& 'C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe' code\build\five\font-renderer.vcxproj /p:Configuration=Release /p:Platform=x64 /m:1 /v:minimal
& 'C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe' code\build\five\rage-graphics-five.vcxproj /p:Configuration=Release /p:Platform=x64 /m:1 /v:minimalUpload bootstrap:
powershell -ExecutionPolicy Bypass -File .\tools\upload-watermelon-bootstrap.ps1 -BackendBase "https://runtime.watermelonstudio.tech" -Version 1000002Upload runtime:
powershell -ExecutionPolicy Bypass -File .\tools\upload-watermelon-runtime.ps1 -BackendBase "https://runtime.watermelonstudio.tech" -Version 3Runtime packages must include:
citizen/version.txt
citizen/release.txt
Launcher UI packages should include:
citizen/ui_version.txt
origin: private WatermelonClient source repository.upstream: original Cfx.re/FiveM repository.
Check remotes:
git remote -vSync upstream only when intentionally merging Cfx.re/FiveM changes into WatermelonClient. Review conflicts carefully around launcher, auth, updater, UI, and anti-cheat files.
Do not commit production secrets or local build output.
Private file examples:
code/components/watermelon-anticheat/include/Local.h.env.env.*tmp/code/bin/code/build/out/
Use this public template instead:
code/components/watermelon-anticheat/include/Local.h.example
Before every push:
git status --short
git diff --cached --name-only
rg -n "JWT_SECRET|TICKET_SECRET|DB_PASSWORD|DATABASE_URL|CLIENT_UPDATE_ADMIN_KEY|LAUNCHER_UI_ADMIN_KEY|ANTICHEAT.*SECRET" -S --hidden -g "!code/bin/**" -g "!code/build/**" -g "!tmp/**" -g "!code/components/watermelon-anticheat/include/Local.h"Rules:
- Keep the repository private.
- Rotate any secret that was shared outside the private environment.
- Never trust client-side secrets as an authorization boundary.
- Ticket verification must remain server-authoritative.
- Runtime update storage belongs in the backend, not in Git.
This repository is based on the Cfx.re/FiveM source tree. Review upstream licensing in code/LICENSE and keep any private/custom distribution compliant with the applicable license terms.
Thank you to the Cfx.re/FiveM team for the original project, tooling, and ecosystem that make this customized WatermelonClient work possible.
WatermelonClient is intended to respect the applicable upstream license terms and project boundaries. If any part of this repository, documentation, distribution, or integration is incorrect, incomplete, or unintentionally violates a rule or license requirement, please contact WatermelonStudio so it can be reviewed and corrected promptly.
- Website: https://watermelonstudio.tech/
- Email: watermelonclient@gmail.com