Android-антология коротких интерактивных текстовых историй. В текущей версии доступна хоррор-история «Завалинка», где решения игрока меняют дальнейшие события и приводят к разным концовкам.
Text Quest Anthology — приложение для прохождения самостоятельных интерактивных историй на Android. Основной сценарий: открыть библиотеку, выбрать историю, читать текст, принимать решения, продолжить прохождение после перезапуска и дойти до терминальной концовки.
Первая история — «Завалинка»: хоррор о ночлеге в пустом посёлке, где ранние решения влияют на доступные сцены, состояние персонажей и финал. Основной игровой сценарий работает без обязательного подключения к интернету.
Стадия: Public MVP — release candidate.
- версия приложения:
0.4.0(versionCode 10); - актуальный опубликованный GitHub Release:
v0.4.0-rc.2(10 октября 2026 года); - целевая площадка первого публичного релиза: RuStore;
- финальный regression подписанного
v0.4.0-rc.1завершён 3 октября 2026 года; - автоматические проверки, release signing, privacy gate, offline flow, сохранения, реклама и финальный smoke на физическом Android-устройстве для
v0.4.0-rc.1зафиксированы в журнале регрессии; - отдельный полный device regression для
v0.4.0-rc.2в указанном журнале не зафиксирован.
Публикация в RuStore не считается завершённой, пока приложение фактически не отправлено и не опубликовано магазином.
- библиотека локально поставляемых историй;
- полностью реализованная история «Завалинка» на Ink/inkjs;
- ветвящийся сюжет с несколькими терминальными концовками;
- постраничный reader с вариантами выбора;
- изменение размера текста с корректной перепагинацией;
- локальное автосохранение прогресса и продолжение после перезапуска;
- безопасный restart прохождения без потери уже открытых концовок;
- защита от несовместимых и повреждённых сохранений;
- основной игровой цикл полностью работает офлайн;
- Yandex Mobile Ads: sticky banner и interstitial в естественных паузах;
- отказ сети или рекламного SDK не блокирует прохождение.
Самый короткий путь — установить готовый APK из последнего GitHub Release:
- откройте Releases;
- скачайте APK для актуального release candidate;
- разрешите установку приложений из этого источника, если Android запросит это;
- установите APK и запустите Text Quest Anthology;
- выберите «Завалинку» и начните новое прохождение или продолжите сохранённое.
После установки интернет не требуется для библиотеки, чтения, выборов, сохранений, продолжения, концовок и restart. Сеть используется сторонним рекламным SDK.
- Android 7.0 / API 24 или новее;
- установка APK вручную либо через поддерживаемый магазин;
- интернет не обязателен для игрового сценария.
- Node.js
>=22.13.0; рекомендуемая версия из.nvmrc; - npm;
- JDK 17;
- Android SDK Platform 37;
- Android Build Tools 37.0.0;
- Android NDK 27.1.12297006.
Текущая Android-конфигурация использует minSdk 24, targetSdk 36 и compileSdk 37.
Для установки release APK через ADB:
adb install -r .\text-quest-anthology-v0.4.0-rc.2.apkPackage name приложения:
io.github.regstar2.textquestanthology
При обновлении поверх совместимой версии Android сохраняет package identity и локальные данные. Если версия контента истории несовместима со старым сохранением, приложение выполняет предусмотренный безопасный reset этого сохранения.
- Откройте библиотеку.
- Выберите «Завалинку».
- Начните новое прохождение или продолжите сохранённое.
- Читайте текст и выбирайте действия.
- После завершения истории можно начать прохождение заново.
Прогресс сохраняется локально после значимых изменений narrative state. Настройки чтения и сведения об открытых концовках также хранятся на устройстве.
Основные слои проекта:
React Native + TypeScript
│
├── stories/ исходники story packages
├── Ink / inkjs narrative runtime
├── persistence локальные сохранения и migration guards
└── ads
├── Yandex Ads
└── fail-open behavior
Истории отделены от reader/runtime и хранятся как независимые пакеты:
stories/<story-id>/
├── meta.json
├── story.ink
├── scenes/
└── assets/
Подробности находятся в архитектурной документации.
Для основного сценария не нужны регистрация, аккаунт или backend разработчика. Прогресс, открытые концовки и настройки чтения сохраняются локально в приватном хранилище Android; cloud sync отсутствует.
В Android-версии используется Yandex Mobile Ads SDK, который выполняет сетевые запросы и может обрабатывать технические данные, необходимые для показа и измерения рекламы.
Полное описание обработки данных и разрешений: PRIVACY.md. Публичная версия политики: https://regstar2.github.io/privacy/text-quest-anthology/
Клонирование и установка зависимостей:
git clone https://github.com/Regstar2/text-quest-anthology.git
Set-Location text-quest-anthology
npm ciДля debug-запуска через Metro:
npm startВ отдельном терминале:
npm run androidНа Windows с non-ASCII символами в пути к профилю Android SDK рекомендуется держать SDK в ASCII-пути, например C:\Android\Sdk, и указывать его через локальный android/local.properties.
Debug APK:
Set-Location android
.\gradlew.bat assembleDebugРезультат:
android/app/build/outputs/apk/debug/app-debug.apk
Release-сборка требует production signing configuration. Инструкция: docs/testing/release-signing.md.
Полная локальная проверка проекта:
npm run verifyОна включает:
- компиляцию story packages;
- проверки story package contract;
- release metadata checks;
- privacy source contract;
- TypeScript typecheck;
- ESLint;
- Jest.
Дополнительная проверка итогового release privacy contract:
npm run verify:release-privacyФактический журнал regression для текущего RC: docs/testing/v0.4.0-rc-regression.md.
- MVP scope — core scenario, P0 scope и критерий завершения первого релиза.
- Архитектура — структура приложения и story packages.
- Ручной test plan — сценарии release-проверки.
- Regression v0.4.0 RC — фактические результаты финального прогона.
- Release signing — production-подпись Android.
- Privacy and permissions — проверка release manifest и privacy contract.
- RuStore listing — данные карточки магазина и требования к публикации.
- Политика конфиденциальности — обработка локальных данных и работа рекламного SDK.
Ошибки и предложения можно фиксировать через GitHub Issues. Для внешней связи также доступен email разработчика: regstar02@gmail.com.
- поддерживается только Android;
- в текущем публичном MVP доступна только одна история — «Завалинка»;
- основной язык приложения и контента — русский;
- отсутствуют аккаунты, backend и облачные сохранения;
- Android backup данных приложения отключён;
- новые истории поставляются вместе с обновлениями приложения, удалённого каталога нет;
- реклама требует сети, но её отсутствие не блокирует прохождение;
- несовместимое сохранение после изменения версии контента может быть безопасно сброшено;
- iOS, Windows и web-версии не входят в текущий scope;
- текущий
v0.4.0-rc.2является release candidate; публикация в RuStore — отдельный следующий шаг.