Kamrad.ru
 
 
дневники | кабинет | регистрация | календарь | участники | faq | правила | поиск | фотоальбом | каська | выйти
Kamrad.ru Kamrad.ru » Тематические форумы » RPG » Серия TES: Oblivion, Morrowind и т.д. » MorroWind ------> DaggerWind
новая тема  ответить следующая тема | предыдущая тема
Автор
  << < 1 2 3 4 > >>
KamaRAD - offline KamaRAD
28-05-2002 12:17 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Предлагаю объединить усилия по модостою!
Идея такая:
Создать в Морре собственные города с неписями. НО! Надо подойти грамотно. Понимаю, что город, положим, одному трудно осилить, а вот непися с домом - вполне.
Для этого надо продумать персонаж, создать его и его дом. Перс должен быть оригинальным, иметь квесты, расти параллельно игроку, иметь свою собственную жизнь. В идеале еще комплектация оригинальных приветствий и т.п.
Далее можно скоординировать полученных НПС в города.
Только не кидайтесь в меня помидорами. Задача тяжкая, но ИМХО решаемая, если есть творческий талант.

karnot - offline karnot
28-05-2002 12:26 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



to all:
Ребят, спасибо за население темы
Отдельное спасибо glass за юмор ( положим начало Морровским анекдотам ! )

Kit - offline Kit
28-05-2002 15:06 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



sqr
Ну и чего. Как долго она радовала глаз и душу?. Часа два от силы. Потом все замылилось. Так же было бы и в морре.

Ну кого часа два, а кого и побольше.

В любом случае тотальное скриптование неписей пока под очень большим вопросом, т.к. поисследовав хорошенько эдитор пришел к выводу, что автоматизировать чтение и запись reference data вообще невозможно (как такое издевательство могли придумать - не знаю), а без этого делать каждого непися руками - это просто #%@$$^$^.

Kit - offline Kit
28-05-2002 17:20 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Научился укладывать непися спать и даже топать куда надо, но он, сука, не просыпается!
Почему fatigue у него перестает восстанавливаться - ума не приложу.

По ходу единственный выход: сложный глобальный скрипт со списком неписей. Бум писать.

Benedict - offline Benedict
28-05-2002 18:19 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Кинь в меня, плиз, (или сюда) примером такого скрипта, попробую насодить на него НПСя....

Kit - offline Kit
28-05-2002 23:05 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Вот что родилось после долгих мучений.
При этом оно работает очень плохо:
1. По какой-то причине непись далеко не всегда ложится спать, несмотря на отрицательный fatigue.
2. Непись не выходит из дома до тех пор, пока игрок не покинет тот cell на который он должен выйти.

code:
begin SleeptimeCheck
;this is a global sсript
;does simple time check
if (GameHour > 6.0)
if (GameHour < 22.0)
set SleepTime to 0
return
endif
endif

set SleepTime to 1

end SleeptimeCheck


code:
begin SleepTest
;don't do anything if game paused with menu
if ( Menumode == 1 )
return
endif

short state
short initx
short inity
short initz
float SleepHour

;checking if it's time to sleep
if (SleepTime == 1)
;here I've tried to randomize slightly the sleeping time

;set SleepHour to (GameHour + Random, 1)
;while (GameHour <= SleepHour)
;endwhile

;check whether npc arrived to the house door, then teleport him inside
if (GetCurrentAIPackage == 1)
if (GetAIPackageDone == 1)
PositionCell -487, 281, 291, 130, "Balmora, Nalcarya of White Haven: Fine Alchemist"
SetFatigue -5
set state to 10
return
endif
endif
;check if npc is just wandering around when he must sleep
if (GetCurrentAIPackage != 1)
if (state == 0)
AITravel -24813, -10272, 1077
return
endif
endif
;check if npc is in state 10, means: in bed
if (state == 10)
SetFatigue -5
return
endif
else
;check if npc is still in bed when it's time to go out
if (state == 10)
set initx to GetStartingPos, X
set inity to GetStartingPos, Y
set initz to GetStartingPos, Z
SetFatigue 80
PositionCell -24813, -10272, 1077, 180, "Balmora"
AITravel initx, inity, initz
AIWander 2000, 5, 0, 60, 20, 10, 10, 0, 0, 0, 0
set state to 0
endif
endif

end SleepTest

glass - offline glass
28-05-2002 23:15 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



sqr
Мне каэтся, камрады, что задача "тотального" оживляторства морровинда имеет исключительно академический интерес.
В конце-концов, почти все здесь обсуждаемое имеет более или менее, но академический интерес - мы же здесь в игрушки играем.

Вся эта "живость" присутсвовала в полном объеме к примеру в той же готике. Ну и чего. Как долго она радовала глаз и душу?. Часа два от силы. Потом все замылилось. Так же было бы и в морре.
Kit прав - каждый воспринимает по-своему. В конечном итоге, все приедается, вопрос лишь времени. "Живость" или нестатичность мира в игре, такая же часть его наполнения, как и все остальное (сюжет, внешний вид, квесты, фракции, отношения, dungeon'ы, монстры, драки etc). Все это для того, чтобы игроку было интересно, и как можно дольше. Но что из этого главнее? Забавно, но приоритеты меняются в зависимости от игры.

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

Что-то у меня сегодня мысли путаются - прямо поток сознания какой-то.

Вообщем, все свелось к табличке:
Cредство........Обратный эффект от него........Сложность реализации
-
-
-

Заполнить, посчитать эффект/сложность реализации и отсортировать в порядке убывания.

glass - offline glass
29-05-2002 00:50 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Kit
1. По какой-то причине непись далеко не всегда ложится спать, несмотря на отрицательный fatigue.
Именно ложится? Сама по себе у меня вообще не ложилась - стоит на кровати. При тыкании в нее action key'ем, через некоторое время падает без чувств, снизу прибегает стражник и забирает меня в тюрьму. За попытку "надругательства"?

karnot - offline karnot
29-05-2002 02:18 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Дождались...не супер, но уже в сети. NPC Gnisis называется. Ищите и обыщетесь .

glass - offline glass
29-05-2002 03:13 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Kit
Где-то так:

code:

begin SleeptimeCheck

;this is a global sсript
;does simple time check
if (GameHour > 20.0)
if (GameHour < 20.1) ;6.0
set SleepTime to 1
return
endif
endif

set SleepTime to 0

end SleeptimeCheck



code:

;checking if it's time to sleep
if (SleepTime == 1)

if (state == 0)
;check whether npc arrived to the house door, then teleport him inside
if (GetCurrentAIPackage == 1)
if (GetAIPackageDone == 1)
PositionCell -487, 281, 291, 130, "Balmora, Nalcarya of White Haven: Fine Alchemist"
SetFatigue 0
PlayGroup DeathKnockDown
set state to 10
return
endif
endif

;check if npc is just wandering around when he must sleep
if (GetCurrentAIPackage != 1)
AITravel -24813, -10272, 1077
return
endif

endif

else

;check if npc is still in bed when it's time to go out
if (state == 10)
SetFatigue 215
PlayGroup Idle
PositionCell -487, 150, 291, 130, "Balmora, Nalcarya of White Haven: Fine Alchemist"
AITravel -487, 281, 313
set state to 0
endif

endif



- На самом деле она 'спала', просто цикл aнимации был обычным Idle.
- В постели ее удерживать не нужно - сама не маленькая.
- выглядит ужасно (с DeathKnockOut), но работает.

set initx to GetStartingPos, X
set inity to GetStartingPos, Y
set initz to GetStartingPos, Z
AITravel initx, inity, initz

Похоже, c переменными в качестве параметров, вызывать функции нельзя. Точнее, можно, только работать не будет. По-крайней мере, в функциях перемещения. (это абзац )

И AITravel -487, 281, 313 выше, тоже 'не работает' - бедняжку нужно за ручку проводить по лестнице вниз и может быть потом она вернется на место. В доме нет точек pathfinding'а.

Но в целом, уже больше похоже...

xelax - offline xelax
29-05-2002 03:56 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



glass

Пара наметок.

В доме нет точек pathfinding'а.

По магазинам стража каким-то образом разгуливает.

бедняжку нужно за ручку проводить по лестнице вниз

Может быть событием а ля "нападение или враг" внизу заставить ее передвинуться вниз.


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

glass - offline glass
29-05-2002 04:33 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



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

Не, может я ее как-то плохо с кровати сдернул, конечно...

Может быть событием а ля "нападение или враг" внизу заставить ее передвинуться вниз.
Конечно, можно попробовать, но это не ко мне (мавр сделал свое темное дело).

А следующий этап это конечно наполнение улиц ночью мелким хулиганьем, чтобы точно хотелось спать в гостиницах при неважном здоровье.
C хулиганьем, в принципе, не должно быть особых проблем. И c NPC, и с Creatures (самый простой вариант - телепортировать их из специального места, а потом обратно - злобу нагуливать ).

glass - offline glass
29-05-2002 05:14 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



xelax
Cейчас точно посмотрел: все там есть в этом магазине - это я дурака валял.

Поменять на AITravel -220, 3, 16. После того как дойдет, останется только развернуть ее на 180 градусов, чтобы спиной не стояла к потенциальным покупателям.

Остается всякую косметику навести и, в принципе, имеем одного NPC, 'живущего' в нормальном режиме. Хе-хе,... мда, одного.

glass - offline glass
29-05-2002 05:20 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Kit
Надо еще двери закрывать на висячий замок (крепкий) на ночь. После взлома которого, PC должен получать по башке от Hlaalu Guard, который там работает. Это я к тому, что, мало ли, может тебе всё ещё мало кажется?

Wiz - offline Wiz
29-05-2002 10:57 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Модератор



.

sqr - offline sqr
29-05-2002 11:05 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



glass
В конечном итоге, все приедается, вопрос лишь времени.
Конечно, кто б спорил. Просто в данном случае времени нужно ровно столько, сколько необходимо для осознания того простого факта, что живость нпц определяется вовсе не реакцией на твое/другого нпц поведение, а длинной и сложностью зашитого в него скрипта. Во всех играх, близких мору по духу (в той же Готике) скрипты эти ни длинной не сложностью похвастать особенно не могут по вполне понятным причинам, отсюдова и период "приедания" весьма невелик (у меня по крайней мере).

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

glass - offline glass
30-05-2002 17:29 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



sqr
Почти со всем согласен, кроме, может быть Вариант с "оживляторством" максимально дешев, но и эхфехт от него уж слишком мизерный. - как видно, он не так уж и дешев.

To all
Так табличку кто-нибудь будет заполнять или нет?

Kit
Желание еще не пропало?

Wiz
"."? - наверное ты хотел сказать "+"?

Kit - offline Kit
30-05-2002 19:21 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



glass
Желание еще не пропало?

Пока занят, к завтрему попробую еще что-то

Kit - offline Kit
02-06-2002 00:38 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Отличная страничка, человека посетили те же мысли, что и меня, правда явно раньше, так как прогу он уже сваял.
http://home.cinci.rr.com/jimadam/

glass - offline glass
02-06-2002 02:48 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Kit
Да, утилита полезная. Особенно понравилась ModData в xml и табличный layout внутри - правильный товарищ.

Только основная проблема не в создании интерьеров. С этим и редактор неплохо справляется - никто же не мешает выделять нужное и копипэйстить сразу готовыми блоками. И никто не мешает понаделать хоть 1000 Cell'ов с заготовками. Но интерьеров/экстерьеров и так хватает в Morr'e.

Засада остается в скриптовом языке (я уже зол), самих скриптах и их отладке (крайне неудобно). Еще в отсутствии внятного описания у AIPackages, странности работы некоторых функций, дырявости скрипт runtime: бесконтрольный MessageBox роняет Morrowind через очень непродолжительное время, то же самое делает неконтролируемый спеллкастинг etc. То есть, как я и нудел - много нерациональной возни.

P.S. А ты читал комментарии в скриптах? Местами крайне поучительно: похоже, в Иуеруыве далеко не все в ладах с собственной скриптовой фигней.

Kit - offline Kit
02-06-2002 15:20 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



glass
Засада остается в скриптовом языке

Дык даный сайт хорош тем, что имеет отличное описание даты в .esp файлах. Т.е. теперь достаточно сделать свой компилятор на том же перле и пусть он компилит в MW-скрипт.

glass - offline glass
03-06-2002 01:44 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Kit
Очень смешно...
И компилятор на перле, и все 8 строчек описания, на основании которых, ты собрался его написать.

Kit - offline Kit
03-06-2002 20:21 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



glass
И компилятор на перле, и все 8 строчек описания, на основании которых, ты собрался его написать.

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

glass - offline glass
03-06-2002 22:35 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Kit
Теория часто вообще интересная вещь. Написать приличного скриптера не так уж сложно, как это можно себе представлять. Без ОО в скрипте прекрасно можно обойтись - не сильно оно там и нужно. В любом случае, при достаточно небольших усилиях должно получиться лучше, чем Bethesda'вское творение. Однако какое это имеет отношение к текущему состоянию дел? Как бы знать о том, где хранится псевдокод в esp - несколько недостаточно. Нужно еще доподлинно знать, что он из себя представляет или знать, как заменить соб-но компилятор/интерпретатор. Однако, ни того, ни другого знать не дано.

Если бы парни из Bethesda были несколько более 'clever guys', то поступили бы, как, например, разработчики Severance: The Blade of Darkness - коли уж сам не можешь/не хочешь/не считаешь нужным изобретать велосипед, то не повышай энтропию и возьми чертежи существующего. В случае с Severanсe, это был Python - может быть, не самый удачный выбор с точки зрения быстродействия, но идея ясна.

К чему я это? А... от земли не отрывайся.

P.S. Лучше бы разобрался с AIWander.

Kit - offline Kit
03-06-2002 22:41 URL сообщения Дневник     K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



glass
К чему я это? А... от земли не отрывайся.

Если честно: у меня такие проблемы в личной жизни, что от земли я оторвался далеко и надолго.

Поэтому буду писать что-то оторванное!

Текущее время: 06:58 << < 1 2 3 4 > >>
новая тема  ответить следующая тема | предыдущая тема
 
Перейти:

версия для печати   отправить эту страницу по e-mail   подписаться на эту тему

 
Powered by: vBulletin Version 2.0.1
Copyright ©2000, 2001, Jelsoft Enterprises Limited.
Любое использование материалов сайта
возможно только с разрешения его администрации.


 

Рейтинг@Mail.ru
Рейтинг@Mail.ru