Gem of the North


  -ОтветитьНовая темаГолосование-

> Основные материалы с официального форума, 12 марта 2005 года
Дима
  Отправлено: Mar 14 2005, 01:38 PM
|Цитировать


Group Icon



Основные материалы с официального форума NWN2

Adam Brennecke - программист, Obsidian Entertainment –

Вопросы к разработчикам
Цитата: 4. Маловероятно, что мы сделаем что-то таким образом. Система скриптов – это наше междумордие к движку игры, которое мы предоставляем вам.
Система скриптов находится внутри движка, в то время, как мир находится на внешней стороне. Есть небольшое обсуждение желаний народа по этому поводу на форуме: http://www.nwnx.org/phpBB2/viewtopic.php?t=163
Необходимо кратко отметить, что Papillon (автор NWNX) будет так же, как ряд функций, подобно SetLocalWhatever () GetLocalWhatever (), которые делают вызовы функций в движке игры с уникальной подписью функции.
Другие, подобно мне, мечтают о сокетах TCP, чтобы передавать данные в/из, но общий способ ввести временные данные, например, прерывание извне, чтобы вызвать пользовательское событие, по размышлению Papillonа, которое было бы функцией с легко распознаваемой подписью, которая установит флаг так, что в следующий раз система событий происходит, когда это вызывает событие модуля.

Мечтать не вредно. Хотите - верьте, хотите - нет, но система скриптов работает в большинстве своём, как тут описано. Если система скриптов недостаточно мощная для вас, то я рекомендовал бы приклеить на форуме темку по скриптам на этом форуме, где вы будете флудить по поводу того, как улучшить функциональные возможности скриптов.

Erik Novales - Programmer, Obsidian Entertainment –

Модальные тулсетовые окна
Два вопроса… 1. Ерик…ты сказал, что они «практически» закончены. Что подразумевает «не полностью». Которые окна будут теми же самыми до сих пор, как текущая реализация Тулсета.
Я сказал «не полностью» потому, что есть ещё модальные диалоги в Тулсете, такие как Open, Save, когда добавляешь новую линию общения (как в NWN1) и т.п. Все фактические редакторы, тем не менее, являются безмодельными.
2. Интересно, прокомментировал ли кто-нибудь идею CIDа о возможности тестировать игру с вашими изменениями как-то в Тулсете? Это было бы абсолютно удивительно!
Это абсолютно невозможно - запускать игру в Тулсете.
("а люди есть? нет, сынок, это фантастика!" (С) реклама хохлятского сыра Хохланд)

Tony Evans - дизайнер, Obsidian Entertainment –

Будни Obsidian?
К несчастью мы мало, что можем сказать по этому поводу того, чего нет в FAQ. Если мы будем давать недельные графики, то это будет выглядеть примерно так:
-----------------
NWN 2 update
Неделя от 7 Марта, 2005
Дизайнеры
- работали над дизайном лок, про которые мы не можем говорить на публике.
- написали диалоги для интересных чаров, которых мы не можем раскрыть.
- говорили о всякой сюжетной туфте, о которой мы не можем распространяться за пределами Obsidian.

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

Программисты
- частично осуществили новую фантастическую систему чего-то, о чём мы не можем говорить.
- написали несколько шикарных скриптов, о которых будут волноваться несколько человек за пределами команды разработчиков.
- сделали множество настроек Тулсета.
----------------
Видите? Ничего интересного и информативного… И за следующую неделю была бы подобная шняга, и ещё за следующую неделю, и все последующие – я думаю вы врубились.
Так что остыньте покамест, потому что мы тоже стремимся так же, если не больше, разрекламировать вам клёвую игру, над которой мы работаем, так как вы должны узнать об этом.
(тебе бы холодильники чукчам рекламировать, у каждого чукчи их бы уже по 10 штук было, а неграм крем для загара)

Насильственные выборы
Мы не собираемся заставлять игроков делать определенный выбор в NWN2, кроме мест, где выбор должен быть сделан для продолжения сюжета (к примеру принятие критического квеста). Однако игроки будут всегда иметь большую свободу в том, как они реагируют/отвечают на вещи. Примеры ответов включают, но не ограничиваются этим: добрый (отказаться от награды), злой (угрожать убить кого-нибудь), хаотичный (нарушать закон, тырить вещи(а убить типа не нарушать закон?)) и добропорядочный (делающий «правильные» вещи(это как? типа багоюзать только когда NPC не видят?)).
Элаймент игрока будет меняться в зависимости от его действий и ответов. Даже паладин будет иметь возможность говорить как ничтожество, но если он является истинным к своему чару, то он часто будет выбирать делать добрые, добропорядочные вещи.

Почему авторы не получают никакой любви?
Писать для игр – не то же самое, что писать истории и книги. Это ближе к написанию киносценариев, но обычно более комплексно. Насколько более комплексно зависит от глубины истории игры, и насколько гибко и нелинейно это должно быть.
Работая с традиционными писателями, которые пытались писать для игр, и написав историю и диалоги самостоятельно, я могу с уверенностью сказать, что способность написать хорошую историю игры это уникальное мастерство, которое требует много таланта и практики для разработки (не обольщайтесь - это он о себе), даже если вы уже состоявшийся писатель на другом поприще. Вы думаете, первая часть Братства Кольца была бы способна трансформироваться в хороший геймплей если кто-то просто кинул это в игру, слово в слово? Интегрирование истории в геймплей, особенно в нелинейный геймплей, требует много предварительного обдумывания, редактирования, извращения фактов(надувательства - синоним перевода), повторений(итераций - синоним перевода), коллективной работы и компромиссов.
Сюжет и диалоги в игре, особенно сюжетно-насыщенной игре, такой как RPG, обычно пишется многими людьми, и разработчики игр редко наслаждаются неторопливыми расписаниями авторов, таких как Роберт Джордан и Георг Р.Р. Мартин, кто получает 5(или более) лет, чтобы написать одну книгу.
Сюжет KotOR2 был написан несколькими разными дизайнерами, все работали чуть более года, чтобы создать непротиворечивый, привлекательный и нелинейный сюжет, который получился вдвое больше, чем «Война и мир». (что то не особо верится, хотя мы знаем, как Тони Эванс любит всё преувеличивать раз в 100-200)
Книги пишутся, чтобы «рассказать» историю. Киносценарии пишутся, чтобы «показать» историю. А игры – чтобы «пережить» историю.
Скажем, вы попробовали иллюстрировать кому-то день из своей жизни (пойти на работу, прийти домой, пожрать, поиграть в KotOR2)… Самый лёгкий путь – рассказать им об этом. Следующий лёгкий путь – взять с собой видеокамеру и показать потом им. Самое трудное – поместить их на своё место и направить вместо себя через весь день, чтобы они на своей шкуре прочувствовали всё сами.
http://crystaltips.typepad.com/wonderland/...telling_ac.html
Это статья в презентации GDC Грега Зешука о написании историй. Большинство того, что он рассказывает должно быть знакомо дизайнерам и писателям, которые привыкли писать для игр (такие как дизайнеры Obsidian), но это может открыть глаза для некоторых пиплов, которые постят в эту ветку.
(млин, и не лень ему писать столько? вот, внатуре, сказочник. я переводить задолбался)

Rich Taylor - программист, Obsidian Entertainment–

GUI настраиваемый?
Мои мысли по этому поводу на данный момент:
(Уже внутри)
Теперь имеются глобальные переменные GUI и специфические переменные окон, которые могут быть использованы для того, чтобы прятать или возвращать номера, идентификаторы объектов, текст и т.д. Текстовые поля в GUI могут отображать содержимое этих переменных через простой обратный вызов OnUpdate.
Для примера, в XML чтобы определить текстовое поле я добавляю:
OnUpdate=DisplayVar( Global:1 )
тогда каждый раз, когда это текстовое поле обновляется, оно будет отображать содержимое глобальной переменной GUI с индексом 1.
Или
OnUpdate=DisplayVar( Local:3 )
Тогда каждый раз, когда это текстовое поле обновляется, оно будет отображать содержимое локальной переменной №3, размещённой в окне, которое содержит это текстовое поле.

(Я хотел бы добавить)
#1) Кастомные кнопки на стороне клиентского GUI будут способны запендюрить сообщение на сервер, чтобы выполнить скрипт на стороне сервера.

#2) Добавить функции скриптов, которые могут помещать значения в копию переменных GUI клиента.
Например так:
SetGlobalGuiVar( <числовой индекс>, "НекаяСтрока" );

Или, может быть, что-то более специфичное, подобно этому:
SetGlobalGuiVar( <игрок>, <числовой индекс>, "НекаяСтрока" );

Или с версией локальной переменной:
SetLocalGuiVar( <игрок>, <имя окна>, <числовой индекс>, "НекаяСтрока" );

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

Пара мыслей по поводу этой системы.

#1) Была бы необходимость в способе в пометке скриптов, как имеющих возможность исполняться на стороне клиентского GUI, или нет.

#2) Я не уверен по поводу наличия на сервере GUI.xml файлов для клиентов. Я думаю, я предпочел бы, чтобы клиенты-пользователи должны были сами скачивать и устанавливать эти файлы вручную, так они знали бы что творят(или не знали бы, в зависимости от наличия драйвера mozgy.sys). Как противоположный пример, кто то подключается к некоторому серверу с изменённым пользовательским интерфейсом, а сервер нифига не знает об этом. И не надо отмечать то, что это добавило бы немного нагрузки на сервер – отправлять файлы GUI самостоятельно.

В любом случае это просто некоторые мои мысли, как подкатить к этому на данный момент. Не стесняйтесь разбирать это на части, предлагать советы по улучшению, или указывайте на проблемы этой идеи. smile.gif

Ещё раз хочу подчеркнуть - всё это не 100% гарантия, что так и будет, но я люблю обсуждать идею с вами, т.к. я не могу не комментировать некоторые идеи, которые пришли на ум. wink.gif
(лучше делом займись! вот нафлудил!)


Основные материалы с официального форума NWN1

Craig Welburn - программист -

Количество загружаемого трафика.
Так же, имеется опция в файле nwn.ini в разделе [Game Options] называемая:
Enable SubNet Profiling=1
Если вы её включите, то будет создан файл (SubNetProfile.log) в папке, в которую установлен NWN, в котором будет отмечено какая пропускная способность используется каждым игроком и сервером.

Бан CD-кея не работает?
Да, если номера банов не следуют в определённой последовательности, то вы будете поиметь проблемы. IIRC сервер прекращает чтение бан листа, когда достигает разрыва нумерации(или пустого включения для номера бана). Вам это может пригодиться:
http://nwn.bioware.com/builders/winserver6.html


James Henley - технический дизайнер –

Иконки Bioware не поддаются перезаписыванию
Это зависит от ваших графических настроек, вы скорее всего видите .dds версии изображений драгоценного камня, а не .tga версии. Я догадываюсь, что хак перезаписывает .tga, верно? Вам нужно сконвертировать их так же в .dds и поместить в хак. Или понизьте графические настройки. Я, лично, предпочёл бы первый вариант. wink.gif

Новые умения
Я прочитал Руководство по кастомному контенту (by Eligio), но мне надо добавить новые умения в мой мод. Кто-нибудь знает руководство, или что-то подобное? Спасибо tongue.gif
Руководства не знаю. Хотя это достаточно простая задача – добавить новое умение.
Вы можете добавить умения в skills.2da копированием уже существующих, и привидением соответствию вашим требованиям. Колонки говорят сами за себя.
После этого вы можете добавить умения, как классовые умения любому классу, который считаете нужным, редактированием файла cls_skill_CLASSNAME.2da (например файл cls_skill_bard.2da).
Кастомные имена и описания требуют кастомного файла .tlk.
Запомните, во всех классах, у которых 0=нет и 1=да.
Краткое описание колонок файла Skills.2da
Label – имя умения (без пробелов)
Name – числовая ссылка на строку имени в игре в файле .tlk.
Description – числовая ссылка на строку описания в игре в файле .tlk.
Icon – имя иконки
Untrained – может ли это умение использоваться без очков в нём? (например, Persuade может, Open Lock нет)
KeyAbility – какие атрибуты дают бонусы/штрафы на проверку навыка (STR,DEX, CON, INT, WIS, CHA)
ArmorChekPenalty – влияет ли на умение штраф на проверку брони?
AllClassesCanUse – это доступно для всех классов как неклассовое умение? (например, Persuade да, а UMD нет)
Category – просто используйте **** для этой записи
MaxCR – влияет на вычисления CR для NPCей в тулсете. Обычно можно использовать **** для этой записи.
Constant – как это привязано к тулсетным скриптам (например, SKILL_ANIMAL_EMPATHY, SKILL_CONCENTRATION)
HostileSkill – использование этого умения потенциально делает цель враждебной? (скорее всего вы будете использовать тут 0)

Если у вас есть ещё какие то вопросы по этому поводу, не стесняйтесь, спрашивайте. Кто-то должен знать. smile.gif

Dan Whiteside - Designer –

Kingmaker – рекомендации доменов
Хорошие боги:
Suhili – богиня солнца, природы и плодородия. (LG)
Jaess – бог защиты, магии и преданности. (NG)
Tamose – двуполый бог красоты и любви. (CG) (Так же известный, как детский бог. Он мне нравится потому, что имеет забавную предысторию, которая не раскрыта в игре.)
Нейтральные боги:
Pharos – бог войны и правосудия. (LN)
Callahi – уже есть его жрец, так что не лучший ваш выбор – бог торговли, золота и путешествий (N)
Mistress Death - снова, уже Жрица там (CN).

Далее: «Какой диалог с NPC понравился вам больше всего?»
Я любил писать взаимодействие хенчмэна, но что-нибудь с Трипом было наиболее забавно. Он и Кайдала… (я не знаю как эту охинею перевести: He and Kaidala have the sock puppet dialogue, which we had vo for, but couldn't use. Моих знаний явно недостаточно.) Это было настолько забавно, что я смеялся до слёз. Джесси действительно сосредоточился на этом, так чтобы это на самом деле звучало, что Трип пробует сделать кукольный голос. Я надеюсь вам это понравилось.

(я опух, пока всё это перевёл. и чего они так резко разродились) blink.gif

Это сообщение отредактировал Дима - Mar 15 2005, 07:52 AM
| PM| Email Poster|
Вверх Вниз
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы -ОтветитьНовая темаГолосование-