Войти
ФлеймФорумРазработка игр

Онлайн игры с автогенерацией контента

Страницы: 1 2 3 4 Следующая »
#0
5:54, 22 мар. 2018

Какие основные сложности могли бы быть, если позволить игроку создавать контент в игре?
Моделью послужит выдуманная игра One-year-game. Раз в год, сервер будет терпеть большой взрыв и игра будет начинаться сначала.
Возникают логичные вопросы - как добавить адекватные модели и предметы в игру, чтобы все выглядело болен-менее гармонично? Или как придавать предметам значения, новые значения и методы работы с ними? Таких вопросов много, и выглядит так, словно хрен сделаешь это. Получается что-то типа бесконечной алхимии.

#1
6:55, 22 мар. 2018

Возьмем самую примитивную игру для начала - текстовое рпг. Тут не нужны модели и текстуры. Просто буквы и описание. Если сделать в виде квестов космических рейнджеров еще и смотреться будет стильно.

#2
7:09, 22 мар. 2018

Incvisitor
> Какие основные сложности могли бы быть, если позволить игроку создавать контент в игре?
По-моему, самая большая сложность - функциональная. Т.е. как этот новый контент будет взаимодействовать с миром игры.

Incvisitor
> Возникают логичные вопросы - как добавить адекватные модели и предметы в игру, чтобы все выглядело болен-менее гармонично? Или как придавать предметам значения, новые значения и методы работы с ними? Таких вопросов много, и выглядит так, словно хрен сделаешь это. Получается что-то типа бесконечной алхимии.
Первое - нужна формализация и язык для работы с добавляемым контентом. Т.е. если ты игрок, ты должен мочь сделать описание нового объекта, его характеристик - в числах. Эти новые характеристики должны быть восприняты игрой, для этого нужен язык и код, написанный игроком, который будет реагировать на наличие новых характеристик и уметь с ними работать.
Реализовать такое не сильно сложно, я знаю, как сделать такое на Urho3D, например.
И да, это бесконечная алхимия :)

#3
7:47, 22 мар. 2018

StepEver
Мне кажется реализовать это как раз сложно.

#4
8:07, 22 мар. 2018

Incvisitor
Нунизнаю... формализацию описания параметров я сделал :) более того, я теперь только такой концепции и придерживаюсь - весь контент снаружи, в файлах с описанием.
А вставка функционала(скрипта) из xml-ек это уже дело техники.
Сложность может тут быть только в геймдизайне - придумать, как новый контент будет взаимодействовать со старым.

#5
8:13, 22 мар. 2018

StepEver
А если методы также прописывать? Типа вы нашли руду. Как вы ее назовете? Что вы хотите сделать?
Хмм. Нужно как-то обусловить появление этого. А что если ты сначала прописываешь эту вещь в энциклопедии? Тип - руда. Название - металлическая руда. Можно найти - да. Степень встречаемости - редко. Количество в кучке - 100. Масса 1 шт - 5. Ну типа такого.

#6
8:19, 22 мар. 2018

Incvisitor
> А если методы также прописывать? Типа вы нашли руду. Как вы ее назовете? Что вы хотите сделать?
Интересная мысль, надо запомнить :)

> А что если ты сначала прописываешь эту вещь в энциклопедии?
Ну я так и делаю, у все объекты хранятся в файлах с описаниями. Отдельно - тексты с человеческим описанием. Объекты генерируются по ID-ам. Далее параметры могут использоваться как дефолтные, так и могут выставляться кодом уже после создания.
Соответственно, создавая новый объект уже внутри игры, ты его помещаешь в список шаблонов объектов, и игра дальше может генерить его как и всё остальное.

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

#7
8:38, 22 мар. 2018

Ну я себе сделаю "волшебный пух", 100% резиста дамага и "волшебный куяк" - убить всех в радиусе 1000 метров. И что дальше?

Юзер генерация работает только в сильно ограниченных пределах.

#8
8:52, 22 мар. 2018

jaguard
Да, это одна из проблем автогенерации - ограничение режима бога и введение связок.
Вообще хотелось сделать что-то типа реального мира в модельном плане. Вы нашли руду. У нее такие то свойства. Что будете делать? Добывать руками. Руда крепкая, твердая, не поддается, вы получаете 5 единиц урона.

#9
9:03, 22 мар. 2018

Incvisitor

Мильон всяких разных руд можно сделать общим кодом и волшебным рандомом, а сумма полезных коэффициентов определит сложность добычи и стоимость автоматически.
А вот чтобы юзеры чем-то тебе помогли в подобном - это вряд ли. Максимум, нарисуют картинку и придумают название для сгенерированной руды, но это все-равно надо модерировать, да и качество арта будет в 99% случаев неудовлетворительным. Разве что у тебя совсем примитивный кубизм.

#10
9:12, 22 мар. 2018

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

#11
9:23, 22 мар. 2018

emptiness_rain
> Чтобы избежать создания имба предеметов - можно ввести понятие ценности, тоесть
> чем круче параметры, тем выше цена(или реже встречается в мире)
Мысль очень здравая.

jaguard
Это да, поэтому я говорил про текстовое РПГ, которое не нуждается в графике (по большому счету).

И опять возвращаясь к крафту. Допустим как скрафтить кирку, имеется ввиду, как прийти к тому результату, что вот кирка должная быть из стали, а ручка из дерева? Как определить для чего она? Как это может сделать игрок?
Получается довольно мудреная игра.

#12
9:23, 22 мар. 2018

Incvisitor
> ограничение режима бога и введение связок.
Плата :)
Т.е. вот смотри:
jaguard
> Ну я себе сделаю "волшебный пух", 100% резиста дамага и "волшебный куяк" - убить всех в радиусе 1000 метров. И что дальше?
Когда новый объект начинает использовать старые параметры, логично ввести балансирующую "цену", и после подсчёта к новому объекту вешать эту "цену".
Например,
100% резиста дамага стоит 1000 поинтов, условно.
ты эти поинты рандомно разбиваешь на негативные параметры. Например, на 212, 356 и 432
эти цифры не абсолютные, а относительные, умножаются на свой физический множитель для каждого отрицательного параметра. Но для простоты сейчас положим, что это у нас сейчас - 1
и тогда получается, что "волшебный пух" сделать можно, нивапрос! Но он будет занимать объём 212 кубических метров, весить 356 тонны и излучать 432 рентген! Получите! :)) (trollface)
Тогда игрок задумается, и начнёт продуманнее создавать новые вещи в игре.

#13
9:24, 22 мар. 2018
emptiness_rain
опередил! =)
#14
9:28, 22 мар. 2018

Incvisitor
> Как определить для чего она? Как это может сделать игрок?
А ты можешь сделать список действий, которые возможны в игре (базис). Но основе этого базиса делать более сложные комбинации.
Кирка - это просто action.damage на самом деле, так ведь? А вот кусок руды, когда ему event.damage прилетает, может нагенерить другой рандомный кусок руды, новую объект, который игрок может в сумку положить и унести с собой.

Страницы: 1 2 3 4 Следующая »
ФлеймФорумРазработка игр

Тема в архиве.