Skip to content
Back to skills

Spawn Surfaces

ASecurity

A biome's pools are mixed into one roster, and each cell cuts it by surface. A species' kind (ground, water or flying) decides which surfaces it stands on, and only an amphibious water species leaves the water. Applies whenever adding or editing a spawn pool, a species' habitat, egg groups or biomes, or how spawns and phenomena are placed.

  • 5 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 20, 2026
toolsshellapi

Works with

  • api

Security analysis

A100/100

Scanned October 5, 2026

npx -y skills add lxsmnsyc/overwander --skill spawn-surfaces --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Spawn Surfaces?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Spawn Surfaces
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/lxsmnsyc-spawn-surfaces/badge)](https://www.skillsdirectory.com/skills/lxsmnsyc-spawn-surfaces)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: spawn-surfaces
description: A biome's pools are mixed into one roster, and each cell cuts it by surface. A species' kind (ground, water or flying) decides which surfaces it stands on, and only an amphibious water species leaves the water. Applies whenever adding or editing a spawn pool, a species' habitat, egg groups or biomes, or how spawns and phenomena are placed.
---

# Spawns stand on a surface

Every overworld cell is one of three surfaces (`Chunk.getCellSurface`, `SpawnSurface` in `src/data/ids/biome.ts`):

- **Land** is any cell that is not water. An open sea's islands are land.
- **Water** is a water cell in any biome, the open sea included.
- **Ice** is a water cell in a biome whose water is drawn frozen (`isIceBiome`). Ice is walked like ground.

## One roster, cut by surface

A biome's file under `src/data/biome/` may still register a land, water and ice pool, but they are mixed into one **roster** (`getBiomeRoster`), a species listed twice counting once at its heavier weight. A cell's pool is that roster cut to what can stand on its surface (`getSpawnPool`). Which of the biome's pools a species was written in does not decide where it appears.

## Three kinds

`getSpawnClass` sorts every species, in this order:

- **Flying**: Flying type, the Flying egg group, or Levitate in its ability pool. Stands on ground and water alike.
- **Water**: Water type, or the Water 1, 2 or 3 egg group. Stands only on water, unless its `habitat` is `Amphibious`, which lets it onto ground and ice as well.
- **Ground**: everything else. Stands only on ground and ice.

Two hand-picked lists in `src/data/biome/__create.ts` override the rules: `WATER_ONLY_FLIERS` (Gyarados, Mantine, Mantyke) are water rather than flying, and `DRY_LAND_SPECIES` (Skorupi, Drapion) are ground despite their egg group. Add to them rather than bending the rules.

`fitsSurface` states the placement rule. Caves cut their own pool the same way.

## Phenomena draw from a kind

Rippling water startles the water kind, a flying shadow the flying kind and a dust cloud the ground kind (`getClassPool`), whatever surface the landmark stands on. A grotto takes whatever stands on the ground.

## Amphibious

`habitat: Habitat.Amphibious` only matters for the water kind. Mark a water species amphibious when it is met on land as readily as in the water: frogs, turtles, crabs, otters, seals, the water starters. Fish, jellies, shellfish and whales stay water-only, and so does a water species with no habitat at all.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…