Перейти к публикации
Планета Deus Ex

UScriptEdit - редактор UnrealScript


Рекомендованные сообщения

Опубликовано: (изменено)

Поскольку мне так и не удалось найти редактор скриптов, который бы меня полностью устраивал, было принято решение сделать свой. 

Редактор написан на Delphi 11 и использует SynEdit - продвинутый компонент с множеством функций.

Этот-же компонент использует например PyScripter или Dev C++.

 

Пока что это бета-версия, которая дорабатывается, но я уже им пользуюсь по назначению.

 

Как он работает:

При запуске редактор читает файл DeusEx.ini, находит в нём раздел EditPackages, и по нему пытается найти одноимённые каталоги со скриптами, и производит их индексацию. Например DeusEx\Engine\Classes\*.uc, DeusEx\Core\Classes\*.uc, и так далее. Чем больше таких каталогов со скриптами найдено, тем больше полей и методов редактор будет "знать". Индексация происходит в несколько потоков (максимум 6).

 

Интерфейс программы:

Сверху над вкладками редактора есть 2 кнопки для быстрой навигации по скриптам + история навигации (кнопки со стрелочкой вниз). Там же находится и Method Navigator - выпадающий список, где находятся все методы и состояния текущего скрипта.

Слева расположено дерево классов на основе найденных и проиндексированных скриптов.

Справа от дерева классов расположен сам редактор кода, поддерживается несколько скриптов одновременно (например как в Notepad++).

Внизу по нажатию F9 доступно три вкладки: Check Results, Build Output и Packages. 

Check Results отображает результаты базовой проверки текущего скрипта, Build Output отображает результаты компиляции через UCC, а также отображает различную диагностическую информацию. Packages отображает список пакетов, найденных в разделе EditPackages ini файла игры.

 

 

Возможности редактора кода:

  • Сворачивание структур, перечислений (enum) и методов (функций), также известное как Code Folding. 
  • Ctrl + Click практически везде, для навигации по полям, методам, вызовам из родительских классов, и так далее. 
  • Также Ctrl + Click может открывать C++ реализацию нативных скриптовых функций, при условии что исходный код был найден.
  • Редактор цвета: Ctrl + Click по строке вида str = str $ "|c80ff80P="; откроет редактор цвета, где можно посмотреть, что это за цвет, и при необходимости изменить его. Также это работает и с цветом типа Color, то есть (R=255,G=200,B=100,A=100). 
  • Автодополнение и подсказка параметров. Активируется нажатием Ctrl + Пробел, Ctrl + Shift + Пробел. 
  • Шаблоны кода.
  • Find References - поиск ссылок на поле/метод/перечисление под курсором.
  • GoTo Symbol - позволяет найти нужный класс и/или его метод.

 

Скриншоты:
 

Скрытый текст

1552326249_.png.5cb2d6c079e83c3edffa6eed6ef91cb0.png

 

864976479_.png.008c2ebf301c33be5fc0b89206c06d37.png

 

874674561_.png.0350aaaf253ae1e777550a514e1ff404.png

 

933241316_.png.bb95aff8e1632bf1236914a82aae08a7.png

 

204558467_.png.946133be5d8e34ff995802e0cc415ce8.png

 

 

 

Дополнительные инструменты:

Сейчас в качестве дополнительных инструментов есть Game Font/Texture Browser. 

Этот браузер позволяет просматривать игровые шрифты, что может быть полезно при проверке поддержки кириллицы, а также текстуры.

Скриншоты:

Скрытый текст

1630829164_.png.57aa1cbac2c7bb6dae80abc147b62dc3.png

 

1578896865_.png.9c728da3227660aab37deb77d43e522e.png


Браузер шрифтов/текстур интегрирован с редактором кода, и если выполнить Ctrl + Click по ссылке на текстуру/шрифт, браузер откроет эту ссылку, при условии что требуемый ресурс был найден в существующих packages игры. 

 

Поддерживаемые игры: Deus Ex, Unreal 227.

 

Установка:

Исполняемый файл необходимо поместить в базовый каталог игры. Программа хранит все настройки в .ini файле и ничего не сохраняет в системной реестре, что позволяет использовать её как портативную. 

 

Настройки:

По умолчанию редактор ищет файл System\DeusEx.ini, но это поведение можно изменить. Для этого нужно отредактировать файл UScriptEdit.ini и изменить значение frmMain.GameIniFile. Также можно перенаправить редактор на считывание другого каталога игры, для этого нужно изменить значение frmMain.RootDirectoryName

frmMain.RootDirectoryName=C:\Games\DeusEx_RTX
frmMain.GameIniFileName=DeusEx.ini

 

Редактор может работать со скриптами любой игры на UE1, а для Deus Ex и Unreal 227 имеются специальные режимы навигации и шаблоны кода.

 

Скачать можно во вложении.

 

 

UScriptEdit.7z

Изменено пользователем LoadLine Calibration
Дополнение про установку и настройку
SlashNet, GreenEyesMan, bizone и 1 другому понравилось это
Опубликовано:

Новая версия: обновление 1.

 

Изменения и исправления:

  • В браузер ресурсов добавлены вкладки Sounds и Conversations. Для Sounds поддерживается поиск, воспроизведение/пауза/остановка и отображение информации о ресурсе (Wav/MP3/OGG, частота, и прочее).
  • Звук теперь воспроизводится с использованием библиотеки BASS. Требуется наличие файла bass.dll рядом с файлом программы (есть в архиве)
  • Добавлен редактор кривых (Curve Editor). Позволяет создать график и преобразовать его в скрипт. Например если нужно плавно изменить какое-то значение, то этот редактор в этом поможет. Имеются предустановки. 
  • F9 теперь правильно скрывает/отображает нижнюю панель редактора. 
  • Реализовано автодополнение для команд типа #EXEC, также закрыта часть случаев, где автодополнение не работало. 
  • В контекстное меню дерева классов добавлен пункт меню "Show in explorer"
  • Для звуков (как и для текстур) добавлено контекстное меню: Copy Reference + Copy DynamicLoadObject code.
  • Разные мелкие улучшения и исправления.

 

Примечание: содержимое вкладки Conversations сейчас может отображаться неправильно. Это будет исправлено в следующих версиях. 

 

Скриншоты:

Скрытый текст

Просмотр/прослушивание звуков

2099810630_.png.70f94cb4587671e2df522654f62367b7.png

 

Поиск в звуковых ресурсах:

38745343_.png.5b94681b160c15e4f4be22d5d658fc1b.png

 

Просмотр диалогов

1876795329_.png.22f5193bb3cf5e9e7fcfbe066a42bacf.png

 

Редактор кривых.

1047523639_.png.45b7828e5cd4328afb6fff85cdcbd441.png

 

 


 

 

Скачать можно во вложении.

UScriptEdit_Update1.7z

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
×
×
  • Создать...