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

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в оценке работ на конкурсе "Таинственные миры" 2024!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык
    Ссылка на тему с работами участников- тык
Spacer.NET - редактор миров [G1 & G2NR]

Готика 2: НВ Spacer.NET - редактор миров [G1 / G2NR] 1.11

LikerGothic


Модостроитель
Регистрация
11 Фев 2017
Сообщения
1.492
Благодарности
2.108
Баллы
365
  • Первое сообщение
  • #1
Spacer.NET (G1 / G2NR)

Версия игры: "Готика 1 (1.08k_mod), Готика 2 Ночь Ворона"
Страна разработчика:
Россия
Тип: Плагин для Union
Рабочее название: Spacer.NET
Версия: стабильная
Язык: Русский, English, German, Polish, Czech
Вес: ~2 МБ

Автор: LikerGothic
Разработчики: LikerGothic, Patrix, Haart, Saturas, Gratt, Jr13San
Тестеры: Haart, Adept, Jr13San


Статус: выходят обновления
Требования: .NET Framework 4.0, Union 1.0l+

Исходный код:

Описание: Что, еще один спейсер? Да, еще один :) Данный спейсер в первую очередь предназначен для вобинга, т.е. наполнения локаций предметами.

Основные цели:
  • Максимальная автоматизация процесса вобинга
  • Удобство в работе
  • Нелагающий интерфейс
Основные фишки:
  • Максимально похожий по виду интерфейс на старый спейсер
  • Иерархичное копирование вобов (дети-вобы копируются вместе с родителем)
  • Удобная манипуляция вобом (коллизии не мешают его перемещать и вращать)
  • Изменение родителя для воба
  • Некоторые настройки "под себя"
  • Предпросмотр моделей, PFX-эффектов, итемов
  • Поддержка VobTree
  • Поддержка extended-классов (можно через Юнион создать воб нового типа, и он будет здесь работать)
  • Удобное редактирование содержимого сундуков
  • Настройки отображения FPS, кол-ва вобов и т.д.
  • Поддержка dx11 Ссылка (spacer_net требует особой версии dx11, она по ссылке)
1.JPG
2.JPG
3.JPG
4.JPG
5.JPG
6.JPG
7.JPG
8.JPG
9.JPG
10.JPG
11.JPG
12.JPG
13.JPG
14.JPG

Управление можно настроить под себя в специальном окне.

Камера:

Зажать ПКМ (правая кнопка мыши) + WASD перемещение, вверх - пробел, вниз - X, перемещать мышь для вращения камеры.
Колесико мышки - быстрое перемещение в направлении взгляда (не работает на готике 1)

Управление выделенным вобом:
  • Выделение воба : ЛКМ, расширенное выделение: левый ctrl+ЛКМ (выделение vobAnimate, некоторой травы)
  • Клавиша 1 - режим перемещения воба (WASD)
  • Клавиша 2 - режим вращения воба (WASD)
  • Клавиша 3 - соединить/разъединить два вейпоинта (один выделяется через shift+ЛКМ, второй просто выделяется, всё как в старом спейсере)
  • Клавиша 4 - снять выделение с воба
  • Клавиша 5 - переместить выделенный воб перед камерой
  • Клавиша 6 - выбрать режим редактирование bbox объекта (для муверов, зон музыки и тд)
  • Клавиши Q/E - вращение воба вокруг вертикальной оси
Модификаторы:
  • LShift - ускорение перемещения/вращения в 10 раз
  • LControl- замедление перемещения/вращения в 10 раз
Сочетания клавиш:
  • Shift+F прижать воб к поверхности (работает через динамическую коллизию)
  • Shift+R сбросить поворот воба по трем осям, нажимать можно несколько раз
  • Control+C, Control+V - скопировать воб и вставить
  • Control+Z, Control+V - вставить выделенный воб в нового родителя (изменение родителя)
Прочее:
  • ПКМ на выбранной модельке в окне поиска визуалов: скопировать имя модели в буфер
  • ПКМ на списке вобов: удалить воб, сохранить vobTree, вставить vobTree
  • F1 - собрать вобы в vobContainer в выбранном радиусе...
  • F2 - вставить вейпоинт со сгенерированным именем (должен быть выделен другой вейпоинт)
  • F3 - скрыть/показать окна
  • После загрузки спейсера ничего не нажимается, меню неактивно. Ответ: зайти в gothic.ini и проставить там ваше разрешение экрана вручную. zVidResFullscreenX=1920, zVidResFullscreenY=1080 (как пример)
  • Зажимаю правую клавишу мыши, камера не летит/не вертится. Ответ: зайдите 1 раз в игру (до главного меню), чтобы в systempack.ini записались нужные строки и выйдите. Всё заработает
  • В глобальный список вобов локации самостоятельно добавляются какие-то вобы. Зачем? Ответ: это дочерние вобы от PFX-эффектов. Они добавляются, когда камера подлетает к ним или вы делаете предпросмотр некоторых эффектов из меню, и pfx-эффект активируется. Они не сохраняются в ZEN, так что они не опасны.
  • Как сбросить управление на "по умолчанию"? Ответ: зайти в меню с кнопками и нажать "сбросить по умолчанию"
  • Что за звук падения оружия на землю? Ответ: когда мир загрузился или скомпилился, воспроизводится такой звук-оповещение, потом заменим, если не понравится.
  • После загрузки мира вылет. Ответ: скорее всего ваши скрипты используют Lego/Ikarus, выключите пункт "Отключать музыку при загрузке" в окне звуков.
  • Спейсер вылетает при каких-то действиях: отписать в тему, но скорее всего, у вас используются другие плагины Union/Ninja, которые мешает работе спейсера.

  1. Установить Готику 2 Ночь Ворона
  2. Установить gothic2_playerkit-2.6f/g2mdk-2.6_FULL с распаковкой нужных ресурсов для спейсера
  3. Установить Union 1.0l из Resource manager
  4. Поместить spacer_net.ini в папку system (это нужно сделать только один раз, при обновлении заменять его не нужно)
  5. Поместить SpacerNET.mod в папку Data/ModVDF (при обновлении версий, просто закидывать этот обновленный файл с заменой)
  6. Запустить игру один раз, чтобы появились нужные строки в ини-файлах игры (после установки юниона)
  7. Запустить GothicStarter.exe и там выбрать Spacer.NET
Скачать: По кнопке сверху (Ссылка)
Макросы позволяют немного автоматизировать компиляцию/загрузку миров.
  • Принцип работы макроса: 1 строка - 1 команда
  • SpacerNET хранит макросы в файле _work/tools/macros_spacernet.txt
  • Оригинальный Spacer хранит макросы в файле _work/tools/Macros.zmf
  • 123.jpg
Таблица с командами

КомандаЧто делает ПримерКомментарий
RESETсбрасывает мирRESETобязательно идет первым, если дальше вы хотите что-то загрузить
LOAD MESH <Путь до файла 3DS>загружает 3DS файл мешаLOAD MESH ADDON5.3DS
LOAD MESH TESTFOLDER\WORLD7.3DS
файл ищется в папке _work\data\Meshes\
Также можно указывать подпапки
Можно использовать несколько таких команд друг за другом
LOAD WORLD <Путь до файла ZEN>загружает ZEN файл в любом форматеLOAD WORLD TEST_MAP.ZEN
LOAD WORLD FOLDERS/TEST_17.ZEN
файл ищется в папке _work\data\world\
Также можно указывать подпапки
Можно использовать несколько таких команд друг за другом
COMPILE WORLD <TYPE>компилирует мир, доступны две опции INDOOR, OUTDOORCOMPILE WORLD OUTDOOR
COMPILE WORLD INDOOR
доступны две опции INDOOR, OUTDOOR
COMPILE LIGHT <TYPE>Компилирует свет, доступны 4 опции (3-й аргумент): VERTEX, LOW, MID, HIGHCOMPILE LIGHT MIDКомпилирует свет, доступны 4 опции (3-й аргумент): VERTEX, LOW, MID, HIGH
SAVE MESH <Путь до файла <MSH>Сохраняет меш локации в отдельный файлSAVE MESH LOC.MSHфайл сохраняет в папке _work\data\Meshes\
Также можно указывать подпапки
Сохраняет меш локации в отдельный файл, этот файл потом можно импортировать в 3d-редактор
SAVE WORLD <TYPE> <Путь до файла>Сохраняет мир (ZEN) отдельный файл. Доступны две опции BIN, ASCII, UNC
ASCII - полноценный мир
UNC - только вобы
SAVE WORLD ASCII 5.ZEN
SAVE WORLD UNC 7_VOBS.ZEN
файл ищется в папке _work\data\world\
Также можно указывать подпапки
Можно использовать несколько таких команд друг за другом

Примеры макросов
МакросКомментарий

RESET
LOAD WORLD ADDON\ADDON_PART_BANDITSCAMP_01.ZEN
COMPILE WORLD OUTDOOR
COMPILE LIGHT LOW
SAVE MESH FOLDER\ADDON_TEST_SPACER.MSH
//что-то написано
1231232dSDA1232123
COMPILE WORLD
LOAD MESH

Сброс всего
Загружает ZEN-мир ADDON_PART_BANDITSCAMP_01.ZEN
Компилирует мир в OUTDOOR
Компилирует свет в LOW
Сохраняет меш локации в файл ADDON_TEST_SPACER.MSH
Комментарий
Какая-то строка, не будет выполнена
Нет имени мира, не будет выполнено
Нет имени файла, не будет выполнено
Фильтр материалов - окно, в котором вы можете настраивать свойства материалов, используемые готикой. Эти свойства находятся в движке готики и не могут быть заданы в 3d редакторе (3dmax/blender). Именно поэтому, материалы нужно 1 раз настроить дополнительно для движка готики в этом инструменте.

Работа с фильтром материалов:
  1. Загрузите любой мир (3ds или ZEN)
  2. Откройте окно материалов (иконка с горизонтальными полосками)
    filter1.jpg

  3. Есть 2 пути работы с фильтром:
    а) или заранее создать материалы (до компиляции мира или воба), настроить их, и при компиляции они подхватятся. Имя материала в фильтре строго равно имени в 3d-редакторе.
    б) или загрузить мир или воб, найти его материал (он появится во вкладке [TRASH], если он не был до этого уже добавлен), настроить, скомпилировать снова
Возможности фильтра и основные функции:
  • Файлы Фильтра материалов хранятся в work\tools\data\
  • При первом сохранении конкретного фильтра (файла), SpacerNET создает резервную копию фильтра в папке spacernet_backups, которая будет там же

Работа с библиотекой (списком) фильтров:
libFilter.jpg

  1. Библиотека фильтров (список подгружается из файла matlib.ini, 1 фильтр = 1 файл PML, в котором хранятся свойства материалов)
  2. Создает новый фильтр
  3. Переименовывает выбранный фильтр
  4. Удаляет фильтр (если в нем нет материалов, т.е. пустой)
  5. Сохраняет файл с библиотекой фильтров (сохранение вызывается также автоматически при закрытии программы)
Работа с выбранным фильтром:
filterSelected.jpg


  1. Здесь показывается материалы конкретного выбранного фильтра, а также их кол-во
  2. Поиск материала, здесь можно ввести имя интересующего материала, поиск по всем загруженным в данный момент в движок материалам, т.е. глобальный
  3. Информация о текстуре выбранного материала (или цвет, если текстуры нет)
  4. Настройки предпросмотра текстуры, показывать ли альфа-канал, центровать картинку по центру и т.д.
Изменение свойств материала:
filterChange.jpg

  1. Задает фильтр для выбранного материала (изменился фильтр -> материал попадает туда)
  2. Задает группу для выбранного материала (тип поверхности, WATER/METAL/WOOD...)
  3. Если активно, то при применении свойств [и если материал переместится в новый фильтр] выделение останется на материале, иначе выделение останется в текущем фильтре (может не совсем понятно описано, но поймете на практие)
  4. Если активно, то последний выбранный фильтр будет выбираться для любых выбранных материалов (удобно, если нужно переместить в один и тот же фильтр много материалов)
  5. Применяет изменение для материала (но не сохраняет изменение фильтре на диск)
Сохранение изменений:
filterSaveMisc.jpg

  1. Чтобы сохранить изменения в файлы фильтров, нажмите кнопку "Сохранить изменений". Её не нужно жать после изменения каждого материала, система следит за изменением в любом из фильтров и сохраняет все изменения за один раз. Т.е. можно поменять 10-20 материалов, и потом 1 раз нажать.
  2. Создает новый материал, полезно, когда вы хотите настроить материал заранее
  3. "Окно свойств" синхронизировано с "Фильтром материалов", в нем вы также можете настраивать свойства материала.
  4. Инструмент выделения полигонов (пипетка) также синхронизирован с Фильтром материалов и окном свойств. Можно выбирать полигоны на локации и менять свойства их материалов
Чтобы добавить эффект в Редактор частиц выберите его и откройте окно редактора (значок молнии). После этого вы можете менять эффект и после изменений сохранить его в текстовый файл.
После этого вы можете вставить измененый эффект в скрипты и скомпилировать снова

PartEditorGuide.jpg
 
Последнее редактирование:

LikerGothic


Модостроитель
Регистрация
11 Фев 2017
Сообщения
1.492
Благодарности
2.108
Баллы
365
Lev-Lion, так что, работает? Я вроде добавлял тригерлист чтобы можно было запускать его.
 

Архол

★★★★★★★
Модератор
Регистрация
18 Май 2017
Сообщения
3.660
Благодарности
2.331
Баллы
715

Lev-Lion


Модостроитель
Регистрация
25 Апр 2006
Сообщения
178
Благодарности
273
Баллы
230
Проверил все. Вот теперь кнопки есть для всех нужных классов.
Также теперь при снятии выделения с воба, он не снимается в object list window.
Еще я не понял как работает фильтр выделения воба. Нажимаю F1, ничего не происходит...
Также некоторые вобы теперь вообще выделить не возможно. Например кальян, помогает мультивыделение.
 

LikerGothic


Модостроитель
Регистрация
11 Фев 2017
Сообщения
1.492
Благодарности
2.108
Баллы
365
Lev-Lion,
1) при снятии выделения с воба, он не снимается в object list window. - я вернул как было, это приводило к багам, формально в списке он не выделен, это лишь визуально
2) Фильтр выделения воба = выбираешь нужный тип фильтра, например WP и на сцене можно выбрать только WP, остальные вобы игнорируются. Он просто находится в окне где вобы на F1 собирать можно, туда поместил.
3) Ну я не менял, если воб плохо выделяется, то есть ctrl + левая кнопка мыши, ну или ты фильтр поставил который игнорирует.
 

Lev-Lion


Модостроитель
Регистрация
25 Апр 2006
Сообщения
178
Благодарности
273
Баллы
230
С фильтром разобрался. Но проблема с выделением некоторых вобов никуда ни делась. Кальян например выделяется с помощью ctrl но только с определенного ракурса, который еще надо подобрать... те еще муки.
 

LikerGothic


Модостроитель
Регистрация
11 Фев 2017
Сообщения
1.492
Благодарности
2.108
Баллы
365
Lev-Lion, а в старом спейсере он выделяется также с проблемами? Функция там общая выделения.
Да, проверил, у кальяна моделька такая плохая.

Подлетел к нему, нажал F1, в список вобов добавились ближайшие по радиусу и там нужный выделишь (радиус поиска 250 поставь).
Не проблема в общем, к тому же после первого выделения его можно добавить в список быстрый: пкм -> добавить в быстрый доступ.
Либо выделять через ctrl (с близкого расстояния)
Так что это проблема с конкретной моделькой.
 
Последнее редактирование:

LikerGothic


Модостроитель
Регистрация
11 Фев 2017
Сообщения
1.492
Благодарности
2.108
Баллы
365
LikerGothic обновил(а) ресурс [UNION] Spacer.NET новой записью:

0.38

  1. Улучшен фильтр выделения вобов, теперь некоторые объекты лучше выделяются
  2. Добавлен фильтр "ignore pfx" для выделения вобов
  3. Теперь режим выделения через кнопку CTRL работает лучше с маленькими вобами

Узнать больше об этом обновлении...
 

Lev-Lion


Модостроитель
Регистрация
25 Апр 2006
Сообщения
178
Благодарности
273
Баллы
230
Теперь стало лучше выделять кальян, но и то не с первого раза и только через ctrl. Только вот правда скрытые объекты перестали вовсе выделяться ни большие ни маленькие.
@Lev-Lion, а в старом спейсере он выделяется также с проблемами? Функция там общая выделения.
Никаких проблем. Идеально все выделяется с первого раза. И без всяких дополнительных нажатий ctrl или др. На твоем месте я бы сверялся со старым спайсером. Это гараздо лучше чем с наших слов. Все уже придумано до нас, нам лишь надо это улучшить...

Еще я заметил, что при включенной функции show invisible vobs стали мерцать боксы очень больших вобов находящихся на большом расстоянии. Либо же это границы меша... Вобщем мешает сильно.
Desktop Screenshot 2023.04.13 - 12.33.55.77.png

ПС: Мне при каждой новой версией нужно заменять spacer_net.ini? Просто не хочется каждый раз менять настройки.
 
Последнее редактирование:

LikerGothic


Модостроитель
Регистрация
11 Фев 2017
Сообщения
1.492
Благодарности
2.108
Баллы
365
Lev-Lion, функция выделения та же, что и в старом спейсере, она вызывается в движке (одна и та же). Если их работа не совпадет, то либо это Union что-то вносит, либо для спейсера внутри движка есть патч, который мы не увидели при переносе, хотя это было бы странно так писать код, пираньи....

Только вот правда скрытые объекты перестали вовсе выделяться ни большие ни маленькие. - А скрытые объекты могли выделяться? Лол, проверю. Ведь у них showVisual = false, и выделение их игнорирует на уровне поиска воба (trace). На уровне движка такой воб не может быть выделен, он просто системой трейса игнрируется. Ты хочешь сказать, что до этого работало? Ладно, видимо придется фиксить и это. Просто это очень редкие вобы, видимо не обращал внимания. - посмотрел, они выделялись моей функцией, которую я удалил с ctrl, верну.

show invisible vobs -тутничего не менял. У тебя кажется какой-то большой воб невидимый, или это зону так рисует, или ты после компиляции не перезагрузил зен еще.

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

Зашел в старый спейсер, не смог повернуть даже камеру на нужный воб = вышел. Брр. Ладно, с выделением невидимых вобов я посмотрю.
 
Последнее редактирование:

Lev-Lion


Модостроитель
Регистрация
25 Апр 2006
Сообщения
178
Благодарности
273
Баллы
230
Я имел ввиду все вобы с выставленным параметром showVisual: False теперь не выделяются через ctrl.
Desktop Screenshot 2023.04.13 - 21.13.40.19.png
Чтобы летать в старом спайсере нужно нажать F3. Там два режима: свободный и статический. В свободном ты можешь летать по аналогии чита marvin в игре и выделять нужные объекты. В статическом режиме ты можешь вставлять вобы или изменять параметрых уже существующих вобов нажитием на правую клавишу мыши. При нажитии клавиши M, ты можешь двигать вобы в 6 направлениях посредством стрелок и клавиш A и Y, а также вращать их клавишами insert, home, page up, delete, end и page down. Повторное нажатие М выключает режим move.
 

Архол

★★★★★★★
Модератор
Регистрация
18 Май 2017
Сообщения
3.660
Благодарности
2.331
Баллы
715
В данном спейсере навигация идеальная, имхо, ничего менять не надо. Благо я к уродской системе старого спейсера привыкнуть не успел.
 

LikerGothic


Модостроитель
Регистрация
11 Фев 2017
Сообщения
1.492
Благодарности
2.108
Баллы
365

Vic7im

Участник форума
Регистрация
15 Мар 2016
Сообщения
49
Благодарности
18
Баллы
175
Hi, sorry if this has been answered already, but when I use the "multi select" tool I cannot copy-paste the vobs selected. Am I missing something/doing something wrong or is it still a WIP feature ? Phenomenal work btw, thanks for this wonderful program!
 

LuckyMo

Участник форума
Регистрация
19 Дек 2022
Сообщения
19
Благодарности
1
Баллы
25
Добрый день всем. Появилась серьезная проблема.
Я соединял mesh со своим zen миром и наткнулся на это (скрин 1). По какой-то причине визуализируется моделька levelCompo при объединении meshей и zen файла при том, что в настройках у него отключена визуализация. Его нельзя выделить или переместить, т.е он становится будто частью ландшафта. Объекты же levelCompo можно перемещать, но они возвращаются в обратное положение.
В общем очень прошу помощи, так как не могу соединить mesh с zen из-за этого..
 

Вложения

  • 1682878383327.png
    1682878383327.png
    2,4 MB · Просмотры: 17
  • 1682878525994.png
    1682878525994.png
    2,3 MB · Просмотры: 16

Beowulf

Участник форума
Регистрация
21 Ноя 2010
Сообщения
1.845
Благодарности
1.209
Баллы
380
LuckyMo, а как ты вообще меши с зеном соединяешь? Вот распиши свой порядок действий - явно что-то не так делаешь, раз пытаешься с levelCompo работать таким образом :)
 

LuckyMo

Участник форума
Регистрация
19 Дек 2022
Сообщения
19
Благодарности
1
Баллы
25
LuckyMo, а как ты вообще меши с зеном соединяешь? Вот распиши свой порядок действий - явно что-то не так делаешь, раз пытаешься с levelCompo работать таким образом :)
Я не пытаюсь работать с levelcompo таким образом.
Я отредактировал часть ландшафта в блендере и сохранил как 3ds.
Далее я соединяю этот кусочек таким образом:
- открыть mesh (открывается некомпилированный mesh)
- объединить mesh (объединяю с еще одним кусочком)
- объединить zen (объединяю с готовой картой в zen формате)
Далее провожу компиляцию мира outdoor и после этого появляется эта визуализация, с которой никак взаимодействовать нельзя. Она просто есть (в игре тоже)
Пост автоматически объединён:

Я не пытаюсь работать с levelcompo таким образом.
Я отредактировал часть ландшафта в блендере и сохранил как 3ds.
Далее я соединяю этот кусочек таким образом:
- открыть mesh (открывается некомпилированный mesh)
- объединить mesh (объединяю с еще одним кусочком)
- объединить zen (объединяю с готовой картой в zen формате)
Далее провожу компиляцию мира outdoor и после этого появляется эта визуализация, с которой никак взаимодействовать нельзя. Она просто есть (в игре тоже)
К слову такая же проблема, если я соединяю оригинальный mesh со своей картой.
 

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.176
Благодарности
6.158
Баллы
1.565
LuckyMo, все это не правильно.
Нужно:
Отредактирвал ландшафт.
Сохранил с оригинальным, как в игре, названием меша.
Загрузил zen
Откомпилировал zen
И будет тебе щасъя. Много-много щасъя ))
 
Сверху Снизу