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

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

Union SDK - Инструменты разработчика

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.301
Благодарности
4.636
Баллы
625
  • Первое сообщение
  • #1
UnionProjectIcon.png


Union SDK

инструменты разработчика

Тема находится в состоянии наполнения



Короткие видеоролики, смысл которых максимально быстро погрузить смотрящего в устройство движка готики.

Рекомендуется смотреть на YouTube, поскольку там имеется сегментированный таймлайн.






Схемы классов движка
1600263933953.png
1600263981919.png
1600264017579.png
 

Вложения

  • sizeof.xlsx
    896,7 KB · Просмотры: 73
  • Union_SDK_1_0m.zip
    20,6 MB · Просмотры: 88
Последнее редактирование:

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.860
Благодарности
6.740
Баллы
1.625
3. Затем уже в Сорсере активируешь спец. режим компиляции:
в 3,16 это уже по умолчанию вшито.

RPD, только что собрал твой код.:
C++:
    int Pow_External()
    {
        int FirstArgument;
        int SecondArgument;

        parser->GetParameter(SecondArgument);
        parser->GetParameter(FirstArgument);

        int result = pow(FirstArgument, SecondArgument);

        parser->SetReturn(result);
        return 0;
    }
  void Game_DefineExternals() {
      parser->DefineExternal("PowNums", Pow_External, zPAR_TYPE_INT, zPAR_TYPE_INT, zPAR_TYPE_INT, 0);
  }
Далее в externals.d
Daedalus:
// add function prototypes here
func int PowNums(var int FirstArgument, var int SecondArgument);

в папке System\Autorun создал файл othe.d, в нем
Daedalus:
func void PN1()
{
    PrintScreen(IntToString(PowNums(3,1)),-1,-1,FONT_Screen,3);
};
func void PN2()
{
    PrintScreen(IntToString(PowNums(3,2)),-1,-1,FONT_Screen,3);
};
func void PN3()
{
    PrintScreen(IntToString(PowNums(3,3)),-1,-1,FONT_Screen,3);
};
func void PN4()
{
    PrintScreen(IntToString(PowNums(3,4)),-1,-1,FONT_Screen,3);
};
func void PN5()
{
    PrintScreen(IntToString(PowNums(3,5)),-1,-1,FONT_Screen,3);
};
func void PN6()
{
    PrintScreen(IntToString(PowNums(3,6)),-1,-1,FONT_Screen,3);
};

Зашел в игру, вызываю в марвине:
"call PN1/2/3/4/5/6"
Все нормально показывает...
ну и во вложении проект с плагином
 

Вложения

  • other.d
    89 байт · Просмотры: 1
  • Externals.d
    105 байт · Просмотры: 0
  • UnionPlugin1.zip
    2,6 MB · Просмотры: 1

RPD

Участник форума
Регистрация
13 Ноя 2023
Сообщения
118
Благодарности
3
Баллы
40

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.860
Благодарности
6.740
Баллы
1.625
Ну как забей. Функционал то не появляется))
вот здесь 3.16 ?
1731141815347.png

Если да - забей. в 3,16 нет того пункта. Как я уже сказал, оно вшито, и включать его не нужно. Это нужно было в 3,15
 

Jr13San


Модостроитель
Регистрация
1 Апр 2010
Сообщения
449
Благодарности
266
Баллы
230
У меня на 3.16 тоже внешки в "Externals.d" не подхватываются при компиляции. А, тоже разобрался, забыл указать приставку "var" у переменных(по старинке).
Но я обычно всё компилирую движком, через отдельные скрипты, так мне кажется быстрей, не нужно ничего компилировать, ждать, копировать. Смотри сам, как тебе удобней.
 
Последнее редактирование:

RPD

Участник форума
Регистрация
13 Ноя 2023
Сообщения
118
Благодарности
3
Баллы
40
вот здесь 3.16 ?
Посмотреть вложение 127013
Если да - забей. в 3,16 нет того пункта. Как я уже сказал, оно вшито, и включать его не нужно. Это нужно было в 3,15
А, все, понял.
У меня на 3.16 тоже внешки в "Externals.d" не подхватываются при компиляции. Но это уже к человеку, занимавшемуся доработкой функционала.
RPD, поставь 3.15, если тебе привычно работать в программе. Но я обычно всё компилирую движком, через отдельные скрипты, так мне кажется быстрей, не нужно ничего компилировать, ждать, копировать. Смотри сам, как тебе удобней.
Движком не умею, не пробывал.
 

Jr13San


Модостроитель
Регистрация
1 Апр 2010
Сообщения
449
Благодарности
266
Баллы
230
В целом окно, появляющееся во время выбора определенной ветви диалога.
У меня в моде есть питомцы, которым я хочу сделать наглядную менюшку улучшений. (Ну там, сколько-то мяса, еще чего-нибудь. Если достаточно - текст подсвечивается зеленым, можно улучшить. Недостаточно - наоборот)
1. А чем обычное ветвление диалога не подходит?
Может быть и не стоит усложнять, если пока нет определённых навыков.

2. Для начала я бы тебе посоветовал разобраться:
- как правильно работать с внешними функциями(что ты уже делаешь)
- также не помешают знания компиляции скриптов игры, без ГСорсера, и то, как подключать доп. скрипты через "Autorun" каталог.
- как работать с zCView объектами:
- создание, удаление, перемещение
- как выводить с помощью них текстуры на экран
- как выводить текст внутри(временный/постоянный),
- знание о пиксельных и виртуальных координатах в движке.
- как вставлять дочерний вью во внутрь другого zCView
- как выравнивать дочерние элементы(текст/другие вью-объекты) внутри родительского объекта, ну или просто на экране.
- работа с цветом текста и цветом вью-слоёв
- работа с отслеживанием нажатых клавиш (+перехват handle-event функций движка)
- мультиязычность текстовых переменных

3. Без точного задания, с картинками или схемами маловероятно, что кто-то будет связываться с этим.
Тебе это тоже будет полезным, чтобы не пришлось потом изобретать на ходу.
Часто идеи "на вскидку" потом приводят к переписыванию всего кода.
Сначала всё продумываешь, рисуешь, думаешь с помощью чего это можно реализовать, потом приступаешь к кодингу.
 

RPD

Участник форума
Регистрация
13 Ноя 2023
Сообщения
118
Благодарности
3
Баллы
40
1. А чем обычное ветвление диалога не подходит?
Может быть и не стоит усложнять, если пока нет определённых навыков.

2. Для начала я бы тебе посоветовал разобраться:
- как правильно работать с внешними функциями(что ты уже делаешь)
- также не помешают знания компиляции скриптов игры, без ГСорсера, и то, как подключать доп. скрипты через "Autorun" каталог.
- как работать с zCView объектами:
- создание, удаление, перемещение
- как выводить с помощью них текстуры на экран
- как выводить текст внутри(временный/постоянный),
- знание о пиксельных и виртуальных координатах в движке.
- как вставлять дочерний вью во внутрь другого zCView
- как выравнивать дочерние элементы(текст/другие вью-объекты) внутри родительского объекта, ну или просто на экране.
- работа с цветом текста и цветом вью-слоёв
- работа с отслеживанием нажатых клавиш (+перехват handle-event функций движка)
- мультиязычность текстовых переменных

3. Без точного задания, с картинками или схемами маловероятно, что кто-то будет связываться с этим.
Тебе это тоже будет полезным, чтобы не пришлось потом изобретать на ходу.
Часто идеи "на вскидку" потом приводят к переписыванию всего кода.
Сначала всё продумываешь, рисуешь, думаешь с помощью чего это можно реализовать, потом приступаешь к кодингу.
Спасибо за наводку. Из доков и источников ничего, кроме этой темы по union и gmc, больше нет? Придется, как кутенку, носом тыкаться во все подряд? (Ни то, чтобы мне привыкать, просто если уже что-то прописано - будет конечно лучше прочитать).

Из того, что я прочитал выше - я в данный момент все это и осваиваю. Но у меня все еще остался этот вопрос - Эти самые диалоговые окна - это все же прерогатива класса zCView или zCViewDialog?
 
Последнее редактирование:

Jr13San


Модостроитель
Регистрация
1 Апр 2010
Сообщения
449
Благодарности
266
Баллы
230
Эти самые диалоговые окна - это все же прерогатива класса zCView или zCViewDialog?
zCViewDialogChoice.

Из доков и источников ничего, кроме этой темы по union и gmc, больше нет?
Поищи по форуму, в разделах, связанных с Union/AST. Были где-то уроки для новичков.
Ещё помню, что раньше где-то были уроки по AST, теперь они либо в архиве, либо удалены насовсем.
 
Сверху Снизу