Конец эпохи CraftBukkit

Эта статья повествует о закате серверной платформы CraftBukkit, которая являлась лидером среди других серверных платформ под Minecraft. Ситуация с CraftBukkit является очень наглядной в вопросах авторских прав и честности перед общественностью. Но обо всём по порядку.

Начало конца

Когда в 2012 году было объявлено о том, что несколько разработчиков CraftBukkit переходят на работу в Mojang, было высказано несколько грустных предположений, касательно того, чем всё это может закончиться. Мнения опирались, главным образом, на то, что новые сотрудники Mojang’а будут работать над PluginAPI, а также о планах по его реализации, озвученных на соответствующем Minecon’е.

Тогда казалось, что именно выход PluginAPI, должен был сыграть ключевую роль в жизни проекта:

  • Наличие родного API (особенно, если оно будет максимально приближено к BukkitAPI) автоматически перетянет разработчиков плагинов и модов: зачем использовать что-то стороннее, когда есть что-то родное;
  • Наличие ключевых разработчиков в подчинении позволит Mojang’у влиять на развитие проекта и снизить скорость реакции на выходы новых обновлений;
  • Ожидалось, что вместе с выходом PluginAPI будет объявлено что-то вроде AppStore или GooglePlay для закачки и, возможно даже, продажи плагинов и модов - это безусловно перетянуло бы к себе разработчиков даже самых консервативных.

Но на дворе 2014 год. PluginAPI так и не выпущен, Bukkit жив и процветает, а количество плагинов растет.

Вообще, за это время не произошло ничего особенного. Правда те кому Minecraft интересен в первую очередь Bukkit’ом, заметили что на Minecon 2013 не было Evilseph’а, одного из основателей и разработчиков Bukkit (хотя остальные члены “счастливой четверки” рассказывали о всяко-разном, много и эмоционально). Про Bukkit не было сказано ни слова. А Evilseph, как выяснилось потом, уволился из Mojang. Что ему там не понравилась - не ясно. Возможно он просто соскучился по Bukkit’у.

Тем не менее, 21 августа 2014 года, прогремела новость: Evilseph, а за ним несколько других “отцов-основателей” покинули проект и фактически объявили о его закрытии:


текст сообщения Evilseph

Три года назад, когда мы впервые прикоснулись к тому, что предлагал сообществу проект hMod (один из первых альтернативных Minecraft серверов), никто из нас не мог помыслить о том успехе, которого был достиг проект Bukkit. После первых шагов, по незнакомым камням (hMod исчез внезапно и без предупреждения) мы приняли вызов и продвинулись далеко вперёд, собрать замечтальную альтернативу всем другим серверным модам. Мы пошли даже дальше и занялись улучшением самого сервера Minecraft. Со всей гордостью и уверенностью, могу сказать: мы не только смогли создать платформу для тысяч разработчиков, которую они использовали для создания и развития своих идей, но и обеспечить безопасность при распространении, оперативно рассматривая и закрывая лазейки и дыры безопасности.

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

Когда проект Bukkit только начинался, да и ранее ещё при сотрудничестве с hMod, мы все понимали, что наш труд, несмотря на все благие намерения, попадает в серую правовую зону. Поэтому, первой задачей было “сделать все правильно”: связаться с Mojang, чтобы попытаться получить разрешение на продолжение работы и обсудить вопросы лицензирования. К сожалению, хоть нам и удалось связаться с Notch’ем и Jeb’ом (которые сказали, что хоть им не нравятся наши методы, но они понимают, что других альтернатив нет и что замечательно есть мы и то что мы делаем), получить официальное подтверждение, которое с юридической точки зрения, озвучило бы что нам разрешено или нет. До сих пор, наш проект находится в подвешенном состоянии, с неполным соответствием лицензии, которую всегда можно объявить недействительной и отсутствием возможности, с нашей стороны, хоть как-то повлиять на ситуацию.

В глубине души у нас давно зрело беспокойство о том, что в любой момент времени Mojang может решить, что им не нравится то, что мы делаем и закрыть нас - этого ждали все в течение первого года жизни проекта (ну или чуть больше), чего к нашему удивлению, так и не произошло. Такое, сознательное игнорирование нашего проекта Mojang’ами, придало нам уверенности чтобы продолжить начатое. И даже после внезапно возникшей ситуации с EULA, получили подтверждение от Notch, что нам разрешено развивать проект как и раньше.

Обратимся к более поздним временам, когда Mojang внезапно обратили внимание на пользовательское соглашение с точки зрения превращения Minecraft в игру жанра “pay-to-win”. Как я понимаю, все было направлено на запрет серверов, котороые применяли этот принцип, о соблюдении правил, которые сознательно не применяли с самого начала распространения Minecraft’а. Более того, теперь появились положения, о которых никто из нас не знал, в виде внезапно изменившегося пользовательского соглашения.

Самое важное: “Одно из главных правил заключается в том, что Вы не должны распространять то, что разработано нами”. Попытки разобраться с тем, что есть то “что разработано нами”, то могут только запутать ситуацию. В конце-концов Mojang может подвести под это любой мод, плагин или хак, и их недавний разворот с EULA вызывает именно такие опасения. Ну а учитывая, что юридически мы не жизнеспособны и не можем обеспечивать выполнения EULA, то наше будущее становится вполне определенным.

Сейчас, не самый лучший момент, чтобы утверждать, что всё безопасно и отстаивать Bukkit да и моддинг, вообще. Учитывая огромные и значимые изменения, которые грядут вместе с Minecraft 1.8 нам будет очень сложно обеспечивать обновления при отсутствии поддержки от Mojang, которая была у нас с момента найма нашей команды (Mojang предоставляли нам информацию для ускорения выпуска обновлений), слишком мало мотивации, чтобы развивать хромоногий проект. С точки зрения управления проектом, стало гораздо труднее находить интересующихся способных людей, которые могли бы помочь в развитии проекта на добровольных началах, вместо людей которые теряют интерес к Minecraft’у и ищут нечто-то большее.

Короче, это был последний гвоздь в крышку гроба.

Конечно, никто не может опровергнуть, что это был фантастический проект. В немалой степени это связано с поддержкой сообщества, а также множества предприятий и организаций, которые любезно решили поддерживать нас ресурсами, инфраструктурой и другой помощью - гораздо больше чем мы надеялись и просили. Нет столько слов, чтобы выразить нашу благодарность ко всем спонсорам, кто поддерживал нас, обеспечивал Bukkit инфраструктрой необходимой для того, чтобы достичь этого успеха. Чтобы перечислить всё что для нас сделали спонсоры нужен пост подлиннее этого, поэтому скажу кратко. Мы бы хотели особо отметить и поблагодарить eXophase.com за то что помогли подняться нам на ноги и обеспечивали хостинг с самого начала; Multiplay и Curse - они подхватили нас и обеспечили хостингом, которым продолжаем пользоваться и сейчас, в том числе для: dl.bukkit.org и наших сервисов BukkitDev; и конечно AllGamer за предоставление тестовых серверов, когда они были нужны для проверки обновлений, выпущенных билдов и отлавливании багов.

Ну и наконец, мы бы хотели поблагодарить всех участников проекта, прошлых и настоящих, которые посвятили проекту бесчисленное количество часов за все эти годы. У меня не хватает слов, чтобы описать как много эти люди значат для проекта и для меня. Команда ядра, которое постоянно работало на обновлениями для каждой версии, расширяло API и улучшало сервер сам по себе. Команда BukkitDev, которые тратили бесчисленные час проверяя все эти фантастические плагины, которые создавало сообщество. Команда модераторов, которые хранили на форуме порядок и спокойствие, для тех кто искал здесь сообщества и становился частью его. Много таких, кого я не могу назвать, которые помогали по-разному, без какого-то официального названия для той работы, что они проделали. И особенно, я бы хотел поблагодарить TnT и @mbaxter за то что прошли со мной весь этот путь от начала и до конца, за то что всего были готовы обсудить проблему и дать хороший совет.

Это были фантастических три с половиной года посвященных самой лучшей платформе для моддинга, которое использовало великолепное сообщество Minecraft. Мы действительно получали удовольствие наблюдая за подвигами наших разработчиков, администраторов серверов, достигнутые при помощи проекта и их изобретательность продолжает удивлять нас и сейчас. Спасибо всем за постоянную поддержку! Вместе мы смогли обеспечить Minecraft сотнями тысяч серверов (а наш последний рекомендованный билд скачали 2.6 миллиона раз), так что в итоге нам есть чем гордиться.

Это всё, пора прощаться. Это была удивительная гонка и мы достигли гораздо большего, чем можно было представить, особенно кульминацией в виде приема нашей команды на работу в Mojang. К сожалению, всё когда-то кончается и проект Bukkit, тоже изжил себя, оставив мне лишь возможность принять последнее невероятно сложное решение - закрыть проект, которому я посвятил три с половиной года своей жизни, который значил для меня очень много. Мы больше не можем спокойно распространять наши модифицированные версии севера Minecraft а также продолжать процесс обновлений. К сожалению, это означает что мы НЕ БУДЕМ обновлять как Bukkit так CraftBukkit для Minecraft 1.8. Он останется на стадии представления Minecraft 1.7.10 представленной с новой версией EULA. Кроме того, по понятным юридическим причинам, мы не будем помогать никому обновлять проект ни делиться нашими методами. Как сильно бы нам этого не хотелось. Хотя самого проекта уже не будет, мы продолжим поддержку сообщества, форумы, IRC и BukkitDev так долго, как долго смогут нас в этом поддерживать наши партнеры, предоставляющие нам ресурсы и инфраструктуру.

А что будет с нами? Ну… кто знает? Может мы найдём другую игру, программу или проект, которые нас привлекут так, что мы вернёмся с новыми силами. Лишь время покажет, но я надеюсь что там мы с Вами встретимся, когда бы это не случилось.


Пока сообщество переваривали эту новость выяснилось, что Bukkit уже как два года принадлежит Mojang’у, а бывший баккитовец Dinnerbone (тот самый, который вместо PluginAPI добавляет новые свистелки в Minecraft) пообещал лично выпустить Bukkit под грядущую версию 1.8.

И вот тут хочется отметить очень важный момент, который изменил судьбу проекта.

Если бы Jeb промолчал о том, что Bukkit давно продан, а Dinnerbone просто влез бы в проект на праве старожила, то собственно ничего бы не произошло. “Свято место пусто не бывает” и на место ушедших разработчиков и проверяльщиков нашлись бы новые.

Но слово было сказано: у Bukkit’а есть хозяин. И это не сообщество и не “отцы-основатели”, а вполне себе успешная коммерческая контора - Mojang.

В первый же вечер, в команде BukkitDev возник вопрос в форме шутки: “Это что же! Я всё это время пахал на Mojang?!”. И почти сразу все поняли, что это вовсе не шутка.

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

Понятно, что даже оставаясь независимым, Bukkit играл на руку Minecraft‘у, но ситуация возникает очень некрасивая. Дело в том, что проект Curse это не только Bukkit, но и множество других модов для разных игр. Но те кто участвует в модерировании форумов, проверяет эти моды получают какое-то вознаграждение. Тогда как члены команды Bukkit получали только моральное удовлетворение, которого их и лишила новость о том, что они оказались “рабами” Mojang’а.

Если взять для примера игру Battlefield, то и форум, и перевод, и справочник - всё это делалось самой конторой за собственные средства компании. Игроки привлекались только для открытых бета-тестов, изначальные же тесты проводятся наемными работниками.

Нотчевская же контора очень хорошо устроилась. Вспомним ещё несколько проектов, за которые Mojang не заплатила ничего, но которые фактически сработали на популярность (а значит и прибыльность) Minecraft’а:

Так что мотивы Mojang, в том почему сделка о приобретении Bukkit скрывалась так долго, вполне понятны: деньги, деньги, деньги, деньги.

Mojang молчал две недели. В первый день Dinnerbone сообщил, что Mojang обеспокоен судьбой проекта и обязательно что-то сделает хорошее.

Фактически сейчас у Mojang‘а три пути:

  1. Молчать, делать вид, что ничего не произошло.
    Тогда проект останется там где он есть. Даже если Dinnerbone будет выпускать новые версии, то CraftBukkit это не просто новые версии - это ещё куча работы по расширению функционала и работой над ошибками. Кто-то должен будет аппровить плагины: уверен энтузиазм у текущей команды скоро иссякнет.
  2. Делать всё самим.
    Банально выгнать всех и назначить (нанять) тех, кто будет работать за деньги. Врят ли этот путь выберет Mojang: это перечеркнет все труды потраченные на Realms и PluginAPI.
  3. Войти в диалог с сообществом и решить как жить дальше.

“И грянул гром”

3 сентября 2014 года.
На странице загрузки ядра CraftBukkit висит сообщение:

1
2
451 Unavailable for Legal Reasons
This content is unavailable as the direct result of a DMCA takedown request.

Что в переводе означает следующее:

1
2
451 Недоступно по юридическим причинам
Согласно запроса на удаление от DMCA данный контент недоступен.

Что же произошло? Дело в том, что пользователь Wolvereness накатал жалобу в DMCA (зарубежный аналог нашего РосКомНадзора) об ущемлении своих авторских прав.

Если коротко говорить о тексте сообщения, то Wolvereness поставил вопрос ребром о законности сокрытия приобретения Bukkit Mojang‘ом: получается, что компания нарушают права любого из участников проекта Bukkit, чей код был добавлен в ядро. Поскольку CraftBukkit распространялся по лицензии GNU GPL 3, которая предполагает включение только открытого исходного кода, то у Mojang было запрошено разрешение на включение кода оригинального Minecraft сервера. От Mojang‘а поступил официальный отказ и соответственно было выявлено нарушение. В итоге Bukkit закрыт анти-пиратским законом.

Т.к. тот же Spigot основан на коде CraftBukkit, то его автор md_5 тоже получил такое “письмо счастья” и его вариация сервера так же прикрыта на GitHub по преследованию DMCA. Но md_5 не собирается сидеть сложа руки. Донат, который раньше ни на что не тратился теперь потратиться на юристов.


текст сообщения Wolvereness:

От: Уэсли Вульф
Дата: 3 сентября 2014 03:48
Тема: [SL] [abuse-google] Копирайт

Меня зовут Уэсли Вульф. Сайт расположенный по IP-адресу принадлежащему Multiplaye (ip-адрес удален), распространяя программное обеспечение известное как CraftBukkit, посягает на нарушение моих авторских прав.

Авторский контент может быть найден здесь:

Соответствующая лицензия, на вышеприведенный контент, может быть найдена тут:
https://github.com/Wolvereness/Bukkit-Bleeding/blob/f210234e59275330f83b994e199c76f6abd41ee7/LICENCE.txt

Данная лицензия предполагает включение или предоставления ссылки на исходный код оригинального источника выпущенного под лицензией GNU GPL 3 или поздней версии. В** Mojang AB** было направлено официальное уведомление, на которое был получен ответ испольнительного директора Ву Буя (Vu Bui):

Mojang не давал разрешение на включение любого из проприетарных программных продуктов Minecraft (влючая Minecraft Server) в проект Bukkit, не делал его объектом лицензирования GPL или LGPL, как впрочем любой другой лицензии с открытым кодом”

Поскольку программный продукт Minecraft Server входит в CraftBukkit и оригинальный исходный код не был предоставлен, а его использование не было разрешено, то произошло нарушение моих авторских прав.

У меня есть полные основания предполагать, что распространяемый CraftBukkit включает контент, распространение которого не санкционировано владельцем, его представителями либо законом.

Страницы, на которых размещена информация нарушающая авторские права:
http://dl.bukkit.org/ - ссылки на:

У меня есть все основания утверждать, что вышеприведенная информация точна и что Я являюсь владельцем авторских прав либо имею право действовать от имени владельца авторских прав.

В соответствии с законом Digital Millennium Copyright Act (17 U.S.C. В§ 512(c)), вышеприведенные страницы должны быть как можно скорее удалены либо отключены.

Подписано электронно:
Уэсли Вульф

адрес удален
email удален


Реакция же сообщества была неоднозначно. Произошёл раскол. Большинство просто офигело от ситуации. Часть - заклеймила Wolvereness как врага майнкрафтовского народа. Кто-то даже высказал мысль, что инициатива принадлежала Mojang, которые решили так красиво уйти от вопросов, которые им фактически выставило сообщество Bukkit. Ну и довольно много людей увидели в этой истории положительные моменты, кто-то даже назвал Уэсли героем очевидно, представляя его эдаким Дон-Кихотом, который в одиночку кинулся на борьбу с мельницей Mojang’а. Сам же “герой”, в чате говорил, что он просто защищает свои авторские права и ничего более. В твиттере же он просто выразил благодарность всем кто выразил ему поддержку (https://twitter.com/wolvereness/status/507284461088538624).

Ранее, главное ожидание сообщества по части перспектив выхода новой версии CraftBukkit опиралось на слова Dinnerbone, который обещал своими мозолистыми руками собрать версию под Minecraft 1.8.

Однако сейчас мы имеем ситуации, при которой версия, выложенная Dinnerbone‘ом будет, скорее всего заблокирована Уэсли Вульфом (ну иначе зачем он всё это затевал?!).

Тем временем, исполнительный директор Mojang Ву Буй вышел таки на связь с сообществом:


текст сообщения Ву Буй

Думаю настало время поговорить о проекте Bukkit и нашей связи с ним. Надеюсь, это поможет разъяснить некоторое недопонимание, успокоить некоторых из вас, также дать ответ на ряд актуальных вопросов (или претензий), которые были подняты — в первую очередь претензии Уэсли (Wolvereness).

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

Во-первых, что касается Уэсли, грустно и обидно, что он поступил именно так как поступил. Никто не любит отвечать на что-либо публично, но разве у нас есть выбор?! Если мы молчим - это только увеличивает спекуляции, обсуждения удаляются от правды, и многие слыша какие-то слухи воспринимают их как факты.

Итак, что же мы имеем.

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

Официальный Minecraft Server, который мы выпустили, не включен в CraftBukkit. И поэтому нет никаких причин чтобы мы предоставляли исходный код Minecraft Server или давали разрешение на его использование. Наш отказ представить или разрешить использование оригинального кода Minecraft Server не может рассматриваться в контексте нарушения авторских прав как Уэсли, так и чьих-либо ещё.

Поэтому все утверждения Уэсли абсолютно безосновательны.

Ну а вообще-то, мы думаем, что Уэсли не имеет право препятствовать дальнейшему использованию кода, который был его добровольным вкладом в развитие проекта - он все делал, зная что к коду будет применяться лицензии с открытым исходным кодом. Мы считаем, что эти лицензии связывают всех кто участвовал в проекте Bukkit.

Mojang не принимал участие в проекте Bukkit, а значит, официальный Minecraft Server, который мы сделали доступным, не может попадать под действие соответствующих “опен-сорсных” лицензий.

Как Джеб, объявил в твиттере, Mojang приобрела права на проект больше двух лет назад. Они были предоставлены нам при найме, оригинальной команды для работы над Minecraft’ом и мы не трогали проект - и все в сообществе знают об этом. С одной стороны, у нас не было ни времени ни людей, чтобы им заниматься. С другой, это всегда был проект движимый сообществом, и мы не хотели (да и не хотим) лишний раз мешать. Лишь тогда, когда сообщество оказалось под угрозой, мы были вынуждены подать свой голос. И тогда же мы стали искать лучший выход из сложившейся ситуации.

Мы столкнулись с дилеммой: мы хотели бы иметь возможность поддержать сообщество и проект. НО:

  • Мы хотим, чтобы сообщество и проект сохраняли свою независимость;
  • Мы не хотим ущемлять свои права в отношение Minecraft’а, а поскольку здесь используется открытый исходный код, то мы не хотим разрешать (и никогда не разрешали) включать код любого ПО Minecraft, которое мы издавали, до тех пор пока мы не будем уверены, что это не приведет к тому, что кто-то сможет претендовать на получение прав на наш код Minecraft.

Именно поэтому действия Уэсли, нас очень разочаровали, и это также раскрывает причины по которым мы приобрели права на проект два года назад — чтобы иметь возможность остановить чьи-либо действия направленные на остановку или саботаж проекта и иметь возможность поддержать проект в ситуации, когда без нас не обойтись.

Выработать решение о том, как мы можем лучше всего помочь проекту Bukkit и сообществу будет не так-то просто и это потребует много времени, терпения и дополнительного изучения проекта Bukkit в целом. Мы только-только начинаем осматриваться, и в конце-концов, придём к решению, которое окажется на пользу всем участникам.

В тоже время, прошу отнестись к нам с пониманием; мы будем рады вашим предложениям и просим не пытаться отстаивать свои права в отношении того, что у Вам на самом деле не принадлежит.


На сегодняшний день, ситуация довольно печальная. От блокировки DMCA пострадали многие проекты и различные форки. В сети еще можно найти не заблоченные форки, но это всё похоже на карточный домик: не известно когда всё рухнет окончательно.

Итого, структура сообщества разрушена. Как и монополия CraftBukkit. Однако…

Рассвет новой эпохи: Sponge

Пока сообщество старательно переваривает случившееся, разработчики со всех уголков dev-сообществ (Spout, Bukkit, Forge, Glowstone, Spigot, Cauldron, CanaryMod, и другие) собрались вместе и создают новую платформу: Sponge, в основу которой ляжет Minecraft Forge и Spout.

На данные момент выпущен первый релиз Sponge API для разработчиков. Другие серверы тоже не отстают: Spigot, Forge и Spout уже выпустили свои сервера под Minecraft 1.8. Однако старт дан и этот паровоз уже не остановить (ну разве что подрыв рельсовой дороги).

. . .

15 сентября 2014 года.
Корпорация Microsoft приобретает компанию Mojang AB за $2.5 млрд.
Notch уходит из компании.

Отдельное спасибо fromgate за переведенные сообщения.