Показать сообщение отдельно
  #16  
Старый 20.07.2008, 04:25
skonto  
Сообщения: n/a
По умолчанию

Цитата:
Сообщение от solD1Er
Квесты, диалоги. Как их делать.

Я думаю, ни для кого не секрет, что в Хаддане есть квесты и
диалоги. Практически с любым НПЦ в игре можно поговорить. У
некоторых - взять квест. Все эти разговоры пишутся на движке
игры, но прототип пишется на языке URQ. Поэтому каждый
желающий может написать на УРКе квест/диалог и прислать мне на
мыло ([email protected]). Ссылки на прогу и хелп здесь:
http://forum.haddan.ru/showthread.php?t=30. Сам текст пишется в
СМСКвесте, а чтобы "проиграть" его файл квеста перетаскивается
на urq_dos.

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

Теперь, собственно, сами требования к диалогам.
Первое и самое главное: все метки в диалогах - целочисленные. И
никак иначе. Также все они должны лежать в пределах
четырехзначных чисел. Это обязательное требование. Остальные не
обязательны, но ОЧЕНЬ желательны.
Итак, второе требование: должна быть возвратная точка диалога.
Это то, что в обычных диалогах обозначается: давай сменим
тему/поговорим о чем-нибудь еще и проч. В этом случае НПЦ
должен спрашивать "О чем поговорим?" и игроку предоставляется
выбор из всех ключевых вопросов к НПЦ. Также, ссылка на
возвратную точку должна встречаться довольно часто. Т.е. из
каждой ветви диалога можно выйти опять на развилку.
Третье: также как и возвратная точка, должен быть выход, причем
его метка очень желательна 9000. Т.е. опять же почти в каждой
реплике должно быть "Ну я пошел(пошла)/Пока/Мне пора" и т.д.
Четвертое требование, также очень желательное. При первом
разговоре НПЦ не знает игрока. Поэтому пытается узнать его имя.
Чтобы это сделать, создается переменная, например qst_npc (на
место npc вставляйте имя НПЦ), зануляется в самом-самом начале, а
в диалогах делаются условия. Если qst_npc=0, то npc и игрок не знакомы. Если она равна, скажем, 1, то знакомы (она должна устанавливаться в 1 во время знакомства).
Посмотреть, как это работает можно
в аттачменте (правда, там старая версия, с двумя переменными. Ваша
задача, если переменных по НПЦ несколько, запихать их в одну). С
диалогами все. Добавлю, пожалуй, что надо писать диалоги без
ошибок.

Теперь про квесты. Это несколько сложнее. К ним относятся
ВСЕ требования к диалогам плюс ещё кое что. Самое главное в квесте
- это квестовая переменная, отражающая
продвижение чара по квесту. То есть, например, если она равна 10, то перс взял квест, 20 - сделал первое действие и т.д. В общем, с каждым действием её значение увеличивается на 10. Почему на 10? Чтобы потом. если что, легко было вставить промежуточное действие.
Если вы проставите ее неправильно,
то квест будет непроходим. Поэтому действуйте аккуратно. Также
аккуратным надо быть при выставлении условий с участием
квестовой переменной. Так, если в течении квеста к одному и тому
же "неписю" надо бегать неоднократно, то вполне можно
запутаться. Ставте комментарии ";" (точка с запятой, без ковычек).
Опять таки, выход из каждого диалога желательно делать 9000. Но у
вас самих на эту метку лучше повесить вариант выбора "С кем
дальше поговорить?".

Еще важный момент. Не забываем, что игра у нас браузерная и
поэтому в любой момент юзер может нажать кнопку
"обновить/refresh". Диалог в этом случае, как вы уже наверное
заметили, закрывается. Поэтому очень желательно избегать
моментов в квестах, где такой рефреш может все запороть. Т.е.
лучше всегда иметь запасной путь, например, поставить
предохранительную переменную, чтобы в случае чего можно было
вернуться на ту точку квеста, где все сорвалось.
Возможности движка игры уже сейчас довольно обширны, поэтому
в квесты можно вставлять интересные приемы. Например, вариант в
диалоге, при котором чар запугивает НПЦ своими мускулами (идет
проврека, если случайное число от 1 до 50 меньше вашей силы, то
запугали успешно). Или какая-нить мини-игра
(камень-ножницы-бумага, например). В общем тут - полет фантазии.
Но увлекаться тоже не стоит. Лучше об этом также предупредить
меня или дюка, и мы вам скажем: возможно реализовать то, что вы
задумали, или нет.

В общем, пока все. Если есть вопросы, связанные с этой темой -
постите здесь. Только вопросы и ничего больше (буду стирать).
З.Ы. Топик будет дополняться.
предлогаю сделать новый квест.Вы входите в бар и видете сидит плачующий войн у него украли вещи.
Начало диалога:
(грустно) Привет меня зовут Вольдемар ,а тебя как ?
1.-Меня зовут (ваше имя) а ты почему грустиш!
-(почти плача) на меня напали возле арены и зобрали мой комплект адского огня и зобрали все оружие а убегая говорили что опытный орк будет доволен!

- я попробую тебе помочь.(закончить диолог)
Идем к начальнику стражи на арене
- Привет (ваше имя) что-то хотел-да ! Я хотел спросить на орене есть опытный орк?
-да!Есть ето опытный боец из зала душы!
- спосибо( закончить Диалог)
идем к опытному бойцу
-Привет (ваше имя)
-Сам всё раскажеш или пойдем к начальнику стражи!
-(беспокойно) оочем ты?
-Ты знаеш я говорю о Вольдемаре!
-(яростно)Умриииииииииииии!
бой начался.
бой закончен Вы попедили вы подобрали заказ для воров.
-Ну пойдем к начальнику стражи или как?
-Ладно я все скажу!
-у меня есть толко его оружие меч топор и булова ,броня и кольца!
Ответить с цитированием