Current time: 20.04.2024, 00:24 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
DL - создание расширенных диалогов
» для TE, MoP, ERA
Author Message
Bes Offline

Posts: 5422
Post: #1

Я понимаю, что команда DL не отличается стабильностью и мы все используем её на свой страх и риск, но может поглядите что здесь можно переделать,чтобы игра не вылетала при попытке отобразить этот диалог?

Диалог - здесь
Код ниже:
Quote:!?OB104&1000; Университет
!!HE-1:N?y-1;
!!VRv5:S0;
!!DO22510/0/27/1:Py-1/5;
!!OB998|v5<8/v5>13:R;
!!FU|v5<8/v5>13:E;
!!OB998:S;
!!FU22505:P1/9; reset z-vars 1..9
!!VRz-1:S^ZSETUPur.txt^;
!!DL2:Nz-1; активировать диалог
!!UR998:S?v601/?v602/?v603/?v604;
!!UN:N4/1/v601 N4/2/v602 N4/3/v603 N4/4/v604; получить имена навыков [z1..4]
!!VRz5:S^UNIVGOLD.PCX^;
!!VRz6:Sz199393;
!!HEy-1:Sv601/?y1 Sv602/?y2 Sv603/?y3 Sv604/?y4; наличие навыков у героя
!!VRv1:Cv601/v602/v603/v604;
!!VRv1:*3+3;
!!VRv2:*3+3;
!!VRv3:*3+3;
!!VRv4:*3+3;
!!DL2&y1>0:A9/11/z5 A13/11/z5 H2/z6;
!!DL2&y2>0:A10/11/z5 A14/11/z5 H3/z6;
!!DL2&y3>0:A11/11/z5 A15/11/z5 H4/z6;
!!DL2&y4>0:A12/11/z5 A16/11/z5 H5/z6;
!!DL2:A2/4/v1 A3/4/v2 A4/4/v3 A5/4/v4; настроить картинки навыков
!!DL2:A20/3/z1 A21/3/z2 A22/3/z3 A23/3/z4; расставить имена в диалоге
!!DL2:S?v600; показать диалог

Бывает так,что при первом посещении всё срабатывает как надо,а при повторном посещении уже вылет..
Добавлено:
"серые" команды в коде можно и опустить, хотя не вних ошибка.. проверял
Добавлено:
22510 - подсчитывает кол-во навыков у героя
(This post was last modified: 06.12.2009 00:58 by Bes.)
06.12.2009 00:55
Visit this user's website Find all posts by this user Quote this message in a reply
major Offline

Posts: 130
Post: #2

У меня проблема похожая, как у Besа...
Абсолютно тупой вылет, причем где-то 1 раз из 5 все работает нормально.
Вот сам код

Code:
!?DL&v998=10/v999>=90/v999<=105/v1000=12;
!!DLv998&v9054>0:Av9054/4/0;
!!DLv998:Av999/4/1; - здесь
!!VRv9054:Sv999;

В начале происходит очищение переменной v9054, я проверял - при первом выполнении она равна 0. В других диалогах этот код работает без проблем. А тут практически всегда игра крашится с указанием на выделенную строку. Неужели все так плохо, вроде обычно DL работал нормально?
10.12.2009 18:53
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #3

major, а вы уверены,что DL поддерживает такое: !!DL$:XXXX; ?
где $-переменная
Тем более, раз у вас триггер завязан на срабатывание для диалога №10, то логичнее писать команды уже с чистой цифрой диалога т.е. !!DL10&v9054>0:Av9054/4/0.. и т.д.
10.12.2009 19:27
Visit this user's website Find all posts by this user Quote this message in a reply
major Offline

Posts: 130
Post: #4

Bes, да собственно без разницы, как писать !!DLv998 или !!DL10, все равно, оно либо работает, либо нет.
!!DL$:XXXX; - в хелпе как раз такой синтаксис и написан, кроме !!DL:C, в котором номер не указывается.

Еще вот не пойму, почему эта строка вызывает ошибку, то что номер переменной может быть в пределах 1...10000.

Code:
!!DL10:Ay-1/3/z-1 Ay-2/3/z-2 Ay-3/3/z-3;
либо такая
Code:
!!DL10:Ay1/3/z1 Ay2/3/z2 Ay3/3/z3;
в общем, даже не важно какие переменные использовать.

P.S. Диалог-то загружается нормально и функционирует стабильно, только сначала выдает целую кучу ошибок в этой строке.
(This post was last modified: 10.12.2009 20:02 by major.)
10.12.2009 20:00
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #5

ну, коли диалог работает, то просто отключите вывод сообщений 0б 0шибке.. через !!UN:P904/1 P905/0;
(This post was last modified: 11.12.2009 12:03 by Bes.)
11.12.2009 12:02
Visit this user's website Find all posts by this user Quote this message in a reply
MOP Offline
Moderators

Posts: 1468
Post: #6

Я так и делаю. Если возможно.
Майор - ты будешь встречать это практически в каждом диалоге. ИМХО, DL:A - самая глючная команда из всех в ERM (UN:C по сравнению с ней - просто душка). Зависит от Винды, от железа и бог знает чего ещё. Диалог, отлично работающий на SP3, даёт 100%-ый вылет на SP2 и наоборот. В чём дело - не понять. А если нет вылета, то логи ошибок непостижимы. Иногда помогают изменения в шаблоне, но как и что менять - тоже лишь Господу известно.
В общем, осторожность тут не повредит.


Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery
12.12.2009 10:07
Find all posts by this user Quote this message in a reply
DracoLich Offline

Posts: 251
Post: #7

а как же она ведет себя на разнообразных нуксах и маках? D:
+ фазу луны учитывайте!
12.12.2009 17:50
Visit this user's website Find all posts by this user Quote this message in a reply
major Offline

Posts: 130
Post: #8

Ну ладно, с этим ошибками, отключили и все. А вот что делать с вылетами - я ума не приложу. Есть 5 похожих рабочих диалогов, а вот шестой не хочет менять кадры любого дефа - вылетает и все. Теперь что - ждать новолуния или НГ, или смену полюсов? Я понимаю, что команда сырая, глючная, но это же просто тупость. Эх...
13.12.2009 11:51
Find all posts by this user Quote this message in a reply
GrayFace Offline
Forum Moderators

Posts: 1233
Post: #9

Киньте мне логи вылетов.

(10.12.2009 20:00)major Wrote:  Еще вот не пойму, почему эта строка вызывает ошибку, то что номер переменной может быть в пределах 1...10000.

Code:
!!DL10:Ay-1/3/z-1 Ay-2/3/z-2 Ay-3/3/z-3;
У меня не вызывает.
13.12.2009 13:00
Find all posts by this user Quote this message in a reply
major Offline

Posts: 130
Post: #10

В этом и есть странность - 3 диалога без ошибок использует подобные строчки, 4-ый диалог лишь в конце выдает ошибку, 5-ый практически везде, ну а 6-ой...

Лог вылетов всегда один и тот же, залил сюда http://slil.ru/28336322.
13.12.2009 17:49
Find all posts by this user Quote this message in a reply
GhostManSD Offline

Posts: 1054
Post: #11
Фото 
Тема явно назрела: функционал команды огромен, однако сама команда весьма сложна для пользователя ранга "Newbie", к коим я с полным на то основанием отношу себя. Есть огромное желание познакомиться поближе с этой командой, однако информация, изложенная в справке, не дала исчерпывающего ответа. Поэтому предлагаю здесь обсудить возможности данной команды.
Наверное, нужен какой-то наглядный пример, поэтому очень прошу профессионалов сделать небольшой диалог. Допустим, пусть в диалоге будут 5 картинок, расположенных в форме креста в окне стандартного геройского формата, а также кнопка "ОК". Если такое возможно. Вроде бы возможно, поскольку где-то на df2 мне попадался результат работы MOP'а со стандартным окном героя, и это было сделано через !!DL. Великолепный, кстати, пример, по возможности надо бы найти и выложить здесь под спойлером.


Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
01.09.2010 01:47
Visit this user's website Find all posts by this user Quote this message in a reply
Druin Offline

Posts: 1272
Post: #12

Вот тут был хороший пример... Но ссылки уже не рабочие... Может у кого-нить осталось?..


Image: pooh_door.gif
01.09.2010 10:13
Visit this user's website Find all posts by this user Quote this message in a reply
Druin Offline

Posts: 1272
Post: #13

И можно еще в ТПМ глянуть... Sm там точно должно быть использование !!DL


Image: pooh_door.gif
01.09.2010 10:26
Visit this user's website Find all posts by this user Quote this message in a reply
GhostManSD Offline

Posts: 1054
Post: #14

TPM пока качать не могу - давеча разорился на инсталлятор Иды Про (полцарства за умение пользоваться !!UN:C!). Вот только пользоваться ей не умею, знать бы, где научиться...


Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
01.09.2010 10:43
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16484
Post: #15

GhostManSD, по иде хорошая книга есть у Криса Касперски: http://bookz.ru/authors/kasperskii-kris/kasper08.html


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
01.09.2010 15:07
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group