Pterodactyl, Pelican, AMP, and Crafty put a browser in front of game processes. Billing, marketplace listings, and multi-host catalogs stay outside that job. Wings needs Docker on a real VM or bare metal. Crafty will run your Minecraft jars until the second title is Rust-class SteamCMD pain. The licence trap is AMP: Standard, Professional, and Advanced are personal; commercial reselling wants Enterprise.
This lab pinned live release tags and star counts, then brought three stacks onto one Ubuntu 24.04 Proxmox guest (4 GiB RAM): Crafty Controller v4.11.0 in Docker in about 70 seconds to a login page on :8443, Pelican v1.0.0-rc.2 (ghcr.io/pelican/panel) in about 322 seconds for pull plus first up, and Pterodactyl panel v1.15.2 with MariaDB and Redis on :8082. AMP was probed with GetAMP 4.2.0 and the cubecoders/ampbase image, which refuses to start without ampinstmgr.
| Panel | Licence / sticker | Cap (editions sheet) | Version pinned here | Stars (writing day) | Resell the panel? |
|---|---|---|---|---|---|
| Pterodactyl 1.x | MIT, free | Unlimited (your hardware) | v1.15.2 | 9,470 | Yes (you host it) |
| Pterodactyl 2 | MIT, free | Beta | v2.0.0-beta.2 | (same repo) | Label only; not production |
| Pelican | Free / open | Unlimited (your hardware) | v1.0.0-rc.2 | 2,423 | Yes, still an RC |
| AMP Standard | ~$10 one-time | 5 instances, 3 users | GetAMP 4.2.0 / ampbase | n/a | No |
| AMP Professional | ~$30 | 15 instances | (editions sheet) | n/a | No |
| AMP Advanced | ~$40 | 50 instances | (editions sheet) | n/a | No |
| AMP Enterprise | Variable subscription | Sold by instance count | (commercial) | n/a | Yes |
| Crafty 4 | GPLv3, free | Practical Minecraft focus | v4.11.0 | 256 (GitLab) | Yes (you host it) |
CubeCoders' Terms of Sale say AMP Standard, Professional, and Advanced may not be used for commercial server reselling. Enterprise is the commercial path. Monetising a game you run inside AMP is allowed; selling AMP-preinstalled servers to customers is the line.
What each daemon looks like
Pterodactyl and Pelican split panel (Laravel UI + API) from Wings (node agent). Wings expects Docker on a real VM or bare metal. Nested LXC with Docker is a support ticket waiting to happen.
AMP is one installer (getamp.sh) that drops ampinstmgr and instances. The Docker base image prints that it must be started by ampinstmgr, which matches CubeCoders' model.
Crafty is a Python web app (official image registry.gitlab.com/crafty-controller/crafty-4). This guest's compose was:
services:
crafty:
image: registry.gitlab.com/crafty-controller/crafty-4:latest
container_name: crafty_4
restart: unless-stopped
ports:
- "8443:8443"
- "8123:8123"
- "19132:19132/udp"
volumes:
- ./crafty_data:/crafty/app/config
- ./servers:/crafty/servers
- ./backups:/crafty/backups
- ./logs:/crafty/logsBoot banner: Welcome to Crafty Controller - v.4.11.0. The image ships SteamCMD dependencies; Minecraft and (since 4.9) Hytale are the sweet spot. SteamCMD for arbitrary titles is still experimental since 4.10.0.

Install notes from this guest
Crafty
mkdir -p ~/panels/crafty && cd ~/panels/crafty
# compose file as above
docker compose pull && docker compose up -d
# UI: https://SERVER:8443Pelican (image pin v1.0.0-rc.2)
mkdir -p ~/panels/pelican && cd ~/panels/pelican
# compose service image: ghcr.io/pelican/panel:v1.0.0-rc.2
# published on host port 8081 in this lab
docker compose pull && docker compose up -d
docker inspect pelican-panel-1 \
--format '{{index .Config.Labels "org.opencontainers.image.version"}}'
# v1.0.0-rc.2Pterodactyl panel (image pin v1.15.2, MariaDB + Redis beside it)
mkdir -p ~/panels/ptero && cd ~/panels/ptero
# panel image: ghcr.io/pterodactyl/panel:v1.15.2
docker compose pull && docker compose up -d
docker inspect ptero-panel-1 --format '{{.Config.Image}}'
# ghcr.io/pterodactyl/panel:v1.15.2A full production Pterodactyl still needs Wings on each game node, allocations, and SSL. The panel + Wings install post walks that path. This comparison only needed a version-visible panel container.
AMP
bash <(curl -fsSL https://getamp.sh) display | head
# GETAMP_VERSION="4.2.0"
docker pull cubecoders/ampbase:latest
docker run --rm cubecoders/ampbase:latest
# must be started by ampinstmgr


Production vs beta vs RC
Keep production fleets on Pterodactyl 1.15.2 until 2.0 is a stable tag. v2.0.0-beta.2 is for people who want to break eggs on purpose. Pelican's commit velocity is why people look; v1.0.0-rc.2 is still an RC, so a new host's first egg import stays a test before any cutover.
The architecture split is the decision, not the logo. Pterodactyl and Pelican are a Laravel panel plus a Go Wings daemon: every game server is its own Docker container from an egg. Crafty is one Python app that starts Minecraft (and now Hytale) as subprocesses it owns, often all inside a single Crafty container. AMP is closed-source CubeCoders software with a large built-in game list, Windows or Linux, Docker optional, and a licence that scales with instances past the free tier. Starting fresh with multi-game ambitions, Pelican is where new energy is going while eggs stay compatible. Already deep in a stable Pterodactyl egg set with nothing broken, staying put is still rational until you need a feature only the fork ships.
Crafty stays the right answer for a handful of Minecraft (and now Hytale) instances when you do not want Wings. The day the catalog includes Rust, Valheim, and CS2 side by side, you graduate to Pterodactyl/Pelican eggs or AMP's instance list.
What none of them are
None of the four is Stripe Connect, a marketplace, or a multi-host customer catalog. AMP Enterprise gets you further on customer-facing instances. A host who already runs Pterodactyl can connect it to NodeRings (quick start) so buyers use the NodeRings game UI and never see a Wings URL. That split is why hosts hesitate to hand over an Application API key.

| Skip this | Better read |
|---|---|
| AMP Standard to resell game servers | Enterprise licence, or self-host Pterodactyl/Pelican |
| Pelican RC as the only panel for paying clients | Homelab first; keep a 1.15.2 fallback |
| Crafty for a twelve-game SteamCMD catalog | Eggs / AMP instances |
| Wings inside privileged LXC "because Docker works" | KVM or bare metal for the node |
| Expecting any panel to bill customers | Separate billing or a marketplace |
FAQ
Is Pelican a drop-in for Pterodactyl?
Close cousin with migration work. Eggs and API habits transfer with effort. Pin an RC, import one egg, write down what breaks, then decide.
Does AMP 3 change the resale rule?
Licencing posts for AMP 3 talk about feature gating across Standard/Pro/Advanced. Commercial reselling still points at Enterprise in CubeCoders' terms. Re-read the terms the week you buy.
Can I run Wings without Docker?
Not in the supported path. Docker is the isolation model Wings expects.
Where do stars sit relative to Supercraft's October table?
Supercraft on 4 Oct 2026 listed Pterodactyl 9,286, Pelican 2,339, Crafty 253. This writing day: GitHub Pterodactyl 9,470, Pelican 2,423, Crafty GitLab 256. Same order, slightly higher counts.
