Производитель | Amaya Gaming |
Кол-во линий | 8461 |
Кол-во барабанов | 9 |
Фриспины | Есть |
Бонусный раунд | Есть |
Мобильная версия | Нет |
Игра на удвоение | Есть |
Играть в Золотоискатели в онлайн казино:
Social Gaming с Playtika. Как мы писали одну из крупнейших.
В продолжении совместного проекта и Playtika Григорий Перепечко, Mobile Client Architect в минском офисе компании, рассказывает о технической стороне создания одного из крупнейших в мире мобильных приложений для социальных слотов. На дворе был 2012 год, и компания Playtika приняла решение о разработке новой мобильной игрушки, разумеется, на слот-тематику. Пока продакт-менеджеры окучивали «джиры», рисовали диаграммы Ганта и творили прочую бесценную бюрократию, мы мучились вопросом «На чём писать?! Минский офис был только-только сформирован, и готовых технологий для разработки игр мы не имели.
Как выиграть на игровом автомате? Игровые автоматы - Список.
Был проверенный десятилетиями C , компилирующийся под все мыслимые и немыслимые платформы, уйма движков и даже редакторов под него. Имелся также модный и современный C#, который Мигель ди Иказа с товарищами из Xamarin отчаянно продвигали как философский камень для мобильной разработки под Android, i OS и Windows Phone. Мудрые менеджеры взвесили простоту C# на одной руке и зарплаты хороших C -разработчиков на другой, посмотрели из широкого окна на стены монументально стоящего БГУИР и сделали выбор в сторону более мейнстримового C#.
Но игра — хитрая штука, которая тысячи раз в секунду сообщает GPU, что хочет взять шейдер Ш, текстуру Т и отрисовать оными пару сотен треугольников. А также декодирует по чуточку бэкграунд-трек, чтобы ласкать слух игрока, и не повредит обсчитывать пару десятков анимаций, дабы картинка не казалась слишком унылой. И конечно же для всего этого необходим игровой движок.
А стакан мобильных игровых движков в 2012 году был не просто наполовину пуст, а скорее, наполовину отсутствовал. Выбрать можно было из Unity, Axiom, Delta Engine, Mono Game — пожалуй, и всё. Изобилующий #ifdef Mono Game, медленный и не умеющий работать с масками и видео Unity были не лучшим выбором для очень простой, но требовательной к мелочам игры. И как бы невзначай все пришли к неизбежному — нужно писать своё. Свой-то уж точно будет лучше, быстрее, стабильнее, чем все чужие. Так зародился в наших недрах Monosyne, в основу которого лёг архитектурный подход XNA.
Игры гонки - Игры онлайн. Играть.
В команде были и остаются люди, умеющие писать игровые движки, и это отчасти спасло ситуацию, однако никто из бизнеса не понимал, что нужно довести технологию до некой логической завершённости, и таким образом после пары месяцев работы над движком, при полном отсутствии какого-либо инструментария, ещё одна команда начала работать над игрой. Движок только утром научился рисовать текстурированные треугольники, а команда, гонимая Скрамом, уже к обеду хочет класть «чекбокс» на «попап», да ещё и с удобным API. Хочется отметить удачное решение — поддержка десктопной Windows с ранних этапов как третьей платформы наряду с Android и i OS, что сэкономило километры нервов во время отладки.
Xamarin времён 2012 года, к сожалению, был далёк от идеала. Сама по себе Xamarin Studio не содержала всех инструментов, к которым мы привыкли. В библиотеке классов BCL были баги и отличия в поведении от имплементации Microsoft. Да и просто заливка сборки на устройство занимала много времени.
Поэтому возможность написать и проверить код под Windows в удобной Visual Studio с R#, залить это дело в git и довериться команде тестирования была глотком свежего воздуха. Для бизнес-приложений такой подход видится малореальным из-за сильной зависимости от платформенных UI-контролов, а для игры c 95% кроссплатформенного кода — вполне приемлемым.
Из забавных проблем, с которыми пришлось столкнуться, — отсутствие поддержки Portable Class Libraries в Xamarin. Представьте, вы пишете под три платформы, но вынуждены иметь три копии одного и того же проекта. В шапку проекта без списка файлов оный генерируется и дописывается по некоторым правилам. Ведь чтобы порадовать глаз игрока, нужно что-то показывать и желательно анимировать. Движку пара месяцев, он может открыть PVR и PNG, есть «арты» от художников в виде PSD и чёткое понимание, что контентно-ориентированные игры так не делаются. Таким образом, если вы добавили какой-нибудь класс, для его появления в проектах для других платформ нужно было перезапустить генератор. Необходим оптимизированный для телефонов формат игровых сцен, с анимациями и прочими радостями геймдева.
Слот-машина — Википедия
А главное — нужен способ подготовки этих сцен специально обученными людьми. Тут опытный разработчик вспомнит заветные «тулсет», «редактор сцен», но игру хотят уже вчера, и несколько месяцев на инструментарий никто не даст. Посему появился набор правил, по которым специально обученные ребята называли слои в «фотошопе», и скриптик, который умел разбирать эту PSD в сцену в нашем формате. Поэтому после нескольких месяцев мучений взгляд упал на Adobe Flash и экспорт из его формата, а там — и анимации, и bitmap-маски, и разного рода эффекты. Технология для игр, подобных нашей, оказалась довольно удобной, а главное, что найти специалиста по flash вполне реально. Хочу рассказать о паре вещей, без которых было бы сложно организовать процесс работы на проекте в 60 человек. Разработчик заливает код в репозиторий, Teamcity запускает билд из его ветки на все платформы. Через 5-7 минут билды под WP8, i OS, Android, Win10 готовы. Причём в них зашивается информация о номере билда, ветке, конфигурации и номере коммита, из которого они собраны. Когда разработчиков стало много, мы отключили автобилды для всего, кроме мастера, но QA могут запускать нужные им билды в один клик.
Для того чтобы QA мог поставить билд с устройства, мы написали простенькую страничку на PHP, которая ходит в Teamcity API и получает список билдов. Приложение в процессе работы пишет подробные текстовые логи в файл. И в приложении есть удобная возможность отослать логи в хранилище.