Scene To Level logo

Scene To Level

Organization
SummerEngine
scene-to-level

Turn a reference image or concept art into a playable scene: concept, asset pack, terrain, assembly.

Overview

PublisherSummerEngine
Repositorysummer
Skill namescene-to-level
Stars
91
Forks
8
Bundled files
1
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 1 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by SummerEngine on GitHub. Read the source before you install it.

Installation

Install the Scene To Level AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/SummerEngine/summer/tree/main/library/skills/scene-to-level
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/SummerEngine/summer.git /tmp/summer
mkdir -p .claude/skills
cp -r /tmp/summer/library/skills/scene-to-level .claude/skills/scene-to-level
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Scene To Level in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Scene To Level on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Scene To Level is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

scene-to-level — From a reference image to a playable scene

This skill orchestrates. It does not generate art, slice sheets, or write game code. It routes the user through the skills that do, and assembles their outputs into a Summer Engine scene.

Use it when the user shows you a screenshot or concept image and says "build this." The output is a .tscn you can play, with assets that match the reference's style.

The pipeline (decision tree)

1. Read the reference image (vision).
   └── What kind of scene is it?
        ├─ 2D top-down / isometric / side-scroller
        │   └── route to TERRAIN + 2D ASSETS path
        ├─ 3D third-person / first-person
        │   └── route to 3D ASSETS path (out of scope for this skill —
        │       use `asset-strategy` directly)
        └─ UI-only screen (menu, HUD)
            └── route to UI ASSETS path (create-asset-sheet UI kit only)

2. For each visible element, route to the right sub-pipeline:

   TERRAIN  → tileable-texture
              (auto-tiling Wang / 47-tile sheet; CURRENTLY a placeholder
              that generates a single tile — full auto-tile work is
              not yet built)

   PROPS / DECOR / LIGHTING / NATURE / WATER / BUILDINGS / UI / VFX
       ── Default: create-asset-sheet (one sheet, auto-sliced into a pack;
       │   fast and consistent in style)
       └── For a few hero assets that need full detail: generate them one
           at a time with pixel-art or character-portrait

   CHARACTERS → character-portrait first for the static
                frame, then sprite-sheet for animation

3. Once assets exist, USE-WIDGET-ASSET on any UI / panel / bar /
   toggle pack files to wire them as NinePatchRect / TextureProgressBar
   / etc. (see use-widget-asset)

4. Compose the scene:
   - summer_create_scene(path=..., rootName=..., allow_temporary_scene_mutation=true).
     It has no root-type argument: the new scene's root is copied from the
     currently-open (or main) scene's root, children stripped and root renamed.
     Start from a 2D scene if you want a Node2D root.
   - Add a TileMapLayer node for terrain; assign the generated tileset
     resource (`TileMap` is deprecated on the current Summer technical line)
   - Place props as Sprite2D / TextureRect children, positioned to
     match the reference's composition
   - Wire UI as Control nodes anchored to the viewport
   - Every mutation tool here takes a required `scenePath`

5. Validate:
   - summer_get_diagnostics (no args, project-wide) — or
     summer_get_script_errors(path="res://...gd") for one specific file
   - summer_play (the user takes over from here)

When to use

  • "Make this screenshot playable."
  • "I want a level that looks exactly like this concept art."
  • "Build a Japanese village scene like this reference."
  • "I have a UI mockup — implement it."

When NOT to use

  • The user wants a single asset → pixel-art or a leaf skill directly.
  • The user wants to design a level from scratch (gameplay beats, pacing, encounters) → design-level. This skill is post-design — it implements a known visual target.
  • The user wants a 3D level → use asset-strategy directly; the orchestration for 3D scenes isn't in this skill yet.
  • The user wants a playable prototype with mechanics already → mechanics aren't in scope. This skill produces the visuals; the mechanic skills (e.g. design-mechanic) handle behavior.

Required up-front

Before starting, you need either:

  1. A reference image (URL or local file) the user provides, OR
  2. A vivid text description of the target scene from the user

If neither is offered, stop and ask. Don't guess what a "japanese village scene" looks like — get the reference first.

Reliability map

Pipeline nodeReliabilityWhat can go wrong
Reading the reference (vision)HighModel misidentifies the scene type
One asset at a time (hero assets)High for props / icons / UIStyle drift across items if no style reference
Slice from a sheet (create-asset-sheet)Medium for dense sheetsTouching sprites merge into one slice
Tileable terrain (auto-tile)Low: not builtUse a single tile placeholder or stitch by hand
Sprite-sheet animationMedium (see the sprite-sheet skill)Frame consistency is the hard part
Scene assembly via summer_* toolsHighEngine must be running

Generation uses credits; confirm each batch with the user before you start. Share this map when it matters. Do not promise "ready to play in 10 minutes" if the user needs terrain auto-tiling.

A worked example

User shows you a screenshot of a Japanese village with multiple islands, water between them, buildings, characters, and a bottom palette UI:

  1. Vision pass identifies the scene as 2D isometric with: water terrain (large area), grass terrain (per island), buildings (5+ distinct), characters (2), UI palette + toolbar.
  2. Props pack with create-asset-sheet: 12 props at minimum (torii, sakura, lantern, pagoda, bridge, well, sign, banner, bucket, hay, fence, crate).
  3. Buildings pack: 5 distinct buildings (small house, barn, shop, pagoda, watchtower).
  4. Terrain: today, a single grass tile, a single water tile and edge placeholders. Wang-tile auto-tiling is not built.
  5. UI pack with create-asset-sheet and the theme "isometric voxel game UI: bottom palette, toolbar with Place/Erase/Pan/Save/Reset, asset category tabs, instruction panel."
  6. For each UI slice that is a panel or button, use use-widget-asset to wire it as a NinePatchRect.
  7. Compose: TileMapLayer for terrain; Sprite2D placement matching the reference; Control nodes for the UI.
  8. Validate and hand off.

Expect about 30 minutes for the asset packs (in parallel) and another 15 for scene composition.

What this skill explicitly defers

  • 3D scene assembly. Out of scope; use asset-strategy directly until a 3D variant of this orchestrator exists.
  • Auto-tiling terrain. The pipeline node exists in the decision tree but the leaf skill that implements it is not built.
  • Animation orchestration. Per-character sprite-sheet is invoked manually; no auto-pairing of characters with their animation pipelines yet.
  • Gameplay code. Player movement, interactions, win conditions — those are level-design + gameplay-mechanics skills, not this one.

From a shell

No Summer MCP tools in this session? Run each one as a command; when summer --version is missing or below 4.0, use npx -y summer-engine@latest in place of summer. Fields are flags in kebab-case (--scene-path res://main.tscn) or one --input '<json>', and summer ops describe <op> prints the exact input. The summer-cli skill has the rest.

In this skillCommand
summer_assets_searchsummer assets search
summer_add_nodesummer engine add-node
summer_create_scenesummer engine create-scene
summer_get_diagnosticssummer engine get-diagnostics
summer_get_scene_treesummer engine get-scene-tree
summer_get_script_errorssummer engine get-script-errors
summer_import_from_urlsummer engine import-from-url
summer_inspect_nodesummer engine inspect-node
summer_open_scenesummer engine open-scene
summer_playsummer engine play
summer_save_scenesummer engine save-scene
summer_set_propsummer engine set-prop
summer_set_resource_propertysummer engine set-resource-property

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Scene To Level AI skill do?

Turn a reference image or concept art into a playable scene: concept, asset pack, terrain, assembly.

Why use Scene To Level on TypingMind?

Because you install it once and use it with any model. Scene To Level is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Scene To Level in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/SummerEngine/summer/tree/main/library/skills/scene-to-level. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Scene To Level?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Scene To Level?

As many as you like. As long as a model supports skills, you can use Scene To Level with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Scene To Level AI skill free?

Yes. It is published on GitHub by SummerEngine under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇