Просмотр полной версии : Шахматы - тестируем одновременные ходы
Есть такой сервис: PlayerIO, для создания мультиплеерных флеш-игр. Я как-то разбирал примеры, и, вот, созрел, чтобы попробовать реализовать идею одновременных ходов.
В качестве базовой игры взял шахматы. Каждая сторона двигает всеми фигурами, затем ход обсчитывается на сервере и выдаётся результат. Цель - убить короля.
Чтобы задать направление хода, нажмите мышкой на фигуру и потяните. Когда все приказы будут розданы, нажмите Send Order.
Когда оба игрока отправят приказы, начинается просчёт хода. Каждый ход состоит их 100 тиков. Если фигуре задано идти на n полей, вычисляются числа b = 100/n и a = b/2. На переход с одного поля на соседнее фигура будет тратить случайное число тиков между a и b.
Если фигура встречает на пути свою, то ждёт, пока клетка не освободится. Если чужую - снимает её, при этом переставая дальше двигаться.
Вот сама игра. Давайте попробуем?
http://dl.dropbox.com/u/22620118/SCH.swf
Сейчас программа - просто для теста возможностей сервиса. Код сделан неоптимально, если браться серьёзно, его придётся переписывать, Лобби и чат были в примерах, на них не потрачено ни строчки.
Сам сервис PlayerIO бесплатно разрешает до 500 игроков в онлайне, для использования в более крупных проектах он платный.
//Обновил сервер, поправил баг с прохождением фигур
finansist
23.04.2012, 00:47
Хотел было попробовать, но необходимы еще игроки. Надо как-то условиться о времени теста
Создал, буду в онлайне где-то час-полтора.
Хотел было попробовать, но необходимы еще игроки. Надо как-то условиться о времени теста
Вот вам и вылазит главная проблема стандартного мультиплея: "надо ждать игроков". Тогда как в режиме игры типа почтового, e-civ, уже б давно партия была сыграна:
пусть бы для начала даже не было рассылки, что все походили, можно было бы сделать ход и иногда заглядывать: как только увидел, что сервер сделал общий ход и ждет твоего следующего хода - походил.
А вообще уже Реныч, увидев, что никто не берется использовать его прототип, потихоньку клепает сервер (http://www.civfanatics.ru/threads/9640-Civilization-ReFlash?p=395186&viewfull=1#post395186):
И так, последние известия.
Не дождавшись обещанного тут сервера, было принято решение форсировать процесс, написанием собственного.
Можно сказать у меня получилось. Сервер реализует передачу данных по собственному протоколу, используя транспортный, сеансовый и прикладной уровни.
Сейчас клиент умеет авторизовываться на сервере, посредством связки логин/пароль. Получать список игроков. Для демонстрации работы реализован чат.
Дальнейшее направление работы вижу - реализацию передвижения юнитов в соответствии с концепцией "Одновременного перемещения" в краткосрочной перспективе
и боевой системы в дальнейшем.
Не знаю, насколько можно судить по словам (а на деле Реныч уже показал, что что-то умеет и делает), но "транспортный, сеансовый и прикладной уровни" - звучит заманчиво :) Правда, я так и не разобрался, как сервером Реныча пользоваться, и он не расписывает - но возможно, доведет сервер - напишет.
Конечно, каждому интересно делать то и так, как ему интересно, но жаль, что все так же параллельно изобретаются велосипеды :(
Но если ты, Генерал, будешь доводить свое направление, то я бы поучаствовал в тестировании, но боюсь, согласоваться будет сложно. Так что если чуть-чуть не довести твой сервер, не научить его запоминать ходы игроков (или он уже умеет?) - то твоя работа может ну если не пропасть, то затормозиться.
Да-да, я видел :) И Ренычу показывал. Но я не писал полноценный сервер, это я тестировал решение PlayerIO для многопользовательских игр. Сделать, чтобы комната существовала даже когда все вышли - интересная идея, посмотрю, возможно ли здесь такое.
Да-да, я видел :) И Ренычу показывал. Но я не писал полноценный сервер, это я тестировал решение PlayerIO для многопользовательских игр. Сделать, чтобы комната существовала даже когда все вышли - интересная идея, посмотрю, возможно ли здесь такое.
Рад слышать, что вы с Ренычем контачите - одна голова хорошо...
Кто хочет потестировать новый режим игры и искусственный интеллект - пишите в личку.
Какой-то простенький хэлпик бы не помешал, потому спрошу здесь - отменить выбранный ход нельзя? запомнить позицию?
Что-то фигня получилась: вышел я конем на выгодную вилку "пешка ферзь", правда ферзь прикрыт слоном, эта пешка - этим :) ферзем. Но игра не дает задать удар ни по ферзю, ни по пешке. Почему?
Чтобы отменить ход, надо нажать на фигуру и чуть-чуть поводить над ней.
Да, про ещё одну особенность забыл сказать - после хода фигура блокируется на 1 ход (к королю это правило не относится). Эта особенность введена потому, что иначе любой шах приводит к 50% шансам выиграть партию.
Сейчас игру можно вести до полного уничтожения, хотя в релизной версии, всё же, сделаю победу после убийства короля.
Я так понимаю, ты потратил кучу времени на разработку ИИ?
Я например шахматы просто не люблю. Что если
1. заменить пешек на дуболомов, слонов на слонов и т.д.; придать им параметры у/з/х, близкие к Циве; разрешить им двигаться как в Циве, т.е. в любом направлении
2. клеткам придать рельеф местности,
3. на последней линии сделать "город", взять который и будет цель игры
4. разрешить входить парами под никами с паролем, запоминать ситуацию;
5. ввести Таблицу рейтингов -
понятно, что я "много захотел" :), но может тогда в твою игру повалит толпа игроков? ;)
Я так понимаю, ты потратил кучу времени на разработку ИИ?
Один день :)
Я например шахматы просто не люблю. Что если
1. заменить пешек на дуболомов, слонов на слонов и т.д.; придать им параметры у/з/х, близкие к Циве; разрешить им двигаться как в Циве, т.е. в любом направлении
2. клеткам придать рельеф местности,
3. на последней линии сделать "город", взять который и будет цель игры
4. разрешить входить парами под никами с паролем, запоминать ситуацию;
5. ввести Таблицу рейтингов -
понятно, что я "много захотел" :), но может тогда в твою игру повалит толпа игроков? ;)
Да, такова главная цель, просто шахматы взяты, чтобы не придумывать параметры юнитам, для обкатки движка и геймплея.
Да, такова главная цель, просто шахматы взяты, чтобы не придумывать параметры юнитам, для обкатки движка и геймплея.
И как ты оцениваешь продвижение к цели?
Ну смотри - ИИ я сделал 18го числа. С тех пор к проекту и не подходил - то встречи с научруком, то конспект лекций надо писать, то ремонт доделывать. Когда образуется следующее "окно", облагорожу интерфейс.
Ну смотри - ИИ я сделал 18го числа. С тех пор к проекту и не подходил - то встречи с научруком, то конспект лекций надо писать, то ремонт доделывать. Когда образуется следующее "окно", облагорожу интерфейс.
Не, дело не в "благородстве": то, что я предлагаю, резко расширяет возможности, даже измерения игры. И ес-но, если целиться на ИИ - то задача усложняется на порядок. А вот если забить на ИИ (сэкономив кучу усилий?), но сделать возможность поиграть хоть в паре, но в онлайне - игра ж может заиграть новыми красками?
Нет, я просто имею в виду, что по этому проекту у меня ближняя задача - сделать полноценной игрой именно одновременные шахматы. Ну а потом, на их основе - одновременную циву.
Это... так не работает.
Но в любом случае, удачи, и пиши несли что...
Спасибо! Так, наоборот, по-моему, надо проекты доводить до конца. А затем много кода и подходов могут быть использованы и в циве.
Доводить проекты до конца -- это отличное мотто,
но я в данном случае не о том.
Хотя... думаю не имеет смысла продолжать (да и начинать) здесь то,
что является предметом моей личной прокрастинации. :)))
Желаю чтобы тебя оно не постигло, и твои слова не расходились с делом.
А если... еще какая толика оптимизма, задачка интересная и нам перепадет... то будет просто отлично. ;)
Нет, я просто имею в виду, что по этому проекту у меня ближняя задача - сделать полноценной игрой именно одновременные шахматы. Ну а потом, на их основе - одновременную циву.
Для шахмат одновременность неестественна, для реалистичной стратегической игры наоборот - естественна.
Потому вряд ли в одновременные шахматы заиграет достаточно народу, и наоборот: если б это была пусть примитивная, но стратегия - думаю, играли бы.
Потому в доведении шахмат не вижу смысла, и наоборот - в переводе шахмат в реал-стратегию вижу этот смысл.
http://general.civfanatics.ru/fairchess/FCTitle.PNG
http://general.civfanatics.ru/fairchess/FSGames.PNG
Красота :) Теперь весь вопрос - найдет ли это спрос у игроков, или окажется очередной (не твоей очередной) тратой сил.
Увы, я насмотрелся на столько способных людей, которые говорили "сейчас надо делать именно это", или просто честно признавались: "а мне интересно делать именно это" - а Дело так и не продвинулось :(
Конечно, какой-то плюс от одновременных шахмат тоже МОЖЕТ БЫТЬ: популяризация одно временного движения. Но, извини, еще раз повторю свое частное ИМХО: может получиться и минус - шахматисты народ крайне консервативный, одновременность могут заклевать, и вместо популяризации одновременности может получиться ее дискредитация.
Вот есть книга Е.Гика "Занимательные математические игры", там столько вариаций - и шахматы на троих, и шашматы, и уменьшенные, и кажется 3-мерные - а в жизни ты много слышал, чтоб в такое играли?
Спасибо! :)
Ну вот и мне интересно, как игроки воспримут. Поэкспериментирую.
Да, в самой игре я ещё не закешировал всё, что можно. А вообще хром чего-то флеш плеер как-то коряво обновил: я видел даже в одной игре совет сменить браузер, т.к. функция сохранения кампании в нём перестала быть доступной.
Подал шахматы на конкурс многопользовательсктих игр: https://playerio.com/competitions/ega2012/reviewgame/10780/fair-chess
Рейтинг 3,8 из 10.
твоя ссылка с шлагбаумом "You must be a registered reviewer to review any of the games submitted in this competition"
Да-да, пока игра только там - таковы условия конкурса.
а почему так мало-то, 3.8? отличная игра же
Уже 3,5
Немного успокаивает, что игра с лучшим рейтингом - 5,2 из 10.
Уже 3,5
Немного успокаивает, что игра с лучшим рейтингом - 5,2 из 10.
А известно - шкала прямая или обратная, т.е. 1 хуже или лучше чем 10? ;)
1 хуже
Я ж тебе говорил: для шахмат одновременные ходы - нонсенс, народ не оценит; тогда как для реалистичной стратегии - самое то. Увидишь, как вырастут рейтинги, после того как заменишь доску на терру, а фигурки на юниты :)
Увидишь, как вырастут рейтинги, после того как заменишь доску на терру, а фигурки на юниты :)Эх, сменить бы пешки на рюмашки... (С) :D
а почему ссылки на шахматы нет на SmartFlashGames? Как в них поиграть-то теперь :)
Powered by vBulletin® Version 4.1.9 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot