Smoke_John Любишь много букАф? ок - держи Про openborИнтересный и полезный вопрос. Если говорить про опенбор, то он сильно заточен под SOR-образные игры. Сколько ты там не будешь колдовать, тебе ничего не поможет, всегда игра сделанная на нём (для тех кто в теме), будет узнаваема по физике, механикам, даже худ, сколько его не перерисовывают, не меняют расположение, каждый под себя, один хрен, его функционирование будет SOR-овское. То есть на опен-боре можно сделать абсолютно любую SOR-подобную игру, это надо понимать сразу, никакие жабы похожие на оригинал - там никогда не сделаешь, то есть "СВОЁ", со своими расчётами, со своей математикой, со своим характером физики и обработкой не получится, никак, ни кодом ни какими другими наивными способами.
Про движок на котором пилятся ЖабыС опенбором разобрались, теперь про движок на котором делаю я.Ок. Начнём с того, что это даже не движок, по крайней мере я его не рассматриваю как игровой движок и конструктор (хотя разработчики позиционируют его как конструктор игр, на котором типа можно сделать игру за 5 минут без единой строчки кода и знаний программирования, тут как бы и правда и нет - одновременно, разберёмся в этом чуть ниже), я бы назвал это своеобразный фреймворк, со специфичным инструментарием. На таких софтах не обязательно делаются только игры, можно сайты, утилиты, программы и т.д.
Что ж, поговорим о лозунге разработчиков софта, с которым они его продают "С нашим конструктором ты сможешь легко сделать игру своей мечты не написав ни единой строчки кода и без знаний программирования" (по моему это девиз всех современных конструкторов, тот же констракт2-3 себя также позиционирует) - Тут конечно 15% правды и 85% вранья, по крайней мере если рассматривать конкретно софт, на котором пилю я.
Разберёмся чуть подробнее. В движке есть базовые какие-то механики, физические шаблоны ну и т.д. как и в любом другом, то есть в Гамаке тоже самое, поведение "платформер" (ходить влево/вправо, прыгать, столкновение с препятствиями), поведение "8 направлений" и т.д. в общем ничего нового, это всё есть в любом движке. Наверное в этом софте все эти элементы легче эксплуатировать, по сравнению с тем же гамаком допустим или любым другим движком, не знаю, не уверен - не в этом суть. Так вот, используя базовые шаблоны движка - действительно, какой-нибудь школьник, или просто далёкий от игр новичок, немного разобравшись - сможет за 5-10 минут научить объект прыгать и двигаться влево-вправо без особого труда, делается это элементарно, добавляем на игровое поле новый объект, идём в его свойства и в свойствах в разделе "поведение" выбираем нужное нам и, надо же, даже управление настраивать не нужно, уже на стрелки и пробел можно бегать и прыгать. То есть тут разработчикам не предъявишь, лозунг ихней рекламы можно доказать на деле, но на этом всё и заканчивается, будет шаблонное управление, кастомного управления средствами шаблонов не сделаешь, можно только пере-запрограммировать привязанные к управлению кнопки, уникальную механику не построить, параметры, которые можно править в шаблонных механиках - ничтожны, повлиять особо не на что, кроме скоростей. Ну для детей сойдёт наверное, почему нет, можно супер-марио какое-нибудь сделать, или Чип и Дейл, но всё это будет далеко от оригиналов, топорное, унылое.
Про жабыЕсли же мы говорим о таких больших и сложных проектах как Battletoads, со всей их геймплейной особенностью, где большое множество разных механик, чудовищное количество постоянно меняющихся параметров, всё динамическое, чувствительное к событиям на экране и т.д. и т.п. То весь этот базовый мусор, который предлагает движок, что называется "из коробки" - совершенно непригодный хлам. Как правило в больших сложных проектах ничего базового не используется, если мы хотим реализовать СВОЮ игру, с собственным почерком, характером, со своими тонкостями, то придётся делать всё руками, с нуля, без всяких шаблонов. Но так как полноценного кода писать, типа не требуется (хотя в моём случае уже не обойтись без написания реального кода, хоть и скриптовым языком, я выше уже писал, есть модули, позволяющие писать на Пайтон и Си-шарп, но у меня они не работают почему-то, работает только LUA), то приходится делать это с помощью сложных математических формул (теперь уже и писать на LUA), да и всё равно - игровая логика очень напоминает код, движок написан на плюсах, если кто знает этот язык - то он почувствует интуитивно как в движке всё работает, при знании функций C++, можно их вызывать и оперировать с ними в математических выражениях, движок их принимает, да - там специфично, объявить функцию с параметром, в привычном понимании программирования не получится, нам только необходимо знать имена функций C++, их свойства и т.д.( вообще не обязательно использовать функции плюсов, движок не заставляет, просто есть такая возможность)
Очень кратко и поверхностно о принципах построения игровых механик Сложные механики реализуются многоэтапными умножениями, делениями, сложениями, вычитаниями, квадратными корнями ну и всё такое, благо, считать не приходится - есть калькулятор)), но формирование математических выражений и формул - к сожалению придётся вспоминать, если кто забыл и хочет делать крутые игры.
Однако возможность писать дополнительные скрипты на LUA, открывают прям совсем широкие возможности, по крайней мере сложные вещи, можно решить более простым способом. Конечно, помимо формул и операций, вся структура проекта хранится в так называемом окне кода (редактор списка событий), структура сама по себе выстраивается некоторыми блоками с логикой - напоминая немного обычный код. Под-события, сабы и дочерние условия внутри блока, визуализируются с отступом, эдакая отсылка к классической структуре кода, также можно создавать группы и добавлять в них куски кода, чтобы сворачивать/разворачивать когда код уже гигантский, комментировать области тоже можно, в общем всё, что есть в современных движках в техническом плане. Никакого "визуального" программирования там нет, как кто-то писал где-то не помню, не имея понятия вообще о движке, ничего перетягивать мышью там не надо, никакие блоки и квадраты с логикой не надо соединять никакими нитями как в гамаке или где там, в этом движке вообще нет ничего подобного, блоковая система про которую я писал выше - это не про это, а про структуру проекта, она выглядит вот так примерно:
Само собой, код на LUA пишется по человечески, вот в таком окне:
Работа с графикой и звукомК графике нет никаких требований, жуёт всё, что плохо лежит. PNG-8, PNG-24, PNG, JPEG, GIF, PCX, FLC, TGA, BMP.
Видео, вроде бы только AVI - не уверен, не работал с видео.
Звук: wave, mp3, ogg, MOD, Aiff.
ИтогиВ общем подведём итог. Без кода игру написать можно? можно - примитивную, ограниченную, упрощённую, но тем не менее можно. Разработчики не наврали? нет - не наврали, просто скрыли 80% остального геморроя, с которым придётся столкнуться разработчику с серьёзными запросами к проекту
Можно ли сделать на этом софте игру абсолютно любой сложности? - совершенно точно можно! Математика границ не имеет - по крайней мере в рамках разработки игр, так что можно делать что угодно, как угодно, сколько угодно.
Какие особенности (поверхностно и кратко)Интерфейс непривычный, древний, расположение инструментов не совсем удобное (есть возможность перераспределять положение окон с инструментами) но всё равно - придётся привыкать. Тот кто шарит в программировании - может впасть в ступор в некоторых моментах, например циклы называются Loops, в коде так и объявляется "Loops" (можно через выпадающее меню объявить, можно в строке "кода"), while не проканает, но если привыкнуть, то нормально. Поэтому - я бы не стал рекомендовать этот движок для создания игр тем, кто не имеет даже базовых знаний в программировании, будет очень трудно, надо иметь представление как выстраивается игровая логика, понимать принципы вычисления дистанции, не имея на руках знаменателя и числителя, вычисление окружностей - не имея на руках радиуса и диаметра, как работают циклы и какими они бывают (ну, кто в теме, тот в курсе) , также понять как работают они конкретно в этом движке (тут всё по другому, но мне даже так нравится, удобно лично для меня, необычно, интересно, любопытно)
Да и вообще насколько этот движок могуч в плане возможностей
Все возможности ограничиваются только знанием самого движка и знанием сложных математических формул и расчётов, также знанием языка LUA - если потребуется, или Python и C# (у меня два последних не поддерживаются, но я видел люди на них писали).
Почему я выбрал именно этот софтВо первых цена: стим версия стоит 11к рублей со всеми дополнениями и расширениями, 1 раз купил - и больше платить не надо, чего не скажешь про констракт и тем более гамак. Из минусов - нужно через стим синхронизироваться, но это не мешает.
Во вторых, я хотел именно такой инструментарий, где не надо писать код, не то, чтобы я искал лёгких путей, основной критерий по которому я выбирал - это время! Время требуемое на разработку уникального бит ем ап движка, со своими фишками, не похожий не на какие опенборы деревянные и прочие.
К сожалению не всё так просто оказалось как я предполагал, большой проект требует всё же написания кода, уже довольно не малый, решать непростые и специфические задачи, включать критическое мышление. Движок на самом деле для людей творческих и готовых нестандартно мыслить, шаблонным псевдо-программистам точно не подойдёт. Для работы с движком - знания в программировании обязательно нужны, хотя бы базовые, не смотря на то, что разрабы позиционируют его как типа игры без программирования, но это не совсем правда. Также - опыт в ромхакинге поможет принимать оптимальные решения при построении игровой логики, независимо от специфики движка.
Пару слов о разрабахВ завершение отмечу, что разрабы французы, а французы всегда были лучшими математиками (по крайней мере раньше - точно), тут у них не отнять, движок очень сильно отражает эту науку, хотя совершенно не требует знаний высшей математики, однако для супер-крутых разрабов пригодится и это.