Install any skill in seconds. Free to start, no credit card required.
Get Started Free →randallliuxin/platform-strip
Generate non-pixel-art, horizontally repeatable platform strips from real image sources as fixed Texture2D cells or AtlasTexture regions.
Passed 16 of 21 test cases with the skill, and 3 of 21 without it.
and 14 more in the full report
16 fixed3 passed either way5 still failing1 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 15 test cases the skill fixed. Same model, same prompt, with and without the skill.
In the returned generic result JSON object for a single-kind platform strip asset, what string value must be assigned to the layout field in each sources entry?
| Checked | Without skill | With skill |
|---|---|---|
| The layout field in sources is set to single. | Missed | Passed |
The instructions your model reads when the skill loads.
Use for collision-aligned floors, bridges, rails, pipes, terrain ledges, and long horizontal hazards. Do not use for characters, UI, compact props, full backgrounds, or pixel art.
Accept the shared Asset Skill request schema at .godotmaker/asset-runtime/schema/asset-skill-request.schema.json with asset_type: "platform-strip".
Use the shared result schema and checker. This skill can be invoked directly or by an orchestrator with the same contract. Do not read or write ASSETS.md, tags, stage state, or generated manifests.
spec must contain exactly:
{
"kind": "single" | "atlas",
"grid": {"columns": 3, "rows": 1, "cell_width": 160, "cell_height": 80},
"segments": [
{"name": "left_cap", "role": "left_cap", "slot": [0, 0]},
{"name": "repeat_middle", "role": "repeat_middle", "slot": [1, 0]},
{"name": "right_cap", "role": "right_cap", "slot": [2, 0]}
]
}
The fixed grid dimensions are positive integers. This v1 family is one closed horizontal row: rows must be 1, columns must equal segments.length, and entries must be declared in left-to-right slot order as [0, 0] through [columns - 1, 0]. The first entry is the only left_cap, the last is the only right_cap, and every interior entry is repeat_middle. Empty slots, reordered entries, and a request without a repeatable middle segment are unsupported.
references is optional. With references, validate every path is readable, preserve each declared role, and pass the actual images to the selected provider. Do not replace image attachments with prompt text. If the pinned provider cannot accept the supplied images, return STOP. Without references, generate from the written brief.
Honor the requested provider exactly. native, codex, gemini, openai, and wan never fall back to another provider. For Codex, call the image provider with referenced_image_paths containing each readable local reference image. If that attachment cannot be made, STOP. Record the provider, model, prompt, reference paths and roles, provider payload or trace, raw source path, and processing reports under .godotmaker/asset-generation/ using the provider's controlled report or claim tool; never hand-write provenance JSON.
Reject pixel-art requests. Request non-pixel-art painted, illustrated, or rendered source art. Do not use nearest-neighbor scaling.
Create a layout-only guide with tools/asset_layout_guide.py using the declared grid. The guide is not art and is not a runtime output.
Request one real provider source sheet with one horizontal slot per declared segment. Require a solid #FF00FF background, a shared walkable top height, no labels, UI, actors, text, props, or grid lines. Preserve the provider's returned pixels as the raw source even when its raster dimensions differ from the target grid.
Store the unmodified provider image at .godotmaker/asset-generation/sources/<asset_id>_source.png. For codex, follow skills/core/gm-asset/references/providers/codex.md: write the planned generated-path record and the runtime generated-path record, then run python .godotmaker/asset-runtime/tools/codex_image_claim.py --plan <plan.json> --report <generated-paths.json> --project-root . --out-report .godotmaker/asset-generation/reports/<asset_id>_source.json. Use that claim result as the provenance record. For API-backed providers, use tools/asset_source_generate.py --spec with its report_path. The report must be generated by those controlled tools, not hand-written. Do not create, draw, or alter visual source art with temporary scripts, Pillow, System.Drawing, ImageMagick, SVG, canvas, Godot drawing, or placeholder generation.
Split the raw provider sheet before any crop, resize, or padding. Never normalize the whole sheet as one image: doing so changes the declared grid coordinates. Use the owned deterministic tool with the declared source grid and names in declared slot order. It deterministically covers every source pixel even if the provider raster dimensions are not evenly divisible by the requested grid:
python tools/asset_sheet_process.py --source <raw-source> --out-dir <sliced-dir> --grid <columns>x1 --names <segment-names-in-slot-order> --background magenta --snap-mode grid --preserve-cell-bounds --report .godotmaker/asset-generation/reports/<asset_id>_sheet.json
test cases passed, vs 3 / 21 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.