Котики, куда ж без них
Привет, меня зовут Олег, и я управляю и владею компанией которая занимается разработкой и выпуском игровых автоматов с денежным выигрышем.
Так как данная тематика слабо освещена на Хабре/GT и хотелось бы о многом рассказать, начну я все же с общей вводной статьи. Я долго думал, с какой стороны подойти к данной тематике: стандартная автобиографическая подача «как я открыл казино..» или рассказать о том, как рассчитываются барабаны и бонусы в играх, о аппаратной платформе, которая применяется в нашей индустрии, об архитектуре программ, которые мы разрабатываем, об игромании, и т.д. Но все же пусть вначале это будет мини-обзор обо всем, а я постараюсь его сделать интересным.
Сразу хотелось бы отметить, что хоть я нахожусь в Украине, где игорный бизнес под запретом, но разработка и экспорт вполне легальны. И хоть мы и охватываем полный цикл (разработка ПО, игровых плат, графики, звуков, корпусов, сборка, эксплуатация) – оперировании происходит в странах где этот бизнес легален, хоть и жестко регулируется.
Игровой аппарат с денежным выигрышем (в дальнейшем – игровой аппарат) это как правило видеослот, как на фото ниже.
Игровой аппарат компании Apex
Так же это может быть
Лоттерейный терминал компании Zeus Play
Или
Бинго-аппарат компании Zitro
Бинго по сути является той же лотереей, нам эта игра знакома по советским бочоночкам в мешке, с карточками, она даже так и называлась – лото. Но тем не менее, эта игра настолько популярна среди латиноамериканских народов, что обычно выносится в отдельный класс.
Игра бинго собственного производства
Мы в этой статье, остановимся на видео слоте, как самом интересном экземпляре игровых аппаратов.
Технически, стандартный игровой аппарат представляет собой металлический корпус, с игровой платой внутри, 2-3 мониторами, с сенсорным экраном, и периферией.
Фото игрового аппарата в открытом виде не нашлось, на данном изображении — игровой терминал собственного производства. Отсек справа с дверцей — для купюроприемника
На главном (нижнем) мониторе специальная программа эмулирует вращение барабанов, на которых изображены игровые символы. Барабанов чаще всего 5, высотой 3 символа каждый, хотя, конечно есть множество вариаций, что б «отличиться». Задача игрока — поймать определенное сочетание символов на соседних барабанах. Чаще всего в линию, чаще всего слева направо, но не всегда.
В данной игровой ситуации выgало 4 символа «10» по линии номер 19. Символ «лев» в данном случае — WILD символ, который заменяет собой любой другой.
Правила игр отличаются, и обычно вынесены, на отдельный дополнительный монитор.
Пример таблицы выплат
Интересно, что дополнительные мониторы, которые ранее были просто рекламным стеклом, с информацией о призах, выросли в размерах настолько, что сейчас превышают по площади главную «рабочую» зону. Общее количество мониторов на одном аппарате, может доходить до пяти – мини-тач панель для управления, монитор с барабанами, 2 монитора с информацией об призах/джекпотами и верхний монитор «топлер» c лого бренда. Стандартный размер диагонали – 24”.
Игровые аппараты компании Arictocrat
Заглянем внутрь аппарата.
Сердце изделия – игровая плата. Ранее это были сложнейшие модульные многослойные платы собственного производства, которые обходились производителем «в копеечку».
Плата Novomatic Coolfire
У проприетарных плат было только одно преимущество – сложность изготовления как защита от копирования, но Китай и Тайвань это не останавливало. Цена копии была весьма ощутимой, например, стоимость голой копии (без прошивки) игровой платы Novomatic Coolfire доходила до 2500 долларов США.
Конечно, и 10, и 15 лет назад, существовали решения на базе ПК. Однако они не очень подходили по ряду причин.
В первую очередь, они плохо справлялись с контролем огромного числа периферии, и с сохранением мгновенного состояния игры при внезапной пропаже питания. Вдобавок не все органы регулирования и контроля были готовы к метрологии подобных устройств: типичный кейс тех времен – инспектор с программатором требует ПЗУ что бы снять контрольную сумму прошивки.
В итоге многие PC-based изделия глючили, теряли данные, или вообще были построены на десктопной версии Windows. Все это создавало плохую репутацию аппаратов, построенных на ПК, и даже отлично работающее изделие было сложно продать.
Стоит отменить, что существовали, и существуют симбиозы x86 платформы, специально разработанной для игрового аппарата.
Игровая платформа Advantech Innocore
Однако в наши дни, большинство производителей используют PC платформу. Это стало возможно благодаря, как и технологиям – спасибо емким и надежным EEPROM, быстрым шинам, dual-head видеомодулям, так и производителям материнских плат, которые сделали шаг на встречу нашей индустрии. Причем, как в техническом аспекте, так и маркетинге. Например, стоило заказать 200 материнских плат, и к нам на производственный участок, приехал из Германии менеджер по развитию Fujitsu в Европе.
В итоге, сейчас стандартное решение для аппарата – это промышленная материнская плата, плюс интерфейсная игровая плата, которая контролирует периферию, и хранит финансовую и игровую информацию.
Подрубрика «интересный факт»: при использовании ПК, финансовые данные и игровая комбинация как правило хранятся в игровой плате в EEPROM. Поэтому что бы исключить ситуацию «на первых двух барабанах ничего не совпало – выдергиваем из розетки, и по новой», после нажатия на кнопку старт приходится вначале генерировать комбинацию, пересчитывать финансы, сохранять новый дамп состояния аппарата в плату, а только потом крутить барабаны.
Подрубрика «истории из жизни»: в начале двухтысячных один крупный английский производитель выпускавший механические аппараты, прислал нам для теста 5 аппаратов «видеослот» собственной разработки, как новинку. Аппараты были построены на базе ПК, и что насторожило сразу — на базе Windows. Ок, поставили. На третий день – звонок с салона «у нас нереально крупный выигрыш, игрок уже вызвал милицию, что б зафиксировать». Приезжаю: 99999999 гривен на экране. Из нолика единичка как-то вычлась у ребят в программе. Ну, спасибо что BCD формат, а не WORD, а то было бы 4,294,967,294.
Мы используем промышленную плату Fujitsu D3313-S4 в связке с «игровой» платой собственной разработки, на базе STM32. Платы общаются между собой по Ethernet. От USB мы отказались по ряду причин, но т.к. на материнской плате есть 2 ethernet разъёма – то нам так даже удобнее.
Рассмотрим периферию стандартного игрового аппарата.
Кнопки управления
«Просто кнопки» применяемые ранее, сменились кнопками с программируемым TFT-дисплеем внутри. Это один из жирных плюсов нашей индустрии – можно «пощупать» интересные изделия, в рабочих целях.
Клавиатурная панель аппарата компании Williams gaming
Сейчас в тренде – ЖК тач панели, однако они не дают тактильного ощущения нажатия, поэтому чаще применяются в сочетании с механической кнопкой «СТАРТ» по которой можно бить.
Клавиатурная панель аппарата компании IGT
Купюроприемник
Главный элемент в полуавтономных аппаратах (существуют cashless решения, но об них позже). Как правило это сложное электро-механическое устройство, с набором датчиков и электро-механических приводов.
Модель купюроприемника JCM iVision
Принятые купюры укладываются в кассету, стопкой. Стандартная кассета – на 500 купюр.
Подрубрика «интересный факт»: многие задумываются как купюроприемник распознает купюру. В нем нет оптического сканера, подобного компьютерным. Естественно, бывают разработки на основе image processing, но обычно это просто оптические и ультрафиолетовые датчики с призмой, которые накапливают интегральные составляющие цветов, и сравнивают с эталоном.
Эти датчики работают в комплексе с магнитными сенсорами, и сенсорами физического присутствия купюры. Принцип сравнения интегральных параметров позволяет фильтровать дефекты на купюрах, а также справляться с различной степенью износа.
Модуль купюроприемника JCM iVision
Подрубрика «истории из жизни»: в двухтысячных годах, устройства одного крупного производителя, принимали 10 грн, разрезанные ровно поперек, с приклеенным листиком вырезанным из тетради в клеточку, и 5 грн, с приклеенным листиком из тетради в линию. Если приклеить наоборот – не принимало, работало именно в такой конфигурации. Как до этого додумался кто-то – непонятно, но убытки мы понесли немаленькие, пока производитель не выпустил апдейт.
Существуют купюроприемники с механизмом выплаты купюр, но о них мы поговорим в следующий раз (если он будет).
Монетоприемник
Используется редко, обычно актуален в связке с устройством выплаты монет (хоппером).
Монетоприемники бывают тупыми (мы их называем coin comparator), которые определяют размер жетона сравнивая его с эталоном, и умными – которые способны различать различные номиналы монет.
Монетоприемник Azkoyen Modular A
Как распознать монету, которая в отличие от купюры быстро летит вниз через механизмы? Конечно по звуку удара об площадку. Основной датчик монетоприемника – акустический сенсор. Не думаю, что речь идет о диапазоне частот человеческого уха, но нем не менее, меряются параметры вибрации. Так же в процессе детектирования монеты участвует магнитный сенсор.
Для защиты от «рыбалки» всегда применяются антифишинговые механизмы блокировки, монета которая прошла через сенсоры – обратно уже не выйдет.
Подрубрика «интересный факт»: монетоприемники игровых аппаратов теоретически совместимы с машинами для вендинга, но как правило, используются только в сфере гейминга. В вендинг машинах другой принцип хранения и выдачи монет. Диспенсер вендинг аппарата – это пластиковые высокие тубусы, с различными номиналами монет, рассчитанные что б выдать определенное количество сдачи. Это обычно несколько монет, которые можно неспеша насыпать в мелкий лоток.
Диспенсер игрового аппарата – это большая емкость с одним номиналом (реже -две емкости с двумя). Платить надо быстро (5-10 монет в секунду), из одной емкости. Поэтому в игровом аппарате обычно отсутствует сепаратор монет (аппарат принимает только 1 номинал), а если и присутствует – то довольно специфический. В вендинге – есть много интегрированных изделий, где монетоприемник объединен с сепаратором и диспенсером.
Устройство выплаты монет (хоппер)
Бывают с ленточным механизмом и с дисковым. Это довольно тупые устройства: мотор крутит диск, оптический сенсор считает количество. Как я писал выше, они отличаются от диспенсеров монет кофе-машин, и прочего оборудования выплаты сдачи.
Ленточный хоппер MK IV
Дисковый хоппер Azkoyen MDP-10
Подобные устройства популярны в странах, где в ходу монеты с высокой деноминацией, например, 2 Евро.
Принтеры чеков
В игровой сфере применяются немного другие принтеры чем в платежных терминалах. Это тоже термо-принтеры, однако печатают они на плотном картоне. Стоимость отпечатка выходит повыше – 0.5 цента.
Принтер Futire Logic GEN2
Зачем в аппарате принтер? Нет, фискальные чеки не приняты, это задача кассы и кассира. Принтер нужен для системы TITO (ticket in, ticket out).
Суть в следующем: игрок имеет желание сменить аппарат, и продолжить игру, на счету аппарата допустим 500 долларов. Он жмет кнопку «выплата», аппарат сообщает серверу, по специальному игровому протоколу «я аппарат id 23, выплата 500 usd».
Сервер генерирует уникальный токен, и отправляет его аппарату. Игровой аппарат печатает этот токен в виде штрих кода, на плотном картоне. Игрок получает напечатанный билет.
Далее, он может пойти в кассу и обналичить его, либо сесть за другой аппарат, и ввести данный билет в купюроприемник. Все купюроприемники умеют читать 1D штрих-код, поэтому игровой аппарат получив данные от купюроприемника «принят билет со штрихкодом ххххххх», передает эту информацию на сервер.
Сервер принимает токен, находит его в базе, и говорит аппарату начислить 500 USD. Игрок продолжает игру.
Данных механизм взаимодействия возможен в залах, оборудованных сервером, который обслуживает аппараты по игровому протоколу IGT SAS (не путать с Serial Attached SCSI), и для нас это боль, потому что протокол старый (RS-232 с дополнительным 9-м wake up битом, который обычно плохо поддерживается 16550 чипами в ПК) и проприетарный (привет IGT). Базовая подписка что бы получить документацию стоит довольно недешево.
Топология — 127 устройств висят на общей шине, wake up бит в байте – признак что следующий байт является адресом устройства, к которому обращаются, а не байтом данных.
Подрубрика «интересный факт»: существует современный свободный протокол общения игровых устройств, на базе TCP/IP: Open G2S, но против лобби гигантов не попрешь, да и в нашей сфере legacy support это не просто звук.
Кард-ридер:
Используется редко. По сути выполняет функции считывания банковских карт для POS операций, а также для идентификации игрока.
Лично мы – не применяем, а если и начнем, то ограничимся бесконтактными считывателями, достаточными для paypass.
Аппарат компании Bally с кард-ридером.
Сенсорный экран:
Все мы помним, как сложно порой нажать на виртуальную кнопку платежного терминала. Причина тому – акустические такчкрины (Сенсорные экраны на поверхностно-акустических волнах — ПАВ). Они очень чувствительны к загрязнениям (посторонний объект полностью блокирует работу устройства). Так же они не любят громкий звук (вернее вибрации).
В игорной индустрии применяются инфракрасные сенсорные экраны и ёмкостные. Инфракрасные экраны чуть дороже чем ПАВ, но более надежны. Они не любят прямые солнечные лучи, но в нашей сфере, этот элемент полностью отсутствует. А вот вибрации от звука — вполне.
Конструктивно, инфракрасный экран – это рамка с светодиодами и фотодатчиками по периметру. Чем их больше – тем точнее. Но палец толстый, так что много и не надо.
noname IR сенсорная рамка
Рамка создает некоторую глубину между внешней поверхностью корпуса и стеклом монитора, поэтому не всегда подходит. Производители, у которых особенности дизайна таковы, что стекло не утоплено, или общее стекло объединяет несколько мониторов, не могут использовать инфракрасные экраны (как и производители смартфонов), поэтому выбирают ёмкостные экраны.
Подрубрика «интересный факт»: в игровых аппаратах, даже при наличии тачскрина, используется как минимум одна механическая кнопка – «Старт» (Play). Игроки настолько привыкли бить по этой кнопке, что панель из нержавеющей стали зачастую прогибается со временем. В итоге, никто не хочет, чтобы эти Мегаджоули гасились экраном монитора, и используется кнопка.
Счетчики
Даже в современном аппарате используются электромеханические счетчики. По сути – это подсистема дублирования целостности финансовой информации.
Данные в электронном виде могут быть повреждены или взломаны, а опломбированный счетчик – повышает надежность. Игровая плата обычно умеет определять факт отсоединения счетчиков, а опломбированные разъемы затрудняют установку «заглушки».
Подрубрика «интересный факт»: В Румынии органы контроля требуют иметь онлайн показания механических счетчиков. Как можно считать со счетчика не имеющего протокола коммуникации данные — сами не знают. Оптическую систему распознавания цифр применить не получается, т.к. счетчики должны смотреть наружу, через прозначное окошко в корпусе.
Экзотика
Некоторые производители применяют 3D мониторы, правда польза от таких решений сомнительна – глаза устают сильно. Но глубина 3D эффекта регулируется, вплоть до нуля.
Аппарат компании IGT с 3D монитором не требующим очков.
Те, у кого достаточно денег – выпускают фирменные кресла с клавиатурой, встроенной акустикой, и вибрацией.
Аппарат компании Novomatic «Novostar V.I.P»
ПО
Как правило, современный игровой аппарат построен на базе ОС Linux, на котором работает ПО написанное на С++. Активно используются 3D движки, хотя камера зафиксирована.
Компании, пришедшие в land-based из онлайна, а так же те, кто изначально озаботился мультиплатформенной поддержкой используют Unity или самописные web-движки, и в десктопном варианте просто распахивают Web канвас на весь экран.
Подрубрика «интересный факт»: gambling лицензия на Unity стоит 200 тыс долларов. Пруфов нет, но читал и слышал неоднократно.
На первый взгляд, программа видео слота кажется простой, и может создаться иллюзия «мы тоже так можем, давайте нырнем в эту денежную отрасль». На самом деле, много сложных алгоритмов присутствуют неявно «под капотом», а некоторые законы жанра в дизайне и математике – известны только тем, у кого есть опыт.
Кстати о дизайне – отрасль довольно консервативна, у нас работает принцип «лучшее враг хорошего» и «работает – не трогай». Поэтому некоторые интерфейсы выглядят как привет из девяностых. Тут нет места тонким шрифтам, не говоря уже о material design, и прочих современных трендах. Drop shadow, stroke width = 10, inner bevel, gold color gradient – наше все. Как в «99 франков»: «У нас, небо всегда голубое, а девчонки всегда красивые».
Вернемся к ПО. Мы используем Qt, с самописным движком под OpenGL. Мне нравится, что я могу собрать код под Windows, чтобы поработать с графикой в Photoshop, и вернуться в Linux, что б собрать релиз.
В простых проектах мы используем Qt3D на QML. Библиотека сыровата, но мне нравтся что можно прицепить контроллер анимации к любому свойству объекта.
В релизе мы используем Ubuntu Linux, в которой убрано все лишнее, и установлен Openbox. Естественно заблокированы все хоткеи, контекстное меню, текстовые консоли.
Программа является «мультигеймом», т.е. загружает в память сразу набор игр, и позволяет между ними переключаться. Сжатие текстур помогает умещать графику 25-30 игр в 4 Гб ОЗУ.
С подключаемой периферией мы работаем на уровне протокола команд. Диск с драйверами сразу отправляется в мусорную корзину, пишется письмо производителю, подписывается NDA, и получается все необходимая информация. Сложнее, но надежней. Тем более, что иногда к устройству надо постучаться мелкой платой, без ОС.
Подрубрика «истории из жизни»: одному программисту я поручил доделать стек общения с принтером. Ну и не уследил. Программист увидел, что принтер совместим с ESC/P, который отлично поддерживается в Убунту, и переделал все под растеризацию в QImage и печать системой. Ну работает ведь. В итоге, я по ssh удаленно настраивал клиентам не печатающий CUPS сервер, пытаясь его отучить от адресации к устройству по серийному номеру, который естественно отличается от номера принтера в девелоперском офисе.
Математика
Расчет классической игры, для механического аппарата не представляет собой никакой сложности – есть таблица выигрышей за каждую комбинацию, необходимо посчитать количество всех возможных сочетаний для каждого символа, домножить выигрышные комбинации на значение выигрыша, и получить общую сумму денег, которую аппарат выплатит.
То есть расчет ведется для полной прокрутки всех барабанов по очереди. Если провести аналогию с одометром автомобиля, то анализируется комбинации вращения дисков от 00000 последовательно до 99999. Это намного эффективнее чем вращать барабаны случайно и накапливать статистику выигрышей (брутфорс). Каждая комбинация равновероятна, поэтому достаточно все проанализировать по 1 разу.
С выигрышными линиями тоже все просто (в современном игровом аппарате их больше 1). Вероятность сочетания любой комбинации равновероятна по любой линии, поэтому достаточно проанализировать сочетания для одной линии, и этот расчет будет корректен для любого количества линий, активных одновременно (при некоторых правилах игры это не так, например, если в игре присутствует символ, который «распахивается» затирая собой несколько клеток).
Сложности начинаются с появлением WILD символов (джокеров). Wild символ полиморфен, и заменяет собой любой другой символ. Т.е. комбинация LEMON WILD LEMON учитывается ПО аппарата как LEMON LEMON LEMON.
В итоге надо решить задачу «В шляпе 3 шара двух цветов, и из них можно достать 2 белых или 2 черных». Классическая теория вероятностей разводит руками по поводу полиморфных объектов (поправьте если не так), приходится обрабатывать эту ситуацию – когда общее количество сочетаний, больше чем произведение всех элементов.
Так же очень нескучно рассчитывать игры типа бинго, где боле старшая выигрышная комбинация графически исключает младшую, или игры типа draw poker, где результат зависит от стратегии игрока (какие карты поменял, какие оставил).
Подрубрика «интересный факт»: барабаны в видео слотах, хоть и виртуальные, но крутятся честно — вот список тестов ГСЧ, на которые нас проверяют при сертификации: Meta-testing, Confidence Level, Adjacency Blocks, Adjacency High-Low, Adjacency Max-Min, Count of Counts, Coupon Collector's Test, DieHard Battery of Tests, Duplicates Test, Interplay Correlation Test, Overlaps Test, Permutation Test, Position Interaction Test, Relative Frequency by Positions Test, Wald-Wolfowitz Runs Test, Serial Correlation Test, 3 Sigma Test, Total Distribution Test, Total Distribution by Position Test, Unequal Probabilities Test.
Все производители рассчитывают барабаны таким образом, что при случайном вращении, мат ожидание суммы выигрышей меньше чем суммы ставок, что обеспечивает доходность.
Лучшая аналогия – диск рулетки. Математика заложена в физике диска и таблице выигрышей – 37 возможных исходов, множитель выигрыша за номер – 36. Итого процент отдачи рулетки с одним зеро: 36*1/37=0.972.
В видео слоте – тоже самое, только количество возможных исходов исчисляется десятками миллионов.
Обычно длинна барабанов в видео слоте составляет 25-75 символов. Меньше этого диапазона будет плохо – топовые символы будут часто сочетаться, больше тоже не очень хорошо – слишком долгий выход аппарата на матожидание. Также, барабаны могут быть разной длинны.
Давно небыло картинок — это просто скриншот одной из наших игр
Подрубрика «интересный факт»: в электро-механических аппаратах барабаны слишком коротки, и не подходят для того, что б анонсировать крупные выигрыши, за определенные комбинации. Увеличить длину не позволяют банальные габариты аппарата (барабан круглый).
Как выйти из положения если хочется вращать барабаны честно? В памяти микроконтроллера существуют «virtual reels» — барабаны, составленные из сегментов реальных механических барабанов. Эти виртуальные барабаны имеют необходимую длину, достаточную для того, что б определенные символы выпадали редко.
В итоге, ГСЧ крутит виртуальные сертифицированные барабаны, а шаговый сервопривод останавливает физические барабаны на сегментах эквивалентных виртуальным.
Вот так это выглядит
Сборочный цех
Статья выходит за рамки краткого обзора, поэтому просто опубликую несколько фото нашего процесса сборки:
Logic area до применения кабель-канала
Logic area после применения кабель-канала. Тут еще отсутствует левая часть, но смысл думаю понятен.
Упакованный терминал похож на гробик.
Красота
Online казино
За окном 2017-й год, все больше и больше людей имеют банковские карты, и осуществляют платежи в интернет. И что важнее, все большее количество людей научилось доверять онлайн-сервисам. Я имею ввиду не безопасность данных – эта проблема всегда будет актуальной, а уверенность получить услугу, от компании которая «где-то там далеко, а вдруг лохотрон».
Поэтому онлайн казино становятся на ноги все уверенней и уверенней. А значит озвучка сериалов будет страдать все больше и больше.
Немалую роль в популяризации оказывают стримеры (осторожней со ссылкой, много мата), а также работа с клиентом – офлайн казино зачастую не знают своих пользователей даже по имени, а у онлайн заведений – набор персональных данных. Мне, как зарегистрированному пользователю российского казино, не стесняясь звонят в Украину с московского номера, что б рассказать о какой-нибудь текущей акции. Подумаешь, роуминг. Клиент важнее.
Открыть онлайн казино очень просто – достаточно сделать сайт с регистрацией пользователей, и заключить договора с компаниями контент-провайдерами слотов. По-хорошему нужен еще биллинг, но при желании, эту услугу можно так же отдать компании-провайдеру.
Провайдер предоставляет API, и фрейм, в котором отображается видео слот. Онлайн казино передает контент-провайдеру идентификатор игрока, и ставку, и в ответ получает сумму выигрыша (конечно это упрощенное описание процесса взаимодействия с API). Какой интерактив происходит в процессе игры – казино по большому счету не сильно волнует.
В итоге, провайдер игрового контента получает свой небольшой процент, за сервис, а казино – реальные деньги от платежей пользователей.
Обычно онлайн-казино это агрегатор, который взаимодействует с несколькими разработчиками игр. У каждого из разработчиков игр свой API, но суть взаимодействия везде похожа.
Прелесть онлайн платформы – в том, что можно зарегистрироваться и получить лицензию в стране, с лояльными условиями сертификации и налогами. Поэтому это часто Мальта , Гибралтар или еще какие-нибудь острова. Впрочем, островитяне не растерялись, и помимо лицензионных сборов, требуют ежемесячные отчисления от каждого лицензиата.
Понятно, что лицензия одной страны, не дает право вести деятельность по всему миру – есть страны которые требуют локального лицензирования, или полностью запрещают данный вид деятельности. Но не все страны способны осуществлять мониторинг и блокировать доступ к нелегальным ресурсам.
Подрубрика «интересный факт»: «Проблемы с доступом в joycasino?» (с) У меня – да. Вот что я вижу по адресу joycasino.com и всем зеркалам: «Данный ресурс закрыт для посещений из Украины, Португалии. По всем вопросам, пожалуйста, обращайтесь в службу поддержки support@joycasino.com». Самые назойливые, оказались самыми законопослушными, большинство остальных ресурсов без проблем дают авторизоваться, и даже осуществить финансовые транзакции.
Подрубрика «истории из жизни»: было интересно, как казино выплачивает выигрыш на банковскую карту, с нетерпением ждал перевод, что б посмотреть назначение платежа.
Сумма в 186 долларов пришла по частям, с задержками. 50 долларов которые я внес как депозит пришли как «возврат товара», еще 2 платежа по 50, с такой же формулировкой (видимо чьи-то, т.к. я вносил только 50), и на сутки позже пришло 36 долларов как перевод из Кипра (видимо не нашлось депозита подходящего по значению).
В общем минимизация налогов работает и в этой отрасли.
Хотелось бы пару слов сказать о компаниях-разработчиках онлайн слотов (NetEnt, Microgaming, Endorphina, Yggdrasil).
Раньше мы смотрели на них из офлайна слегка скептически, но за последние годы они поднаторели, поняли законы жанра, и выдают очень качественный и красивый продукт. Ну и финансово себя неплохо чувствуют, например, годовая прибыль Netent Entertament за 2016 год составила 58 миллионов долларов.
Многие игры до сих пор на флеше, но они постепенно портируются на HTML5.
Вид игры «Voodoo» компании Endorphina.
Мифы и факты
Миф №1: операторы игорных заведений обдирают народ, и купаются в золоте
На самом деле, игровой аппарат отдает обратно в виде выигрышей 90%-96% денег. Т.е. мы оставляем себе не более 10% от оборота. Сравните с бутиком модной одежды, где маржа 300%.
Нам помогает тот факт, что выигрыши суммируются в общие кредиты, и на эти деньги осуществляется ставка повторно.
Итого в среднем, деньги прокручиваются 2.5-3 раза (зависит от агрессивности игры), аппарат каждый раз откусывает в среднем 8%, и итого хоть математически мы забираем 8%, практически за счет повторной прокрутки денег заработок доходит до 3*8=24% от оборота (округлим до 25%). Тем не менее, 75% попадает игрокам.
Далее, по поводу 25%. Даже если есть деньги купить землю и построить казино (в реальной жизни приходится оплачивать аренду), всегда есть лицензионные отчисления. Это расходы как на саму лицензию на вид деятельности, так и налог на каждую эксплуатируемую единицу (в Украине это называлось патент).
Например, налог на установку аппарата в Румынии, составляет около 13 евро в день. Таким образом, даже если аппарат достался бесплатно, аренда помещения бесплатно, люди работают бесплатно, если физически в аппарат не будут вносить ежедневно купюр суммой 52 евро – он будет убыточен. Реально порог рентабельности намного выше.
Миф №2: игровой аппарат меняет свою стратегию выплат в зависимости от текущей ситуации
Очень распространено мнение, что процент отдачи регулируется аппаратом «на лету», и после крупной выплаты он будет «есть деньги».
На самом деле, применение подобных алгоритмов очень опасно, т.к. может обернуться против создателя. Если игрок или что хуже, злоумышленник, почувствует некоторый алгоритм поведения, он может его использовать в своих целях.
Даже если алгоритм с виду убыточен для играющей стороны, знание – сила. Только полная непредсказуемость, даже для разработчика, позволяет быть уверенным в результате.
Впрочем, некоторые грязные методы психологического воздействия применяются, если они явно не запрещены в стране, выдающей лицензию.
Например, «near-miss effect», когда невыигрышная комбинация барабанов, подменяется до рендера (на уровни модели) на другую невыигрышную, но выглядящую более привлекательно. Например, 5 дорогих одинаковых символов, разбросанных так, что они не сочетаются ни в одну из линий, определенных правилами.
Этот трюк не влияет на результат (что так, что так — выигрыш ноль), но создают ощущение что «почти совпало, попробую еще».
Мы повышаем яркость, при повышении ставки, используем ритмичные гипнотизирующие звуки при вращении барабанов, расставляем аудио-визуальные акценты если что-то может совпасть, еще до того как совпало. И да, конечно стекла в заведениях всегда заклеены и нет часов, ни на стенах, ни на экранах.
Подрубрика «интересный факт»: один украинский оператор использовал в своих заведениях телефонную будку, в которую можно было зайти, выбрать один из вариантов эмбиент-окружения (пробка, метро, супермаркет) и ответить на звонок на мобильный телефон.
Миф №3: Можно купить набор «секреты игровых аппаратов» и выиграть
Это правда. Ну, отчасти. Методики типа «в такой-то игре, нажмите одновременно эту и эту кнопку» конечно не работают. Но при наличии физического доступа к автомату – можно купить прошивку с закладкой, подменить, прийти через неделю, и активировав закладку специальной комбинацией клавиш и действий – получить выигрыш.
Обычно такое практикуется путем сговора с персоналом заведения. Это работает со старыми моделями аппаратов, и от такого можно защититься только пломбированием, логированием открытия дверей, и контролем за копиями ключей.
Кстати, industrial материнская плата Fujitsu, которую мы применяем, способна контролировать размыкание цепи контактов дверей, даже в выключенном состоянии, и логировать в себе в CMOS память.
В заключение, мини FAQ:
Q: Сколько стоит игровой аппарат?
A: От 4 до 12 тыс евро за типовую модель.
Q: Опасна ли игромания?
A: Очень. Зависимость 100% психологическая, а память не сотрешь. Страдает вначале самооценка – проигрыш денег, которыми можно было распорядиться более умно, развивает ненависть к себе, а это куда хуже, чем ненавидеть правительство, начальство, или соседей. Затем, включаются бытовые факторы – нехватка денег в сочетании с желанием срочно отыграться может включать программы «достать денег любой ценой».
Q: Играл ли я на деньги?
A: Да, когда это было легально, я поиграл на каждом из доступных игровых аппаратов, всех производителей. Это происходило в заведениях конкурентов, и приходилось играть на деньги. «Чтобы понять женщину нужно думать как туфли». Я мог бы написать «это того стоило, т.к. дало бесценный опыт в разработке игр», но в итоге, не смотря на большое количество игр, я выиграл намного больше чем проиграл (хватило на спортивный автомобиль).
Q: Беспокоит ли меня этический аспект моей деятельности?
A: Не больше чем владельца кондитерской фабрики, о том, что покупатели страдают ожирением, и недотягивают до 60-ти. Возможно я плохой человек, но я делаю то, что умею лучше всего. Сегодня несколько тысяч людей перераспределило свои деньги между собой, но это был их выбор не мой.
Q: Были ли ошибки в наших программах, приводящие к незапланированным выигрышам?
A: Да, было пару раз, можно было ввести бонусную игру в бесконечный цикл. Причина была в неправильной синхроницации логики сигналами-слотами, клавиатурный эвент уходил в логику бонуса, который уже был закончен. За 4 года активной разработки и постоянных апдейтов – это нормальный результат, бывает. Обычно благодаря онлайн-мониторингу финансовой статистики такое быстро замечается и исправляется.
Q: Сколько процентов кода покрыто unit-тестами?
A: Ноль. Мы отдаем себе отчет, что законы в странах наших клиентов таковы, что они обязаны выплатить любую сумму, показанную на экране, и не важно откуда она взялась. Но я предпочитаю тратить время на движение вперед, а протестировать свежий релиз могут низкооплачиваемые люди вручную. Возможно это неправильно, но бизнес – это риск.
Q: Знакомые котики на КПДВ.
A: Все права на использование получены ;)
На этом все, если есть желание что б я осветил какою-то из затронутых нем подробнее — пишите в коментариях. Так же мы разрабатываем лоттерейные системы с автоматическим розыгрышем каждые 5 минут, и умные оптические клиент-сервер турникеты для школ.
Спасибо за внимание!
Пафосное фото автора статьи с собственной продукцией, на выставке Romania Arena Expo
Автор: helg1978