Как стать автором
Обновить

Комментарии 28

Интересно… тоже как-то пытался воплотить в жизнь простенькую 2.5D мморпг с генерируемым и изменяемым миром. основные задачи — дать игрокам бесконечные возможности развития, чтоб убрать само понятие капа и полностью генерируемый живой мир, который меняется под воздействием игроков. Основой мира была клетка карты, которая видоизменялась в зависимости от воздействия на нее ( например — применил мощную магию огня — выжег траву, спек землю, расплавил до лавы, которая потом застынет базальтом, постепенно разрушающимся от времени и покрывающемся почвой) и могла генерировать на себе объекты интереса игроков/размещать на себе элементы построек. Сами объекты генерировались рандомно в зависимости от типа клетки и окружающих клеток. Мобы генерировались так же рандомно, в зависимости от типа клетки и окружения, имели разные алгоритмы поведения и могли развиваться. Систему магии мы делали из принципа — маг — топ. Маги имели примитивный конструктор заклинаний и отсутствие ограничения мощности заклинаний, вместо этого было ограничение на энергию и чтоб сотворить что-то убойное, надо было долго и упорно собирать энергию. В планах были и чертежи ритуалов и призывы демонов и еще куча фишек. Но мы планировали магов как элитных игроков, которых тащат всем кланом и используют как тяжелую артиллерию или даже ядерные ракеты. Была и система захвата территории и построение своих деревень/замков. Мы так же пытались сделать игровой интегратор, позволяющий интегрировать успехи игрока в других играх в свою. (например играет он в веселую ферму, вырастил урожай и сможет перевести его в нашу игру получив в виде игровых ресурсов/денег) Сама система прокачки была основана на навыках и статах. Навыков было запланировано больше 100, сами навыки не имели верхней границы развития, но каждый новый уровень требовал в 2 раза больше времени на развитие. Квесты так же генерировались рандомно, так что каждый раз было что-то новое. У персонажей был психопрофиль, который мы взяли из тестов по психологии. Каждое взаимодействие персоанажа, в котором он делал выбор из нескольких позиций заносилось в профиль и определяло его психотип, от которого в дальнейшем зависили возможные квесты/события и отношение НПС. Каждый квест всегда можно было выполнить 2-4 путями. Хотя помнится генератор квестов до конца не дописали, игра добралась до стадии демы, а потом пара программистов свалили работать в США и команда распалась. Сам я занимался написанием лора игры и различных диалогов для генератора, вобщем всего, что игрок будет читать… До сих пор жаль, игруха бы неплохо смотрелась и сейчас, так как делалась в расчете на слабое железо и шла бы даже на старых смартфонах.

Поддерживаю автора
Когда-то тоже горел желанием разработать самую крутую игру в опенворлде
И идея выходила технически простой, дающей полную свободу
Но… Многое было упрощено, в угоду вычислительной мощности
Пришел к выводу, что в обозримом будущем достаточная вычислительная мощность будет недостижима, а без нее вся затея теряет смысл


Наблюдая игры других авторов, стремящихся тоже сделать максимально свободную игру, ясно видно все ошибки, которые они насобирали
В основном их три:


  1. Магия. Самая большая ошибка. Наиболее интересен мир, где все происходит по уже знакомым правилам — реальный мир. Мир, в котором нет странных ограничений или условностей. Здоровье не восстанавливается магическим образом, и есть тысячи способов умереть, глупо и бессмысленно. Где пакет информации внутри игры можно передать другому игроку любым способом, какой придет в голову, а не какой предложил разработчик — это как минимум требует изоляции ИС игры от реального мира, таким способом мы автоматически избавляемся от утечки информации через реал, чаты, скайпики, в общем в обход игры, рубим нечестную игру на корню, и внедряем внутриигровую информацию как сущность игрового мира, позволяя свободно оперировать ей внутри мира игры.


  2. Пустой мир. В таких играх мир огромен, и поэтому пуст и скучен. Игроку там просто нечем заняться. Как бы разработчики ни старались, но пока нет ни одного достойного решения этой проблемы. Наиболее жизнеспособный вариант встречался в нескольких играх: упрощенная симуляция жизни нпс — когда мир населен множеством нпс, и их поведение просчитывается даже тогда, когда они за пределами видимости, или даже за пределами карты. Но даже простейшее поведение — это огромные вычислительные мощности, т.к. таких нпс даже в небольшом мире насчитывается сотни и тысячи


  3. Излишняя степень упрощения механик. Этим страдают все. Большинство игр на уровне механик — это такие вот стреляющие шарики. Ничего сложнее в них нет. А вычислительные мощности уходят только на графику. Красивые персонажи, с реалистично блестящими очками, развевающимися на виртуальном ветру плащами, но… под всей этой мишурой сидит логика стреляющего шарика) Такие игры вызывают скуку, как только понимаешь, что внутри персонажи пустые, что их логика слишком примитивна
    К сожалению тут ничего не поделать. Сложная логика требует вычислительных мощностей, а их попросту нет — сейчас весь упор сделан на графику, все эти терафлопсы и гигабайты считают и хранят только текстурки, а сложные вычисления, которые используются логикой, до сих пор идут очень медленно, и не позволяют наделить персонажей хоть отдаленно приличным уровнем интеллекта
    Самое достойное, что тут есть — упрощенная симуляция сложных систем. Это когда что-то выглядит и работает как сложная логика, но на самом деле под капотом очень много упрощений. Хотя даже небольшое усложнение поведения нпс или подсистем игрового транспорта, например, сейчас будет воспринято как революция в геймдеве. Но… До сих пор ставку делают на текстурки. Они гарантированно продаются


Я вот подумал по поводу второго пункта… А что если логику поведения всех НПЦ попробовать перестроить так, чтобы её можно было полностью или частично считать на GPU? Я понимаю, логика поведения персонажей, как правило, интересна сложностью, обилием возможных развилок и проверок — с которыми GPU не дружит. Однако есть известный приём, когда проверка, в случае если её результатом выступает число, заменяется на операцию умножения. Это можно использовать, например, для AI при выборе текущей модели поведения исходя из внешних факторов.
Можете привести пример с замены логики на умножение?
Да. Скажу честно, в начале написал исходя из того, что, например, в алгоритме расчёта пересечения двух отрезков (учитывающим граничные случаи) можно обойтись вообще без проверок. Но вряд ли решение на чистых умножениях могло бы быть универсальным.

Однако, отвечая на вопрос, погуглил и нашёл переписку на форуме, в которой отмечается возможность избегания ветвлений за счёт использования функций округления. При этом придётся писать чудесатый и, вероятно, трудно отлаживаемый код — однако игра может стоить свеч. Надо смотреть на соотношение прироста быстродействия работы АI к сложности поддержки кода и удобства настройки поведения.

Навскидку (реально на ходу придумал) — описание логики расчёта реакции на расстояние до врага. Условие if(dist < do_action_dist) можно заменить на расчёт test = ceil(dist/do_action_dist) и умножение некоего численного результата, обозначающий необходимость следующего действия (которое, конечно, тоже придётся выражать численно), на floor(test/MAX_INT). Думаю, изучив вопрос, можно добиться полезных результатов. Даже, может, выйдет писать в таком стиле удобоваримый код.
Спасибо за пример, стоит изучить этот вопрос, вы правы.
По первому пункту не соглашусь.
Есть игры которые стремятся повторить реальный мир — GTA, Sims и т.п., а есть их противоположность — полностью альтернативные миры с магией и т.п. вещами — TES, WoW и т.п.
И те и другие имеют своих поклонников. Лично мне интересней играть в альтернативные миры, их интересней исследовать, а реального мира мне и без игр вокруг хватает.
Тогда позвольте и с вами не согласиться.
"Полностью альтернативные" не становятся массовыми, потому что там странное и не понятное, вместо ГГ с которым так или иначе играющим может или готов себя ассоциировать. И у большинства эта готовность сильно ограничена.
А потому обычно добавляют лишь отличие по человекоподобным метрикам, окрасу.
Ну и облегчает жизнь хочу, что б было сейчас и сразут.н. магией, самособой в пределах жадности создателей.
есть такая игра Dwarf fortress…
Наверное, каждый второй программист начинал писать свою идеальную с полной свободой действий и реализмом игру(я не исключение).
С товарищами пытался сделать упор на реалистичной экономической модели (конечные ресурсы, реальные масса и объем всех объектов игры, реалистичная транспортировка ресурсов, возможность создания ценных бумаг и т.д.), но спустя некоторое время разработки, осознали, что задача была поставлена слишком грандиозная и забросили проект. Такие вот дела. Может когда-нибудь возобновлю разработку (но это не точно).
Вот я кстати с подобными людям довольно часто сталкивался, и так и не смог понять, что движет всем этим «нам нужен симулятор реальности» — очень популярное явление в этом всем «я мечтаю написать игру», но не понятно, почему. Причем вроде как людям понятно, что в какой-то момент стремление к реализму и геймплей столкнутся, и хорошо если без масштабных потерь для обоих сторон.

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

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

Ну, раз вы не собираетесь игру воплощать, то можете поделиться идеей :)

За свой опыт создания trash & cash игр с учетом описанных автором правил понял, что
4) Сюжет — в игре должен быть смысл. Переход между сценами должен быть логичен или логично нелогичен, как это пытались снять в дедпуле.
5) Нет ничего плохого в клоуне, если он улучшает оригинальные механики. Как часто вам хотелось поиграть в циву с нормальной, продуманной, реалистичной дипломатией?

6) перед созданием игры необходимо подождать 3-8 дней. Большинство идей мимолетны, вызваны какими-то фильмами и т.п. Необходимо оценить идею со стороны, когда угаснет пыл.

Сомнительно. Часть того, что сейчас называется «инди-игры» делаются достаточно быстро, и играются с интересом.
4) Арканоид — тоже интересная игра, хотя смысл в ней практически идентичен геймплею. С другой стороны, кто сейчас делает новый арканоид?
5) Это, как мне кажется, подмножество сеттинга, а не механики: если в нём есть место для такого персонажа, то он органичным образом появляется.
Touhou Reiiden~ The Highly Responsive to Prayers — Арканоид, релиз в 97 году. Довольно поздно для такого рода игр, да и к тому же на устаревшей уже тогда платформе. Но думаю даже лёгкий гуглёж по названию покажет какой феноменальный сеттинг этот арканоид начал.
Помню школьником сделал игру на программируемом микрокалькуляторе МК-61. Графическую! Там герой в динамическом режиме бросал копье — черточку в всплывающего и ныряющего змея на однострочном символьном индикаторе Животина была с головой двойкой и телом из нижних подчеркиваний переменной длины. Она двигалась с правого края экрана к герою, периодически ныряя и всплывая.
Жалко что не отправил в ТМ, может бы опубликовали тогда в разделе «Клуб Электронных Игр»
О, да! Я прочитал про игрушку в журнале — «Техника-молодежи» кажется — посадить лунный модуль, там даже фантастический рассказ был на эту тему, запрогал — играть оказалось сложно. Потом пользуясь инфой оттуда же — уже на БК-001 написал игрушку с посадкой самолета. Потом даже сделал линию горизонта. Потом был управляемый стреляющий кубик — в него народ в классе даже играл!

Комментарий от пользователя…
"Я уже два года жду игру…
… Грабить корованы
… Набигает стража"
Может кто когда и возьмётся за это? )))

Очень хорошо написано, читать было так приятно, что даже проверил, не перевод ли это %) Даже опять захотелось сделать свою игру
Да, отсылка есть)
Моей первой написанной мною игрой был Сокобан 3D, на основе известного старенького Сокобана )), а также Морской бой. Делал также игру типа БК: разбираться пришлось долго, но разобрался), сделал также экономическую игру. Для продаж совсем не то, конечно, но зато на основе разработанного забацал удаленные курсы обучения созданию игр, вот это уже приносило небольшой, но приятный бонус к зарплате в течение нескольких лет. Потом замахался вычищать интернет от пиратских копий моих курсов, уже сейчас этим не занимаюсь, все уже устарело. Да и подобных центров обучения стало, как говорится, пруд пруди. О каких-то крутейших играх, где нужна огромная команда разработчиков, конечно, речи нет (( Хотя мечтал этим заниматься.
Например,
Game Mechanics: Advanced Game Design by Ernest Adams
The Art of Game Design: A Book of Lenses by Jesse Schell
и еще много всего

чтобы не изобретать…
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории