Seaward.ru

Здравствуйте, гость ( Вход | Регистрация )

> Для программистов, вопросы по скриптам ПКМ
igor_pol
сообщение Aug 24 2005, 21:00
Сообщение #1


боцман
****


Группа: форумчанин
Сообщений: 140
Регистрация: 3-December 04
Пользователь №: 169



Первое что я хотел написать "АДМИНЫ!!!!" НЕ ЗВЕРЕЙТЕ ЗА "НЕНУЖНУЮ ТЕМУ"
**************************************************
на вопрос зачем создал эту тему отвечу так "Я например НЕ ПРОСТО ЮЗВЕРЬ А КОЕ ЧТО И САМ НАПИСАТЬ МОГУ.
И хотел бы чтобы на форуме была тема для тех кто сам хочет что-то добавить в игру.
На сайте аддона Алекс вікинул ссылку на описание скриптов ПКМ на английском.
Я хотел бы узнать где можно нарыть больше инфы по этом скриптам.
И кстати на каком языке они пишуться.
Если кто-то знает ----- пишите.
И вообще всем програмерам на форуме нужна своя тема.
так что ГОСПОДА ПРОГРАМЕРЫ ВАЛИТЕ СЮДА !!!!
Может из этого что небудь интересное выйдет!!!!!!(Если тему не УТРУТ)
Жду сообщений (может у когот есть идеи на эту тему )

Сообщение отредактировал Догева - Apr 24 2006, 13:36
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
31 страниц V « < 29 30 31  
Reply to this topicStart new topic
Ответов(600 - 613)
Thorgal
сообщение Feb 1 2020, 15:51
Сообщение #601


капер
******

Ветеран ФорумаЗаслуженный Художник
Группа: форумчанин
Сообщений: 774
Регистрация: 13-December 05
Из: Москва
Пользователь №: 1,667



Как разлочить персонажа в диалоге? После срабатывания скрипта на таймер умолк, хотя должен говорить. Хотя бы стандартный диалог "- Чего изволите? - Ничего, просто так зашел" должен активировать. Третий день копаюсь, ничего не выходит. Не понимаю...
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Feb 1 2020, 16:24
Сообщение #602


Разработчик игры К:ВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 15,221
Регистрация: 2-November 04
Пользователь №: 3



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

Еще может быть когда не сработал нормальный выход из диалога
НПС залочится без реплики

case "exit":
Diag.CurrentNode = Diag.TempNode;
NPChar.quest.meeting = NPC_Meeting;
DialogExit();
break;
User is online!Profile CardPM
Go to the top of the page
+Quote Post
Thorgal
сообщение Feb 2 2020, 13:04
Сообщение #603


капер
******

Ветеран ФорумаЗаслуженный Художник
Группа: форумчанин
Сообщений: 774
Регистрация: 13-December 05
Из: Москва
Пользователь №: 1,667



Цитата(ALexusB @ Feb 1 2020, 16:24) *

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

Еще может быть когда не сработал нормальный выход из диалога
НПС залочится без реплики

case "exit":
Diag.CurrentNode = Diag.TempNode;
NPChar.quest.meeting = NPC_Meeting;
DialogExit();
break;

Спасибо, но пока все равно ничего не выходит. При попытке оперировать данным блоком в файле квеста игра перестает обращаться к файлу в целом. Короче, все сложно...
Пытаюсь найти в файлах, как вернуть состояние нпсчару. По поиску не нашел. Ищу вручную.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Thorgal
сообщение Feb 2 2020, 23:10
Сообщение #604


капер
******

Ветеран ФорумаЗаслуженный Художник
Группа: форумчанин
Сообщений: 774
Регистрация: 13-December 05
Из: Москва
Пользователь №: 1,667



Убрал автоматическое продление диалога НПС, после вставленной картинки и стало еще интереснее. Виснуть НПС перестал, но диалог закольцевался с определенной реплики... Все страньше и страньше... По любому на следующую стадию и на дежурную реплику диалог не переходит.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Feb 3 2020, 08:48
Сообщение #605


Разработчик игры К:ВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 15,221
Регистрация: 2-November 04
Пользователь №: 3



См. другие диалоги, где все ок.
Внимание на Diag.CurrentNode и штатный выход DialogExit();
User is online!Profile CardPM
Go to the top of the page
+Quote Post
Thorgal
сообщение Feb 3 2020, 11:32
Сообщение #606


капер
******

Ветеран ФорумаЗаслуженный Художник
Группа: форумчанин
Сообщений: 774
Регистрация: 13-December 05
Из: Москва
Пользователь №: 1,667



Цитата(ALexusB @ Feb 3 2020, 08:48) *

См. другие диалоги, где все ок.
Внимание на Diag.CurrentNode и штатный выход DialogExit();

Самое смешное, что я эту пикчу в диалоги вставлял уже несколько раз и после нее все было ок. Судя по тому, что я как-то добрался до финала квеста. Но тут просто какое-то заколдованное место. Что-то она там нарушает, но что, понять не могу. Все в точности, как раньше. Все строчки кода те же самые. Штатный выход срабатывает. Просто после него либо НПС лочится, либо диалог зацикливается... Мне уже плевать на сборку которую я клепал 3 месяца. Все равно, для собственного удовольствия времени не жалко. Но тут уже дело принципа. Либо я добью этот код, либо он меня... laugh.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Feb 3 2020, 11:56
Сообщение #607


Разработчик игры К:ВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 15,221
Регистрация: 2-November 04
Пользователь №: 3



Еще не понятно о чем мы говорим - это мсто в НПС переигрывается или НПС уже залочен и нужно разлочить?
Т.к. все парвки диалога работают только в новом диалоге (С\Л до поломки и говорим заново). Если же уже НПС заклинили, то надо переигрывать это место
Ну или писать чит, на получить pchar , присвоить ему нужную ветку диалога и тип горожанина задать, это сними его залоченность
Я там тестил линейки квеста с середины, когда переигрывть долго и можно сразу начать с нужного этапа.
User is online!Profile CardPM
Go to the top of the page
+Quote Post
Thorgal
сообщение Feb 4 2020, 11:24
Сообщение #608


капер
******

Ветеран ФорумаЗаслуженный Художник
Группа: форумчанин
Сообщений: 774
Регистрация: 13-December 05
Из: Москва
Пользователь №: 1,667



Цитата(ALexusB @ Feb 3 2020, 11:56) *

Еще не понятно о чем мы говорим - это мсто в НПС переигрывается или НПС уже залочен и нужно разлочить?
Т.к. все парвки диалога работают только в новом диалоге (С\Л до поломки и говорим заново). Если же уже НПС заклинили, то надо переигрывать это место
Ну или писать чит, на получить pchar , присвоить ему нужную ветку диалога и тип горожанина задать, это сними его залоченность
Я там тестил линейки квеста с середины, когда переигрывть долго и можно сразу начать с нужного этапа.

Я беру сейв ДО бага. Только так, иначе смысла нет.

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

Блок с пикчей уже нормально отработал в этом же файле в обоих видах дважды. В третий раз ни в одном виде без упомянутого бага работать не хочет.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Feb 4 2020, 12:48
Сообщение #609


Разработчик игры К:ВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 15,221
Регистрация: 2-November 04
Пользователь №: 3



а break; есть в нужном кейс? А то без него соседние ветки может отработать и в итоге код будет ХЗ какой, а не как ожидается
Исходя из приведенного описания - баг в проектном коде, надо по строкам его в голове прокрутить (или дебугером по Ф5) и понять где у НПС теряется диалог и стостояние горожанина
А ну и еще - если исходно диалог начал сам НПС, то он актеором был по квесту, нужно вернуть ему горожанина обратно - см примеры др квестов по аналогии

В ПКМ не знаю сходу такое - в исходниках ВМЛ генератор квеста пассажира например, там чел на пирс ставится и спасибо говорит. См его диалог
User is online!Profile CardPM
Go to the top of the page
+Quote Post
Thorgal
сообщение Feb 4 2020, 16:24
Сообщение #610


капер
******

Ветеран ФорумаЗаслуженный Художник
Группа: форумчанин
Сообщений: 774
Регистрация: 13-December 05
Из: Москва
Пользователь №: 1,667



Кажется я сумел... Теперь надо еще пройти квест до конца, причем проверить все концовки, а их там три штуки.
В общем я сдвинул пикчу вплотную к блоку с началом нового этапа квеста и таймером. Часть реплик засунул прямо в этот блок. Еще часть вывел после блока с таймером и в конце поставил:
link.l1.go = "Exit";

Убрал из блока с пикчей автоматическое продление диалога. После пикчи надо еще раз кликнуть мышой, но это пустяки. Главное все сработало, записалось в журнал и тайминг запустился... И самое главное после этого сработала дежурная фраза. То есть НПС не залочился. Боюсь выдохнуть...

Я не знаю, как это работает, но мой принцип - если что-то заработало больше к этому не прикасайся. Понятно, что это опять лечение зубов через анус, но я счастлив и такому результату.

В общем это еще не Аустерлиц, но это уже Маренго...

Цитата(ALexusB @ Feb 4 2020, 12:48) *

А ну и еще - если исходно диалог начал сам НПС, то он актеором был по квесту

Нет, диалог начал ГГ. Он пришел сдать этап квеста.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Martial
сообщение May 3 2020, 22:44
Сообщение #611


юнга
**


Группа: форумчанин
Сообщений: 20
Регистрация: 13-April 19
Пользователь №: 136,449



Всем, привет! ChangeCharacterAddressGroup падает с ошибкой stack error, кто-нибудь знает почему? вроде где-то читал что есть ограничение на общее кол-во персов в игре если да то где это знаение прописано?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Martial
сообщение Jul 4 2020, 01:07
Сообщение #612


юнга
**


Группа: форумчанин
Сообщений: 20
Регистрация: 13-April 19
Пользователь №: 136,449



увеличение переменной MAX_CHARACTERS не помогло, сам персонаж появляется но поговорить с ним нельзя, для его спавна идет цепочка разговоров с другими персами которые тоже были добавлены, если цепочку сократить то он и спавниться и диалог с ним нормально работает, то есть дело судя по всему в количистве нпс, но где тогда прописаны переменные максимума нпс?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Jul 4 2020, 15:54
Сообщение #613


Разработчик игры К:ВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 15,221
Регистрация: 2-November 04
Пользователь №: 3



MAX_CHARACTERS и инит НПС срабатывает с начала новой игры
Если это тестить в процессе старого сейва (где квест уже идет), то не сработает
Нужно начинать новую игру и читами добегать до нужного места.
См чит панель по Ф11 в ВМЛ (коды открыты).
Там телепорт по тавернам городов и инит нужной ветки квеста в пчар.
User is online!Profile CardPM
Go to the top of the page
+Quote Post
Martial
сообщение Вчера, 20:41
Сообщение #614


юнга
**


Группа: форумчанин
Сообщений: 20
Регистрация: 13-April 19
Пользователь №: 136,449



Цитата(ALexusB @ Jul 4 2020, 15:54) *

MAX_CHARACTERS и инит НПС срабатывает с начала новой игры
Если это тестить в процессе старого сейва (где квест уже идет), то не сработает
Нужно начинать новую игру и читами добегать до нужного места.
См чит панель по Ф11 в ВМЛ (коды открыты).
Там телепорт по тавернам городов и инит нужной ветки квеста в пчар.

в том то и дело что я полностью заново начинаю, но все равно этот эррор вылазит: RUNTIME ERROR - file: quests\quests.c; line: 103 (метод - bool CheckQuestRecord(aref qref,string textId))
Invalid range

кстати а можно открыть файлы игры как один проект ?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

31 страниц V « < 29 30 31
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 6th July 2020 - 23:44
Яндекс цитирования Rambler's Top100
Rambler's Top100