Download the PHP package ichiloto/editor without Composer
On this page you can find all versions of the php package ichiloto/editor. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ichiloto/editor
More information about ichiloto/editor
Files in ichiloto/editor
Package editor
Short Description A simple TUI editor for the ichiloto game engine.
License MIT
Informations about the package editor
Ichiloto Editor
The full-screen terminal editor for Ichiloto Engine projects.
This package powers ichiloto edit: one screen where a game's maps, NPCs, events, database records and cutscenes are authored, previewed and validated — without hand-writing PHP for any supported field, and without the editor ever rewriting a byte an author didn't change. It edits the same files the engine runs, in place, and plays cinematics and summons through the engine itself before anything is saved.
That frame is the editor rendering itself at 100x24 — the manual's copy of it is enforced by a test, so the picture cannot drift from the program.
What It Does
- Maps — create, paint, resize, duplicate and delete maps; brush, line, rectangle and fill tools; an event layer; a character map for reserved glyphs; map-level background music and weighted random encounters.
- NPCs — first-class map NPCs (
F3): placement, sprites and directional sprites, fixed or bounded wander, visibility conditions, dialogue with conditional variants, inline scripts, and completion writes. - Events — the engine's trigger types placed and configured on the canvas: Dialogue, Transfer Player, Shop, Sleep, Chest, Story Script, and Cinematic.
- Database (
Ctrl+D/F2) — actors, classes, skills, quests, animations, states, troops, skits, event scripts, terms and system settings authored; items, weapons, armors and enemies browsed with the reason they are read-only stated. - Cutscenes (
F4) — cinematic and summon cutscenes as paired-file assets: metadata, cast, a nested command tree with parallel lanes, skip policy and finalizer, summon tracks, keyframes and cues — previewed through the engine's own interpreter and playback session before a byte is written. - Safety — everything is undoable and identity-pinned; dirty state is tracked by content, so undoing back to the saved state is clean again; saves are atomic and pair-aware; references are picked from what the project actually has, never spelled from memory.
- Validation — one
ProjectValidatorbehind the editor andichiloto validate, judging content by what the engine will actually do with it. - Playtest (
Ctrl+T) — the real game, launched from the cursor against a throwaway overlay, so a playtest can never write into the project.
Getting Started
The editor is opened through the Ichiloto Console:
Useful options:
Press ? anywhere for every shortcut the current context offers, and Ctrl+P for the command palette.
Documentation
- The manual — the panel-by-panel reference, kept current by tests: a registered keybinding that is not documented fails the suite.
- Guides — task-oriented walkthroughs, from a first map to a staged cinematic.
- Roadmap — what shipped, in what order, and what was deliberately deferred.
- Website drafts — introduction pages staged for the website repository.
Stack
- PHP
^8.4.1 - Symfony Console
atatusoft-ltd/termutilfor terminal controlichiloto/enginefor previews, hydration and validation
Architecture
src/Editor.phpis the coordinator: the loop, focus model, input dispatch and rendering meet here.src/IOandsrc/UIcarry the input router, key bindings, modal stack, panels and screens.src/Databaseis the schema-driven record engine behind every Database category — oneRecordSchemaper category rather than one hand-wired code path each.src/Fieldmodels map-local content: NPCs, encounters.src/Cutscenesholds the paired-file cutscene models, the token-level source-preserving writer, and the engine-hosted preview.src/Playtestbuilds the throwaway overlay a playtest runs against.src/Validationis the sharedProjectValidatorthe console'svalidatecommand also runs.
Local Development
Editor development currently tracks Engine dev-develop for the shared
cinematic route-validation API. composer.lock pins the published Engine
revision used by local tests and CI.
dev-develop is for unreleased integration. Before publishing an Editor
release, require a compatible released Engine version, refresh the lockfile,
and verify a clean Console installation with Composer's default stable
dependency settings.
Install and verify from the editor repo:
Set ICHILOTO_GAME_SRC=/path/to/game to include a game project in the
production-verification tests. docs/manual.md is covered by
tests/Unit/ManualCoverageTest.php; registered keybindings must be documented.
For layered-map integration tests against an unpublished sibling Engine,
set ICHILOTO_ENGINE_SRC=/path/to/engine. The test bootstrap prepends that
checkout's source directory, including in isolated data-evaluation children;
it does not modify vendor, dependency versions or the lockfile.
Use vendor/bin/phpstan analyse -c tests/phpstan-engine.php --autoload-file=tests/bootstrap.php with the same environment to analyse
against that checkout instead of the installed Engine sources.
Project Links
- Engine repository: github.com/ichiloto/engine
- Console repository: github.com/ichiloto/console
- Website repository: github.com/ichiloto/website-v2
- Editor issues: github.com/ichiloto/editor/issues
All versions of editor with dependencies
ichiloto/engine Version ^0.5
symfony/console Version ^8.0
atatusoft-ltd/termutil Version ^1.1
ext-mbstring Version *