CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

generate2dmap

Plan and build 2D game maps and scenes - top-down and side-scrolling levels, tilemaps, prop packs, parallax backgrounds and HD-2D battle or story plates - with collision, navigation and reachability checks, environment motion, a playable HTML preview and export to Tiled, Godot 4 or LDtk. Map art (terrain, tiles, props, plates, parallax layers) is image generation by default, through generate2dmedia route_media.py (the API when a key is configured, else the local Codex or Grok CLI); map data (layout, collision, exits, spawns) is written as data. Use for any map, level, room, scene, background, terrain or prop-kit request. Not for characters, creatures, items or FX (generate2dsprite), character animation (video2dsprite), code-drawn tiles or maps (codeart2d, only on request) or calling an image or video API by itself (generate2dmedia).

Quality

95%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

92%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exceptionally well-engineered skill body: dense routing table with executable commands, explicit validation gates and acceptance criteria, and a clean overview-to-references split where every referenced file exists. The only notable inefficiency is the near-verbatim duplication of the frontmatter's art-vs-data routing inside the Art source section.

Suggestions

Trim the Art source section's opening ("Image generation is the default for map art ... is data you write and validate, not art") to just the deltas over the frontmatter description — the art_source values, route precedence, and recording rule — since the description is always in context alongside the body.

The Pipeline table enumerates exhaustive flag lists that "--help" already documents per tool; trimming each row to the common-case invocation (e.g. `extract_prop_pack.py --input <sheet> --output-dir <new>` plus one or two high-value flags) would cut tokens while keeping every route actionable.

DimensionReasoningScore

Conciseness

The body is lean and assumes competence (no explanations of what Tiled, parallax, or collision are; every section is skill-specific contracts and routing), but the Art source opening ("Image generation is the default for map art: terrain and tile sheets, prop kits, HD-2D plates, painted backgrounds and parallax layers. Map data (layout, collision, exits, spawns) is data you write and validate") re-states the frontmatter description's routing nearly verbatim, and the "only on request" codeart2d routing recurs across four sections. This fits anchor 4 ("Efficient; minor instances ... that could be trimmed") better than anchor 5 ("every token earns its place") because of that duplication, and better than anchor 3 since there is no unnecessary explanation of known concepts.

4 / 5

Actionability

Every route is a copy-paste-ready command with concrete flags and placeholders whose conventions are defined ("extract_prop_pack.py --input <sheet> --rows R --cols C --labels a,b --output-dir <new>", "map_nav.py check --bundle <b> --output-dir <new>"), supplemented by exit-code semantics ("errors print `error: ...` and exit 1; usage errors exit 2") and output guarantees. This meets anchor 5 ("Fully executable; copy-paste ready code or commands; specific examples cover the common cases"); anchor 4 would require missing key details, and none are evident.

5 / 5

Workflow Clarity

The pipeline is explicitly sequenced ("Block out navigation, make art and kit, place it, validate the data, preview, then export"), gated by explicit validation ("A playable map is accepted only after `map_bundle.py validate` and `map_nav.py check` pass"), with feedback loops and error recovery ("regenerate on failure", the stage-beside-and-publish-only-after-checks model, "never say 'all checks passed' when any published envelope has a warn") and an Acceptance checklist. This matches anchor 5 ("Clear sequence with explicit validation steps; feedback loops for error recovery; checklists"); anchor 4's "minor validation gaps" do not apply since every artifact type has a named validator.

5 / 5

Progressive Disclosure

The body is a genuine overview: all twelve referenced .md files, references/schemas/map.schema.json, and references/runtime/map-runtime.mjs exist as real one-level-deep bundle files, each signalled at its point of use ("Choose by behaviour ([map-strategies.md]...)") and again in a consolidated References section. Content that belongs in references (contracts, per-mode guides, schemas) is indeed in them, matching anchor 5 ("Clear overview with well-signaled one-level-deep references ... easy navigation"); there is no nesting beyond one level and no reference wall inlined in SKILL.md.

5 / 5

Total

19

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A model frontmatter description: third-person, dense with concrete capabilities, and explicit about both positive and negative trigger conditions with named sibling skills. Its length is earned by information content rather than padding, and every clause aids routing decisions.

DimensionReasoningScore

Specificity

"Plan and build 2D game maps and scenes - top-down and side-scrolling levels, tilemaps, prop packs, parallax backgrounds and HD-2D battle or story plates - with collision, navigation and reachability checks, environment motion, a playable HTML preview and export to Tiled, Godot 4 or LDtk" lists multiple concrete actions with comprehensive coverage and no vague filler. It matches the anchor-5 example ("Extract text and tables from PDF files, fill forms, merge documents, convert pages to images") in breadth and concreteness; nothing fits anchor 4 better since no capability area is left uncovered.

5 / 5

Completeness

Both halves are explicit: what ("Plan and build 2D game maps and scenes ... with collision, navigation and reachability checks ... export to Tiled, Godot 4 or LDtk") and when ("Use for any map, level, room, scene, background, terrain or prop-kit request"), with concrete negative triggers on top ("Not for characters, creatures, items or FX"). This mirrors the anchor-5 exemplar that pairs a concrete what with an explicit when clause; the when clause is present and specific, so the anchor-3/4 caps do not apply.

5 / 5

Trigger Term Quality

The explicit trigger list "Use for any map, level, room, scene, background, terrain or prop-kit request" plus domain vocabulary (tilemaps, parallax, top-down, side-scrolling, Tiled, Godot 4, LDtk, HD-2D) covers the natural terms a user would say for this domain, including engine names as the equivalent of file extensions. Only marginal synonyms (e.g. "tileset", "platformer") are absent, which is closer to comprehensive (anchor 5) than "a few natural terms missing" (anchor 4).

5 / 5

Distinctiveness Conflict Risk

A clear 2D-map/scene niche is stated, and the description actively disambiguates against every adjacent sibling skill by name ("generate2dsprite", "video2dsprite", "codeart2d, only on request", "generate2dmedia"), reducing conflict risk below even the anchor-5 example. It is far more distinguishable than the anchor-4 case ("Works with PDF and Word document files"), which lacks any negative boundary.

5 / 5

Total

20

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 5 suspicious

Warning

referenced_paths_exist

Referenced path issues: 2 deeper-than-1-level

Warning

Total

14

/

16

Passed

Repository

0x0funky/agent-sprite-forge

Path

skills/generate2dmap/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.