CASE BATTLE NFT
500
Демогра · прогрес лише протягом сесіїПро прототип

ВІД ПРОТОТИПУ ДО ПРОДУКТУ

Інструкція запуску

Це робочий вебпрототип, не готова NFT-платформа та не перевірена production-економіка. Підписаний прогрес не гарантує захист від повторного використання старого стану. Не приймай реальні платежі та не обіцяй виплати до завершення серверного обліку й тестів.

Уже реалізовано

Усі екрани та адаптивна навігація

Кейси, герої, продаж і бонус у демогрі

COLOR DICE: очки, історія, статистика

Google-вхід і приватне KV-збереження

Серверний підпис і перевірка initData

Налаштування та коди власника

Ще не підключено

Канонічна серверна економіка без відкатів

Транзакції й база всіх гравців

Реальні міжгравцеві угоди

Глобальні ліміти промокодів

Приймання реальних заявок та Roblox

Telegram-вхід і блокчейн NFT

01

Запусти й перевір демогру

Усі розділи доступні через меню. Відкрий Starter, отримай бонус, продай героя, придбай демолота та кинь COLOR DICE. Демосесія не зберігається після перезавантаження. 500 монет і два демонстраційних герої не є прогресом реального гравця.

02

Підключи збереження вебпрототипу

У Secrets додай GAME_STATE_SECRET — випадковий секрет щонайменше з 32 символів. Увійди через Google. Функція game підписує стартовий прогрес, перевіряє підпис і розраховує відкриття, продаж, бонус та кидки на сервері. Прогрес читається і записується через приватне сховище акаунта.

03

Підключи транзакційну базу даних

Зараз застосунок використовує вбудоване key-value сховище GenMB, не реляційну базу даних. Керована база даних — функція Pro. Два варіанти в панелі Database: перейти на Pro або безкоштовно підключити власний Supabase. Після підключення потрібна окрема реалізація серверних транзакцій; сам вибір провайдера не вмикає їх.

04

Зроби економіку захищеною

Зберігай канонічний баланс, інвентар і журнал лише на сервері. Стартові 500 монет видавай один раз через унікальний player_id. Для бонусу 200 монет — унікальність player_id + дата UTC. Блокуй рядок гравця в транзакції, перевіряй баланс, додавай operation_id для повторних запитів. Підпис прототипу захищає від редагування JSON, але не від відкату на старий підписаний стан і повторної ініціалізації.

05

Додай міжгравцеві угоди та промокоди

Купівля має одночасно списувати монети покупця, зараховувати продавцю, передавати героя та закривати лот. Промокод має атомарно перевіряти термін, загальний ліміт і унікальність активації гравцем. Поки цього немає, лоти, активації та заявки працюють лише в демосесії. Власник уже може створювати підписані налаштування й коди.

06

Підготуй Telegram Mini App

Створи бота в BotFather, додай опублікований HTTPS URL гри як Mini App. У Secrets задай TELEGRAM_BOT_TOKEN та OWNER_TELEGRAM_ID. На сторінці натисни «Підключити Telegram SDK» для завантаження офіційного SDK і «Перевірити Telegram». Сервер перевіряє HMAC initData та вік сесії. Потрібно ще реалізувати серверне зв’язування Telegram ID з акаунтом GenMB — це не автоматичний Telegram-вхід.

07

Налаштуй адмін-панель та ручні виплати

Власник GenMB має серверний доступ за isOwner. Для Telegram-власника потрібен перевірений initData й заданий OWNER_TELEGRAM_ID; також потрібна сесія GenMB для приватного збереження. Реалізуй захищені серверні списки гравців, заявки та незмінний аудит. Визнач курс Roblox NFT Battle і порядок ручної передачі. Статус «Підтверджено передачу» дозволяй лише після реального підтвердження, з доказом та записом у журнал.

08

Пройди тестування перед запуском

Перевір один стартовий бонус, UTC-границю доби, паралельні відкриття, повторні запити, відкат підпису, ліміт промокоду, продаж одного лота двом покупцям, повернення резерву й доступ не-власника. Перевір Android/iOS у Telegram, мережеві помилки та перезавантаження після кожної операції. У цьому середовищі перевірено збірку, але не реальну передачу Roblox, Telegram-вхід або production-безпеку.

Локальний запуск

npm install
npm run dev
npm run build

Демогра працює на Vite. Авторизація, сховище й functions доступні в середовищі GenMB. Секрети задаються тільки в Secrets. Повна інструкція також є в README.md проєкту.

© CASE BATTLE NFT · ВебпрототипЗбирай героїв. Створюй свою легенду.
⚡Make an app like this, free