Игровой ДизайнФорумОбщее

Реальная коммуникация между нпц (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
14:58, 6 апр 2025

Существуют ли вообще одиночные игры про общение, коммуникацию?

L.A. Noire, Disco Elysium?

Кстати, в предыдущем проекте (забросил лет 10 назад), у меня была реализована этакая мини-игра для общения.
На гексагональном поле по углам выставлялись триггеры эмоций/мыслей/реакций: страх, симпатия, гнев, жадность, изумление, безразличие и т.д. На самом поле могли быть препятствия — «тараканы» собеседника. Была возможность добавлять новые препятствия и убирать старые. По центру поля выставлялась фишка, иллюстрирующая текущее состояние ментальной сферы собеседника. После каждого активного действия игрока фишка смещается в сторону той эмоции, чей счётчик выше, при необходимости рандомится между несколькими вариантами, либо выбирает вариант по умолчанию: персонаж может быть гневлив, труслив, равнодушен и т.д. Ну а дальше можно было использовать различные методы для задвигаия фишки к нужному триггеру: взятки золотом, совместное распитие всякого разного, анекдоты с соотв. тегами, козыряние знакомствами и достижениями и т.д. Как загнал — следовала реакция. Скажим со страху собеседник мог выдать какую-то тайну, сбежать, позвать на помощь, смотря что прописано для конкретного персонажа. Будучи злым мог атаковать, ваыставить за дверь, кликнуть охрану, заблокировать вариант прохождения квеста. Удалось добиться лояльности — вот ещё вариант прохождения квеста, допуск в новую локацию и т. д.

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

#16
(Правка: 16:51) 16:10, 6 апр 2025

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

> L.A. Noire, Disco Elysium?
да, в играх это клево сделали. по большей части на уровне визуальной новеллы - просто дерево событий сюжета с заранее прописанными диалогами. это как были книги интерактивные с выбором сюжета и перепрыгиванием на страницу.



У общения куча всяких нюансов, помимо +1 отношения; информация как ценный ресурс; проблемы с коммуникацией (типа громкости); различия в понимании; ложь; мб еще что.

Сообщения можно поделить на 3 категории:
1. Утверждение. (восклицание)
2. Команда! (просьба, совет)
3. Вопрос? (предложение)

Можно еще пойти от игровых ситуаций, построенных на нюансах общения. Например, визуальная новелла на частях речи.
Информация как ресурс. Плохой пример:
Герой увидел: (где1) В пещере (где2) на полу (делает) лежит (что1) яблоко (что2) меч (что3) зелье.
НПЦ: Я люблю яблоки.
Предложение для НПЦ: я скажу - яблоко (где)?
НПЦ: ты скажи - яблоко (где?)!
Герой : В замке, на втором этаже лежит яблоко.
НПЦ тебе благодарен дает 10 монет, уходит в замок на второй этаж. Потом расскажет другим НПЦ что герой - врунишка.

Прорабатывая все возможные игровые ситуации и построения фраз, взаимодействия НПЦ между собой. И дальше расширяя, по возможности делая наиболее компактно. Вполне и рогалик можно, с пошаговыми клеточками.

Свойства информации:
1. Ценность (полезность)
2. Достоверность
3. Актуальность
4. Понятность (доступность)

В примере 1 и 2.

#17
(Правка: 19:42) 17:16, 6 апр 2025

ildarin
Проблема в том, что приведённый тобой пример можно сделать намного проще, не закапываясь с головой во всю эту псевдолингвистику. И при этом с точки зрения игрока разница заметна не будет.
Возможно, какой-нибудь симулятор общения с инопланетянами и может что-то подобное включать (как, скажем, примитивные диалоги в The Out There, где надо было угадать значение фразы, из которой понятно одно или два слова и давать ответ да/нет), но в случае рпг/эдвенчуры в этом смысла нет.
И да, та же расстановка тегов по фразам — огромная работа на самом деле. Для десятка случаев на всю игру — оно нафиг не надо так заморачиваться, если ж это прям по всей игре встречается — это очень много работы как-то так. Я как-то так взялся для прошлого проекта анекдоты адаптировать, там по сути все тэги сводились к «общая тематика», «какие фракции/расы/классы выставляют в выгодном свете», «какие в невыгодном» — на первом десятке задолбался и понял, что игрокам на это, в общем-то, будет наплевать. Такие вещи в юмористических попаданческих фэнтези смотрятся хорошо (да и всем давно надоели), а в играх — так себе.

#18
7:39, 7 апр 2025

alexyecu_wox2team
> но в случае рпг/эдвенчуры в этом смысла нет.
Еще как есть. Подслушать разговор. Дать полезную информацию/дезинформировать. Настраивать за себя, против кого-то. Узнать что-то. И это не заранее прописанные if else, а процедурно генерируемое и зависимое от игровой ситуации.

alexyecu_wox2team
> огромная работа на самом деле
Не спорю, нужно думать

alexyecu_wox2team
> Для десятка случаев на всю игру — оно нафиг не надо так заморачиваться
Зависит от того, сколько комбинаций ситуаций это создаст. 7 форм в тетрисе достаточно, для неповторимых ситуаций. Если уж и заморачиваться с общением - то это ключевая механика, на которую уже натягивать остальное, опционально.
Можно и все дотошно не реализовывать, через игровые условности. Одна пуля человека убьет или положит, но шутеры допускают много попаданий.
Ключевой смысл тут в том, что нпц между собой взаимодействую через этот механизм. В итоге выходит песочница, которая играет в саму себя, и в нее мы сажаем игрока.
Сложность тут в том, чтобы сделать это компактно и максимально понятно, создав максимальное число ситуаций при минимальном количестве элементов.

#19
18:29, 7 апр 2025

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

#20
(Правка: 21:59) 21:16, 7 апр 2025

/A\
Да, хороший пример ситуации. Еще думал про интриги, шантаж, предательство, мошенничество, психические манипуляции.
Правда когда прорабатывал модель - уходило в рекурсии. "Что думает, про то, что думает, про то что думает...", когда "существительное" само может быть "предложением". Может, просто ограничивать по уровню вложенности.
Не играл в Shadows of Doubt - но кмк там есть что-то похожее, в плане процедурности симуляции и логической связности.
Возможно - делать составление предложений не по частям речи, а бОльшими кусками, вроде 2ух составляющих.

Там помимо модели "среды" - нужна еще модель "мышления" нпц. Тоже все не так просто. Нейронки не вариант стартовый, ибо для обучения нужны сэмплы. А если есть сэмплы - то проще руками закодить на параметрах.
Может, вообще двигаться от двух элементов на каждую модель среда/нпц, прорабатывая ситуации (2х2=4). А там уже видно будет.

#21
2:02, 8 апр 2025

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

#22
(Правка: 6:17) 4:34, 8 апр 2025

PeeKay
Это RND. Не факт, что возможно.
Мб даже не расширение жанра, а создание нового.



> Может, вообще двигаться от двух элементов на каждую модель среда/нпц, прорабатывая ситуации (2х2=4)
Ок. Возьмем 4 состояния поля для "шпионской игры".

+ Показать

Поле: (подготовка, последствия)
НПЦ: (объект, перемещение)
Состояния: (Разведка, Внедрение, Саботаж, Эвакуация)

подготовка+объект=Разведка
подготовка+перемещение=Внедрение
последствия+объект=Саботаж
последствия+перемещение=Эвакуация

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



Мне больше нравится на частях речи. Со своим языком.
что находится где. х1 Est х2. Синонимично -
слову содержится.
Яблоко est ящик. Ящик est пещера. Червяк est яблоко. Морковка est озеро.
Вопрос: est яблоко? (Червяк est) Яблоко est? (est ящик)

Достоверность информации по соответствию знаниям нпц. "Яблоко est пещера" - согласуется транзитивно. "Пещера est червяк" - противоречит или рекурсия. "Червяк est помидор" - неизвестное "помидор", новая информация.
Помидор est?  "Помидор est ящик". Достоверность новых знаний зависит от параметров нпц, вроде "доверие".

А если переместилось - "ящик est озеро", несогласуется, но может быть новое знание. Добавляется актуальность.

#23
(Правка: 11:26) 11:09, 8 апр 2025

К слову.
ildarin

Мне больше нравится на частях речи. Со своим языком.
что находится где. х1 Est х2. Синонимично -
слову содержится.
Яблоко est ящик. Ящик est пещера. Червяк est яблоко. Морковка est озеро.
Вопрос: est яблоко? (Червяк est) Яблоко est? (est ящик)

Свой язык называется Prolog.
Классика жанра!
Пример программы на Prolog:

человек(сократ).
человек(платон).
смертный(X) :- человек(X).
? - смертный(X).   // вопрос
смертный(сократ).  // ответ
смертный(платон).  // ответ

Для всех x, если x является человеком,
то x является смертным;
Сократ является человеком;
(следовательно)
Сократ является смертным.

ildarin

Мне больше нравится на частях речи.

Все существующие анализаторы синтаксиса сделаны на Прологе.
https://disk.yandex.ru/d/kMFHX5VS47W46w
Части речи, это уже морфология и к делу относится косвенно, как набор команд процессора к ЯВУ.

#24
(Правка: 12:56) 12:17, 8 апр 2025

flint2
> Prolog
Да, кодили мы на нем курсе на 2ом, та еще ебанина) после императивных мозг сломаешь)
Тут я не на пролог ориентируюсь,а на логику первого порядка. Ну, пролог тож на этом строится.
У меня правда квантор единственности скорее, а не существования. В прологе - квантор всеобщности. Разница: моё яблоко в кармане; яблоко в кармане; яблоко это фрукт.
Но всю логику в игру вообще не хочется запихивать, только необходимый минимум.
Вместо est можно вообще дефис, но латынь люблю.
Знаешь игры в которых используется prolog как элемент механики? Как сделать на этом актуальность информации?

flint2
> Все существующие анализаторы синтаксиса сделаны на Прологе
Нет. Я для своего первого компилятора синтаксический анализатор делал на delphi. Но неважно

#25
(Правка: 13:14) 12:54, 8 апр 2025

ildarin

Нет. Я для своего первого компилятора синтаксический анализатор делал на delphi

"Вы просто их готовить не умеете." ©
Это всё фигня для языков программирования, а вот для реального языка (русского(самый сложный), английского и много много остальных) - это уже не фигня.
ildarin

Знаешь игры в которых используется prolog как элемент механики?

Сразу не вспомню, но в 90-ые много было, когда Пролог модным был. Всё от моды зависит. Когда то и Lua пихали куда не попадя, а сейчас Pyhton - "и это пройдёт" ©.
Те же "Герои Меча и Магии III". Если не ошибаюсь, там AmziProlog встроенный. Могу с названием и ошибиться - столько десятков лет прошло.

+ Показать
#26
13:03, 8 апр 2025

flint2
> Сразу не вспомню, но в 90-ые много было, когда Пролог модным был. Те же "Герои Меча и Магии III". Если не ошибаюсь, там AmziProlog встроенный. Могу с названием и ошибиться - столько десятков лет прошло.
Не нашел 😔
Ваще даже чисто программирование на прологе вполне можно игрофицировать, если упростить, навалить прогрессий и пазлов 😏 но это уже немного из другой оперы.
Но в целом - да, типа внедрить нпц какую-то логику и выражения, чтобы они обменивались - было бы прикольно. И для всего этого - минималистичный интерфейс для игрока

#27
(Правка: 13:24) 13:18, 8 апр 2025

ildarin

Не нашел 😔

https://www.amzi.com/
https://github.com/AmziLS/AmziProlog
ildarin

Ваще даже чисто программирование на прологе вполне можно игрофицировать, если упростить, навалить прогрессий и пазлов 😏 но это уже немного из другой оперы.

+ Показать
#28
(Правка: 13:35) 13:24, 8 апр 2025

flint2
А, мы не совсем друг друга поняли) я всмысле игрок в героях пролог юзает, типа для редактора карт) типа jass в wc3. Чтоб это игрок юзал
Но прикольно, не особо интересовался прологом. У меня из декларотивных самый используемый - это sql и regex



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

Перевод и разные языки, диалекты - тоже возможная механика, на тему свойства доступности информации

#29
(Правка: 13:40) 13:32, 8 апр 2025

ildarin

Чтоб это игрок юзал

Нет, такого я тоже не видел.
Вот чего то похожее по сути механик: https://instead.hugeping.ru/page/metaparser/
https://github.com/instead-hub/metaparser/blob/master/doc/manual-ru.md
https://instead.hugeping.ru/
Но не совсем то.

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