effects geometric - magemonkeystudio/fabled GitHub Wiki

🔺 Geometric Shapes

These effects create sharp, structured particle shapes like stars, squares, diamonds, and more. They work great for runes, summoning visuals, explosions, or magical seals.


⬛ Square (Flat)

square-flat:
  steps: 4
  copies: 1
  domain: 360
  x: "cos(a) > 0 ? 1 : -1"
  y: "0"
  z: "sin(a) > 0 ? 1 : -1"

Simple 4-point square. Box-like shape.


🔷 Diamond Outline

diamond-outline:
  steps: 4
  copies: 1
  domain: 360
  x: "cos(a) * abs(cos(a))"
  y: "0"
  z: "sin(a) * abs(sin(a))"

Tilted square — like a rhombus.


✴️ Star (5 Pointed)

star-5pt:
  steps: 360
  copies: 1
  domain: 360
  x: "cos(a) * abs(sin(5 * a))"
  y: "0"
  z: "sin(a) * abs(sin(5 * a))"

Five-pointed radiant star.


🔯 Star (6 Pointed – Hexagram)

star-6pt:
  steps: 360
  copies: 1
  domain: 360
  x: "cos(a) * abs(sin(6 * a))"
  y: "0"
  z: "sin(a) * abs(sin(6 * a))"

Like the Star of David or seal circle.


🔲 Grid Outline

grid-outline:
  steps: 25
  copies: 4
  domain: 360
  x: "c - 2"
  y: "0"
  z: "a * 0.1 - 1"

Four vertical bars forming a square frame.


➕ Cross

cross-shape:
  steps: 20
  copies: 2
  domain: 360
  x: "cos(c * 90)"
  y: "0"
  z: "a * 0.1 - 1"

Two intersecting bars.


🧿 Rune Circle

rune-circle:
  steps: 20
  copies: 4
  domain: 360
  x: "cos(a + c * 90) * 1.2"
  y: "0"
  z: "sin(a + c * 90) * 1.2"

4-node pattern simulating runes on a ring.


🪞 Mirror Square (Layered)

mirror-square:
  steps: 4
  copies: 3
  domain: 360
  x: "cos(a + c * 45) > 0 ? 1 : -1"
  y: "0.3 * c"
  z: "sin(a + c * 45) > 0 ? 1 : -1"

Three stacked square shapes in Z layers.


🔻 Triangle

triangle:
  steps: 3
  copies: 1
  domain: 360
  x: "cos(a + 120 * c)"
  y: "0"
  z: "sin(a + 120 * c)"

Simple triangle – great for ritual circles.


🕳 Pentagon

pentagon:
  steps: 5
  copies: 1
  domain: 360
  x: "cos(a + 72 * c)"
  y: "0"
  z: "sin(a + 72 * c)"

Five-pointed flat pentagon shape.


🛑 Hexagon

hexagon:
  steps: 6
  copies: 1
  domain: 360
  x: "cos(a + 60 * c)"
  y: "0"
  z: "sin(a + 60 * c)"

Flat 6-pointed ring.


🪐 Orb Seals (Outer Nodes)

orb-seal-nodes:
  steps: 6
  copies: 1
  domain: 360
  x: "cos(a * 60) * 1.2"
  y: "0"
  z: "sin(a * 60) * 1.2"

Spaced out particles around a circle – node-like points.


🌀 Spiral Rune Ring

spiral-rune:
  steps: 36
  copies: 1
  domain: 360
  x: "cos(a) * (1 + 0.3 * sin(3 * a))"
  y: "0"
  z: "sin(a) * (1 + 0.3 * sin(3 * a))"

Has a spiraling edge but stays centered.


🔹 Diamond Inside Square

diamond-insquare:
  steps: 8
  copies: 2
  domain: 360
  x: "cos(a + c * 45)"
  y: "0"
  z: "sin(a + c * 45)"

Two intersecting patterns.


🎇 Hexagram Ring (Double)

hexagram-double:
  steps: 12
  copies: 2
  domain: 360
  x: "cos(a + c * 30)"
  y: "0"
  z: "sin(a + c * 30)"

Creates intersecting hexagrams — magical glyph.


🔰 Arrow Shape

arrow-shape:
  steps: 3
  copies: 1
  domain: 360
  x: "a == 0 ? 0 : (a == 1 ? 1 : -1)"
  y: "0"
  z: "a == 0 ? 1 : 0"

Simple arrow pointing forward.


⚔️ Twin Blades

twin-blades:
  steps: 2
  copies: 2
  domain: 180
  x: "cos(c * 180)"
  y: "0"
  z: "a * 0.1 - 0.5"

Two flat blades — good for summons.


🛑 Border Grid

grid-box-frame:
  steps: 12
  copies: 1
  domain: 360
  x: "(a % 2 == 0) ? 1 : -1"
  y: "0"
  z: "a * 0.2 - 1"

Alternating horizontal/vertical lines.


🕸 Spoked Wheel

spoked-wheel:
  steps: 40
  copies: 5
  domain: 360
  x: "cos(c * 72) * a * 0.05"
  y: "0"
  z: "sin(c * 72) * a * 0.05"

Multiple rays pointing outward from center.


🔗 Back to Effects Index

effects-yml