Skip to content

About

Meccha Chameleon Tools

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

Meccha Chameleon Tools

Build EXE

Meccha Chameleon Tools

External ESP - Aimbot - Radar for MECCA CHAMELEON (UE5) - Camouflage WIP


Demo: F10 camouflage, the short freeze ~1min, and solution menu

Features

Category Capabilities
ESP Dot / 2D Box / Skeleton overlay, names, distance, snap lines, team filter, distance scaling
Camouflage WARNING DEV / OPTIONAL - Disabled by default. F10 samples screen color and applies to character material. Prompt at startup to enable.
Health Bars Health bar and shield bar, adjustable model height and Y offset
Radar External minimap radar with configurable size and range
Aimbot Smooth aim assist, FOV circle, rebindable key
Colors Enemy, local, skeleton color pickers

All features are fully external - no DLL injection, no UE4SS, no DXGI.

image

Quick Start

Option 1 - Standalone (no Python required)

  1. Download MecchaCamouflage.exe from the latest release
  2. Launch MECCA CHAMELEON (windowed / borderless)
  3. Run MecchaCamouflage.exe

Option 2 - From source

pip install -r requirements.txt
python -m meccha_chameleon_tools

Requirements: Windows 10/11, game running in windowed/borderless mode.

Startup prompts -- On each launch the tool runs two prompts:

  1. Enable Camouflage? (optional, DEV -- disabled by default)
  2. Auto-install -- Only prompts on first launch if no release is found in the game directory:
    • First time -- Checks GitHub and asks "Install MecchaCamouflage?" with latest release info; Yes = download & install, No = skip to menu.
    • Already installed -- No dialog at all, opens menu directly.

A .meccha_version file in the game directory tracks the installed version.


Camouflage (DEV / Optional)

WARNING: This feature is in DEVELOPMENT and disabled by default.

How to use

  1. Enable at startup -- A dialog asks "Would you like to enable camouflage?" Click Yes to activate.
image

If you click Yes

image

success

image

make sure the game start with next run

image
  1. Or enable later -- Open settings (Insert/F1), go to the CAMOUFLAGE tab, check "Camouflage Enabled".
  2. Sample and apply -- Press F10 in-game to sample screen color and apply to character's 3D model.
  3. Toggle off -- Press F10 again to restore original color.

The setting is per-session. You will be prompted again each launch.

Dependency Purpose
pymem Game process memory read/write
PyQt5 Transparent overlay + settings UI
pywin32 GDI pixel sampling, window detection

Controls

Key Action
Insert / F1 Toggle settings menu
F10 Camouflage (DEV / optional -- disabled by default)
Close button Bottom bar of menu -- quits the application entirely

Settings Tabs

The menu organises options across five tabs selected from a sidebar:

ESP - Enable/disable, style toggles (Dot / 2D Box / Skeleton), Show Local Player, Names, Distance, Snap Lines, Team Filter, Distance Scaling, dot radius.

HEALTH - Health bar toggle, shield bar toggle, model height, Y offset.

RADAR - Enable/disable, radar size (80-400 px), radar range (1000-50000).

AIMBOT - Enable toggle, FOV circle display, key binding recorder, FOV radius, smoothing factor, aim offset.

COLORS - Pick colours for enemy, local player, and skeleton overlay via colour picker dialog.

CAMOUFLAGE - WARNING DEV / OPTIONAL -- Disabled by default. Enable via startup prompt or the CAMOUFLAGE tab. Press F10 to sample screen colour and apply it to your character's 3D model.

image image

Package

meccha_chameleon_tools/   # Python package
|-- __init__.py           # Main application entry point
|-- __main__.py           # Module runner
|-- config.py             # Configuration + JSON save/load
|-- core.py               # Memory reading, ESP logic
|-- ui.py                 # Qt5 overlay + menu GUI

Architecture

PatternScanner -> GUObjectArray, FNamePool
UObjectArray -> find_class, iter_objects
OffsetResolver -> dynamic property walking
GameReader -> world, camera, players
Overlay -> QPainter rendering loop @ 60 fps
Menu -> PyQt5 settings window (6-tab sidebar: ESP, HEALTH, RADAR, AIMBOT, COLORS, CAMOUFLAGE)

Memory Access

  1. Pattern scanning locates GUObjectArray and FNamePool in the game module via signature matching with fallback chains.
  2. Object walking enumerates all UObjects to resolve engine class addresses and find player pawns, controllers, and camera managers.
  3. Dynamic offset resolution walks the UStruct::ChildProperties -> FField::Next chain to find property offsets at runtime - no hardcoded offsets.
  4. ESP reads player positions from GameState -> PlayerArray -> PlayerState -> PawnPrivate -> RootComponent -> RelativeLocation, projects through the camera view matrix.
  5. Radar projects player positions relative to local player orientation onto a 2D minimap display.
  6. Aimbot reads/writes ControlRotation on the local player controller with configurable smoothing.

Engine Compatibility

The FNameResolver auto-detects UE4, UE5, and custom header-layout variants. The PatternScanner uses chunked reads (2 MiB) to avoid large allocations on shipping executables.


Troubleshooting

Symptom Likely Cause Fix
Game Freeze after pressing F10 time to write and analyze the colors location Normal this takes between 1-2min
Game attach failed Process name mismatch Verify PenguinHotel-Win64-Shipping.exe is running
ESP shows nothing Not in a match with players Load into a lobby or match
Only 1-2 players detected (4+ in game) Team filter on; all use same character class Disable Team Filter in the ESP tab (or update to v1.2.1 where it defaults to off)
Snap lines not visible w2s dropped off-screen projections Update to v1.2.1 — off-screen players now correctly draw lines to screen edge
Aimbot not firing Key binding mismatch Re-record the aim key in the AIMBOT tab
Radar not showing Radar disabled Enable Radar Enabled in the RADAR tab

Changelog

v1.4.1 - CI auto-build + Close button + main fix

  • CI/CD -- GitHub Actions auto-builds the single-file EXE on every push to master and attaches it to releases.
  • Close button -- added to the menu bottom bar to quit the application at any time.
  • main.py fix -- corrected import path (double-init) to prevent EXE crash when game is not running.

v1.4.0 - Smarter auto-install (prompt only on first launch) + CI auto-build

  • CI/CD -- GitHub Actions auto-builds the EXE on every push to master and attaches it to published releases.
  • Prompt only once -- dialog only shows if no release is found in the game directory.
  • Already installed -- no dialog at all, no GitHub API call, opens menu directly.
  • First install -- checks GitHub and asks "Install MecchaCamouflage?" with version info.
  • No skips to menu -- clicking No opens menu immediately.
  • Version tracking -- .meccha_version file written to game directory after install.

v1.3.0 - Camouflage optional (DEV) + auto-install prompt

  • Camouflage is now disabled by default -- user is asked at startup whether to enable it.
  • Camouflage marked as DEV / experimental -- clearly labelled throughout UI and README.
  • Auto-install prompt -- tool asks at startup whether to download the latest release from GitHub to the game directory.
  • Startup dialogs -- two Qt prompts at launch: camouflage opt-in and release download/install.

v1.2.1 - Player count & snap line fixes

  • Fix: Only 1-2 players detected - Team filter default changed to False. Previously, players sharing the same character class as the local player were filtered out; this caused most or all enemies to be invisible in modes where everyone uses the same Blueprint class.
  • Fix: Snap lines not drawing - w2s() no longer returns None for off-screen positions. Snap lines now draw from screen bottom-center to the player angular position at the screen edge. On-screen elements (dots, health bars, labels) are clamped to the visible area.
  • Added clamp_screen() helper for clean off-screen element handling.

v1.2.0 - Tabbed UI

  • Sidebar with five tabs: ESP, HEALTH, RADAR, AIMBOT, COLORS
  • All toggles, sliders, and color pickers organised per-tab
  • Rebindable aim key with Insert/F1 menu toggle
  • First standalone release with PyInstaller build

v1.1.x - Initial releases


Disclaimer

Educational and research purposes only. Use at your own risk.

About

Meccha Chameleon Tools

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages