Многие помнят те времена, когда люди не пользовались Скайпом и ICQ, а сидели в IRC-чатах. Тогда очень популярны были каналы с ботом «Викторина», где всегда можно было посидеть, поугадывать слова и посоревноваться с друзьями в эрудированности.
![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/436/9b4/1d5/4369b41d5cec774484ab1d69ac2909ca.jpg)
Времена идут, а игра до сих пор популярна, но в былом представлении она устарела из-за того, что с чатов уже давно все перешли на месседжеры. Эту проблему мы решили исправить в своем внутреннем подразделении e-Legion Labs, создав версию «Викторины» под iPhone.
![image](https://habrastorage.org/r/w1560/getpro/habr/post_images/094/a0a/923/094a0a9236ef6e86afdaa55aaecbc64f.png)
Скачать. Игра бесплатная.
Викторина IRC бесплатная и рассчитана на мультиплеер, то есть соревноваться вы будете с реальными игроками. Поэтому при входе вас попросят зарегистрироваться с помощью почты или социальной сети (Fb, Twi, Vk).
Концепция игры схожа с покером, только вместо карточных раздач у вас будут раунды с угадыванием слов. В каждом раунде все игроки в комнате скидывают в общий банк 1, 20 или 50 монет, в зависимости от выбранной ставки. Тот, кто быстрее остальных правильно отвечает на вопрос — забирает весь банк и поднимается в рейтинге.
![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/766/b6f/a37/766b6fa37b406c14f368133ecca0979c.jpg)
Каждому игроку после регистрации дается 555 монет, что при игре на самых маленьких ставках хватит на 555 вопросов (в случае если вы не будете давать правильные ответы). Если монеты закончатся, их можно докупить за реальные деньги — 1000 монет за 33 рубля, 3000 за 66, 10000 за 99.
![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/099/025/f8d/099025f8d8cff8c35631cbce2b6b1958.jpg)
В «Викторине IRC» есть три режима игры:
![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/aa6/c2a/b7c/aa6c2ab7ca98d98054e50a90fa398c72.jpg)
(кликабельно)
Всего в базе 140 тысяч вопросов из разных областей знаний различного уровня сложности.
Как видно по оформлению, мы постарались сделать такой интерфейс, который приятно бы смотрелся как на iOS 6, так и на iOS 7. Для такого дизайна стандартных контролов было сложно найти, так как на момент активной разработки iOS 7 ещё не была презентована, так что пришлось написать много своего. Из более-менее интересного:
Большинство контролов написано с использованием простых возможностей UIView, таймеров и анимаций, что-то сделано на Core Graphics.
Сервер разрабатывался на node.js, данные хранятся в mongodb.
В качестве ORM библиотеки использовали mongoose. Для тестов использовали фреймворк mocha. Клиент и сервер общаются через tcp сокет с помощью сообщений в JSON формате.
В скором времени будет выпущены версии для iPad и Android-устройств.
В следующих статьях расскажем о процессе разработки + поделимся цифрами, сколько людей скачали игру после публикации на Хабре :)
![image](https://habrastorage.org/r/w1560/getpro/habr/post_images/094/a0a/923/094a0a9236ef6e86afdaa55aaecbc64f.png)
Еще раз ссылка на скачивание. Будем рады любому фидбеку.
![image](https://habrastorage.org/getpro/habr/post_images/436/9b4/1d5/4369b41d5cec774484ab1d69ac2909ca.jpg)
Времена идут, а игра до сих пор популярна, но в былом представлении она устарела из-за того, что с чатов уже давно все перешли на месседжеры. Эту проблему мы решили исправить в своем внутреннем подразделении e-Legion Labs, создав версию «Викторины» под iPhone.
![image](https://habrastorage.org/getpro/habr/post_images/094/a0a/923/094a0a9236ef6e86afdaa55aaecbc64f.png)
Скачать. Игра бесплатная.
Викторина IRC бесплатная и рассчитана на мультиплеер, то есть соревноваться вы будете с реальными игроками. Поэтому при входе вас попросят зарегистрироваться с помощью почты или социальной сети (Fb, Twi, Vk).
Концепция игры схожа с покером, только вместо карточных раздач у вас будут раунды с угадыванием слов. В каждом раунде все игроки в комнате скидывают в общий банк 1, 20 или 50 монет, в зависимости от выбранной ставки. Тот, кто быстрее остальных правильно отвечает на вопрос — забирает весь банк и поднимается в рейтинге.
![image](https://habrastorage.org/getpro/habr/post_images/766/b6f/a37/766b6fa37b406c14f368133ecca0979c.jpg)
Каждому игроку после регистрации дается 555 монет, что при игре на самых маленьких ставках хватит на 555 вопросов (в случае если вы не будете давать правильные ответы). Если монеты закончатся, их можно докупить за реальные деньги — 1000 монет за 33 рубля, 3000 за 66, 10000 за 99.
![image](https://habrastorage.org/getpro/habr/post_images/099/025/f8d/099025f8d8cff8c35631cbce2b6b1958.jpg)
В «Викторине IRC» есть три режима игры:
- Обычная игра. Комната с общим чатом со случайными игроками.
- Стелс игра. Для тех, кому «разговорчики» мешают и кто сосредоточен на игре. Дополнительным бонусом этой игры является периодические вопросы-изображения вместо текстовых вопросов.
- Игра с друзьями. Комната, в которой можно посоревноваться в тесном кругу друзей без случайных пользователей. Настройка приватности/публичности комнаты позволит подключаться случайным игрокам к вашей комнате, но для вас с друзьями там всегда будет место.
![image](https://habrastorage.org/getpro/habr/post_images/aa6/c2a/b7c/aa6c2ab7ca98d98054e50a90fa398c72.jpg)
(кликабельно)
Всего в базе 140 тысяч вопросов из разных областей знаний различного уровня сложности.
Разработка
Как видно по оформлению, мы постарались сделать такой интерфейс, который приятно бы смотрелся как на iOS 6, так и на iOS 7. Для такого дизайна стандартных контролов было сложно найти, так как на момент активной разработки iOS 7 ещё не была презентована, так что пришлось написать много своего. Из более-менее интересного:
- Сегментные контролы;
- Биллборд на начальной странице;
- Менеджер всплывающих уведомлений, исчезающих по нажатию;
- Кастомные уведомления (замена UIAlertView);
- Выдвигающаяся плашка с текстом вопроса;
- Полоска прогресса для обозначения времени вопроса.
Большинство контролов написано с использованием простых возможностей UIView, таймеров и анимаций, что-то сделано на Core Graphics.
Сервер разрабатывался на node.js, данные хранятся в mongodb.
В качестве ORM библиотеки использовали mongoose. Для тестов использовали фреймворк mocha. Клиент и сервер общаются через tcp сокет с помощью сообщений в JSON формате.
В скором времени будет выпущены версии для iPad и Android-устройств.
В следующих статьях расскажем о процессе разработки + поделимся цифрами, сколько людей скачали игру после публикации на Хабре :)
![image](https://habrastorage.org/getpro/habr/post_images/094/a0a/923/094a0a9236ef6e86afdaa55aaecbc64f.png)
Еще раз ссылка на скачивание. Будем рады любому фидбеку.