Комментарии 68
Хотел затестить
Но люди тупят
Но люди тупят
гостинная — это круто
Спасибо, недавно как раз занимался подобным :)
НЛО прилетело и опубликовало эту надпись здесь
Хорошая игра, но игроков как то мало… Я ожидал хаброэффект, а 7 человек совсем не претендуют на это звание.
А вообще (не сочтите рекламой) для меня стандартом вэб преферанса является www.gambler.ru/…
А вообще (не сочтите рекламой) для меня стандартом вэб преферанса является www.gambler.ru/…
О! Вечерком поиграю! ;)
Возникают ли проблемы с утечкой памяти?
Что произойдет с игрой, если вдруг упадет игровой демон?
Я так понимаю, восстановить ее состояние невозможно?
Что произойдет с игрой, если вдруг упадет игровой демон?
Я так понимаю, восстановить ее состояние невозможно?
У 100 одновременно активно играющих игроков в онлайне, и заполненных кешах по статистике игр, потребление памяти в районе 25Mb RES. Утечек явных (не собираемых GC) пока не замечено.
ОС — FreeBSD. реактор — kqueue. WCPU для тех же 100 игроков в районе 0.15% на довольно посредственном железе.
То есть запас довольно большой.
Можно конечно сказать мол «наши демоны никогда не падают», но понятно, что в реальной жизни бывает всякое.
При теоретически возможном падении (еще пока что не падало ни разу) высокоуровневый обработчик исключений _попытается_ закрыть и сбросить в базу все текущие игры.
ОС — FreeBSD. реактор — kqueue. WCPU для тех же 100 игроков в районе 0.15% на довольно посредственном железе.
То есть запас довольно большой.
Можно конечно сказать мол «наши демоны никогда не падают», но понятно, что в реальной жизни бывает всякое.
При теоретически возможном падении (еще пока что не падало ни разу) высокоуровневый обработчик исключений _попытается_ закрыть и сбросить в базу все текущие игры.
Попробовал поиграть. Наблюдается небольшая недоработка. Если играющий предлагает сколько он берет то карты его не высвечиваются вистующим :) Надо бы пофиксить ;-)
К чёрту детали! Спасибо за openID аутентификацию и веб интерйейс. Как раз то, что нужно. А то под Линуксом жуткими костылями ставил windows версии программы «Марьяж». Плюсую во все стороны и в закладки.
Google != OpenID
Если нажать на кнопку авторизации, появляется окно входа в гуглосервисы.
А как авторизоваться по OpenID у какого-то другого провайдера?
Если нажать на кнопку авторизации, появляется окно входа в гуглосервисы.
А как авторизоваться по OpenID у какого-то другого провайдера?
В ближайшее время дополнительно появятся кнопки авторизоваться через «yandex», «facebook», «livejournal».
авторизация у _произвольного_ OpenID чревата побочными социальными эффектами и пока что не планируется
авторизация у _произвольного_ OpenID чревата побочными социальными эффектами и пока что не планируется
А можно кратенький ликбез — меня напрягла надпись «rellis-club.com запрашивает информацию из вашего аккаунта Аккаунт Google»
Мой логин-пароль проходят через вас, или гугль сам сообщает типа «ок, пусти его, я его проверил»?
Мой логин-пароль проходят через вас, или гугль сам сообщает типа «ок, пусти его, я его проверил»?
Пока, к сожалению, не особо поиграешь
2 раза попытался создать игру (один раз дошло до торговли), и меня выкинуло без всяких объяснений.
2 раза попытался создать игру (один раз дошло до торговли), и меня выкинуло без всяких объяснений.
Скорей всего вас не выкинуло (там кстати можно безболезненно опять подойти к столу)
Просто есть такой баг что при потере фокуса в поле ввода сообщения в чате кнопка backspace cрабатывает как BACK в браузере.
Просто есть такой баг что при потере фокуса в поле ввода сообщения в чате кнопка backspace cрабатывает как BACK в браузере.
Кстати масти есть в шрифтах, так что не обязательно их вставлять картинками: ♠♣♥♦
Раз уж «Корректная работа под любыми современными браузерами.», то в Safari под Windows не работает ссылка, показывающая окно со списком игроков онлайн.
И еще… Название проекта явно предполагает не только преферанс. «Тысячу» не планируете?
И еще… Название проекта явно предполагает не только преферанс. «Тысячу» не планируете?
А точно comet? Я тут с фарбагом к вам залез — вроде как long polling?
википедия утверждает что это (в определенном смысле) одно и то же
en.wikipedia.org/wiki/Comet_%28programming%29
However in practice, Comet applications typically use Ajax with long polling to detect new information on the server
en.wikipedia.org/wiki/Comet_%28programming%29
However in practice, Comet applications typically use Ajax with long polling to detect new information on the server
Comet это скорее принцип, а long polling или persistent connection это уже техника.
Нужна кнопка «Быстро начать игру», чтобы сесть за стол где уже есть два игрока.
Не смог сыграть ни разу больше круга — после первой не сложившейся партии выкидывает из любого стола, из-за того что в предыдущей игре у какого-то игрока таймаут.
Не смог сыграть ни разу больше круга — после первой не сложившейся партии выкидывает из любого стола, из-за того что в предыдущей игре у какого-то игрока таймаут.
Очень хочется видеть:
1) возможность посмотреть конвенции во время игры
2) времени (как партии так и глобального)
3) просмотр предыдущего расклада
1) возможность посмотреть конвенции во время игры
2) времени (как партии так и глобального)
3) просмотр предыдущего расклада
Присоединюсь и добавлю:
4) Хочется пообщаться с игроками по окончании партии, но из-за стола силком выволакивают. Может в окошке с окончательным рассчетом можно оставить чат?
5) Набирал что-то в чате, вылезло окошко с предложением «Пас-Вист» и перехватило фокус, я в это время жмакнул на пробел и пасанул. Хорошо не десятерную заказал.
4) Хочется пообщаться с игроками по окончании партии, но из-за стола силком выволакивают. Может в окошке с окончательным рассчетом можно оставить чат?
5) Набирал что-то в чате, вылезло окошко с предложением «Пас-Вист» и перехватило фокус, я в это время жмакнул на пробел и пасанул. Хорошо не десятерную заказал.
играли мизер, сильно не хватает кнопки «Предложить». пришлось шлепать до конца, хотя сразу было видно что он не ловленый
Слово «гостиная» с одной «н» пишется. Поправьте, пожалуйста, а то бьёт по глазам.
При торговле при нажатии клавиш или проблема происходит автоматический выбор чего-то. А случается это часто, если писать в чате.
Иногда окошки «выскакивают» в нескольких количествах. Разные притом.
Иногда окошки «выскакивают» в нескольких количествах. Разные притом.
пробел при писанине во время торгов подводит (
вступаешь в торг, часто нежелательный совсем
вступаешь в торг, часто нежелательный совсем
Кажется баг — не пишет висты при предложении
Периодически выкидывает из игры с сообщением «не проявляете активности»
Не расчитываются висты в случае, если игра заканчивается приедложением, на которое все соглашаются
Не расчитываются висты в случае, если игра заканчивается приедложением, на которое все соглашаются
А вообще — вы молодец. Отличный старт, как чисто технический, так и вцелом проект. Буду с интересом наблюдать за развитием.
Спасибо за добрые слова.
Клятвенно обещаю что такого позора, который был исправлен в этом changeset больше не повторится :)
trac.trellis-club.com/changeset/121%3A405e570b3940
Клятвенно обещаю что такого позора, который был исправлен в этом changeset больше не повторится :)
trac.trellis-club.com/changeset/121%3A405e570b3940
Интересно. Я делаю почти то же самое — мультиплеерный «Сапёр» (sweepminer.com).
Пробовал использовать Juggernaut, в нем вместо Комета используется невидимый флэш, который держит соединение с сервером. Не понравилось, перешел на Orbited + Morbidq. Теперь нет проблем у тех, кто сидит за прокси.
Для авторизации выбрал только Facebook Connect, из Фейсбука же и беру аватарки игроков.
Пробовал использовать Juggernaut, в нем вместо Комета используется невидимый флэш, который держит соединение с сервером. Не понравилось, перешел на Orbited + Morbidq. Теперь нет проблем у тех, кто сидит за прокси.
Для авторизации выбрал только Facebook Connect, из Фейсбука же и беру аватарки игроков.
Супер!
Как раз думал над такой игрой! Жаль, что пока там никого :(
У вас какие правила мультиплеера?
Как раз думал над такой игрой! Жаль, что пока там никого :(
У вас какие правила мультиплеера?
Кто-то есть:)
Правила сейчас такие: игра идет на одном поле, чужие поставленные флажки не видно. Но видно клетки, раскрытые другими участниками. Побеждает тот, кто первым правильно расставит все свои флажки. За каждую раскрытую клетку дается очко — тому, кто ее раскрыл.
Но я хочу придумать что-то другое. Проблема в том, что сейчас игроки идут ноздря к ноздре всю игру, и интрига возникает только в последние три секунды матча — кто же первым поставит последний флажок. Надо сделать так, чтобы на победу влияло, сколько очков за игру набрал участник, а не только то, что он первым поставил флажки.
Правила сейчас такие: игра идет на одном поле, чужие поставленные флажки не видно. Но видно клетки, раскрытые другими участниками. Побеждает тот, кто первым правильно расставит все свои флажки. За каждую раскрытую клетку дается очко — тому, кто ее раскрыл.
Но я хочу придумать что-то другое. Проблема в том, что сейчас игроки идут ноздря к ноздре всю игру, и интрига возникает только в последние три секунды матча — кто же первым поставит последний флажок. Надо сделать так, чтобы на победу влияло, сколько очков за игру набрал участник, а не только то, что он первым поставил флажки.
Обычно народ ближе к вечеру собирается поиграть.
При хабраэффекте одновременно играли 150 человек.
Проблем все еще много. Но ежедневно выходят новые фиксы,
выравнивающие положение.
Правила преферанса обычные (из кодекса)
При хабраэффекте одновременно играли 150 человек.
Проблем все еще много. Но ежедневно выходят новые фиксы,
выравнивающие положение.
Правила преферанса обычные (из кодекса)
Сколько времени ушло на разработку? Сколько человек принимало участие (если таковые были крме вас)? Было бы интересно увидеть roadmap.
полгода.
roadmap — пишем.
roadmap — пишем.
Сколько человек, кроме вас, работают над проектом? Что делают?
По history на trac нетрудно догадаться что до сегодняшнего дня ни одного.
Но в данном случае это неважно. Главное то, что проект будет развиваться.
И развиваться динамично. Сегодняшний тест добрых хабралюдей направил
приоритеты задач в нужное русло.
И хотя сервер под хабраэффектом не падал,
проблемы выявились серьезные но вполне решаемые.
Но в данном случае это неважно. Главное то, что проект будет развиваться.
И развиваться динамично. Сегодняшний тест добрых хабралюдей направил
приоритеты задач в нужное русло.
И хотя сервер под хабраэффектом не падал,
проблемы выявились серьезные но вполне решаемые.
а как можно получить сам код, чтобы с удобством в нем разобраться или дописать что-либо?
я так понимаю там hg. есть анонимный доступ на чтение в репозиторий?
я так понимаю там hg. есть анонимный доступ на чтение в репозиторий?
Нет. Анонимного доступа в репозиторий нет и не будет.
Максимум что есть (и так и останется) — браузинг всех исходников через web.
НО. После обкатки API будет фриз ядра, и независимые разработчики смогут писать
свои игры под эту платформу (преферанс — только первая игра, но будут и другие).
Вот у них, необходимый доступ будет
Максимум что есть (и так и останется) — браузинг всех исходников через web.
НО. После обкатки API будет фриз ядра, и независимые разработчики смогут писать
свои игры под эту платформу (преферанс — только первая игра, но будут и другие).
Вот у них, необходимый доступ будет
понимаю. но какой в этом смысл?
код по сути-то открыт, но легкого доступа нет. Т.е. особо упорный все одно достанет, ведь так? уж лучше открыть read-only доступ, так удобнее разбираться в архитектуре, чтобы приобщиться впоследствии к написанию-развитию.
да, и странно, почему вы отказались от websocket, если есть js-либы, которые его эмулируют для старых браузеров. ну или на худой конец AMQP-сервер, для надежности и скорости.
код по сути-то открыт, но легкого доступа нет. Т.е. особо упорный все одно достанет, ведь так? уж лучше открыть read-only доступ, так удобнее разбираться в архитектуре, чтобы приобщиться впоследствии к написанию-развитию.
да, и странно, почему вы отказались от websocket, если есть js-либы, которые его эмулируют для старых браузеров. ну или на худой конец AMQP-сервер, для надежности и скорости.
Упорный все достанет, но это не будет иметь особого смысла просто потому, что апдейты частые
и код очень быстро устаревает. (совсем упорные конечно напишут парсер но это уже будет overq)
Но с другой стороны всегда можно пойти и посмотреть как именно сделаны те или иные части
но форкать сам проект затруднительно. И это сделано намеренно.
Насчет WebSockets и AMPQ. Думали над обоими словами.
Пришли к выводу что не стОит. По многим причинам.
и код очень быстро устаревает. (совсем упорные конечно напишут парсер но это уже будет overq)
Но с другой стороны всегда можно пойти и посмотреть как именно сделаны те или иные части
но форкать сам проект затруднительно. И это сделано намеренно.
Насчет WebSockets и AMPQ. Думали над обоими словами.
Пришли к выводу что не стОит. По многим причинам.
НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Веб-Преферанс на Python