AI Skill Report Card

Creating Perchance Generators

B+78·May 30, 2026·Source: Extension-page
YAML
--- name: creating-perchance-generators description: Creates interactive random generators using Perchance syntax and logic. Use when building randomization tools, story generators, or interactive content with weighted probabilities. ---

Creating Perchance Generators

15 / 15
mainOutput
  [creature] [action] [location]

creature
  dragon^10
  unicorn^5
  phoenix^3
  basilisk^2

action
  soars through^5
  rests in^3
  guards^4
  hunts in^2

location
  the crystal caves
  ancient forests
  mountain peaks
  forgotten ruins
Recommendation
Add a template section with complete generator boilerplate code ready to copy-paste
14 / 15

Progress:

  • Define main output pattern using [brackets]
  • Create probability lists with item^weight syntax
  • Test generator functionality
  • Add conditional logic if needed
  • Implement user interactions (buttons/inputs)
  • Style with CSS if required

Basic Structure:

  1. Start with mainOutput - this defines what users see
  2. Create lists using simple line breaks
  3. Reference lists with [listName] syntax
  4. Use ^number for weights (higher = more likely)
  5. Add HTML/CSS for styling
Recommendation
Include more edge case examples like nested conditionals, imports, or advanced HTML integration
18 / 20

Example 1: Simple Character Generator Input:

mainOutput
  [name] the [class] from [location]

name
  Astra^5
  Zephyr^3
  Nova^4

class
  Warrior^10
  Mage^7
  Rogue^8

location
  Northern Kingdoms
  Desert Lands
  Mystic Isles

Output: "Nova the Rogue from Desert Lands"

Example 2: Conditional Logic Input:

mainOutput
  [character.selectOne]

character
  {name="Sir Galahad", weapon="holy sword", type="knight"}
  {name="Merlin", weapon="staff of power", type="wizard"}

$name fights with [weapon]

Output: "Sir Galahad fights with holy sword"

Example 3: Interactive Buttons Input:

mainOutput
  <button onclick="gen(this)">Generate Quest</button>
  <br>[quest]

quest
  Rescue the [target] from [danger]
  Find the [artifact] in [location]

target
  princess^5
  merchant^3
  scholar^2

danger
  dragon's lair^4
  bandit camp^6
  cursed tower^3
Recommendation
Expand the pitfalls section with debugging tips and common error messages users encounter
  • Use weights (^number) to control probability - higher numbers = more frequent
  • Keep list names descriptive and lowercase
  • Test frequently while building
  • Use {object notation} for complex data with multiple properties
  • Add HTML styling last, focus on logic first
  • Use conditional syntax ($variable) for dynamic references
  • Don't use spaces in list names (use underscores: magical_items)
  • Don't forget brackets around list references: [listName] not listName
  • Don't mix tabs and spaces - stick to consistent indentation
  • Don't use reserved words like this, output, import
  • Don't over-complicate weights - simple ratios work best
  • Don't forget to test edge cases with conditional logic
0
Grade B+AI Skill Framework
Scorecard
Criteria Breakdown
Quick Start
15/15
Workflow
14/15
Examples
18/20
Completeness
13/20
Format
15/15
Conciseness
13/15