emotional-canvas-moodboard — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited emotional-canvas-moodboard (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Translate a game's emotional direction into a concrete visual board.
Use this skill after game-design-emotional-canvas or whenever the user already has enough emotional direction to describe the intended feeling, adjacent feelings, visual tone, no-go elements, and reference-seeking targets.
Produce these artifacts unless the user asks for a smaller output:
manifest.json describing the curated boardmoodboard.htmlmoodboard.jpgThis skill is for reference gathering and board assembly.
Do not spend the whole turn writing abstract creative prose. Move quickly from emotional interpretation to query generation, candidate gathering, hard rejection, and board rendering.
A moodboard is curation, not accumulation. If the result looks like a pile of search results, the skill has failed.
If the user already supplied an emotional canvas, normalize it into this shape:
If the user only supplied a concept, create a compact emotional canvas first using the structure from game-design-emotional-canvas.
Keep it brief. The goal is to drive search quality, not to create a long essay.
Create 6-12 focused search lanes. Each lane should represent one useful visual dimension, for example:
For each lane, write 2-5 search phrases.
Good query pattern:
[subject/style] + [mood adjective] + [visual constraint]Examples:
arcade platformer mockup tense neon minimal backgroundfalling concrete blocks overhead cinematic top lightretro industrial geometry oppressive playful contrastcoins glowing on stacked blocks game artUse web search and normal web access to find suitable visual references.
Prefer strong anchor sources over generic search sludge:
Avoid using random article headers, generic stock results, empty category pages, or filler photography unless they are genuinely the best aesthetic match.
Save source URLs in the manifest even when the file is downloaded locally.
Do not filter the collection by copyright status in this skill. The purpose here is fast local reference gathering. Copyright review can happen later in a separate workflow.
Build a candidate pool first:
Quality bar for candidates:
Before rendering, judge each candidate on:
Then cut hard.
Final-board rule:
Write down at least:
Use a folder like:
output/moodboards/<slug>/
Recommended layout:
downloads/ for local image filesmanifest.json for curated-board metadatamoodboard.htmlmoodboard.jpgcandidate_manifest.jsoncuration-notes.mdThe manifest should contain:
{
"title": "...",
"concept": "...",
"target_feeling": "...",
"descriptors": ["..."],
"lanes": [
{"name": "...", "queries": ["..."]}
],
"images": [
{
"file": "downloads/01.jpg",
"source_url": "https://...",
"page_url": "https://...",
"caption": "...",
"lane": "..."
}
]
}Use scripts/download_urls.py when you already have a curated list of image URLs and want local files quickly.
Then use scripts/render_moodboard.py to turn the manifest into:
Prefer 16:9 output unless the user asks for another aspect.
Return:
If helpful, split the result into two smaller companion boards instead of one mixed board:
Download URLs into a board folder:
python scripts/download_urls.py --input <url-list.json> --output-dir <board-folder>/downloads --prefix refRender the board:
python scripts/render_moodboard.py --manifest <path-to-manifest.json> --title "Board Title"Optional:
python scripts/render_moodboard.py --manifest <path> --width 1920 --height 1080 --columns 4For the concept:
For a long time I had this idea for a mashup of Tetris and a platformer game. Instead of falling blocks, the player would control a character trying to dodge the falling blocks and survive as long as possible while blocks fall faster and faster. The player can collect points by grabbing coins that spawn randomly on blocks that have already landed. Just for fun I would add a bunch of arcade-inspired powerups. I am working alone and want to make a simple playable prototype of this game in Unity.
A good first emotional read is:
Use that sample as a pattern, not a limit.
Read these only when useful:
references/search-patterns.md for query design and image-lane ideasreferences/sample-emotional-canvas.md for a worked example based on the sample game conceptA good moodboard is not a pile of cool pictures. It is a visual argument for the feeling the prototype should deliver. ment for the feeling the prototype should deliver. ling the prototype should deliver. .md` for a worked example based on the sample game concept
A good moodboard is not a pile of cool pictures. It is a visual argument for the feeling the prototype should deliver.
<!-- license-footer --> Part of the Game Design Skills Bundle by Stanislav Stankovic. Licensed under PolyForm Noncommercial 1.0.0 — free for personal, academic and nonprofit use. Commercial use requires a licence, sold as skill packs. See <https://github.com/Stanestane/game-design-skills-bundle> for terms.
Required Notice: Copyright Stanislav Stankovic (https://www.stane-island.net/)
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.