Почему разработчики игр не выпускают свой исходный код?

34

Мне было интересно, почему разработчики игр AAA не выпускают свои исходные коды после того, как их игра распродана, а поддержка давно ушла?

Конечно, есть этот список , где вы можете найти множество игр AAA с доступным исходным кодом.

Я просто не понимаю, почему другие компании не делают этого со своими старыми играми? Они, конечно, больше не поддерживают это, и продажи незначительны. Я даже не уверен, что если выпуск источника негативно отразится на продаже игр.

Я уверен, что многие игры, которые обречены на закрытие gamespy , могли бы быть сохранены сообществом, если бы их исходные коды были выпущены.

VSZM
источник
5
Правовые вопросы со сторонними библиотеками. Кроме того, тот факт, что игра больше не продается, не означает, что код еще не используется.
Бен
13
Не уверен, что это относится к разработке игр. Это общее для всех разработчиков.
MichaelHouse
1
@ Byte56 Я думаю, что это особенно актуально здесь, так как во многих других областях программного обеспечения на самом деле нет ничего необычного в том, что исходное очень старое программное обеспечение будет выпущено, я думаю, что игровое промежуточное ПО однозначно предотвращает это почти с играми.
Vality
2
Открытый код источника не является бесплатным. Требуется время для обслуживания, обработки запросов на получение ответов и обработки неизбежных писем поддержки, которые он генерирует.
суперсветовой
Я думаю, что есть много старых игр, которые выиграли бы от открытого исходного кода. Во многих старых играх все еще есть игроки, и если бы сообщество могло сделать свои собственные патчи, возможно, некоторые новые игроки купят старую игру.
ВСЗМ

Ответы:

56

Короткий ответ: потому что это обычно легальное минное поле, и обычно инвестиции или отдача от инвестиций, которые компания должна будет приложить, практически отсутствует.

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

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

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

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

Конечно, несмотря на это, есть еще одна довольно распространенная причина, относительно ортогональная юридическим вопросам: они просто не хотят . Возможно, им все равно, может быть, они надеются повторно использовать часть кода позже для повторного оживления оригинальной игры и так далее. Это их IP, они могут выбирать, как его распространять. Или распространять ли вообще.

Джош
источник
2
«Если это не принесет доход - не делай этого». С другой стороны, даже старые игры все еще продаются на таких сайтах, как GOG.
Кромстер говорит, что поддерживает Монику
11
Это напоминает мне историю о Jedi Knight II и Jedi Knight: Jedi Academy, которые были выпущены на github, а затем удалены через 2 дня из-за проблем с патентами на некоторые компоненты кода.
Lærne
«может быть , они надеются повторно использовать часть кода позже в перерасчете витализации оригинальной игры» или более вероятно , уже есть, или продал часть его кому - то еще ...
jwenting
и затем есть связанная художественная работа, которая является совершенно другой (но связанной) банкой червей. И особенно в старых играх художественные работы часто кодируются в двоичные файлы игры, поэтому их нелегко извлечь и удалить из исходного дистрибутивного архива.
jwenting
ИС означает интеллектуальную собственность, верно?
Пьер Арло
24

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

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

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

Яри ​​Комппа
источник
4
Вы, конечно, имеете в виду: «IP-тролли доблестно продвигают инновации, гарантируя, что существует прибыльная отрасль, посвященная покупке и монетизации прав изобретателей на свои изобретения»? Я так не думал.
user44630
6

Помимо того, что сказал Джош Петри, есть еще вопрос, как заставить что-то работать должным образом.

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

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

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

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

Даже если кто-то, например, заполучит исходный код движка Source, было бы ужасно полезно, если бы он захотел применить это в своем собственном проекте. Они были бы просто поражены.


источник
2
Хотя это и правда, это (и не должно быть) препятствие для выпуска исходного кода. Существовали проекты с открытым исходным кодом для переноса старых игр через SDL, на запуск которых уходили месяцы, но люди все еще прикладывают усилия для этого.
Яри ​​Комппа
Я на 100% согласен с тем, что этого не следует делать, но это большое решение, которое многие студии примут во внимание, прежде чем приложить усилия, чтобы сделать релиз.
На самом деле я предложил сделать очистку бесплатно для нескольких компаний, без участия (спасибо Remedy за то, что позволили мне сделать порт Death Rally =)
Jari Komppa