Pull to refresh

Comments 68

Это одно из свойств людей, отличающих их от животных
Животные тоже тупят. Моя кошка тому подтверждение. :)
спасибо :) вторая н уйдет со следующим плановым апдейтом сервера
Спасибо, недавно как раз занимался подобным :)
Хорошая, годная затейка! :) Но ГУИ надо бы подтянуть. Для меня в этом плане идеалом считается интерфейс программы Марьяж.
Сейчас это все еще глубокая бета, на которой обкатывается ядро. Насчет ГУИ — конечно, тут будут привлекаться профессиональные дизайнеры и «юзабилисты»
Хорошая игра, но игроков как то мало… Я ожидал хаброэффект, а 7 человек совсем не претендуют на это звание.
А вообще (не сочтите рекламой) для меня стандартом вэб преферанса является www.gambler.ru/
Дело в том, что клиент гамблера это standalone java application. А это как-раз то, от чего хочется уйти, чтобы иметь возможность играть anywhere на всем, на чем есть браузер.
Ну можно по крайней мере подсмотреть немного как сделано у них и взять кое-что полезное :). Все-таки гамблеру уже лет 8 не меньше если не ошибаюсь, так что они думаю много костылей повидали )
Возникают ли проблемы с утечкой памяти?
Что произойдет с игрой, если вдруг упадет игровой демон?
Я так понимаю, восстановить ее состояние невозможно?
У 100 одновременно активно играющих игроков в онлайне, и заполненных кешах по статистике игр, потребление памяти в районе 25Mb RES. Утечек явных (не собираемых GC) пока не замечено.
ОС — FreeBSD. реактор — kqueue. WCPU для тех же 100 игроков в районе 0.15% на довольно посредственном железе.
То есть запас довольно большой.

Можно конечно сказать мол «наши демоны никогда не падают», но понятно, что в реальной жизни бывает всякое.
При теоретически возможном падении (еще пока что не падало ни разу) высокоуровневый обработчик исключений _попытается_ закрыть и сбросить в базу все текущие игры.
Попробовал поиграть. Наблюдается небольшая недоработка. Если играющий предлагает сколько он берет то карты его не высвечиваются вистующим :) Надо бы пофиксить ;-)
К чёрту детали! Спасибо за openID аутентификацию и веб интерйейс. Как раз то, что нужно. А то под Линуксом жуткими костылями ставил windows версии программы «Марьяж». Плюсую во все стороны и в закладки.
Google != OpenID
Если нажать на кнопку авторизации, появляется окно входа в гуглосервисы.
А как авторизоваться по OpenID у какого-то другого провайдера?
В ближайшее время дополнительно появятся кнопки авторизоваться через «yandex», «facebook», «livejournal».
авторизация у _произвольного_ OpenID чревата побочными социальными эффектами и пока что не планируется
А можно кратенький ликбез — меня напрягла надпись «rellis-club.com запрашивает информацию из вашего аккаунта Аккаунт Google»
Мой логин-пароль проходят через вас, или гугль сам сообщает типа «ок, пусти его, я его проверил»?
именно так. «гугль сам сообщает типа «ок, пусти его, я его проверил»»
trellis-club.com никогда не узнает ваших паролей.
В этом весь смысл openid. И это абсолютно для вас безопасно.
Пока, к сожалению, не особо поиграешь
2 раза попытался создать игру (один раз дошло до торговли), и меня выкинуло без всяких объяснений.
Скорей всего вас не выкинуло (там кстати можно безболезненно опять подойти к столу)
Просто есть такой баг что при потере фокуса в поле ввода сообщения в чате кнопка 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
Википедия в данном случае неправа, это уже обсасывали, когда dk_multiplexor вышел.
Comet — это общее название всех техник создания псевдоасинхронных и псевдомоментальных AJAX.
Comet это скорее принцип, а long polling или persistent connection это уже техника.
Нужна кнопка «Быстро начать игру», чтобы сесть за стол где уже есть два игрока.

Не смог сыграть ни разу больше круга — после первой не сложившейся партии выкидывает из любого стола, из-за того что в предыдущей игре у какого-то игрока таймаут.

Очень хочется видеть:
1) возможность посмотреть конвенции во время игры
2) времени (как партии так и глобального)
3) просмотр предыдущего расклада
Присоединюсь и добавлю:
4) Хочется пообщаться с игроками по окончании партии, но из-за стола силком выволакивают. Может в окошке с окончательным рассчетом можно оставить чат?
5) Набирал что-то в чате, вылезло окошко с предложением «Пас-Вист» и перехватило фокус, я в это время жмакнул на пробел и пасанул. Хорошо не десятерную заказал.
играли мизер, сильно не хватает кнопки «Предложить». пришлось шлепать до конца, хотя сразу было видно что он не ловленый
Играли мизер, сошлись на мнении, играющий предложил, все согласились. Так что все есть
хм… видимо не заметил у себя такой кнопки. в следующий раз буду внимательнее.
Почему-то предложить может только играющий
Слово «гостиная» с одной «н» пишется. Поправьте, пожалуйста, а то бьёт по глазам.
Уже поправили. Спасибо. Также добрые хабралюди нашли еще несколько проблем, которые либо уже исправлены, либо будут исправлены в течении суток.
Но все это вступит в силу только с плановым обновлением сервера. (через 2 дня)
При торговле при нажатии клавиш или проблема происходит автоматический выбор чего-то. А случается это часто, если писать в чате.

Иногда окошки «выскакивают» в нескольких количествах. Разные притом.
пробел при писанине во время торгов подводит (
вступаешь в торг, часто нежелательный совсем
Кажется баг — не пишет висты при предложении
Периодически выкидывает из игры с сообщением «не проявляете активности»
Не расчитываются висты в случае, если игра заканчивается приедложением, на которое все соглашаются
А вообще — вы молодец. Отличный старт, как чисто технический, так и вцелом проект. Буду с интересом наблюдать за развитием.
Может быть я вас и удивлю, но у меня очепятки в интерфейсе — одна из самых казалось бы мелких, но очень досадных проблем при разработке.
Интересно. Я делаю почти то же самое — мультиплеерный «Сапёр» (sweepminer.com).

Пробовал использовать Juggernaut, в нем вместо Комета используется невидимый флэш, который держит соединение с сервером. Не понравилось, перешел на Orbited + Morbidq. Теперь нет проблем у тех, кто сидит за прокси.

Для авторизации выбрал только Facebook Connect, из Фейсбука же и беру аватарки игроков.
Супер!
Как раз думал над такой игрой! Жаль, что пока там никого :(
У вас какие правила мультиплеера?
Кто-то есть:)

Правила сейчас такие: игра идет на одном поле, чужие поставленные флажки не видно. Но видно клетки, раскрытые другими участниками. Побеждает тот, кто первым правильно расставит все свои флажки. За каждую раскрытую клетку дается очко — тому, кто ее раскрыл.

Но я хочу придумать что-то другое. Проблема в том, что сейчас игроки идут ноздря к ноздре всю игру, и интрига возникает только в последние три секунды матча — кто же первым поставит последний флажок. Надо сделать так, чтобы на победу влияло, сколько очков за игру набрал участник, а не только то, что он первым поставил флажки.
Обычно народ ближе к вечеру собирается поиграть.
При хабраэффекте одновременно играли 150 человек.
Проблем все еще много. Но ежедневно выходят новые фиксы,
выравнивающие положение.
Правила преферанса обычные (из кодекса)
Сколько времени ушло на разработку? Сколько человек принимало участие (если таковые были крме вас)? Было бы интересно увидеть roadmap.
Сколько человек, кроме вас, работают над проектом? Что делают?
По history на trac нетрудно догадаться что до сегодняшнего дня ни одного.
Но в данном случае это неважно. Главное то, что проект будет развиваться.
И развиваться динамично. Сегодняшний тест добрых хабралюдей направил
приоритеты задач в нужное русло.
И хотя сервер под хабраэффектом не падал,
проблемы выявились серьезные но вполне решаемые.
А кого-нибудь не хватает? Дизайнера, пиарщика, верстальщика, тестера, еще одного программиста?
Не хватает _хорошего_ дизайнера/юзабилиста который создаст стиль проекту
а как можно получить сам код, чтобы с удобством в нем разобраться или дописать что-либо?
я так понимаю там hg. есть анонимный доступ на чтение в репозиторий?
Нет. Анонимного доступа в репозиторий нет и не будет.
Максимум что есть (и так и останется) — браузинг всех исходников через web.
НО. После обкатки API будет фриз ядра, и независимые разработчики смогут писать
свои игры под эту платформу (преферанс — только первая игра, но будут и другие).
Вот у них, необходимый доступ будет
понимаю. но какой в этом смысл?
код по сути-то открыт, но легкого доступа нет. Т.е. особо упорный все одно достанет, ведь так? уж лучше открыть read-only доступ, так удобнее разбираться в архитектуре, чтобы приобщиться впоследствии к написанию-развитию.

да, и странно, почему вы отказались от websocket, если есть js-либы, которые его эмулируют для старых браузеров. ну или на худой конец AMQP-сервер, для надежности и скорости.

Упорный все достанет, но это не будет иметь особого смысла просто потому, что апдейты частые
и код очень быстро устаревает. (совсем упорные конечно напишут парсер но это уже будет overq)
Но с другой стороны всегда можно пойти и посмотреть как именно сделаны те или иные части
но форкать сам проект затруднительно. И это сделано намеренно.

Насчет WebSockets и AMPQ. Думали над обоими словами.
Пришли к выводу что не стОит. По многим причинам.

а насчет WebSocket и AMPQ можно подробнее? Чем не устроили?
Или просто хотелось Tornado задействовать?
Расскажите, плз, по каким соображениям отказались от WebSockets и AMQP.
Так и не понял, как решается проблема с количеством одновременно открытых соединений? Расскажите пожалуйста подробнее.
Никак не решается. Соединение в один момент времени только одно.
Но по нему приходят все типы сообщений
Делать по другому — значит отказаться от значительной доли браузеров
Т.е. на каждого пользователя висит по одному соединению с большим таймаутом? Как к этому отнесется сервер, когда пользователей будут тысячи?
TornadoServer — Хорошо отнесется. Он под такую модель использования и заточен.
Only those users with full accounts are able to leave comments. Log in, please.