Skip to content

AstarWorks/Astera

Repository files navigation

Astera

100% AI-developed Minecraft server with siege warfare PvP, community-driven UGC, and metaverse-style "place" design. Official AstarWorks project.

License Minecraft Paper JDK Status


What is Astera?

Astera is an experiment in running an entire Minecraft server — code, content, infrastructure, operations — through AI delegation. Three pillars:

Pillar What Phase
Siege Warfare PvP Large-scale asymmetric attack/defense (core destruction, structural raid) Phase 3
Community UGC Players submit weapons / skins / maps / sounds via YAML, Discord, or Web Phase 4
Metaverse Place Persistent worlds with plots, social layer, events Phase 5

Phase 1 (now) is the foundation: a loosely-coupled Clean Architecture plugin where Minecraft is just one of several possible delivery edges, plus GitOps k8s manifests. Game content is intentionally minimal until the structural skeleton is solid.

Architecture in one breath

Astera ships as 7 independent Paper plugins (ADR-0022), wired via Core's ServiceRegistry + central IDomainEventBus. Server admins pick the subset they need — the minimum is just Core + Weapons for weapon authoring and test fire.

plugin:core         (mandatory base — shared domain, ServiceRegistry, IDomainEventBus)
  ├─ plugin:weapons      (depend Core)                       — 鯖民最小単位
  ├─ plugin:combat       (depend Core, softdepend Weapons)
  ├─ plugin:match        (depend Core, softdepend Combat)
  ├─ plugin:stats        (depend Core, softdepend Weapons/Combat/Match)
  ├─ plugin:economy      (depend Core, softdepend Stats/Match)
  └─ plugin:persistence  (depend Core, softdepend all — Postgres impl override)

Inside every plugin the package layout is domainapplicationadapter.{api,paper}platform. Konsist tests (tools/architecture-test/) enforce both the per-plugin direction (domain cannot import Bukkit) and the cross-plugin sibling-isolation matrix at build time — currently 18 rules including i18n key parity and throwable-free application APIs. Adding Folia / Velocity support means adding a sibling *.adapter.<vendor>.* package family; the inner layers stay untouched.

Why: see docs/adr/0022-multi-plugin-portable-architecture.md, docs/adr/0001-clean-architecture-with-mc-as-edge.md, and docs/adr/0002-vendor-neutral-mc-adapter-layer.md.

Quick start

5-minute setup with Docker Compose — full instructions in docker/README.md.

# Build all 7 plugin jars (or pick a subset, e.g. :plugin:core :plugin:weapons for 鯖民最小)
./gradlew shadowJar
cp docker/.env.example docker/.env
docker compose -f docker/docker-compose.yml up -d
# Connect Minecraft Java client (26.1.x) to localhost:25565
/astera give @p example-sword

Just want to compile and run unit + architecture tests? ./gradlew check.

Tech stack

  • Kotlin 2.2 / JDK 25 / Paper 26.1.x
  • Gradle 9.5.1 + version catalog (single source of truth for dependencies)
  • Koin (DI, single — no Dagger/Spring stack)
  • kaml (YAML config)
  • PostgreSQL + Exposed (persistence; aligned with AstarManagement)
  • Redis (messaging / cache)
  • ArgoCD + Kustomize (GitOps k8s deployment, based on Re-DIVERSE_infrastructure)
  • Konsist (architecture dependency-direction enforcement)

Documentation

Everything lives in docs/. Start from the index:

Contributing

Three entry points (more drop as later phases ship):

  1. YAML only — drop a file in content/weapons/*.yaml, open a PR. No Kotlin required. (Guide)
  2. Kotlin — for adapters, game modes, infrastructure. (Guide, Phase 1+)
  3. Discord / Web — submit without git or GitHub. Coming in Phase 4.

Lineage

Astera reuses architectural patterns from the closed Y-RyuZU/RyuZUTechnicalMagic experiment — but rebuilds the codebase from scratch with stricter Clean Architecture, vendor-neutral MC abstraction, and Paper 26 / JDK 25 baseline. See docs/adr/0001 for the rationale.

License

MIT. See LICENSE.

Status

Phase 1 in progress. The Gradle multi-module skeleton, architecture enforcement, and documentation scaffold are in place. Game functionality, k8s deployment, and CI/CD land in subsequent Phase 1 steps.

About

100% AI-developed Minecraft server with siege warfare PvP, community-driven UGC, and metaverse-style 'place' design. AstarWorks official project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages