Название игры: TerraControl Разработчик: я Пространство: 2D Вид: сверху Движок\конструктор: самописная Java-основа Предполагаемая дата релиза: очень нескоро Платформы: всё, что с мышкой, клавиатурой и Java 7 update 51 (можно новее) для ПК Описание: Некое подобие Монстерры, увиденной мною на айподе знакомого. Суть игры заключается в следующем. Игровой уровень - случайно сгенерированное поле, состоящее из цветных клеток. Есть два игрока (потом, наверное, будет больше) на разных концах поля. Путём изменения цвета своего поля захватываются ближайшие куски уровня, подходящие по цвету. В итоге, игрок, набравший наибольший размер поля, выигрывает. Игровые материалы:GitHub (баги желательно туда заливать) Демо-версии:скачать
Настройка: 1) Window size - размеры окна в пикселях 2) Level size - размеры уровня в клетках, только сервер и синглплеер 3) Address - IP сервера (первое окошко, только клиент), порт сервера (второе окошко, клиент и сервер) 4) Players - количество игроков, только сервер и синглплеер 5) Generator type - способ генерации уровня, только сервер и синглплеер 6) Randomizer seed - любой текст (берётся его хэш-сумма), который является основой для генератора псевдорандомных чисел (то же самое, что и сид в Minecraft). При вводе одинаковых сидов получаются одинаковые уровни, только сервер и синглплеер 7) End if captured 50% - заканчивать ли игру при захвате одним из игроков половины поля (победить другому уже невозможно) 8) Colors - цвета, используемые в игре, только сервер и синглплеер. Любое количество (меньше двух бессмысленно), шестнадцатеричный формат, разделяются пробелом. (ff0000 ff00ff ffff00 00ff00 00ffff 0000ff)</spoiler>
Игровой процесс. Игроки ждут появления надписи "Your turn!". Очевидно, это означает, что можно походить. Чтобы походить, нужно кликнуть на кнопку внизу слева. Её цвет будет использован при ходе. Наводя курсор на различные кнопки, можно увидеть территории, которые будут захвачены при выборе данного цвета.
Управление. Приближение-отдаление картинки на колёсико мыши, перемещение камеры по полю - стрелочки на клавиатуре.
Техническое. Игра использует протокол UDP для соединения клиента и сервера. Работает через хамачи. Работает через внешний IP, если у сервера открыт используемый порт. Обработка потери пакетов реализована не полностью (пока что).
Сообщение отредактировал: dyatel - Пятница, 20.06.2014, 21:52
Я буду сильно удивлён, если кто-то просто так следит за заголовком темы. Поэтому, спустя большое количество небольших обновлений, соберу изменения в кучку, и, может быть, кто-нибудь будет рад.
Итак, из того, что заметно: 1) ФПС, на моём компьютере с 300 поднялись до 1200. То есть, сильная оптимизация. 2) Выбор цветов, которые будут использоваться на поле. Для разнообразия. 3) Более быстрая передача уровня с меньшими затратами трафика. Круто же! 4) Исправлена система ходов (раньше, если пакет с вражеским ходом шёл слишком долго, то можно было ходить до посинения, не давая противнику ничего сделать; теперь за этим следит сервер). Только, пожалуйста, не ходите слишком быстро. Дождитесь получения вражеского хода, иначе клиент может рассинхронизироваться.
Что осталось за кулисами? Постоянная доработка кода, добавление комментариев, создание каких-то общих суперклассов для удобства.
Добавлено (27.04.2014, 21:01) --------------------------------------------- И ещё одно внезапное обновление.
Что хорошего в нём: 1) Несколько небольших фиксов 2) Переработка получения вражеского хода: больше не использует кучу трафика и процессорного времени. И ходить теперь можно хоть сразу. 3) Самое крутое - логгер ошибок. Если что-то вылетает (например, сервер) или работает не совсем так, как ожидалось, поищите папку "errors". В ней будет лог ошибок и описание того, что нужно сделать - залить на гитхаб.
Добавлено (01.05.2014, 00:43) --------------------------------------------- И ещё обновление. Из самого важного - добавлен синглплеер. Ещё добавлен логгер ошибок (скидывает логи в папку errors) и починен зум (центр остаётся в центре). И ещё, наверное, что-то.
Добавлено (14.06.2014, 13:49) --------------------------------------------- Итак, после более пяти недель, я всё же накатил апдейт. Сначала не было времени, потом желания, потом идей.
Что новенького: 1) теперь используется столько процессорного времени, сколько нужно на обновление и рендер уровня, остальное освобождено 2) для ходов сделаны кнопочки вместо кликов по полю 3) возможность использовать сиды для рандома 4) два новых генератора уровня, симметричный (генерирует левую верхнюю четверть, отражая её на всё остальное поле) и линейный (искажённые полосы вдоль горизонтали) 5) по окончанию игры всё поле, исключая победителей, затухает
Ну а ещё, естественно, различные фиксы и правки.
Сообщение отредактировал: dyatel - Суббота, 14.06.2014, 13:50