Skip to content
ikrevedko0-hashPublic

About

Ye!Studio — мастерская паков для «Своей игры» (SIGame, .siq): табло, медиа-редакторы, поиск картинок и видео, вставка вопросов из Claude/ChatGPT, проверка пака. Windows.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Ye!Studio

Мастерская паков для «Своей игры» (SIGame, формат .siq). Табло и редактор вопросов, медиа-редакторы, поиск картинок и видео прямо в приложении, вставка вопросов из Claude и ChatGPT, проверка пака перед публикацией. Windows 10/11.

Табло и редактор вопроса

Скачать

⬇ Скачать (релизы) → файл Ye-Studio-Setup-….exe → запустить → «Далее». Терминал, Node.js и прочее не нужны. ffmpeg и yt-dlp приложение предложит поставить само при первом запуске.

Установщик не подписан сертификатом, поэтому Windows может показать «Система Windows защитила ваш компьютер». Нажмите «Подробнее» → «Выполнить в любом случае». Исходный код установщика — в этом репозитории.

Что умеет

Вопросы из Claude / ChatGPT — с галочками и картинками на лету

Попросите ИИ придумать тему — он выдаст блок, который вставляется в пак одной кнопкой «Вставить из AI». Каждый вопрос можно отключить галочкой, а картинки к вопросам приложение ищет само, пока вы смотрите список: щелчок по нужной — и она поедет в вопрос.

Вставка вопросов из ИИ

Разметка вопросов в браузере

Кнопка «ИИ-помощник Claude/ChatGPT» (вкладка «Настройки») настраивает Claude или ChatGPT: ИИ присылает пачку вопросов страницей разметки. Берёте/отклоняете клавишами 1 / 0, правите цену и текст, жмёте «Для Мастерской» — и вставляете в пак.

Страница разметки вопросов

Автопроверка пака перед публикацией

Пустые вопросы и вопросы без ответа, ссылки на файлы, которых нет в паке, повторяющиеся ответы, объём (100 МБ для SIBrowser/FirePacks), доля спецвопросов по порогам FirePacks. Щелчок по строке — к вопросу. «Найти повторы» сверяет вопросы со всеми паками FirePacks и показывает, где такое уже было. Оттуда же — «Открыть в SIGame».

Автопроверка пака

Прогон в SIGame

«Автопроверка пака» → «Прогнать в SIGame…» проигрывает каждый вопрос настоящим движком SIGame (тем же кодом, что в самой игре, со спецвопросами и финалом) и показывает его настоящим экраном игрока SIOnline — таким, как у друзей в браузере и на телефоне: «Телефон» и «Компьютер». По каждому вопросу — снимки экранов и беды: SIGame видит пак не целиком, не находит файл, картинка не загрузилась или растянута из 10×10, кнопки вариантов занимают больше места, чем картинка, видео в формате, который браузер не играет. При первом прогоне приложение само предлагает скачать движок (≈ 50 МБ, один раз).

Выпуск движка для пользователей — кнопкой: Actions → sigame-runner → Run workflow, галочка «release». Workflow собирает и проверяет его на Windows, выкладывает в релиз sigame-… (без пометки «Latest», обновления приложения его не трогают), сам вписывает адрес и сумму в app/src/core/sigame/component.ts и ставит компонент на чистой Windows, как пользователь. До пользователей это доходит обычным npm run release (лёгкое обновление кода, без установщика).

Без интерфейса: npm run sigame-e2e -- пак.siq (нужны npm run sigame-src && npm run sigame-build, .NET 10 SDK).

Медиа-редактор

Обрезка видео и звука по времени, кадрирование, заглушки поверх кадра (закрыть ответ или логотип), выравнивание громкости, плавное начало и конец, стоп-кадр в пак, «оставить только звук», сжатие под нужный размер. В «Объёме пака» громкость всех звуков и видео выравнивается одной кнопкой.

Редактор видео

«Как в игре»

Вопрос проигрывается так, как его покажет SIGame: экраны, время показа, «Жмите кнопку!».

Как в игре

Афиша для соцсетей

Одна картинка со всеми темами пака по раундам и готовый текст поста со ссылкой на отзывы игроков.

Афиша пака

И ещё

  • Поиск медиа — картинки, звук и видео (YouTube, Rutube и ещё ~1800 сайтов через yt-dlp) с загрузкой прямо в вопрос; всё скачанное лежит в «Скачанном».
  • Слова и картинки — темы на словах (анаграммы, матрицы) и ИИ-картинки: локально (stable-diffusion.cpp) или облако.
  • Картинки — коллажи, «картина по пикселям», силуэты, номер пака на логотипе.
  • Страховка — Ctrl+Z / Ctrl+Y, резервные копии при каждом сохранении, восстановление после сбоя.
  • Компоненты — ffmpeg, yt-dlp и локальная модель картинок ставятся и обновляются из приложения; yt-dlp раз в неделю обновляется сам.
  • Темы оформления: неон, студия, бумага, пастель, минимал, ночь.

Сборка из исходников

cd app
npm ci
npm run fetch-dict   # словари для тем на словах (в git не входят)
npm run dev          # окно в режиме разработки
npm run typecheck && npm test
npm run dist:update  # установщик в app/dist-setup

Мутационные тесты (npm run mutate, отчёт — app/reports/mutation/index.html): Stryker по одной портит код разбора и записи пака (core/siq) и отчёта «Прогона в SIGame» (core/sigame) — меняет > на >=, выкидывает условия, подменяет строки — и гоняет тесты. Если тесты остались зелёными, мутант «выжил»: эту строку тесты на деле не проверяют. Mutation score — доля убитых мутантов; workflow mutation гоняет его раз в неделю и падает, если счёт ниже порога в stryker.config.mjs. Сейчас — 96% (порог 90). Строки, где подмена ничего не меняет по сути, помечены // Stryker disable с причиной. После правки тестов запускайте npm run mutate -- --force: инкрементальный режим сам не видит новых тестовых файлов.

Скриншоты для README снимаются на демо-паке: npx tsx scripts/demo-pack.ts demo.siq (медиа рисует ffmpeg).

Что приложение отправляет

На сервер автора (server/) уходят только: анонимный ID установки и версия (статистика запусков), отчёты об ошибках (без путей и имени пользователя; выключаются в окне «Автору») и отзывы, которые вы отправили сами. Обновления приходят из релизов этого репозитория и ставятся только с вашего согласия.

Спасибо

  • SIGame и SIQuester — Владимир Хиль: игра, формат .siq и его спецификация; движок SIGame (MIT) — внутри «Прогона в SIGame».
  • SIOnline (Владимир Хиль, GPL-3.0) — экран игрока в «Прогоне в SIGame».
  • SI-HYX (GoldensFire) и SiGame-Helper — подготовка медиа для паков; многие решения Ye!Studio повторяют их.
  • FirePacks — пороги доли спецвопросов.
  • LosslessCut — идеи для обрезки видео.
  • yt-dlp, ffmpeg, stable-diffusion.cpp.
  • bgutil-ytdlp-pot-provider (Brainicism, GPL-3.0) — лежит в app/tools/pot-provider, помогает yt-dlp с YouTube.

Лицензия

GPL-3.0-or-later. Можно использовать, изменять и распространять; изменённые версии тоже должны распространяться с исходным кодом под GPL.

About

Ye!Studio — мастерская паков для «Своей игры» (SIGame, .siq): табло, медиа-редакторы, поиск картинок и видео, вставка вопросов из Claude/ChatGPT, проверка пака. Windows.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages