Wiki · main

Emerg-ant

Last edited by · ·

Emerg-ant

Emerg-ant is a competitive multiplayer Coworld built for the ERA @ ALIFE 2026 Emerg-ant hackathon. It is always a 1v1 policy duel: Softmax connects 16 copies of each submitted policy as one red or blue colony. By default each colony begins with a winged queen and seven workers; eight copies wait as dormant brood.

Version note: main contains the current GV57 typed-pheromone rules on the restored pre-NAnts engine. The NAnts-style v0.6 game remains available on the nants-v0.6 branch and the v0.6.0-nants tag.

Ants choose scout, food, danger, or home pheromones and an emission rate from off through urgent. Opposing pheromones cancel or erase one another, so navigation changes as the colonies move. Guns and items are removed; rivals can fight only by touching and biting. Every living ant can smell the map position of available food, but must navigate around the arena to find and touch it. Returning one food to the queen hatches one dormant copy of that colony's policy. Kill the queen and her colony collapses. Eight fruit patches remain live at random field positions, and the first colony to sixteen deliveries wins; at the clock, a unique score leader wins. Every league round has a winner: tied finishes compare food, living ants, colony health, and contact kills, then use replay-seed parity only if the colonies are still perfectly equal.

The design is inspired by NAnts and the ERA @ ALIFE 2026 hackathon.

See docs/EMERG_ANT.md for the complete rules and bot-facing observation labels.

Gameplay

Both colonies rush their nests at the start of a certified replay

The red and blue colonies leave their nests in the hosted certification replay.

Ant colonies form competing public pheromone trails

Public red and blue pheromones expose the routes each colony is building.

Published Coworld

Competition league

  • Public ladder: softmax.com/emerg-ant
  • League ID: league_485b7b0a-5a52-4254-9b2b-1e10b9596941
  • Division: Competition
  • Format: platform team_pair ladder; every matchup clone-fills one submitted policy across 16 red seats and its opponent across 16 blue seats. Eight per colony start active and food deliveries hatch the reserves.
  • Seed competitors: emerg-ant-rival:v1 and emerg-ant-rival-colony:v1

The ladder is enabled and recurring hosted rounds are active. Submitted policies are placed asynchronously and promoted to the entrant's active champion when --auto-champion always is used.

To compete, start with Build an Emerg-ant policy.

Run locally

Install the pinned Nim dependencies, then start the server:

nimby --global sync nimby.lock
nim c -d:release -r src/ctf.nim

The checked-in config.json launches a 1v1 policy match with 16 connected seats per colony—eight active and eight brood—on the hand-tuned arena.

Run the tests from the repository root:

nim c -d:release -r tests/tests.nim

Build the Coworld package

The standalone manifest publishes one variant, emerg-ant, and includes the reference player image used by hosted certification.

uvx --from "coworld[auth]==0.1.34" coworld build \
  --version 0.9.1 \
  --project . \
  --compose compose.yaml \
  --template coworld_manifest.json \
  --output build/coworld-package/coworld_manifest.json

After authenticating with softmax set-token, upload the generated package:

uvx --from "coworld[auth]==0.1.34" coworld upload-coworld \
  build/coworld-package/coworld_manifest.json \
  --timeout-seconds 900 \
  --wait-hosted-smoke \
  --hosted-smoke-timeout-seconds 1800

Architecture

  • src/ctf/sim_types.nim — wire-stable types, constants, and GameVersion.
  • src/ctf/sim.nim — food returns, scoring, pheromone dynamics, and gameplay.
  • src/ctf/global.nim — ant, food, trail, HUD, and spectator rendering.
  • config.json — local 1v1 policy / sixteen-seat-per-colony configuration.
  • coworld_manifest.json — publishable Coworld manifest.
  • tests/test_emerg_ant.nim — competitive-mode and determinism tests.

The engine retains its CTF-derived internals for replay and protocol compatibility, but this repository publishes only the Emerg-ant ruleset.