Prism

Prism

Mod pack loader & format for Hill Climb Racing 2. Part of the VEKENDIAN ecosystem.

MyPack/
├── manifest.json
└── package/
        └── textures/
                └── cars/
                        └── jeep/
                                └── epic/
                                        └── jeep_evil_epic/
                                                └── chassis.png
MyPack/
├── manifest.json
├── README.md
└── textures/
        └── cars/
                └── jeep/
                        └── epic/
                                └── jeep_evil_epic/
                                        └── chassis.png
packages/
└── remote_vehicle_paints_2.zip/
        └── textures/
                └── cars/
                        └── jeep/
                                └── epic/
                                        └── jeep_evil_epic/
                                                └── chassis.png
Prism scans the native .packages index, maps relative paths, and appends to target archives dynamically. Unmatched files fallback to <packId>.zip.
elements/
Loose standalone image assets (e.g. event logos). Files sit directly here.
json/
Game logic, vehicle definitions, level data.
  • json/objects/
  • json/levels/
  • json/vehicles/
  • json/shop/
  • json/seasons/
  • json/events/
textures/
All image assets, textures, atlases, sprites.
  • textures/cars/
  • textures/drivers/
  • textures/objects/
  • textures/effects/
  • textures/vehicle-assets/
  • textures/props/
  • textures/home/
  • textures/parallaxes/
  • textures/sky/
ui/
UI definitions, CocosStudio projects.
  • ui/cocosstudio/
  • ui/cocosstudio/backgrounds/
  • ui/cocosstudio/buttons/
  • ui/cocosstudio/Particles/
models/
3D model assets (`.obj`, `.mtl`) and texture atlases. Organized by region/type, e.g. models/arena/<name>/.
music/
Background music tracks. Named subfolders per theme, each containing both .mp3 and .ogg variants.
particles/ vs Particles/
particles/ (lowercase): loose particle definitions and textures.
Particles/ (capitalized): CocosStudio .csb effects per vehicle. Duplicated under ui/cocosstudio/Particles/.
rube/
R.U.B.E. level/object files.
  • rube/levels/
  • rube/objects/
  • rube/vehicles/
shaders/
Custom GLSL shaders — vertex (.vsh) and fragment (.fsh) files.
translations/
Localization files (.po) for supporting different languages.
Standalone root-level files (e.g. fb_notification_popup.csb, promo .png backgrounds) can also appear directly at the package root, outside any category folder.
Engine Routing
Files under json/events/, json/seasons/, or json/shop/ are routed straight to the game's shared global JSON directories. These paths bypass package resolution entirely—they do not belong to any single archive.
Native AR_Archive
Prism.install() and Prism.validate() accept raw .zip paths directly. Temp extraction and teardown are automated. No manual unzipping required by the caller.
State Architecture
Multiple parallel mod packs are supported with explicit user-defined priority sorting. Higher-priority packs override lower-priority assets deterministically. Checksums are computed and cached per pack.
prism — status
ACTIVE Package Loader — Builder — Validator — Checksum Automation
FUTURE Shared JSON Event Merging — Seasons Logic — Standalone App Creator
FUTURE Shop integration — Creator application (GUI)