Skip to main content

camel-up-solver

A solver for Camel Up. Input: game state (rolls, tiles, ticket grabs) as the game plays out, then ask /sim for the EV of each available bet (or /sim verify for an exact answer).

camelup> /setup random
camelup> /take g mine
camelup> /tile 5 oasis mine
camelup> /roll y 3
camelup> /sim

Install

You need Python 3.9+. The recommended way is pipx, which installs camelup into its own isolated environment and puts it on your PATH:

pipx install camel-up-solver
camelup

Or with plain pip:

pip install camel-up-solver
camelup

Update later with pipx upgrade camel-up-solver (or pip install -U camel-up-solver).

From source

git clone https://github.com/mehularora8/camel-up
cd camel-up
pip install -e .   # editable: source edits take effect immediately
camelup

Or run it without installing:

PYTHONPATH=src python -m camel_up

Commands

All commands start with /. Type /help inside the REPL for the full list.

command what it does
/setup r=1 b=1 g=2 y=3 p=2 w=16 k=16 seed each camel's starting space
/setup random random rule-ish starting placement (debug)
/roll <color> <1-3> [mine] a die popped this turn; mine = you pulled it (+1 pyramid coin)
/tile <space> oasis|mirage [mine] place a desert tile (mine = you placed it)
/take <color> [mine] someone claimed the top leg-bet ticket (mine = you took it)
/endleg manually end the leg; also fires automatically when the pyramid empties
/show print the current board
/undo undo the last action
/sim [n] [verify] Monte Carlo EV of every leg bet + race odds (default 10,000 rollouts); add verify for EXACT leg-bet EV via full completion enumeration
/help command reference
/quit exit

Colors: r b g y p for the racing camels (red/blue/green/yellow/purple); w (white) and k (black) for the crazy/backward camels.

How it works

  • The leg is small enough to solve exactly (/sim verify enumerates every remaining permutation × outcome — tractable up to ~1M completions, instant once a die or two has been rolled).
  • The full race spans many legs and is Monte Carlo only.
  • Held tickets pay out automatically at /endleg from the final board: 1st = +face value, 2nd = +1, 3rd-5th = -1.

Metadata

Release files for camel-up-solver 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for camel-up-solver 0.1.2
File Size Uploaded Provenance
camel_up_solver-0.1.2.tar.gz 14.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for camel-up-solver 0.1.2
File Interpreter ABI Platform
camel_up_solver-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 31.3 kB

Release files / camel_up_solver-0.1.2.tar.gz

Download URL camel_up_solver-0.1.2.tar.gz
Size 14.6 kB
Tags Source
SHA-256 checksum
How to use checksums
6d8679076782a9d1a58ff9b92614a25d61acd14cc6507eb12943d4ecfa5e310d
BLAKE2b-256 checksum
How to use checksums
714f09fec99fd886b8e30a36ae0c96ffaaab0fc75cb5d49484b266d73661a2cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / camel_up_solver-0.1.2-py3-none-any.whl

Download URL camel_up_solver-0.1.2-py3-none-any.whl
Size 16.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0cd7566c30673475509d6193afb2722c947bd12481f765697021d19685ecd722
BLAKE2b-256 checksum
How to use checksums
1f568977ed1319dc2c5063a590a57d75812557e1d7ed2a50c7dcfa7ce8e2d89f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Security for camel-up-solver 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page