Interested Article - MaNGOS
- 2020-05-28
- 1
MaNGOS ( Ma ssive N etwork G ame O bject S erver) — бесплатный проект, распространяемый по лицензии GPL . Целью проекта является создание альтернативного программного обеспечения для работы сервера для популярной игры World of Warcraft от Blizzard Entertainment . Проект MaNGOS существует только в образовательных целях, и ни в коем случае не направлен на извлечение прибыли. Исходный код проекта написан на C и C++ , он является свободным , то есть можно его изменять, вводить свои поправки и улучшения, перекомпилировать по своему усмотрению. MaNGOS реализован под операционные системы Linux , Mac OS , Solaris , Microsoft Windows и FreeBSD . Поддерживаются СУБД MySQL и PostgreSQL .
Из-за естественного состояния в реализации поддержки очередных обновлений World of Warcraft , MaNGOS всегда будет находиться в стадии beta-версии . Так как использование MaNGOS в коммерческих целях или для организации public-серверов (доступных для игры и регистрации из Internet) является незаконным во многих странах, MaNGOS team отказывает в поддержке таким серверам и связанным с ними людям вне зависимости от местоположения таких серверов. В том числе, отказывается в доступе к web-ресурсам поддерживаемым MaNGOS team и ряду web-ресурсов где члены MaNGOS team принимают участие. MaNGOS может использоваться только в локальных (городская сеть, региональная сеть в масштабах провайдера Интернет ) серверах.
Сам по себе проект вполне легален, с точки зрения европейского и российского законодательства и не содержит данных, нарушающих права создателей World of Warcraft . Существуют отдельные проекты по наполнению базы данных проекта и написанию скриптов для уникального поведения отдельных неуправляемых игроком персонажей. Вышеупомянутые независимые проекты находятся в более сложном положении с точки зрения соблюдения закона, так как пытаются наполнить мир в соответствии с игровым миром оригинального World of Warcraft .
В серверах, построенных на основе MaNGOS до сих пор имеются программные ошибки, недочеты. В основном, это выражается в прохождении игровых заданий, а также в поведении неуправляемых игроком персонажей. В серверах используются база данных, в которой находится игровой мир World of Warcraft — такие базы на сленге называются заселением. Основным источником ошибок являются именно эти базы. Постоянно ведутся работы по улучшению этих баз.
На данный момент существует несколько команд, которые создают эти базы: UDB , . Есть и другие проекты баз. Базы различаются наполненностью, завершенностью, наличием ошибок, и степенью следования при населении мира исходному канону мира World of Warcraft .
Известна только одна команда делающая скриптовую часть:
Даты выхода версий
- Версия 0.0.1 — Endeavour (13 сентября, 2005)
- Версия 0.0.2 — Library (31 октября, 2005)
- Версия 0.0.3 — Mango Carpet (Внутренний релиз)
- Версия 0.1 — Lightbringer (4 декабря, 2005)
- Версия 0.5 — Stable Master (20 сентября, 2006)
- Версия 0.6 — Black Dragonflight (29 января, 2007)
- релиз для версии клиента 1.12.1, разработка для этой версии клиента продолжается в репозитории
- Версия 0.7 — Eye of the Storm (24 апреля, 2007)
- Версия 0.8 — Innkeeper (17 октября, 2007)
- Версия 0.9 — Flight Master (18 декабря, 2007)
- Версия 0.10 — (17 апреля, 2008)
- Версия 0.11 — (22 июля, 2008)
- — (22 декабря, 2008).
- релиз для версии клиента 2.4.3, разработка (перенос исправлений и новой функциональности из master-ветки) для этой версии клиента продолжается в репозитории
- — (10 июня, 2009).
- — (6 октября, 2009).
- — (10 января, 2010).
- — (2 июля, 2010).
- — (17 ноября, 2012).
master-версия
Разработка для версии клиента 3.3.5a продолжается в -ветке проекта.
Скриптовый движок
MaNGOS реализует скриптовый движок, позволяющий создавать автономные модули-«скрипты», отвечающие, например, за искусственный интеллект монстров, сценарий битвы на определённом поле боя и др. Для этого во время инициализации сервера загружается динамическая библиотека , содержащая скомпилированные «скрипты». Это позволяет произвольно изменять многие аспекты игрового мира (например, поведение монстров) без перекомпиляции основного ядра MaNGOS.
ScriptDev2
Одним из наиболее популярных проектов по созданию скриптов для MaNGOS является ScriptDev2 . ScriptDev2 поддерживает последнюю версию MaNGOS и поставляет множество различных скриптов, реализующих работу как отдельных игровых предметов, так и целых рейдовых подземелий .
Ответвления проекта и расколы
Из-за несогласия с кардинальным изменением в методологии разработки в команде разработчиков произошёл раскол и большая часть старого ядра членов команды продолжает разработку MaNGOS в проекте с официальным форумом на , меньшая часть сохранила контроль над старым репозиторием и форумом .
В связи с лёгкостью и привлекательностью создания собственного « форка » проекта, на GitHub ответвлений проекта находится около тысячи . Обычно разработчики таких форков добавляют мелкие исправления в работу разных систем сервера, но бывают и форки с колоссальными изменениями, которые потом вносятся в основной репозиторий.
TrinityCore
Одним из самых больших и наиболее активно развивающихся форков проекта MaNGOS до сих пор является TrinityCore. Некоторых сторонних разработчиков, не входящих в список разработчиков MaNGOS, не удовлетворила их политика разработки: предлагаемые сообществом патчи часто не рассматривались для добавления в основной репозиторий долгое время, что зачастую препятствовало разработке. Они объединили MaNGOS и ScriptDev2, получившийся продукт назвали TrinityCore, и в довесок создали проект Trinity Database, предоставляющий базу данных для TrinityCore .
Ссылки
- от 18 января 2013 на Wayback Machine
- на GitHub
- на GitHub
- Ляшко В. // Хакер . — 2009. — № 123 . — С. 130—133 .
Примечания
- . Архивировано из 28 июня 2012 года.
- . Архивировано из 21 ноября 2012 года.
- . Архивировано из 9 июня 2012 года.
- 2020-05-28
- 1