Летопись Ultima Online — «Inceptum»

История проекта

Данные хроники рассказывают о становлении как сервера, так и проекта в целом.
 

Первая эпоха (2010)
Началось все в начале 2010 года, с праздного интереса - попробовать поиграть с братом по интернету, после некоторого перерыва от UO, на сей раз с одним "но"- на собственном сервере. Была скачана сборка RunUO 1.0 (первое, что попалось из движков и было на слуху). На ней был с грехом пополам поднят сервер и заселен мир, причем предшествовало этому чтение огромного количества гайдов и мануалов, ибо 1.0 - это настоящий кошмар, особенно тогда, когда совершенно ничего не понимаешь. Сервер был поднят, работал на вечно вылетающем USB-ADSL модеме, с динамическим IP. Играть кое-как было можно, некое удовлетворение определенно присутствовало. Однако о полноценной игре, речи, разумеется, не шло. Все оказалось несколько сложнее, чем мы предполагали. В итоге решили найти подходящий сервер для игры (опыт игры в UO до этого момента у нас уже был несколько лет, включая игру на OSI).

Российские серверы были отброшены сразу же, по причине старых (годами не обновляющихся) сборок, отсутствия поддержки как таковой, несбалансированности доната, рисованных предметов, и конечно же - накрученного онлайна. Также стоит учитывать кипу запрещенных программ (на эмуляторе Sphere, на котором работало, да и работает подавляющее количество российских и украинских серверов, это, как минимум,  приводит к печальным последствиям для игрового процесса, а закрывать подобные дыры могут единицы проектов). У нас уже был опыт игры почти на всех ведущих серверах в СНГ, на тот момент. Исходя из этого, ориентиром для игры были выбраны иностранные площадки. Такой ситуации как на российских (по большому счету на всех, на территории бывшего СССР) там, в массе своей, не было. В итоге был выбран один из самых крупных и известных серверов того времени, назовем его "Х".

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

Снова встал вопрос - что делать дальше. Мы решили вернуться к нашей авантюре и  попробовать поднять свой сервер, на этот раз уже полноценный, взяться за дело серьезно (как мы это себе тогда представляли). Задача была в следующем - постараться сделать сервер, имеющий качество иностранных топовых проектов, но расположенный в России, и работающий для игроков из ex-СССР, в первую очередь. Минимальный опыт уже был. И он, несомненно, пригодился.

На этот раз была скачана более свежая сборка RunUO (на тот момент - 2.0). Работа над фиксами, тестами и исправлениями заняла 2 месяца каждодневной работы над скриптами. Через некоторое время все было закончено - сервер работал с 6-ой версией клиента и неполным дополнением ML. Было добавлено много кастомных земель (для клиента были патчи), была создана первая версия  инсталлятора. После – был поднят сайт на бесплатном хостинге, на котором была выложена информация по подключению и файлы клиента. Сам же логин работал через сервис no-ip (по-прежнему, адреса были динамические). Уже тогда вы могли зайти к нам и побегать по молодому Миру (сервер тогда носил имя “The World”).

Используем ли мы данную сборку до сих пор? Нет. Нам не понравился конечный результат. Как старые игроки с опытом, мы прекрасно знали, что нужно людям, и наша собственная работа не подпадала под наши же критерии. Сервер был отключен (ни о каком постоянном онлайне, разумеется, речи не шло), сайт же было решено поднять на полноценном хостинге.

Мы начали все с нуля - снова новая версия, снова скрипты, снова сборка, фиксы, исправление ошибок. В сентябре был поднят сайт, на котором вы и читаете данный материал (первоначально мы работали на другом домене). Постепенно он начал заполняться информацией, параллельно с тем, как шла работа над игрой. Зимой она была закончена, и встал закономерный вопрос - что делать дальше?

Вторая эпоха (2011)
Ответ на него был достаточно простым. У нас есть какая-никакая сборка, у нас есть худо-бедно работающий сайт, но нет отдельного железа, на котором размещать проект. О том, что сервер станет популярным - речи не шло. Все задумывалось как эксперимент. Особой надежды на то, что он сможет набрать какой-то онлайн и продержаться месяц-два,  у нас не было. Как не было ни опыта, ни каких-либо связей с нужными людьми (программисты, дизайнеры, администраторы и т.д.).

Отталкиваясь от вышеописанного, сервер было решено купить на интернет-аукционе (ныне почивший “Молоток”). Что и было сделано. За смешную сумму в 2500р. За эти деньги был куплен 4 пентиум с 2гб памяти, и 2 жесткими дисками на 40гб. Сие чудное творение технологического прогресса и служило нам домом на протяжении первых нескольких месяцев, благополучно начиная лагать, когда на сервере били более 1 чемпиона одновременно (справедливости ради, виною тому было не только железо, но и качество сборки на тот момент).

Сам же сервер был полноценно запущен в онлайн 24\7 15 февраля. Имя, данное нами серверу при старте, было сохранено - "The World", что должно было символизировать собой масштабность игры, а также обыгрывать известную истину о том, что в UO не играют, в UO живут. До этого срока был открытый бета-тест.

Поддерживаемая версия игры при запуске была ML. Никаких пожертвований в помощь серверу изначально предусмотрено не было, ведь сервер, в первую очередь, должен был стать домом игрокам, а не площадкой для наживы. Однако, растущие расходы показали, что данная затея была утопией. Спустя 3 месяца со старта система пожертвований была введена. Интересным моментом является также то, что первоначально игра работала без возможности страховать вещи. Около 10 месяцев, до введения инсура (страховки), уровень "одетости" персонажей больше походил на “сферовские” AOS серверы.

Первый год стал серьезным испытанием. Сервер часто падал, полноценного скриптера не было, возникало множество проблем как технического плана, так и проблем в плане скриптов и надежности работы нашего проекта в целом. Откаты при падениях могли быть до часа-двух, а падений, за неделю, могло быть несколько. Вставать в 3-4-5 часов утра для поднятия сервера было обычным делом, автоматической системы "безоткатных" крашей с авто-рестартом тогда не было. Время, потраченное на поиск и исправление ошибок, могло доходить до 2-3х (а то и более) часов, в которые сервер оставался выключенным. Хорошим онлайном в прайм считалось 20-30 человек, а ранним утром на сервере могло играть всего 2-3 игрока.
Однако, не смотря на все трудности, и временами, казалось бы, безнадежную ситуацию, работу было решено продолжать.

Была выбрана политика и философия сервера - держаться наиболее близко к официальным площадкам для игры (OSI). Худо-бедно версия игры была повышена на 1 аддон, до SA. Таким образом, мы стали первым в России сервером, работающем с данной версией дополнения, и первым в России сервером, поддерживающим клиент для игры Iris 2 (в последствии от его поддержки пришлось отказаться, из-за того, что разработчики перестали развивать свое детище).

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

Третья эпоха (2012)
Было решено сделать основной упор на качестве предоставляемой информации, поддержке, найти и начать работу с лучшими скриптерами, работающими с RunUO. Всего этого получилось достичь.

Мы добились повышения посещаемости ресурса на 350% по сравнению с прошлым годом, став, и до сих пор удерживая позиции одного из самых посещаемых сайтов с тематической информацией по Ultima Online. На пожертвования проекту удалось собрать, пожалуй, самый мощный и производительный сервер из всех, на которых когда-либо стояли серверы UO. Система резервирования информации была доведена до качества, при котором потеря сейвов была бы полностью исключена (2 независимых RAID массива, удаленный бэкап на 2 независимых сервера, стандартные бэкапы). Клиент игры был скачан более 8000 раз. В том числе, по количеству скачиваний, было завоевано лидерство среди всех наших конкурентов, на самом крупном торрент-трекере России. Сервер вышел в лидирующие позиции на сайтах многих игровых топов.

Разумеется, работа шла и над сборкой. Было закрыто множество критических уязвимостей, найденных в движке RunUO (большинство из которых присутствует практически на каждом сервере, т.к. не исправляется разработчиками, либо им о них неизвестно). Были закрыты также ошибки приводившие к крашам сервера, которые опытным путем находили в нашей собственной сборке, подбирая пакеты, отправляемые на сервер особым образом. Устранение всех подобных проблем, привело к тому, что сервер останавливался только для того, чтобы установить новое обновление, а аптайм мог легко составлять по 30 и более дней.
Вместе с этим заметно повысилась и надежность оборудования. Самый долгий даунтайм за весь год, связанный с техническими работами, составил всего 2 часа. Успешно была преодолена планка в 10 тысяч часов безотказной работы.

Показатели среднего онлайна возросли в 3 раза. Количество учетных записей плавно приближалось к 5000. Отталкиваясь от возрастающей нагрузки, нами была запущена полноценная служба технической поддержки, работающая через систему тикетов. Был переработан и полностью обновлен сайт, отвечающий за систему пожертвований. Была запущена промо-страничка на английском языке, для более комфортной работы с иностранцами.


Одновременно со всеми этими нововведениями мы сменили домен сайта на “uogames.ru”, что должно было положительно повлиять на нашу узнаваемость. В этом же году был объявлен конкурс на новое название сервера. Победил вариант "Inceptum", что переводится с латыни как "Начало". Помимо этого была проведена работа над созданием, наполнением и модерированием наших групп в социальных сетях.

Сервер постепенно обретал имя и становился известным широкому кругу игроков. Администрация же приобретала положительную репутацию, которая также способствовала притоку новых людей. Задача на новый год стояла очевидная - укрепить свои позиции и продолжать двигаться дальше.

Четвертая эпоха (2013)
По темпам и объему проделанных работ, этот год опередил оба предыдущих. Было введено дополнение “Hight Seas” и фактически полностью закончена работа над аддоном “Stygian Abyss”. Количество установленных апдейтов было выше, чем за оба первых года, вместе взятых. Суммарное их количество превысило пол тысячи, а работу над сервером вели достаточно известные в комьюнити разработчики (над сервером с момента открытия, работало более 10 программистов). Через систему поддержки было обработано более 600 запросов.

Стало активно вестись ручное заселение с OSI серверов, для того, чтобы спавны и карта расположения мобов полностью соответствовали оригиналу. Были введены в работу автоматические турниры, система захвата и удержания флага. Начались первые попытки конкурентов остановить нарастающее доминирование сервера с применением DDoS атак. Незаметно минула дата в 1000 дней онлайна.

Для более комфортного вхождения в игру новых игроков, не знакомых с миром Ультимы, были отсняты видеоролики, показывающие все аспекты игры и обучающие базовым вещам. Видеогиды оказались популярными и быстро набрали тысячи просмотров. Сайт был основательно доработан в сторону более удобного юзабилити, была введена автоматическая система для совершения пожертвований. Старая версия форума была закрыта, по причине того, что уже плохо справлялась с возросшей нагрузкой. Все базы были перенесены на новый форумный движок. Специально под наши серверы была написана новая система мониторинга, отображающая загрузку серверов игроками. Онлайн, тем временем, начал переваливать за отметку в 150 человек, что является отличным результатом, учитывая ничтожно малую, и к тому же постоянно идущую на убыль популярность игры.

Среди постоянно открывающихся и закрывающихся серверов, рисованных статусов и вещей, мы становимся островком надежности и стабильности. Год “Inceptum” заканчивает в лидирующих позициях в сегменте серверов работающих на RunUO. На сервере создано более 20.000 персонажей, он известен подавляющему большинству старых игроков и постепенно начинает привлекать иностранную аудиторию.

Это был самый спокойный год,.

Пятая эпоха (2014)
Начало года было ознаменовано рекордно высокими онлайнами. Планка в 200 человек была взята сразу несколько раз, в разные дни. Пришли и рекордно сильные DDoS атаки. При пиковой нагрузке достигающие скорости в 10-15 гигабит\сек и вызывающие серьезные перебои в доступности сервера. После 2х недель нестабильной работы было принято решение менять нашу сетевую инфраструктуру. Нужно было подбирать качественный дата-центр предоставляющий защиту и покупать стоечное оборудование. На это были потрачены все деньги за последние пару месяцев и неделя времени – мы обзавелись новеньким стоечным железом форм-фактора 1U. Оно позволяло держать не то, что несколько десятков серверов ультимы, но и топовый сервер на полной загрузке любой mmorpg игры. Все это добро было размещено в одном из лучших на тот момент дата-центров класса Tier 3 в Москве.

Была взята планка в 10.000 учетных записей, при том, что все пустые аккаунты на сервере удаляются. Также было принято решение об удалении неактивных персонажей, с геймтаймом менее 15 минут, либо без заходов в игру в течении 3х месяцев. Это позволило держать цифры "реальными", и не отображать фиктивную информацию, которая так активно "набивается" у многих конкурентов. Введено ограничение на количество одновременно запущенных окон с одного IP, что также значительно повлияло на "фиктивность" онлайна в лучшую сторону.

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

Помимо этого, в этот год было проведено первое в истории российско-украинского комьюнити слияние двух крупных серверов, с переносом и сохранением персонажей, игрового прогресса и имущества. Слиянию предшествовала долгая подготовка и переговоры на уровне администраций проектов, ведь все должно было пройти максимально гладко, как для переносимых игроков, так и для коренных жителей сервера. Была проделана большая работа, занявшая около месяца, учтены особенности и различия обеих площадок. Так шард Heaven's Gate (loveuo) стал частью Inceptum.

Шестая эпоха (2015)
В середине января, спустя примерно месяц после объединения, фиксируется максимальный за все время среди всех российских и украинских серверов ненакрученный (рисованный) онлайн. Счетчик онлайна более получаса держится на отметке в пол тысячи, часть сторонних сервисов по проверке онлайна фиксирует у себя результат в 516. Живой онлайн в это время показывает порядка 120 человек с оригинальными ip-адресами.

После этого события было решено добиться максимальной "распределенности" инфраструктуры проекта, понимая, что с резко возросшей нагрузкой глупо класть все яйца в одну корзину. Параллельно стояла задача, основываясь на нашем уже многолетнем опыте, исключить узкие места, с которыми время от времени возникали проблемы, выбирая лучшие из доступных решений. Повысить общую отказоустойчивость и стабильность. До этого года мы размещались в России. Начиная с этого года UOGames и Inceptum "разбросан" по России, США и Франции. В каждой из этих стран находится хотя бы одна часть, отвечающая за работоспособность проекта в целом - сервер, виртуальные машины, бэкапы, DNS и т.д.;

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

Шестая эпоха (2016)