ludic/docs/language/tiled
Orkuncakilkaya 764a0296ce
All checks were successful
bootstrap / cfree-fixpoint (push) Successful in 22s
ci / build-and-test (push) Successful in 2m4s
commit-lint / conventional-commits (push) Successful in 4s
docs / build-and-deploy (push) Successful in 28s
feat(stdlib): Tiled P6 — infinite/chunked maps, .world stitching, base64+zstd (#74)
- Infinite/chunked maps: <chunk x y width height> (TMX) and JSON chunks[]
  (default 16x16) decode and flatten into the dense layer array, sized to the
  chunk union; the map's 0/0 header dimensions fall back to the flattened bounds.
- .world stitching: Tiled.world / Tiled.world_count / Tiled.world_map read a
  .world (JSON, reusing Json.parse) and list its member maps at their offsets.
- base64+zstd: a self-contained pure-Ludic Zstandard decompressor
  (runtime/native/zstd.ludic, RFC 8878) — the design's "largest single item,
  explicitly last". Frame header + raw/RLE/compressed blocks; raw/RLE and
  direct-weight Huffman literals; the full FSE sequence path (predefined,
  transcribed exactly from zstd's hardcoded tables since they're not rebuildable
  from the default distributions; RLE; FSE-described) with repeat offsets and
  execution. Decodes the low-entropy GID streams a tilemap produces; a high-
  entropy FSE-compressed-Huffman-weights block fails cleanly with -1 rather than
  emitting wrong bytes (documented scope).

Proven by library/tiled_p6.ludic (12 assertions): TMX + TMJ chunk flattening,
.world offsets, and a real zstd-compressed tile layer decoding byte-exactly to
its CSV baseline. x test: 97 passed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-01 16:07:10 +03:00
..
_section.md feat(stdlib): Tiled P0.5 — TMX/TSX reader over the XML reader (#68) 2026-09-01 14:15:41 +03:00
tiled-animated.md feat(engine): Tiled P3 — animated tiles (deterministic frame clock) + tile objects (#71) 2026-09-01 14:58:21 +03:00
tiled-cell_x.md feat(engine): Tiled P5 — image/group layers, iso/hex/staggered coords, Wang (#73) 2026-09-01 15:14:36 +03:00
tiled-cell_y.md feat(engine): Tiled P5 — image/group layers, iso/hex/staggered coords, Wang (#73) 2026-09-01 15:14:36 +03:00
tiled-collide.md feat(stdlib): Tiled P2 — collision normalisation into the Solids feed (#70) 2026-09-01 14:50:27 +03:00
tiled-collision_kind.md feat(stdlib): Tiled P2 — collision normalisation into the Solids feed (#70) 2026-09-01 14:50:27 +03:00
tiled-draw.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-draw_anim.md feat(engine): Tiled P3 — animated tiles (deterministic frame clock) + tile objects (#71) 2026-09-01 14:58:21 +03:00
tiled-frame_gid.md feat(engine): Tiled P3 — animated tiles (deterministic frame clock) + tile objects (#71) 2026-09-01 14:58:21 +03:00
tiled-gid.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-height.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-layer_count.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-layer_kind.md feat(engine): Tiled P5 — image/group layers, iso/hex/staggered coords, Wang (#73) 2026-09-01 15:14:36 +03:00
tiled-layer_name.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-layer_offsetx.md feat(engine): Tiled P5 — image/group layers, iso/hex/staggered coords, Wang (#73) 2026-09-01 15:14:36 +03:00
tiled-layer_offsety.md feat(engine): Tiled P5 — image/group layers, iso/hex/staggered coords, Wang (#73) 2026-09-01 15:14:36 +03:00
tiled-layer_opacity.md feat(engine): Tiled P5 — image/group layers, iso/hex/staggered coords, Wang (#73) 2026-09-01 15:14:36 +03:00
tiled-layer_tint.md feat(engine): Tiled P5 — image/group layers, iso/hex/staggered coords, Wang (#73) 2026-09-01 15:14:36 +03:00
tiled-load.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-load_types.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-object.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-object_count.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-object_shape.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-project.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-prop.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-prop_int.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-prop_type.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-read.md feat(stdlib): Tiled P0.5 — TMX/TSX reader over the XML reader (#68) 2026-09-01 14:15:41 +03:00
tiled-read_tsx.md feat(stdlib): Tiled P0.5 — TMX/TSX reader over the XML reader (#68) 2026-09-01 14:15:41 +03:00
tiled-resolve.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-spawn.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-spawn_layer.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-template.md feat(stdlib): Tiled P4 — objects, custom props/types, templates, opt-in spawn (#72) 2026-09-01 15:08:06 +03:00
tiled-tile_prop.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-tile_shapes.md feat(stdlib): Tiled P2 — collision normalisation into the Solids feed (#70) 2026-09-01 14:50:27 +03:00
tiled-tree.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-width.md feat(engine): Tiled P1 — rt_tmap model + GID resolver + render + projection (#69) 2026-09-01 14:43:29 +03:00
tiled-world.md feat(stdlib): Tiled P6 — infinite/chunked maps, .world stitching, base64+zstd (#74) 2026-09-01 16:07:10 +03:00
tiled-world_count.md feat(stdlib): Tiled P6 — infinite/chunked maps, .world stitching, base64+zstd (#74) 2026-09-01 16:07:10 +03:00
tiled-world_map.md feat(stdlib): Tiled P6 — infinite/chunked maps, .world stitching, base64+zstd (#74) 2026-09-01 16:07:10 +03:00