LINUX.ORG.RU

TheXTech: кроссплатформенный порт Super Mario Bros. X

 , ,

TheXTech: кроссплатформенный порт Super Mario Bros. X

4

2

Кроссплатформенный порт Super Mario Bros. X, фанатской игры по мотивам вселенной Марио, созданной в 2009 году американцем Эндрю Спинксом, полностью написанный на С++. Проект получил название TheXTech по принципу: «The Super Mario Bros. X Tech». Он полностью воспроизводит старый движок SMBX 1.3 (кроме редактора), исправлены критические ошибки, приводящие к сбою или зависанию игры.

Об оригинальном движке SMBX

Несмотря на полное прекращение разработки игры в 2011 году, она была востребована и продолжала широко использоваться сообществом. Игра привлекла внимание разработчиков-энтузиастов, которые создавали для неё вспомогательные инструменты, а также делали попытки модифицировать и расширить игру. Самыми известными из них являются набор разработки из тулкита Moondust Project (изначально называвшимся PGE Project) и библиотека LunaLua (изначально известная как LunaDll), расширяющая функционал игры посредством dll-инъекции. Исходный код игры долгое время был закрытым. Однако всё изменилось, когда 2 февраля 2020 года на форуме были опубликованы исходные коды игры.

Геймплей

В игре возможно играть за одного из 5-и персонажей: Марио, Пич, Луиджи, Линк и Тоад. Присутствуют три режима игры: одиночный, вдвоем в кооперативном режиме и режим битвы, в котором игроки должны побить друг друга, пользуясь различными подручными средствами.

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

Подробности технической реализации TheXTech (habr.com)

>>> GitHub автора порта



Проверено: hobbit ()
Последнее исправление: demidrol (всего исправлений: 4)
Ответ на: комментарий от chenbr0

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

начнем с того, что использовать регистрированных персонажей можно.

anonymous
()
Ответ на: комментарий от anonymous

Понимаешь, грубо говоря, это не нам решать, а автору или правообладателю. Тем более, речь об игре, а не например о каком-то медицинском софте или лекарстве.

пусть отсосет этот правообладатель. Будут еще указывать как людям творчеством заниматься и что можно, а что нельзя.

anonymous
()
Ответ на: комментарий от anonymous

Такого, наверное, не бывает. Если захотят закрыть со стороны государства (по решению суда, например), то и личный домен с GitLab прикроют. Как вариант - личный репозиторий на localhost (если «маски-шоу» не опасаетесь, смотря что хранить).

atiradeon
() автор топика
Последнее исправление: atiradeon (всего исправлений: 1)
Ответ на: комментарий от atiradeon

а зоны *.to всякие? Или *.is? На крайняк *.onion

anonymous
()
Ответ на: комментарий от atiradeon

Хех, там некоторые миры уже с сохраненками)

Dog ★★★
()
Ответ на: комментарий от pihter

Реверснутый. Права у TakeTwo, она то и судилась с разработчикми re3 и по её заявке блочили репу на гитхабе.

Sunderland93 ★★★★★
()

Если устраивает учесть Another Metroid 2 Remake, то почему бы и нет, но исходнички придется закрыть.

anonymous
()

Механика хорошо передана, но закопирайченный арт - это такое, конечно… Заменить бы Марио на Тукса и был бы топовый платформер. :)

nab_linux
()
Ответ на: комментарий от nab_linux

Заменить бы Марио на Тукса и был бы топовый платформер

Так никто не мешает. Можно создавать свои эпизоды, можно создавать своих героев. В этом и суть открытого движка.

atiradeon
() автор топика
Ответ на: комментарий от anonymous

Отвечаю:

  • под юридическим прицелом именно ресурсы (графика, музыка, звуки)
  • в самом репозитории ресурсов SMBX нету, они хранятся на сервере
  • планы по замене краденных заимствованных ресурсов есть, и уже сейчас есть несколько вариантов альтернативных ресурсов пакетов.
  • SMBX это по факту клон по геймплею, но при этом имеет несколько уникальных фич, и в общем отличается от оригинальных игр физикой
  • В английском праве (которому следует основная масса копирастров) есть понятие, как «справедливое использование». В моём случае, нигде нет никакой рекламы, денег на этом не зарабатываю вовсе, и отдельно лицензировал код как GPL по совету людей, чтобы отбить желание всяких барыг воткнуть двиг в какую нибудь коммерческую обёртку и наживаться на этом.
wohlstand
()
Ответ на: комментарий от anonymous

P.S. Одна из таких альтернатив, это игра «Adventures of Demo», созданная на базе оригинальных ресурсов сообщества Talkhaus (в основном занимавшимся ромхаками), и персонажи там:

  • Дэмо, демоническая безрукая инопланетянка-циклоп, оператор командного центра
  • Ириска, сестра Дэмо, у которой есть котоламы (вместо Йоши)
  • Куд, межгалактический боец за свободу
  • Сэм или Раокау, друг Дэмо с земли (отсылка к ютуберу raocow из Канады)
  • Шиф, энергичная девушка-подросток с маленьким мозгом и пониженной внимательностью

По сюжету оригинальной линейки игр (ромхаки и постройки на базе SMBX), они вместе путешествуют по разным мирам и вселенным, решая различные проблемы. Adventures of Demo это мой спин-офф, задуманный, чтобы постепенно адаптировать уровни и эпизоды, созданные под SMBX в новую вселенную.

wohlstand
()
Ответ на: комментарий от untitl3d

Было бы все так просто… А вот ни фига: почитай статью, я там всё расписал подробно. Конвертер не волшебная, палочка, и работает сильно с ошибками: много исправлять лапками за конвертером. Это лишь инструмент для преобразования синтаксиса и всё, логику только лапками. Часть кода я писал с полного нуля отдельно, потому что надо было специально реализовать недостающие модули, а также адаптировать код для работы на разных платформах, а не только под виндУз.

wohlstand
()
Ответ на: комментарий от anonymous

Ещё забыл добавить, в наборе ресурсов есть своя отдельная лицензия, которая чётко предупреждает о том, что ресурсы не свободные, и их содержимое принадлежит по праву Nintendo, и отдельная просьба использовать их справедливо, и не использовать в коммерческих целях. Я прекрасно осведомлён о том, что в случае требований удалить ресурсы, я их удалю, и на замену им будут идти альтернативные, полностью отличные от Марио.

wohlstand
()
Ответ на: комментарий от anonymous

Изначальный автор, кстати, получил туманов от Nintendo (по слухам), и вот за что:

  • домен «supermariobrothers.org» использовал товарный знак Nintendo (название серии игр), и Nintendo требовала передать домен им
  • на этом сайте, Эндрю ставил рекламы и не мало (паразитировал)
  • в инсталяторе и в загрузочном окне игры, опять, была реклама! Вот он и нарвался.
  • дальше, игра гуляет уже более 10 лет по просторам инета, и на её базе народ плодит уйму уровней и эпизодов, и никто ничего не предъявляет (кроме некоторых троллей, которые лишь притворяются нинтендоидами, товарищ чётко знает, кто точно из Nintendo). Но, это не повод радоваться. Ресурсы игры всё равно не свободны, и всё равно, если что-то правообладателю не понравится, я удалю ресурсы с сервера, сфокусировавшись только на Adventures of Demo и других.

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

wohlstand
()
Ответ на: комментарий от turtle_bazon

А оригинальные баги сохранены? Спидран не поломается?

Баги сохранены, и специально для нужд сообщества спидраннеров я реализовал несколько удобных опций, чтобы отключать все мои фиксы и улучшения игровой логики (я исправил по большей части баги, которые невероятно бесили при обычной игре, но создал compat.ini, чтобы люди могли включать баги обратно, особенно если уровни на багах и построены). Есть ещё режимы совместимости трёх уровней, и есть специальный режим сеидраннера со встроенным таймером, который считает время через кадры физики (они там жёстко идут по 1/65 секунды каждый шаг). И обязательно сделал жёсткую выдержку частоты, чтобы не было разницы в реальном времени между портом и оэоригиналом.

wohlstand
()
Ответ на: комментарий от atiradeon

Заметил редкие небольшие тормоза в интерфейсе стартового меню.

Это всё из-за системы ленивой распаковки графики, которую я сделал, чтобы уменьшить потребление оперативной памяти. Именно в главном меню, насколько игровых персонажей часто меняют свои состояния, погружая тем самым новую текстуру (для игровых персонажей это спрайт 1000x1000). На мощных компьютерах не заметно вовсе, на более слабых может и сильнее притормаживать. Можно отредактировать gameinfo.ini и совсем отключить бегоню персонажей (можно начиная с версии 1.3.5.2), чтобы меню работало нормально.

wohlstand
()
Ответ на: комментарий от anonymous

Я знаю Hedgewars очень давно, задолго до начала меню каких либо проектов. И именно они меня вдохновили на то, чтобы сделать на базе SMBX и альтернативного движка, совершенно новую игру, которая бы сильно отличалась, ровно что Hedgewars делает: реализует логику и геймплей, а графика, звуки, музыка, общая атмосфера уникальны. Автор говорил, что Team17 пыталась наехать на них, и они успешно послали последних. Движок SMBX, созданный Эндрю Спинксом, по факту оригинальное творение со своей физикой и плюшками. Нарушения с его стороны это использование ресурсов, персонажей и имени чужого, и одновременно попытка на этом заработать. Очень хорошо, что Эндрю начал Террарию, она получилась в миллион раз лучше, чем SMBX: и движок более продуманный и более развитый, и идея оригинальная. Для меня SMBX не более, чем просто хобби между мною и друзьями.

wohlstand
()
Ответ на: комментарий от R_He_Po6oT
  • Подозреваю, что балаган в сообществе доканал его (первая ласточка, что он закрыл у себя форум совсем из-за того, что он превратился в котёл ненависти, и админы измотаны нашествием токсичного быдла)
  • Nintendo наехали на него из-за домена и из-за рекламы у него на сайте, чем он паразитировал на товарных знаках Nintendo.
wohlstand
()
Ответ на: комментарий от unixnik

Эндрю Спинкс уже получил за это кувалдой, но при этом, игра продолжала гулять по миру, и даже народ организовал новую площадку «supermariobrosx.org», которая живёт с 2013го года, и никто не наехал на них. Но всё равно, висит некая неопределённость с юридической точки зрения. Народ дружно трактует, что игра и её ресурсы используются по принципу «справедливого использования» в английском праве, чтобы не нарваться на копирастров с ядерной боеголовкой.

wohlstand
()
Ответ на: комментарий от anonymous

Тьма глобальных переменных прямо скопирована из VB6-кода Эндрю, а там они кишат.

wohlstand
()
Ответ на: комментарий от chenbr0

С этим я полностью согласен, и поэтому с самого 2013го года (когда я впервые нашёл игру), я задался идеей сделать альтернативу, чтобы без морковки для копирастров. Мне понравилось сама идея SMBX-движка, но не понравилось отсутствие гибкости в нём. Так я основал мой проект Moondust, который представляет из себя игровой движок (ещё недопиленный пока) и набор разработки к нему (который совместим с SMBX по некоторой части, и сообщество прямо использовало мой редактор из набора в качестве замены встроенному редактору SMBX, который был весьма неуклюжий). Я ещё занимался обратной разработкой совместно с друзьями, чтобы повторить логику SMBX до открытия исходников. Но, это долго и больно. Как открыли исходники, создал TheXTech, и теперь решил так: TheXTech останется для игры в старые эпизоды и как прямое продолжение оригинальной игры. А Moondust будет переориентирван на создание новых проектов с нуля, без оглядки на прошлое.

wohlstand
()
Ответ на: комментарий от Psilocybe

лучше сразу 4K :D

У меня на одном из Discord-серверов, залез один чел, и он прям мечтает, чтобы был 4K-SMBX. Это стало мемом и прямой отсылкой к этому челику, который кстати забанен за то, что лез в личку к людям с фигнёй, а также плодил аккаунтов сотню, мы все устали его банить, и даже сделали список, чтобы одним махом пожаловаться на него.

wohlstand
()
Ответ на: комментарий от R_He_Po6oT

Хм, был какой-то фанатский Марио с порталами

Эта игра называется Mari0

закрыли

Сомневаюсь, игра жива и здорова, хоть и не развивается более (последние официальные коммиты были в 2018м году на главной ветке и в 2019м на дополнительных): https://stabyourself.net/mari0/

Максимум, что я накопал, это разработчики официально отменили выпускать продолжение из-за проблем в коде и объяснения того, что они не ожидали того, что работы будет больше, чем они предполагали: https://blog.stabyourself.net/post/126530638628/mari0-se-gamescom-the-future

wohlstand
()
Ответ на: комментарий от R_He_Po6oT

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

Не кажется ли, что это чей-то ремейк Super Mario 64? Его точно «приговорили» (через DMCA-запрос потребовали удалить игру из публики), потому что это прямое копирование оригинальной игры один-в-один (почти).

А этот «порт» сколько протянет?

Будет жить столько, сколько он будет интересен мне и сообществу. И даже если полностью удалить все ресурсы, связанные со вселенными Nintendo, сам по себе движок будет жить и развиваться.

wohlstand
()
Ответ на: комментарий от wohlstand

Спасибо за разъяснения. Значит я всё напутал. Значит то были другие проекты.

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от wohlstand

Не знаю на сколько близко подобрались к Super Mario 64, но начинался проект как проба игрового движка Блендера, а потом перекочевал на игровой движок, но уже не помню какой.

А вообще, если бы кто-то занялся не ремейком, а чем-то похожим, беззлостным, детским, то с удовольствием поучаствовал бы моделя 3д модельки. А то свои проектюлечки никак не докончу, налеплю героев в Блендере, потом завязну в логике и пр. Никто палкой не гонит, и лежат десятилетиями, и удаляются заботливыми котиками и дочками :)

R_He_Po6oT ★★★★★
()

Лучший Марио из всех, говорю как маревобой. Замечательная новость!

Надеюсь, редактор тоже добавят. Редактор вообще лучше бы расширить до уровня Dizzy, чтобы можно было делать паццл-платформеры с сюжетом, инвентарем и др. В текущей версии доступны только NPC и диалоги. Вообще было бы здорово сделать конструктор для всех видов платформеров: обычные (в духе Super Mario), паццл-платформеры (Dizzy, Lost Vikings) и метроидвания (со своими power-up-ами и прокачкой персонажа). И чтобы создаваемые игры можно было запускать на Android, это был бы EPIC WIN.

Den_Zurin
()
Ответ на: комментарий от nab_linux

В последних версиях там можно было создавать своих персонажей.

Den_Zurin
()
Ответ на: комментарий от Den_Zurin

Надеюсь, редактор тоже добавят. Редактор вообще лучше бы расширить до уровня Dizzy

Редактор уже есть, но его надо качать отдельно, и он идёт в отдельным проекте движка, находящимся в разработке, называется Moondust Project. Есть статья, рассказывающая кратко о том, как создавать уровни и эпизоды под эту игру. Что про функционал игры, это отдельная тема, и уже имеются большие планы по расширению, а также по доработке собственного движка в проекте Moondust Project, который и создавался для новых проектов с возможностью реализовывать любые фичи с помощью lua-скриптов. TheXTech первым делом создан для сохранения полной обратной совместимости со старыми уронвями и эпизодами, созданными под оригинальный SMBX с определённым набором улучшений и расширений.

В последних версиях там можно было создавать своих персонажей.

Ну их всегда можно было «создавать», подсовывая собственный спрайт вместо определённого персонажа, и также хаками меняя поведение последнего.

wohlstand
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.