Перейти к содержимому


Фотография
* * * * * 2 Голосов

Construction Set Extender


  • Авторизуйтесь для ответа в теме

#121 Ссылка на это сообщение YourBunnyWrote

YourBunnyWrote
  • Рабочий лень
  • 3 268 сообщений
  •    

Отправлено

Construction Set Extender


<table border="0"><tr><td valign="top">
<div id="tit1">Введение</div>
Это плагин для OBSE который, как понятно из названия, расширяет возможности стандартного редактора TESIV: ConstructionSet. Скажите, кто из вас не мечтал, чтобы это ужасное окно редактора скриптов само проставляло табуляцию? Кому из вас не мешали в работе постоянные окошки с предупреждениями от конструктора? А не приходилось ли вам сталкиваться с тем, чтобы конструктор закрывался от одного вашего небрежного действия и ваша полуторачасовая работа летела коту под хвост? Так или иначе вы не сможете не оценить вклад автора этого замечательного плагина: shadeMe, за что ему респект и уважуха большой поклон.

<div id="tit2">Нововведения</div>

 

  • Теперь можно загружать мастер-файлы в "Конструктор" для редактирования
  • Можно менять заголовочную информацию о мастер-файле:
  • Улучшен инструмент «Поиск текста»:
    Дважды кликнув по выбранному результату поиска, откроется соответствующее окошко для его редактирования, или, если это ссылка на объект, то он загрузится в окне визуализатора.
  • Теперь можно загружать плагины с отсутствующими мастер-файлами:
  • Отныне все предупреждения не выскакиваю в диалоговых окнах, а тихо и мирно выводятся в консоль
  • Быстрый выход из CS.
  • Сохранения плагинов как мастер-файлов:
    Теперь плагин можно сохранить как ESM или как ESP, на выбор.
  • Теперь диалоговое окно которое выскакивает при закрытии окна редактора скриптов с подтверждением о сохранении скрипта имеет кнопку "Отмена", что позволяет вернутся к редактированию скрипта, как, например, в Ворде.
  • Улучшенная команда рекомпиляции скриптов:
    Теперь при вызове команды «Рекомпилировать все скрипты» они будут рекоплилированы только в активном плагине.
  • Лог компиляции:
    Результаты рекомпиляции выводятся в консоль.
  • Неизвестные записи и типы групп:
    Если при загрузке, в плагине, будут обнаружены неизвестные записи или типы групп, то это не вызовет ошибки и, как следствие, закрытие окна «Конструктора».
  • Удвоен максимальный размер скомпилированного скрипта:
    Теперь размер байт-кода скомпилированного скрипта может быть равен 32KB.
  • Ошибки компиляции:
    Теперь ошибки компиляции выводятся в соответствующую область окна редактора скриптов.
  • Сохранение плагина при открытых окнах «Конструктора»:
    Теперь не обязательно закрывать все диалоговые окна перед сохранением плагина.
  • BSA архивы больше не загружаются выборочно:
    Все BSA архивы в папке Data загружаются при старте «Конструктора».

 


<div id="tit3">Установка</div>
Теперь вы можете скачать плагин с нашего сайта. Обратите внимание, что CSE и CS 10 Executable упакованы в один архив.
Для установки плагина извлеките содержимое плпгина в папку Oblivion, затем откройте файлик ConstructionSet.ini, найдите в нём строку bAllowMultipleEditors и присвойте ей значение 1.
</td><td valign="top">
<table border="1" style="border-collapse: collapse; border-color: black; font-family: monospace;"><tr style="background-color: silver;"><td style="text-align: center;">Содержание</td></tr>
<tr><td><a href="#tit1">Введение</a>
<a href="#tit2">Нововведения</a>
<a href="#tit3">Установка</a>
<a href="#tit4">Новый редактор скриптов</a>
- <a href="#tit5">Панель инструментов редактора скриптов</a>
-- <a href="#tit6">Выбор скрипта</a>
-- <a href="#tit7">Меню настроек</a>
-- <a href="#tit8">Назначение скрипта</a>
- <a href="#tit9">Контекстное меню</a>
<a href="#tit10">Препроцессор</a>
- <a href="#tit11">Команды препроцессора</a>
<a href="#tit12">Редактор заметок</a>
<a href="#tit13">Редактор ссылок</a>
<a href="#tit14">Информация о файле плагина</a>
<a href="#tit15">Консоль</a>
- <a href="#tit16">Консольные команды</a>
<a href="#tit17">Осмотрщик BSA архивов</a>
<a href="#tit18">Настройки CSE</a>
</td></tr></table></td></tr></table>
<div id="tit4">Новый редактор скриптов</div>
<table border="0" style="vertical-align: top;"><tr><td valign="top">

 

 

 

"Он был написан с нуля и превосходит стандартный
редактор во всех отношениях."
shadeMe

 


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

<div id="tit5">Панель инструментов редактора скриптов</div>

 

 

 


NewTab.png - создать новую вкладку
New.png - создать новый скрипт.
Open.png - открыть скрипт.

 


<div id="tit6">Выбор скрипта</div>

Окошко для выбора загружаемого в редактор скрипта также стало более информативным, в перечне скриптов появилась колонка с типом скрипта, а также появился предпросмотр. Теперь можно загружать сразу несколько скриптов в редактор: к списку скриптов применимы уже привычные комбинации клавиш системы Windows - Shift и Control, внизу окошка, под перечнем скриптов, расположена текстовая строка которая служит для быстрого поиска по списку.


Save.png - сохранить скрипт.

 


SaveButNotCompile.png - сохранить, но не компилировать.
SaveScriptAndPlugin.png - сохранить и скрипт и активный плагин.


PreviousScript.png - загрузить предыдущий по списку скрипт.
NextScript.png - загрузить следующий по списку скрипт.
RecompileActiveScripts.png - перекомпилировать все скрипты в активном плагине.
CompileDependencies.png - перекомпилировать зависимые скрипты.
DeleteScript.png - удалить скрипт.
SaveAllOpenScripts.png - сохранить скрипты во всех открытых вкладках.
NavigateBack.png
NavigateForward.png
Prefences.png - вызвать меню настроек.

 

 


<div id="tit7">Меню настроек</div>

Вкладка General:

 

  • Auto-Indent Script Lines ((рус.) "Авто сдвиг строк кода") - При включённой опции программа будет автоматически вставлять отступ (символ табуляции) после открытия и убирать его после закрытия следующих блоков:
    • Begin - End
    • If - ElseIf - EndIf
    • While - Loop
    • ForEach - Loop
  • Show Editor As Child Window - если этот флажок установлен, то окно редактора скриптов будет открыто как дочерное окно главного окна CS. Вся разница заключается в том, что если этот пункт не отмечен, то открытое окно редактора скриптов будет занимать дополнительную вкладку в панели задач.
  • Save Caret Position With Script - если этот флажок установлен, то программа будет сохранять положение курсора при переходе на новую строку таким же как оно было на начале предыдущей строки. Говоря простым языком, курсор не будет постоянно перепрыгивать на начало строки, как это было в стандартном редакторе.
  • Close Editor With Last Tab ((рус.) "Закрыть редактор с последней вкладкой")- ну тут всё предельно ясно, когда мы закроем последнюю вкладку, то и окошко редактора закроется.

 

 


MessageList.png - показать или спрятать область окна редактора скриптов, куда выводятся сообщения и ошибки при компиляции скриптов.
Find.png - показать или спрятать область окна редактора скриптов, куда выводятся результаты поиска и замены в тексте скрипта.
Bookmarks.png - показать или спрятать область окна редактора скриптов со списком закладок.
DumpScript.png - экспортировать текущий скрипт в текстовый документ

 

 


DumpAllScripts.png - экспортировать все загруженные в редактор скрипты в текстовые документы (на один скрипт - один документ)


OpenScript.png - импортировать текст скрипта из текстового документа

 

 


LoadMultiple.png - импортировать текст скриптов из нескольких текстовых документов (из одного документа - один скрипт, каждый будет открыт в новой вкладке)


FetchVariable.png - показать или спрятать список переменых используемых в текущем скрипте.
ToogleOfsetViwer.png
TooglePreprocesed.png
SanitizeScriptText.png - выделяет следующие блоки отступами для читаемости кода:

 

 

  • Begin - End
  • If - ElseIf - EndIf
  • While - Loop
  • ForEach - Loop


BindScript.png - привязать скрипт к существующей или новой записи.

 

 


<div id="tit8">Назначение скрипта</div>

В новом редакторе появилась возможность задавать скрипты существующим или новым записям в плагине, которые имеют поле "Скрипт".
Для тог чтобы "прилепить" скрипт к существующей записи - просто выбираем её из разворачивающегося списка размещённого напротив переключателя Bind To Existing Form. Для того, чтобы создать новую форму - устанавливаем переключатель в позицию Bind To New Form, задаём тип, параметры и имя формы. Если вы всё сделали правильно, то будет создана новая форма с указанным именем указанного типа.

 

 

 


<div id="tit9">Контекстное меню</div>

 

 


Copy.png Copy
Paste.png Paste
Find_.png Find
ToogleComment.png Toogle Comment - закомментировать выделеные строки
ToogleBookmark.png Toogle Bookmark - создать закладку на выбранной строке

AddMessage.png Add Message - команда позволяет написать сообщение самому себе, которое будет выведено... Где бы вы думали? Конечно же в области уведомлений, куда, например, выводит сообщения об ошибке программа при компиляции скриптов. Не знаю зачем shadeMe предусмотрел такую возможность, пожалуй он просто решил насадить лишнюю гайку на лишний болт.
CopyToEditBox.png Copy To Edit Box - копирует текст в окошко расположенное в нижнем левом углу окна редактора скриптов. В разворачивающемся списке правее можно выбрать необходимое действие над этим фрагментом, как то искать, заменять и т.д.
LookUpOnTheWiki.png Look up on the Wiki
null.png Look up on the OBSE Doc
LookUpOnGoogle.png Lookup on Google


</td>
<td>

 

 

ScriprtEditor_240.jpg

Рис.1 Окно редактора скриптов

 

 

 

SelectScript_240.jpg

Рис.2 Диалоговое окно для выбора скрипта

 

 

 

 

Prefences1_240.jpg

Рис.3 Меню настроек редактора скриптов

Prefences2_240.jpg

Рис.4 Меню настроек редактора скриптов

Prefences3_240.jpg

Рис.5 Меню настроек редактора скриптов

Prefences4_240.jpg

Рис.6 Меню настроек редактора скриптов

Prefences5_240.jpg

Рис.7 Меню настроек редактора скриптов

 

 

 

 

BindScript_240.jpg

Рис.8 Окно назначения скриптов

 

 

 

 

ToogleBookmarkWindow_240.jpg

Рис.9 Диалоговое окно вызванное командой Toogle Bookmark

 

 

 

 

AddMessageWindow_240.jpg

Рис.10 Диалоговое окно вызванное командой Add Message


</td></tr></table>
<div id="tit10">Препроцессор

 

 

 

"Как в лучших домах Ландона и Порижа."
Остап Бендер


Ещё одно новшество в CSE. Препроцессор обрабатывает данные перед компиляцией, позволяя "скармливать" последнему (этому самому, компилятору, которому) только определённую часть кода в определённых ситуациях. А зачем он нужен? Тяжело объяснить козе зачем ей баян, но согласитесь, если она баянистка, то и вопросы как-то сами отпадают. Правда?! Но давайте будем конкретнее и рассмотрим пример "на кошечках":
Кто делал сам, или разбирал чужие плагины, не трусы, разумеется, тот не мог не встретить закомментированные сообщения с отладочной информацией. Допустим у вас плагин в котором не пять и не десять скриптов, в каждом из которых сотня - полторы строк, каждый из которых должен быть отлажен. Доводя до конечного пользователя вся эта информация должна быть скрыта или вычещена. И тут вы понимаете что вам нужно перелопатить добрую тыщу строк в поисках своих месседжбоксов... А можно ли это как-то... малой кровью? Ну разумеется! К чему же я тогда веду?! Но для начала ознакомимся с самим командами препроцессора:

<div id="tit11">Команды препроцессора</div>
Все команды препроцессора должны быть закомментированны, т.е. перед ними должна стоять точка с запятой (";").
Команды могут быть однострочными или многострочными, для отделения одних от других перед командой должен стоять символ "#" в случае, если это однострочная команда, или "@" - если многострочная.

 

 

 

  • DEFINE - определяет константу. Синтаксис:
    ;#DEFINE <ИМЯ_КОНСТАНТЫ> <значение_константы>
    Например следующая команда определяет константу с именем X и значением 3
    ;#DEFINE X 3
    Перед компиляцией скрипт будет пропущен через препроцессор, и всякий раз, как он встретит этот самый X, он заменит его на его значение, т.е. на 3. Например имеется следующий элементарный скрипт:
    ;#DEFINE X 3ScriptName PreprocessorTestingScriptshort YBegin GameModeSet Y to Y + XEnd
    Пропущенный через препроцессор он поступит на компиляцию уже в следующем виде:
    ScriptName PreprocessorTestingScriptshort YBegin GameModeSet Y to Y + 3End
  • IMPORT - импортирует в то место, где стоит эта команда указанный скрипт, который находится в папке Oblivion\Data\Scripts\. Синтаксис:
    ;#IMPORT "<Название_файла>"
    <Название_файла> - это название текстового документа в папке Oblivion\Data\Scripts\ без расширения. Например в папке Oblivion\Data\Scripts\ лежит файлик с названием Part1.txt, пускай в нём написано:
    short afloat bref c
    А мы хотим засунуть его содержимое в наш скрипт. Пишем:
    ScriptName PreprocessorTestingScript;#INCLUDE "Part1"Begin GameModeSet a to 10Set b to .015Set c to GetSelfEnd
    Получаем:
    ScriptName PreprocessorTestingScriptshort afloat bref cBegin GameModeSet a to 10Set b to .015Set c to GetSelfEnd
  • ENUM - определяет перечисление. Синтаксис:
    ;#ENUM <ИМЯ_ПЕРЕЧИСЛЕНИЯ> { <ПЕРВЫЙ_ЭЛЕМЕНТ_ПЕРЕЧИСЛЕНИЯ>=<значение> <ВТОРОЙ_ЭЛЕМЕНТ_ПЕРЕЧИСЛЕНИЯ>=<значение> ... <N-тый_ЭЛЕМЕНТ_ПЕРЕЧИСЛЕНИЯ>=<значение> }
    или
    ;@ENUM <ИМЯ_ПЕРЕЧИСЛЕНИЯ>;{; <ПЕРВЫЙ_ЭЛЕМЕНТ_ПЕРЕЧИСЛЕНИЯ>=<значение>; <ВТОРОЙ_ЭЛЕМЕНТ_ПЕРЕЧИСЛЕНИЯ>=<значение>; ...; <N-тый_ЭЛЕМЕНТ_ПЕРЕЧИСЛЕНИЯ>=<значение>;}
    В следствии того, что элементы перечисления могут принимать только численные значения, то вся польза от этой конструкции исходит на нет. По сути перечисление (ENUM), в том виде, в котором мы имеем его здесь, является более громоздкой и менее гибкой формой определения (DEFINE). Вполне возможно что автор просто не довёл её до ума, т.к. даже в официальной документации ей посвящено всего пару строк.
    Да, и ещё очень важное замечание: между именем элемента перечисления, знаком равенства и значением не может быть пробелов, т.к. это вызывает ошибку.
     
  • IF - условный оператор. Синтаксис:
    ;@IF (<условие>);{; <Последовательность_операторов>;}
    В условии можно применять логические операторы:
    • [==] - Равно
    • [!=] - Не равно
    • [>] - Строго больше
    • [<] - Строго меньше
    • [>=] - Больше или равно
    • [<=] - Меньше или равно
    • [&&] - Логическое И
    • [||] - Логическое ИЛИ

    В следующем примере показано, как избавится от отладочной информации о которой мы говорили в начале:
    ;#DEFINE _DEBUG_MODE 1ScriptName PreprocessorTestingScript; ...Begin GameMode; Многабукаф;@IF(_DEBUG_MODE==1);{; Message "Debug mode is ON";}End
    Таким образом просто присвоив константе _DEBUG_MODE значение 0 и перекомпилировав скрипт мы избавимся от ненужных частей кода. Легко и просто.


<table border="0"><tr><td valign="top">
<div id="tit12">Редактор заметок</div>

Редактор заметок позволяет сопровождать процесс разработки разнообразными комментариями, из которых можно ссылаться на записи плагина. Вы что-то делали, но были вынуждены это забросить на неопределённое время, потом вы об этом забыли... Теперь можно оставить себе напоминание.
В левой области редактора заметок вызываем контекстное меню и выбираем пункт Add Tag и обзываем его как хотим.
Для того чтобы прикрепить какой-то объект к записи в комментариях, нужно вызвать на нём контекстное меню в окне объектов и выбрать пункт Add To Active Tag.
Чтобы вызвать редактор заметок, выберете пункт View -> Tag Browser в главном меню.

<div id="tit13">Редактор ссылок</div>

Редактор ссылок позволяет комбинировано управлять свойствами объектов помещённых в загруженную ячейку. Ничего принципиально нового тут нет, по этому особо на этом не останавливаемся.
Чтобы вызвать редактор ссылок, выберете пункт World -> Batch Edit References в главном меню.

<div id="tit14">Информация о файле плагина</div>

Находится в Gameplay -> Use Info Listing. Тут можно более подробно ознакомится со всеми записями в плагине и проследить их связи.

<div id="tit15">Консоль</div>

Отныне программа выводит лог в консоль, благодаря этому элементу исчезли многочисленные навязчивые окна с предупреждением от "Конструктора". Также существует несколько консольных команд:

<div id="tit16">Консольные команды</div>

 

 

 

  • LoadPlugin - загружает указанный плагин. Синтаксис:
    LoadPlugin string:<plugin_name.extension> bool:SetAsActive
    Где plugin_name.extension - название плагина,
    SetAsActive - Указывает, сделать ли загружаемый плагин активным. 1 - если ДА, 0 - если НЕТ.
  • LoadForm - открывает соответствующее окно для редактирования указанной формы. Синтаксис:
    LoadForm string:<editorID>
  • SavePlugin - сохраняет плагин. Команда без параметров.
  • AutoSave - делает резервную копию плагина в каталог Data\Backup\. Команда без параметров.
  • Exit - Выход из "Конструктора". Команда без параметров.

 


<div id="tit17">Осмотрщик BSA архивов</div>

Решает массу проблем при работе с нераспакованными ресурсами, когда они находятся в архивах или вовсе отсутствуют.
При выборе ресурсов выскакивает окошко (Рис.14), в котором мы можем выбрать:

 

 

 


Select Asset On Disk - если у нас ресурсы хранятся на диске в папке \Oblivion\Data\, то выбираем этот пункт. Всё как раньше.
Select Asset In Archive - если ресурсы запакованы в BSA архив, то выбираем этот пункт. Вылезет окошко BSA Browser (Рис.15).

 


Open.png - Открыть архив.
LevelUp.png - Подняться на уровень вверх.
ChangeView.png - Изменить вид (Список/Плитка), как в проводнике Windows.


Edit Asset Path - Прописать путь ручками

 

 

 


<div id="tit18">Настройки CSE</div>

Панель настроек CSE (рис.15) находится в главном меню File -> CSE Preferences. Редактировать настройки CSE можно как с помощью этой панели, так и вручную через файл \Oblivion\Data\OBSE\Plugins\Construction Set Extender.ini. Далее привожу список параметров:

<table width="100%" border="1" style="border-collapse: collapse; border-color: black; font-family: monospace; font-size: small; text-align: center;"><tr style="background-color: gray;"><td>Относится к</td><td>Имя</td><td>За что отвечает</td></tr><tr><td>Консоль</td><td>Top</td><td>Расстояние от верхнего края экрана</td></tr><tr><td>Консоль</td><td>Left</td><td>Расстояние от левого края экрана</td></tr><tr><td>Консоль</td><td>Right</td><td>Расстояние от правого края экрана</td></tr><tr><td>Консоль</td><td>Bottom</td><td>Расстояние от нижнего края экрана</td></tr><tr><td>Консоль</td><td>LogCSWarnings</td><td>Выводить ли лог ошибок "Конструктора" в консоль? 1 - ДА; 0 - НЕТ.</td></tr><tr><td>Консоль</td><td>LogAssertions</td><td>Выводить ли сообщений ошибок "Конструктора" в консоль? 1 - ДА; 0 - НЕТ.</td></tr><tr><td>Консоль</td><td>HideOnStartup</td><td>Прятать ли окно консоли при запуске? 1 - ДА; 0 - НЕТ.</td></tr><tr><td>Консоль</td><td>ConsoleUpdatePeriod</td><td>Время обновления консоли в миллисекундах.</td></tr><tr><td>CSE</td><td>LoadPluginOnStartup</td><td>Загружать ли плагин указанный в поле <b>StartupPluginName</b> при старте конструктора автоматически? 1 - ДА; 0 - НЕТ.</td></tr><tr><td>CSE</td><td>StartupPluginName</td><td>Название файла плагина, который будет загружен при старте конструктора, если установлен параметр <b>LoadPluginOnStartup</b></td></tr><tr><td>CSE</td><td>OpenScriptWindowOnStartup</td><td>Открывать ли окно редактора скриптов при старте конструктора автоматически? 1 - ДА; 0 - НЕТ.</td></tr> <tr><td>CSE</td><td>StartupScriptEditorID</td><td>Название скрипта, который будет открыт в о редакторе скриптов при старте "Конструктора". Трубует включённого параметра <b>OpenScriptWindowOnStartup</b></td></tr> <tr><td>CSE</td><td>ShowNumericEditorIDWarning</td><td> </td></tr> <tr><td>CSE</td><td>SetWorkspaseOnStartup</td><td>Выбрать рабочей директорию заданую параметром <b>DefaultWorkspasePath</b>? 1 - ДА; 0 - НЕТ.</td></tr><tr><td>CSE</td><td>DefaultWorkspasePath</td><td>Путь к рабочей директории.</td></tr><tr><td>Визуализатор</td><td>UpdatePeriod</td><td>Время обновления окна визуализатора в миллисекундах</td></tr><tr><td>Визуализатор</td><td>DisplaySelectionStats</td><td>Выводить информацию о выбранном объекте в окне визуализаторы? 1 - ДА; 0 - НЕТ.</td></tr><tr><td>Визуализатор</td><td>UpdateViewPortAsync</td><td>Разрешить обновление картинки в окне визуализатора, если оно не активно? 1 - ДА; 0 - НЕТ.</td></tr></table>
</td><td valign="top">

 

 

 

TagBrowserWindow_240.jpg

Рис.11 Окно редактор заметок

 

 

 

BatchEditorWindow_240.jpg

Рис.12 Окно редактор ссылок

 

 

 

 

UseInfoListWindow_240.jpg

Рис.13 Окно информации о плагине

 

 

 

 

AssetSelectorWindow.jpg

Рис.14

 

 

 

 

BSABrowser_240.jpg

Рис.15 Окно BSA браузера

 

 

 

 

Console_240.jpg

Рис.16 Окно консоли

 

 

 

 

CSEPrefencesWindow_240.jpg

Рис.17 Окно настроек CSE


</td></tr></table>


Всё провисло и болтается.



  • Авторизуйтесь для ответа в теме
Сообщений в теме: 129

#122 Ссылка на это сообщение Kub

Kub
  • Авантюрист
  • 122 сообщений

Отправлено

Можно ли как то узнать, что это за скрипт?

Загружаешь все плагины в TES4Edit, в строке поиска по Editor ID задаешь имя скрипта и нажимаешь enter. После этого уже можно работать с плагином в CSE.



#123 Ссылка на это сообщение Zemlanin

Zemlanin
  • Авантюрист
  • 184 сообщений
  •    

Отправлено

Загружаешь все плагины в TES4Edit, в строке поиска по Editor ID задаешь имя скрипта и нажимаешь enter. После этого уже можно работать с плагином в CSE.

Спасибо. Вы очень помогли. К слову, такое количество ошибок в скриптах вызывал RealLight



#124 Ссылка на это сообщение Zemlanin

Zemlanin
  • Авантюрист
  • 184 сообщений
  •    

Отправлено

Всем доброго! Не могу запустить CSE на десятке. Пишет, что установите права администратора. Администратора чего? На всех ярлыках стоит от имени. Запуск с бат файла. 


Сообщение отредактировал Zemlanin: 04 октября 2022 - 13:22


#125 Ссылка на это сообщение Nu-Hatta

Nu-Hatta
  • Следопыт
  • 76 сообщений
  •  

Отправлено

В свойствах самих файлов ехе, поставь запуск от имени администратора (у TESConstructionSet.exe и obse_loader.exe).



#126 Ссылка на это сообщение Zemlanin

Zemlanin
  • Авантюрист
  • 184 сообщений
  •    

Отправлено

Спасибо, заработало. На obse loader.exe я и не поставил. 



#127 Ссылка на это сообщение Lito591

Lito591
  • Новенький
  • 15 сообщений
  •  

Отправлено

Как в Construction Set музыку добавить? Допустим, я хочу сделать, чтоб в тавернах и магазинах был свой "music type", создаю папку, накидываю МР3, но, где в конструкторе раздел отвечающий за музыку не врубаюсь.



#128 Ссылка на это сообщение EdMSL

EdMSL
  • Авантюрист
  • 107 сообщений
  •  

Отправлено

Я спросил у автора, думает ли он выпустить новую версию, добавить новых фич, улучшить что-то из имеющихся. На это я получил ответ, что, мол, давай, предлагай. И я пообещал ему подумать.

На текущий момент я отметил следующее:

  1. Быстрое заполнение ячеек мира объектами из списка (деревьями, камнями, кустами, растениями). Чтобы быстро заполнять большие площади.
  2. Компилятор ругается, если переменная объявлена в теле скрипта. Компилировать старые скрипты из-за этого не получается. Добавить обратную совместимость как опция.
  3. Переход между вкладками со скриптами перебрасывает в начало скрипта. Сохранять позицию между переходами.
  4. Поиск и замена имеет только одну кнопку - заменить все. Сделать переход по совпадениям с заменой конкретного вхождения.
  5. Добавить #region - #endregion, чтобы можно было свернуть куски кода

Если кто-то еще занимается моддингом Облы и есть какие-то предложения, то пишите. Напряжем shademe :D:


Сообщение отредактировал Ed101: 17 февраля 2024 - 04:36


#129 Ссылка на это сообщение Nu-Hatta

Nu-Hatta
  • Следопыт
  • 76 сообщений
  •  

Отправлено

Быстрое заполнение ячеек мира объектами из списка (деревьями, камнями, кустами, растениями). Чтобы быстро заполнять большие площади.

 

Это же ванильная функция КС! Всё это в редакторе регионов и так есть :blink:

 

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

 

Не совсем понял, о чём речь. Позиция каретки, там всегда сохраняется.

 

Касательно предложений:

В интерфейсе редактора референсов (который добавляет CSE), когда "тянешь" мышью циферки углов поворота, то значения там ограничены 360\-360 градусов. Но было бы удобней, если бы эта методика соответствовала методике ванильного редактора референсов - когда по достижению 360 градусов счёт не останавливается, а просто сбрасывается на ноль, и продолжается дальше (это работает в обе стороны). А при отрицательном же вращении, цифры автоматически пересчитываются в соответствующие положительные (то есть, например будет не -10 градусов, а сразу 350 - практически, отрицательные углы, для объектов в КС, вообще не нужны, это не имеет полезного применения - так что, проще работать только с положительными значениями).

 

Также, была бы полезна опция быстрого сброса на ноль, значений координат, углов поворота, и скалирования (как например, в 3D Max - нажав правой клавишей мыши на поле значений, оно обнуляется).

 

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



#130 Ссылка на это сообщение EdMSL

EdMSL
  • Авантюрист
  • 107 сообщений
  •  

Отправлено

Всё это в редакторе регионов и так есть

А можно на этом поподробнее, пожалуйста.

 

Не совсем понял, о чём речь. Позиция каретки, там всегда сохраняется.

 

Проверил. Да, действительно так.

Я постоянно работаю в VS Code, а там переход между вкладками возвращает на последнее место прокрутки, не курсора. А в CSE возвращает к курсору. Этот пункт вычеркиваю тогда или можно сделать данное поведение опциональным.

 

Касательно предложений:

Предложения дельные, добавлю в список.


Сообщение отредактировал Ed101: 17 февраля 2024 - 13:10


#131 Ссылка на это сообщение Nu-Hatta

Nu-Hatta
  • Следопыт
  • 76 сообщений
  •  

Отправлено

А можно на этом поподробнее, пожалуйста.

Вот, описание функционала и настроек - https://cs.uesp.net/wiki/Regions
И собственно, большая часть наполнения игрового мира была создана таким образом, через автогенерацию.


  • EdMSL это нравится




Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 скрытых