Skip to main content

kirby-world

Places for the Kirby HERO System platform: a World of Scenes, and the geometry inside them — surfaces, walls, furnishings, hazards, constructs, cover, falling, line of sight and per-mode movement reachability.

A place is not a fight. A house with five people doing chores, and what is reachable from the kitchen, needs nothing but this package:

from kirby_world import AmbientConditions, Position, Scene, SceneBounds
from kirby_world.movement_legality import movement_reach

house = Scene(id="house", name="Safehouse", bounds=SceneBounds(0, 0, 0, 20, 20, 4),
              surfaces=[], walls=[], hazards=[], ambient=AmbientConditions())
house = house.place_combatant("ana", Position(1.0, 0.0, 0.0))
movement_reach("flight", Position(0, 0, 1), Position(5, 0, 1), 10.0, house).reachable

Where it sits

kirby-terrain   what a thing is made of     no deps
kirby-world     places                      -> kirby-terrain
kirby-combat    the fight                   -> kirby-world, kirby-cost, kirby-dice

Questions about the person moving rather than the place — is he Stunned, what has this building already absorbed — belong to the fight. They arrive here as plain values (mover_can_move, a damage ledger), never as the fight itself. tests/test_a_place_without_a_fight.py enforces that by making the fight engine unimportable and building a house anyway.

Split out of kirby-combat at 0.20.0, where kirby_combat.scene remains as a re-export of this package.

License

PolyForm Noncommercial 1.0.0. Not affiliated with or endorsed by Hero Games.

Metadata

Release files for kirby-world 0.1.0

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

Source distribution (sdist)

Source distribution for kirby-world 0.1.0
File Size Uploaded
kirby_world-0.1.0.tar.gz 70.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kirby-world 0.1.0
File Interpreter ABI Platform
kirby_world-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 118.4 kB

Release files / kirby_world-0.1.0.tar.gz

Download URL kirby_world-0.1.0.tar.gz
Size 70.7 kB
Tags Source
SHA-256 checksum
How to use checksums
8250e39a0f2e8aebc4c8d80cf810d963cf1d20790f3df9d5f7d8ed7343b5c4d0
BLAKE2b-256 checksum
How to use checksums
e263276ae8f2e6578f6a286ee62a451e39638fc6e43643f2e7e7d262c495fa42
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / kirby_world-0.1.0-py3-none-any.whl

Download URL kirby_world-0.1.0-py3-none-any.whl
Size 47.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bcb26c6ba51c2286482eb05723e48cdb2703ac625c8aa7f5d44719e5e421184b
BLAKE2b-256 checksum
How to use checksums
43abc342cba12176c811c3e45e9576b424d4c60f39ca404af9b4f9752acf70bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

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