preview/cover.png). Cover the S..SW labels, guess each row's facing from the sprites alone, then uncover — 7/8 or better and you can shop any 8-dir pack by sight.The 3-step recipe
- The 10-second grid check: rows tell you everything. Open the pack's cover or hero image. An honest 8-direction pack shows a labeled walk grid: 8 rows, one per facing, in S SE E NE N NW W SW order top to bottom. Then: (1) count the rows — 8 rows is true 8-direction, 4 rows plus "flip for the rest" is mirrored 4-direction; (2) check the facing order matches the exporter's assumption or diagonals play the wrong facing; (3) compare adjacent diagonals — SE vs E vs NE must actually differ (a scutum, a transverse crest, a bow never mirror cleanly); (4) look for the attack tell — a pilum thrust / gladius cut / arrow-loose that reads at tiny sizes (ours runs at 10fps, hurt at 4fps); (5) demand per-action frame counts — walk 4 / run 6 / attack 4 / idle 2 / hurt 2 per direction is this pack's contract, and any seller that won't state counts is selling a surprise. Honest limit: extended weapon poses clip at the 64px canvas edge on some frames — check the hero close-ups before buying.
- The playable-demo test: play the pack before you pay. Grids can lie; a playable demo can't. The full pack ships
preview/index.html: arrows switch direction (all 8), keys 1–5 switch action (walk/run/attack/idle/hurt), C switches legionary — 120 anims (3 legionaries × 5 actions × 8 dirs) behind eight keys. Test in two minutes: walk through all 8 facings (no marching-in-place means rows map correctly); press attack and confirm the thrust fires on every facing; press hurt and confirm it reads; press C twice and confirm three visibly distinct legionaries (galea + scutum vs transverse crest + cape vs bow + quiver). No demo from a seller? Ask for the free sample slice instead. - The slice-grid recipe: drop any honest pack into your engine. Every sheet here slices on a 64×64 grid — verify it first with our free Sprite Sheet Slicer & Packer (runs 100% in your browser, no upload). Name every clip
<char>_<action>_<dir>, for examplehastatus_walk_se. Godot 4: copy sheets tores://rome/, attachassets/godot_roman.gdto an AnimatedSprite2D, callload_sheets("res://rome")thenplay_action("hastatus","walk","se")(Nearest filtering; honest note: Godot is not installed on our build PC, so the exporter is file-based code verified by selftest plus the HTML5 demo — the in-engine render is your 5-minute check). Unity: Texture Type Sprite (2D and UI), Filter Mode Point, Compression None, slice Multiple on the 64×64 grid per the table, seeassets/unity_roman.cs. RPG Maker MZ/MV: drop sheets inimg/characters/, event note<ROMAN: hastatus walk>, seeassets/rpgmaker_roman.js.
| Sheet | Cols (frames) | Rows (dirs) | Cell | Sheet px | Start fps / loop |
|---|---|---|---|---|---|
walk_8dir | 4 | 8 (S,SE,E,NE,N,NW,W,SW) | 64×64 | 256×512 | 8 / loop |
run_8dir | 6 | 8 | 64×64 | 384×512 | 8 / loop |
attack_8dir | 4 | 8 | 64×64 | 256×512 | 10 / once |
idle_8dir | 2 | 8 | 64×64 | 128×512 | 4 / loop |
hurt_8dir | 2 | 8 | 64×64 | 128×512 | 4 / loop |
hastatus_walk_8dir.png, 256×512, vendored byte-identical from the pack's sample/sheets/). Drop it into the Sprite Sheet Slicer with 4 cols × 8 rows and each cell should hold one clean pose — that is the whole grid check, on real files.Free helper: Roman clip-name calculator
Pick a legionary, action and facing. The helper shows the clip name, the sheet size, and a copy-paste Godot 4 snippet. Everything runs locally — nothing leaves your device.
Related free tools
- Sprite Sheet Slicer & Packer — verify any Roman sheet's grid before import (try the hastatus walk sheet above: 4 cols × 8 rows).
- Make 8-direction character animation read clearly — the companion recipe (same 64×64 contract, Vol 1 worked example).
- Import a sprite sheet into Godot 4 — the 5-minute recipe (grid → Nearest filter → SpriteFrames).
- Palette Extractor — pull exact crimson/iron/leather colors from a legionary for matching tiles.
- Tileset Splitter & Converter — split Rome-themed tilesets and export TMX/JSON/CSV manifests.
- All free game-dev tools