AeThex-Engine-Core/docs/CUSTOMIZATION_PLAN.md
mrpiglr 190b6b2eab
Some checks are pending
Build AeThex Engine / build-windows (push) Waiting to run
Build AeThex Engine / build-linux (push) Waiting to run
Build AeThex Engine / build-macos (push) Waiting to run
Build AeThex Engine / create-release (push) Blocked by required conditions
Deploy Docsify Documentation / build (push) Waiting to run
Deploy Docsify Documentation / deploy (push) Blocked by required conditions
chore: sync local changes to Forgejo
2026-03-13 00:37:06 -07:00

9.8 KiB

AeThex Engine Customization Plan

🎯 Mission: Transform Godot → AeThex

This document outlines all changes needed to rebrand and customize the engine.


Phase 1: Basic Branding (Quick Wins - 1-2 hours)

1.1 Engine Identity (engine/version.py)

Current:

short_name = "godot"
name = "Godot Engine"
website = "https://godotengine.org"

Change to:

short_name = "aethex"
name = "AeThex Engine"
website = "https://aethex.dev"  # or your domain

Impact: Changes all version strings, window titles, splash screens


1.2 Visual Branding (Logo & Icons)

Files to replace:

engine/icon.svg           → AeThex editor icon
engine/icon.png           → PNG version
engine/logo.svg           → Main logo
engine/logo.png           → PNG version
engine/icon_outlined.svg  → Outlined variant
engine/logo_outlined.svg  → Outlined logo variant

Required: Create AeThex logos in SVG format (scalable) Tool: Use Inkscape, Figma, or AI generation

Specs:

  • Icon: 256x256px, simple, recognizable
  • Logo: Horizontal layout, clean typography
  • Colors: Choose brand palette (2-3 colors)

1.3 About Dialog (engine/editor/gui/editor_about.cpp)

Line 57-59, Change:

String(U"© 2014-present ") + TTR("Godot Engine contributors") + ".\n" +
String(U"© 2007-2014 Juan Linietsky, Ariel Manzur.\n")

To:

String(U"© 2026-present AeThex Labs.\n") +
String(U"Powered by Godot Engine (MIT License)\n") +
String(U"© 2014-present Godot Engine contributors.\n")

Why: Legal requirement - acknowledge Godot's MIT license


1.4 Splash Screen (engine/editor/splash.cpp - if exists)

  • Replace splash image with AeThex branding
  • Update loading text
  • Customize colors

Phase 2: Deep Customization (Week 1-2)

2.1 User Interface Theme

Files to modify:

engine/editor/themes/editor_theme_manager.cpp
engine/editor/editor_themes.cpp

Changes:

  • Custom color scheme (brand colors)
  • Font changes (if desired)
  • Icon theme (replace Godot icons with AeThex icons)
  • Corner radius, borders, shadows

Strategy: Create "AeThex Theme" as default


2.2 Default Settings

File: engine/editor/editor_settings.cpp

Custom defaults:

// Add AeThex default settings
EDITOR_SETTING(Variant::STRING, PROPERTY_HINT_NONE, "network/cloud_api_url", 
    "https://api.aethex.dev", "")
EDITOR_SETTING(Variant::BOOL, PROPERTY_HINT_NONE, "aethex/enable_ai_assist", 
    true, "")
EDITOR_SETTING(Variant::STRING, PROPERTY_HINT_NONE, "aethex/theme", 
    "aethex_dark", "")

2.3 Welcome Screen

File: engine/editor/project_manager.cpp

Add:

  • AeThex getting started content
  • Links to AeThex docs/tutorials
  • Featured templates
  • "Create with AI" button (future)

2.4 Menu Items

File: engine/editor/editor_node.cpp

Add custom menus:

Menu Bar → "AeThex"
  ├─ Cloud Services
  ├─ AI Assistant
  ├─ Marketplace
  ├─ Documentation
  └─ Community

Phase 3: Unique Features (Month 1-3)

3.1 AI Integration Module

Create: engine/modules/aethex_ai/

Features:

  • Code completion via Claude API
  • Asset generation
  • Bug detection
  • Documentation generation

Files:

modules/aethex_ai/
├─ SCsub
├─ config.py
├─ register_types.h/cpp
├─ ai_assistant.h/cpp
└─ ai_api_client.h/cpp

3.2 Cloud Services Module

Create: engine/modules/aethex_cloud/

Features:

  • User authentication
  • Cloud saves
  • Multiplayer backend
  • Analytics
  • Asset delivery

Backend: Separate service (Rust/Go/Node.js)


3.3 Enhanced Asset Pipeline

Modify: engine/editor/import/

Add:

  • AI-powered texture optimization
  • Automatic LOD generation
  • Smart compression
  • Asset tagging and search

3.4 Collaborative Editing

Create: engine/modules/aethex_collab/

Features:

  • Real-time scene editing (multiple users)
  • Change tracking
  • Conflict resolution
  • Chat/voice integration

Phase 4: Platform & Export (Month 3-6)

4.1 Custom Export Templates

Modify: engine/platform/*/export/

Add:

  • AeThex branding in exported games
  • Analytics SDK integration
  • Crash reporting
  • Auto-update system

4.2 Web Export Enhancements

Target: Progressive Web Apps (PWA)

  • Service worker integration
  • Offline support
  • App manifest
  • Install prompts

Phase 5: Ecosystem (Month 6-12)

5.1 Asset Marketplace Integration

  • Browse and download from editor
  • One-click import
  • License management
  • Revenue sharing system

5.2 Template Library

  • Game templates (RPG, Platformer, FPS)
  • UI kits
  • Shader packs
  • Tool presets

5.3 Plugin System Extensions

  • Enhanced plugin API
  • Plugin marketplace
  • Auto-updates for plugins
  • Sandboxed execution

Phase 6: AeThex Lang Integration COMPLETED

6.1 Cross-Platform Scripting Language

Created: engine/modules/aethex_lang/

AeThex Lang is a unified scripting language that compiles to multiple game engines:

  • Roblox (Luau)
  • UEFN/Fortnite (Verse)
  • Unity (C#)
  • Web (JavaScript)
  • AeThex Engine (Native VM)

Module Structure:

modules/aethex_lang/
├── config.py              # Module configuration
├── SCsub                  # Build script
├── register_types.h/cpp   # Module registration
├── aethex_script.h/cpp    # Script resource class
├── aethex_tokenizer.h/cpp # Lexer
├── aethex_parser.h/cpp    # AST parser
├── aethex_compiler.h/cpp  # Cross-platform compiler
├── aethex_vm.h/cpp        # Bytecode virtual machine
├── editor/
│   └── aethex_highlighter.h/cpp  # Syntax highlighting
├── export/
│   └── aethex_exporter.h/cpp     # Cross-platform export
└── examples/
    └── cross_platform_player.aethex

6.2 Language Features

AeThex-specific keywords:

  • reality - Module definition (replaces "namespace")
  • journey - Function that works across platforms
  • beacon - Signal/event declaration
  • artifact - Class definition
  • notify - Console output
  • reveal - Return statement
  • sync across - Cross-platform data sync
  • when/otherwise - Conditionals
  • traverse - For-each loop

6.3 Export Targets (All Working!)

Target Output File Description
Roblox .lua Luau scripts + .rbxlx project
UEFN .verse Verse code for Fortnite Creative
Unity .cs C# MonoBehaviour scripts
Web .js JavaScript ES6 modules

6.4 Integration Points

  • AeThex Studio: Templates use AeThex Lang
  • AeThex Forge: Marketplace assets include .aethex scripts
  • AeThex Launcher: Build and deploy to all platforms

See: docs/AETHEX_LANG_INTEGRATION.md for full documentation.


Code Search & Replace Guide

Global Text Replacements (Be Careful!)

After testing, use find/replace:

# Find all "Godot" references (case sensitive)
grep -r "Godot" engine/ --include="*.cpp" --include="*.h" | wc -l

# Don't blindly replace - many are in licenses/comments!

Safe to replace:

  • UI strings (after TTR() translation markers)
  • Window titles
  • Default project names
  • Documentation links

DON'T replace:

  • License text
  • Third-party library references
  • Code identifiers (class names, etc.)

Testing Strategy

After Each Phase:

  1. Compile test - Does it build?
  2. Smoke test - Does editor launch?
  3. Feature test - Does functionality work?
  4. Visual test - Does branding look right?
  5. Regression test - Did we break anything?

Test Projects:

  • 2D platformer
  • 3D first-person
  • UI-heavy application
  • Multiplayer game

Rebranding Checklist

  • version.py - Engine name and version
  • Logo files (SVG + PNG)
  • About dialog copyright
  • Splash screen
  • Editor theme colors
  • Default project templates
  • Documentation URLs
  • Community links
  • Export templates branding
  • Installer/package names
  • Binary names (godot → aethex)
  • GitHub repo links
  • Bug report URLs

Must Keep:

Godot MIT license in source files Attribution to original authors Third-party library licenses "Powered by Godot Engine" mention

You Can Add:

Your own copyright for modifications Additional licenses for your code Trademark for "AeThex" name Proprietary extensions (closed-source)


Build Configuration

Custom Build Flags

Add to: engine/SConstruct

# AeThex-specific build options
opts.Add(BoolVariable("aethex_cloud", "Enable AeThex Cloud features", True))
opts.Add(BoolVariable("aethex_ai", "Enable AI Assistant", True))
opts.Add(BoolVariable("aethex_telemetry", "Enable telemetry", False))

Documentation to Update

  1. README.md - Project description
  2. CONTRIBUTING.md - Contribution guidelines
  3. Building docs - Custom build instructions
  4. API docs - AeThex-specific APIs
  5. Tutorials - Getting started guides

Priority Order (Solo Developer)

Week 1: Foundation

  • Change version.py
  • Create basic logo (even temporary)
  • Update about dialog
  • Test build

Week 2-3: Make it Yours

  • Custom theme/colors
  • Update all branding text
  • Polish UI
  • First unique feature (pick easiest)

Month 2-3: First Unique Value

  • AI assistant OR cloud sync (pick one)
  • Enhanced export
  • Better onboarding

Month 4-6: Ecosystem

  • Plugin marketplace
  • Templates
  • Documentation site
  • Community tools

Next Steps

  1. Review this plan - What excites you most?
  2. Choose Phase 1 task - Start with version.py?
  3. Create AeThex logo - Use AI to generate?
  4. Make first edit - Change the engine name!

Ready to start making changes? Tell me which task to tackle first! 🚀