icarus pet recovery
Icarus Pet Recovery
A CLI tool for recovering pets lost in boss raids or other catastrophic events. Scans prospect save files for pet data and restores them to the player's mount roster.
Project Details
| Field | Value |
|---|---|
| GitLab Project | icarus/pet-recovery |
| GitLab Project ID | 10 |
| Repository | https://git.eurekaendeavors.com/icarus/pet-recovery |
| Visibility | private |
| License | GPL v3 |
| Package name | icarus-pet-recovery |
| Depends on | icarus/core |
| Status | ✅ Complete |
| Tests | 13 passing |
What It Does
When pets die in Icarus (e.g., boss raid wipes), they're removed from Mounts.json but
their data still exists in prospect save files. This tool finds and recovers them.
Commands:
- scan — Scan a prospect save file, list all pets found with names and types
- recover — Extract specified pets and add them back to Mounts.json
Origin Story
Built on 2026-03-15 when Ashley lost 8 pets in an Elysium boss raid. All 8 were recovered: Thor, Anansi, Agravain, Guildenstern, Rosencrantz, Fizgig, Goose, Mimir.
Architecture
Uses icarus-core for UE4 binary parsing — no code duplication. Handles duplicate pet
names via Counter-based diffing (pets can share names).
icarus/pet-recovery (submodule at icarus-pet-recovery/)
├── icarus_pet_recovery/
│ ├── __init__.py
│ ├── scanner.py # Prospect save scanning
│ └── recovery.py # Pet extraction and restoration
├── tests/
└── pyproject.toml
Monetization
Pet recovery is designated as a premium feature in the monetization roadmap. The CLI tool exists; the web integration (self-service upload flow on the portal) would be the premium offering. See issue #138.