Install
$ agentstack add skill-0xheycat-isometric-game-skills-isometric-grid-math ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Isometric Grid Math
Overview
Every isometric bug eventually traces back to the coordinate transform. This skill gives the exact, tested gridscreen formulas for a 2:1 projection so placement and picking are pixel-correct.
When to Use
- Tiles render in the wrong place or overlap.
- Mouse clicks select the wrong tile.
- You are starting a renderer and need the core transform.
Process
- Fix tile width W and height H (2:1 means W = 2*H).
- grid->screen: screenX = (col - row) (W/2); screenY = (col + row) (H/2).
- Add the world origin offset so (0,0) is where you want it on screen.
- screen->grid (for picking): invert the transform using W and H.
- Round screen->grid results to integer tile coords.
- Validate round-trip: grid -> screen -> grid returns the original tile.
- Document the anchor (tile top vs tile center) and stay consistent.
const screenX = (col - row) * (W / 2);
const screenY = (col + row) * (H / 2);
// inverse
const col = ((screenX / (W/2)) + (screenY / (H/2))) / 2;
const row = ((screenY / (H/2)) - (screenX / (W/2))) / 2;
Rationalizations (Stop Lying to Yourself)
| Excuse | Reality | |---|---| | "I will tweak offsets until it looks right" | Magic offsets break on resize/zoom. Derive the transform. | | "Rounding does not matter" | Unrounded screen->grid selects the wrong tile near edges. Round it. |
Red Flags - STOP if you catch yourself:
- Hard-coded pixel offsets instead of a derived transform.
- No screen->grid inverse for picking.
- Round-trip grid->screen->grid does not return the same tile.
Verification
You are NOT done until every box is checked:
- [ ] grid->screen and screen->grid are both implemented.
- [ ] Round-trip conversion is exact for integer tiles.
- [ ] Anchor convention is documented and consistent.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: 0xheycat
- Source: 0xheycat/isometric-game-skills
- License: MIT
- Homepage: https://0xheycat.github.io/isometric-game-skills/demo/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.