Общая схема проекта Это модель игры, в которой есть: внутриигровая валюта магазин с 2 слотами, в каждом из которых есть некоторое количество этой валюты условный матч, в который можно сыграть за некоторую "ставку" в игровой валюте. За поражение в матче игрок теряет свою ставку, за победу, наоборот, получает валюту в размере ставки. Сам матч условный: это просто рандомное определение выиграл/проиграл. Архитектура имитирует разделение на клиент и авторитарный сервер. На клиенте обрабатывается пользовательский ввод и все что связано с отображением, на сервере вся бизнес логика. Клиент и сервер выделены в отдельные "packages", подключаемые через PackageManager. Это сделано для максмальной изоляции кода. На сервере есть свои компоненты, реализующие логику фич (Wallet, Shop, Match). На клиенте - свои. Необходимость разобраться в том: как взаимодействуют клиент и сервер, как учитывать лаг сети (обмен данными между реальным клиентом и реальным сервером не будет мгновенным) как сервер сохраняет и восстанавливает данные между сессиями игрока. Нужно сделать новую функциональность в рамках тех подходов, которые уже есть в проекте. Задание За каждую победу в матче может быть выдан 1 лутбокс. У игрока всего 2 слота под лутбоксы. Это значит, что когда оба слота будут заняты, лутбоксы за победы перестанут выдаваться до освобождения хотя бы одного слота. После того, как лутбокс попал в слот игрок может нажать на кнопку и начать его "разблокировку". Разблокировка длится 20 секунд. По истечению времени разблокировки лутбокс считается доступным к "открытию". Одновременно на разблокировке может находится только 1 лутбокс Открытие означает освобождение слота с начислением контента лутбокса. Открытие происходит по нажатию на кнопку слота. То есть, лутбокс не открывается автоматически по истечению времени, а остается лежать в слоте до тех пор, пока его не откроют. Контент лутбокса - внутриигровая валюта. Может быть 2 типа лутбоксов по объему контента: большой (содержит 100 валюты) маленький (содержит 20 валюты) Принцип выдачи типа лутбокса при победе: каждый 4й лутбокс должен быть большим, остальные - маленькие. Реализовать игровую механику и отображение в GUI с использованием immediate mode GUI. То есть, GUI такое же, как уже сделано в проекте для всего остального. То, как будет выглядеть в итоге интерфейс - на ваше усмотрение. Но там должны быть ясно различимы 2 слота для лутбоксов, состояние этих слотов (пустой / ожидает / разблокируется (с отображением таймера) / готов к открытию). Референс: Bowling Crew, Golf Clash, Clash Royale. Результат – такая же папка с файлами Скачать файл Город: Минск Вид предложения: Удаленная работа (разовый заказ) Оплата: желательно безнал Категория: Разработка игр Добавлено: 03.09.2023 в 14:18 |
|
|