• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!

Gothic Sourcer

marazmus

★★★★★★★★★★★
Основатель
Регистрация
7 Янв 2003
Сообщения
2.117
Благодарности
914
Баллы
385
  • Первое сообщение
  • #1

MoranGrimoff

Участник форума
Регистрация
12 Фев 2013
Сообщения
40
Благодарности
2
Баллы
155
Товарищи! Как создать диалог для монстра, а конкретно для демона? Создал демона по примеру Сеньяка, запихнул его в скрипт со всеми демонами, в игру вставил, создал файл диалога. Сразу этот гад меня мочил, сделал его своим другом. Однако, как заставить его говорить, я так и не понял. Может нужно вставить его как НПС, но в скриптах среди неписей я ни одного монстра не нашел. Памажыте!

Просю пардон. Не туды. Удалите пост :{
 

DeusCore

Участник форума
Регистрация
6 Июл 2014
Сообщения
7
Благодарности
0
Баллы
150
Всем времени суток)
Ребят, извиняюсь, если была тонна подобных моему вопросов, но уже устал бороздить просторы паутины.
Суть проблемы: Компилирую декомпилированные скрипты оригинальной Г2 (без аддона) и соурсер выдает ворох ошибок "Нельзя преобразовать instance в int" в скрипте "b_npc_isalivecheck.d". М.б. кто знает, что с этим можно сделать?
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.574
Благодарности
4.167
Баллы
915
Где именно лезут ошибки? Вот содержимое скрипта Story\B_Story\B_NPC_IsAliveCheck.d из немецкой версии Gothic II (v1.30):
Код:
var int SLD_Bullco_is_alive;
var int SLD_Rod_is_alive;
var int SLD_Cipher_is_alive;
var int SLD_Gorn_is_alive;
var int SLD_Sylvio_is_alive;
var int GornDJG_is_alive;
var int DJG_Angar_is_alive;
var int DiegoOW_is_alive;
var int GornOw_is_alive;
var int Vino_isAlive_Kap3;
var int Malak_isAlive_Kap3;
 
func void B_NPC_IsAliveCheck(var int Zen)
{
    var C_Npc SLD_Bullco_OWCheck;
    var C_Npc SLD_Rod_OWCheck;
    var C_Npc Sld_821;
    var C_Npc SLD_Cipher_OWCheck;
    var C_Npc SLD_Gorn_OWCheck;
    var C_Npc SLD_Sylvio_OWCheck;
    var C_Npc GornDJG_NWCheck;
    var C_Npc DJG_Angar_NWCheck;
    if(Zen == NEWWORLD_ZEN)
    {
        if(Kapitel >= 2)
        {
        };
        if(Kapitel >= 3)
        {
        };
        if(MIS_ReadyforChapter4 == TRUE)
        {
            SLD_Bullco_OWCheck = Hlp_GetNpc(Sld_807_Bullco);
            if(Npc_IsDead(SLD_Bullco_OWCheck))
            {
                SLD_Bullco_is_alive = FALSE;
            }
            else
            {
                SLD_Bullco_is_alive = TRUE;
                B_RemoveNpc(SLD_Bullco_OWCheck);
            };
            SLD_Rod_OWCheck = Hlp_GetNpc(Sld_804_Rod);
            if(Npc_IsDead(SLD_Rod_OWCheck))
            {
                SLD_Rod_is_alive = FALSE;
            }
            else
            {
                SLD_Rod_is_alive = TRUE;
                B_RemoveNpc(SLD_Rod_OWCheck);
            };
            Sld_821 = Hlp_GetNpc(SLD_821_Soeldner);
            Npc_ExchangeRoutine(Sld_821,"RODWEG");
            SLD_Cipher_OWCheck = Hlp_GetNpc(Sld_803_Cipher);
            if(Npc_IsDead(SLD_Cipher_OWCheck))
            {
                SLD_Cipher_is_alive = FALSE;
            }
            else
            {
                SLD_Cipher_is_alive = TRUE;
                B_RemoveNpc(SLD_Cipher_OWCheck);
            };
            SLD_Gorn_OWCheck = Hlp_GetNpc(PC_Fighter_NW_vor_DJG);
            if(Npc_IsDead(SLD_Gorn_OWCheck))
            {
                SLD_Gorn_is_alive = FALSE;
            }
            else
            {
                SLD_Gorn_is_alive = TRUE;
                B_RemoveNpc(SLD_Gorn_OWCheck);
            };
            SLD_Sylvio_OWCheck = Hlp_GetNpc(SLD_806_Sylvio);
            if(Npc_IsDead(SLD_Sylvio_OWCheck))
            {
                SLD_Sylvio_is_alive = FALSE;
            }
            else
            {
                SLD_Sylvio_is_alive = TRUE;
                B_RemoveNpc(SLD_Sylvio_OWCheck);
            };
        };
        if(Kapitel >= 5)
        {
        };
        if(Kapitel >= 6)
        {
        };
    };
    if(Zen == OldWorld_Zen)
    {
        if(Kapitel >= 2)
        {
        };
        if(Kapitel >= 3)
        {
        };
        if(Kapitel >= 4)
        {
            GornDJG_NWCheck = Hlp_GetNpc(GornDJG);
            if(Npc_IsDead(GornDJG))
            {
                GornDJG_is_alive = FALSE;
            }
            else
            {
                GornDJG_is_alive = TRUE;
                B_RemoveNpc(GornDJG_NWCheck);
            };
            DJG_Angar_NWCheck = Hlp_GetNpc(DJG_Angar);
            if(Npc_IsDead(DJG_Angar))
            {
                DJG_Angar_is_alive = FALSE;
            }
            else
            {
                DJG_Angar_is_alive = TRUE;
                B_RemoveNpc(DJG_Angar_NWCheck);
            };
        };
        if(Kapitel >= 5)
        {
        };
        if(Kapitel >= 6)
        {
        };
    };
};
 

DeusCore

Участник форума
Регистрация
6 Июл 2014
Сообщения
7
Благодарности
0
Баллы
150
Код то одинаковый, а ругается он на подобные этой строки:

Код:
                b_removenpc(sld_bullco_owcheck);

P.S.: Вот скрин лога соурсера:
t9sDuPm3XL4.jpg
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.574
Благодарности
4.167
Баллы
915
Не могу воспроизвести указанные выше ошибки. Декомпилировал Gothic.dat немецкой G2 (v1.30) и русской локализации G2a (v2.6): ошибки были только в скриптах C_CanNPCCollideWithSpell.d, DIA_BAU_970_Orlan.d, DIA_SLD_810_Dar.d и DIA_VLK_413_Bosper.d. Рекомендую переустановить Gothic Sourcer v3.14 и проверить, появятся ли снова эти ошибки при декомпиляции. Впрочем, на всякий случай выложи свои Gothic.dat и Ou.bin.
 

DeusCore

Участник форума
Регистрация
6 Июл 2014
Сообщения
7
Благодарности
0
Баллы
150
Они возникают при компиляции. При декомпиляции было две-три ошибки, а вот при компиляции больше тридцати.
В аттаче Gothic.dat и OU.bin
 

Вложения

  • Desktop.rar
    1,4 MB · Просмотры: 127

redleha


Модостроитель
Регистрация
26 Фев 2008
Сообщения
735
Благодарности
665
Баллы
245
Эти ошибки идут от самого ГотикСорсера. Вообще, если прочитать мануал к программе, то эта проблема там описана и метод её исправления, а именно внесение этих функций в файл redefinedfunc.dsc на примере уже внесённых.
 

DeusCore

Участник форума
Регистрация
6 Июл 2014
Сообщения
7
Благодарности
0
Баллы
150
Проблема решилась. При том была проста до глупости. Оказывается, под видом соурсера 3.14 мне подсунули 3.10. Компилятор ругался на неправильное преобразование переменных. А ошибку, по вине которой это все и получалось, фиксили в 3.11:
5. Исправлена ошибка при декомпиляции, когда вместо чисел появлялись имена инстанций.
Декомпилировал скрипты 3.14 версией и все теперь работает как надо. Извиняюсь за беспокойство))
З.ы. М.б. кому и поможет это все
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.574
Благодарности
4.167
Баллы
915
Разобрался самостоятельно? Ну и ладушки.*thumbs up* А то я довольно долго возился с очисткой скриптов G2 от различных ошибок, внесённых при их декомпиляции и повторной компиляции. На всякий случай выкладываю очищенные скрипты.
 

Вложения

  • SolG2_rus_fixed.rar
    2,9 MB · Просмотры: 147

Defman

Участник форума
Регистрация
26 Май 2013
Сообщения
3.165
Благодарности
245
Баллы
300

Defman

Участник форума
Регистрация
26 Май 2013
Сообщения
3.165
Благодарности
245
Баллы
300
Ваше дело. Хотя меня забавляет блок внизу в этой теме: https://worldofplayers.ru/threads/36477/
"Ссылки некоторым возможно недоступны, исправлю по мере поступления". Лично меня две темы ввели в ступор, так как я в первый раз пытался скачать соурсер именно из темы в разделе "Уроки", а не в "Скриптинг" %)
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Вобщем такой вопрос, по скольку у меня есть исходники сорсера, то есть идея его чуть чуть допилить, и сделать то о чем уже многие просили - консольную версию сорсера, чтобы компилить скрипты с помощью бат файлов и тд, это еще актуально?
 

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.852
Благодарности
6.728
Баллы
1.625
:eek:Кто? когда просил? есть же вторая версия - рабочая, консольная... зачем?

Ваше дело. Хотя меня забавляет блок внизу в этой теме: https://worldofplayers.ru/threads/36477/
"Ссылки некоторым возможно недоступны, исправлю по мере поступления". Лично меня две темы ввели в ступор, так как я в первый раз пытался скачать соурсер именно из темы в разделе "Уроки", а не в "Скриптинг" %)
Яж исправил их в том году...
 
Последнее редактирование:

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Ну, например не всех устраивает версия 2.40, по этому и спрашиваю.
+ ко всему, в новой версии будет добавлен ряд новых возможностей, в том числе поправлены вылеты при декомпиляции всяких икарусов.

+ была идея добавить возможность компиляции моделей с внешними файлами настроек материалов.
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Пока что настройки, оформление и тд я не трогаю, сейчас важно пофиксить старые баги, и добаивть новые:)
МЕГАХочу новые баги:{:rolleyes:
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Вобщем, хотелось бы услышать адекватный список того что хорошо бы исправить в сорсере.
Мои идеи вот:
1.Исправить ошибки декомпиляции скриптов(как например скрипты Varus biker).
2.Пофиксить мелкий, но раздрожающий баг, что если при работе в сорсере в конце какого либо файла написать "//" то при повторной загрузке решения получим вылет.
3.По компилятору моделей, думаю стоит добавить загрузку *.PML файлов при компиляции моделей(например чтобы использовать разные альфа функции материала, и прочие "спейсеровские" свойства.
4.Добавить возможность использовать "запрещенные" приемы, такие как используются в Ikarus Scriptpacket, прямые преобразования типов и тд(сделать опцию в меню "Режим компиляции костылей")

Больше пока идей нет, а что у Вас граждане?


P.s. Оформление/интерфейс и тд пока не трогаем.
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.407
Благодарности
3.232
Баллы
525
что у Вас граждане?
Поддержка платформы Г1. В смысле, если будут вводиться какие-нибудь новые фишки, то неплохо бы помнить и о существовании и этой платформы. По-умолчанию она для моддеров как бы отсутствует. :)
 
Сверху Снизу