Каталог статей, Гайды и статьи, Atom RPG

Вводный курс по использованию ModKit (ATOM RPG)


Автор:
  Дата публикации: 22.03.2019, 07:45 · 18 127 · 0

  1. Описание

Предисловие

Данная инструкция написана мной (phobos2077) на основе того как я сам понял использование инструментария. Т.к. я не разработчик, мог чего-то не понять или понять неверно, имейте ввиду.

ModKit для ATOM RPG реализован в виде Unity-проекта (Unity - движок, на котором работает игра). Это значит что инструментарий работает только внутри запущенного редактора Unity. Поэтому первым делом нужно установить нужную версию редактора.
ModKit поставляется (на момент написания) в комплекте с файлами ресурсов игры, которые можно извлечь для редактирования. Пока там не все ресурсы, нет статики (текстур, моделей и т.п.). Т.е. вы работаете с копией ресурсов, которая не связана с установленной игрой ATOM RPG.

Моды созданные в ModKit представляют собой AssetBundle (по сути архив с дополнительными игровыми ресурсами в определенном формате, понятном Unity) + файл DLL (код мода).
Игра версии 1.08+ (либо бета-бранч) автоматически загружает моды, установленные в следующей папке:
c:\Users\<USERNAME>\AppData\LocalLow\AtomTeam\Atom\Mods\

Установка Unity

https://unity3d.com/ru/get-unity/download?ref=personal​​​​​​​



Вариант 1 (рекомендуемый, но требует установки еще одной проги)
- "Загрузить Unity Hub"
- Скачиваем, устанавливаем, запускаем
- Нажимаем Installs -> Official Releases -> Download (Напротив версии 2018.3*)



- В следующем окне ничего отмечать не нужно, жмем "Done"



- Дожидаемся скачивания и установки Unity
(этот вариант позволит в будущем легко устанавливать новые версии Unity, а также держать 2 и более версий на компе)

Вариант 2
- "Загрузить установщик"
- Скачиваем, следуем инструкциям установщика

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

 

Коротко об использовании Unity Editor



Стандартный оконный интерфейс. Вверху главное меню редактора, под ним тулбар с полезными инструментами для разработки игр. Большую часть всего этого знать не обязательно, если вы планируете делать простые моды (правку предметов, диалогов и т.п.). 

Для разработки полноценных новых локаций потребуются базовые навыки разработки сцен в Unity (в интернете миллион туториалов на эту тему).

Основная часть окна поделена на несколько областей, каждая из которых может иметь несколько вкладок. Каждая вкладка это "окно" внутри редактора Unity, их можно перетаскивать как угодно (в другую область, в отдельное от основного редактора окно и т.п.). Размеры областей также можно менять. На скриншоте представлена стандартная раскладка, которая идет после установки. 

Рассмотрим основные окна.
1. Hierarchy/Иерархия - тут все объекты в открытой сцене. По умолчанию открыта пустая сцена Untitled. 
2. Scene/Сцена - 3D-представление сцены.
3. Project/Проект - дерево папок вашего проекта, с правой части показаны (4) ассеты (файлы игры) в выбранной папке.
5. Inspector/Инспектор - показывает свойства объекта, выбранного либо в сцене, либо в проекте. Самое важное для нас окно.

Готовим проект к разработке модов

https://github.com/atomrpg/modkit

- Нажимаем "Clone or download" -> "Download ZIP"



- Извлекаем папку "modkit-master" из архива
- Запускаем Unity
- (авторизуемся, если потребует)
- Жмем "Open"



- Выбираем нужный каталог



- После загрузки, главное окно редактора будет выглядеть примерно так:



- В меню выбираем Game -> Asset Viewer



- Увидим такое окно:



- Для удобства можем перетащить вкладку AssetViewer из этого окна в главное окно (рядом с Game, Scene, и тд)

В проекте modkit сразу идут ресурсы "примерного" мода. На первый раз рекомендуется ознакомиться с этими ресурсами, попробовать собрать мод и проверить его в игре. Но для дальнейшей разработки вашего мода нужно будет удалить всё лишнее, чтобы в готовом моде были только нужные ассеты.
Для очистки всего лишнего удаляем ТОЛЬКО следующие каталоги:
- Все подпапки в папке Resources/
- Все ассеты в папке Scenes/

Проект почищен, но мод работать не будет если не настроить должным образом скрипт мода.
- В проекте выбираем каталог Scripts/
- Щелкаем по MyMod и в инспекторе меняем поле Name на имя фашего мода (латиницей, без пробелов и лишних символов).



- Щелкаем в любое другое окно, появится сообщение "Unapplied import settings", выбираем "Apply".
- Ждем пока редактор пересобирёт скрипты.
- Щелкаем по ModEntryPoint правой кнопкой - "Show in Explorer". 
- В проводнике открываем файл ModEntryPoint.cs текстовым редактором:



- В данном скрипте разработчики добавили код необходимый для запуска того самого "примерного" мода с новой локацией. Нам же большая часть этого кода не нужна. Для новичков рекомендую заменить всё содержимое скрипта на мой вариант:
https://pastebin.com/VbBZ6U8w

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

Использование Asset Viewer



В окне AssetViewer в верхней части есть следующие элементы:
- Кнопка Reload - перезагружает ассеты из ресурсов (идут в комплекте с modkit)
- Поле поиска (2) - для фильтрации ассетов по имени
- Поле выбора категории (1) - для фильтрации по категориям ассетов

Для правки ассета сначала нужно его скачать в проект, для этого нажимаем правой кнопкой мыши -> Download. Выбранный ассет и все его зависимости (иконки, звуки и т.п.) подтянутся в проект:



Также AssetViewer можно использовать для просмотра ассетов (если не требуется их править), для этого просто щелкаем левой кнопкой мыши по ассету и смотрим его свойства в окне Инспектора.

Правка предметов при помощи ModKit

- По инструкции "Готовим проект.." настриваем проект мода и используем предложенный ModEntryPoint.cs
- По инструкции из раздела "Использование AssetViewer" скачиваем нужный предмет, в данном примере это будет АКМС.
- В проекте выбираем Resources/entities/weapon/ - ассет "akms" (тот что с логотипом Unity - это и есть описание предмета)
- Правим нужные характеристики, например урон (Damage Min/Max)



- Всё, правка готова, осталось лишь собрать мод

Сборка и тестирование мода

- В главном Unity меню выбираем "Game" -> "Build Mod"
- Вводим имя мода (ВАЖНО! должно совпадать с тем что мы указали в Scripts/MyMod в поле "Name", иначе работать не будет!)
- Нажимаем BUILD
- После успешной сборки откроется папка Mods с созданным модом. Убедитесь что имя DLL и созданной папки совпадают между собой и с тем что вы вводили:



​​​​​​​- Запускаем игру, изменения мода должны вступить в силу
- Если что-то не сработало, открываем логи игры:
C:\Users\Killian\AppData\LocalLow\AtomTeam\Atom\output_log.txt
- Ищем строку "Mod Init: SuperAK" либо просто имя вашего мода. Если найдено, значит мод собран и загружен успешно.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Категории

Чат доступен только для зарегистрированных пользователей. Войдите в аккаунт для общения в чате.

Лента комментариев

Базовый.

Сегодня, 18:59

Проблема актуальна на 16.03.2026. Не дает зайти в сохранение 😥

Сегодня, 18:53
Интересно, как это выглядит в игре?

Никак не выглядит, Lumpinou пишет свои моды так, как будто WW не существует. Это же касается и модуля на ЗППП.

Сегодня, 18:37
Для работы компании необходимо создать офис и назначить тип участка Generic.

 

Что это за тип участка? В Basemental Venues такого нет. Или это имеется в виду что-то другое? "Базовое" вроде иначе переводится? Кто-нить в курсе, что выставлять? )))) 

Сегодня, 18:35

а на какое значение его нужно поменять не подскажете пж?

Сегодня, 17:38

не нашли решение?

Сегодня, 14:07

Все модули опциональны кроме модуля M0. Он основной и обязателен для всех других модулей. И если какой-то модуль не нужен, просто убираете соотведствующий файл

Сегодня, 13:38
Модуль 18: Расширенное "WooHoo"
Расширенное "WooHoo" ("WooHoo " в любом месте, "WooHoo " на любом объекте, "WooHoo а" с несколькими партнерами, свингеры, вечеринки "WooHoo ")

 

Интересно, как это выглядит в игре? )))))))


Модули независимые? Есть возможность включить только нужные?

Сегодня, 13:32

К сожалению не совсем коректно работает. Когда установила этот мод, то у персонажа вообще не появляеться мудлет, что он стал ростаманом и при переходе в КАС и обратно, персонаж перестает быть ростоманом☹

Сегодня, 11:43



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

Сегодня, 12:45

Это не компонент, а строка 496 в autonomy_component.py
А с чем еще может взаимодействовать то, что даже ходить не может? Вероятно с самим с собой.
Точно не сказать.

Сегодня, 10:49

Last Module Called: autonomy_component.py
Last Function Called: get_autonomous_availability_of_object
Error message: [rez] Posture graph threw an exception while being queried by autonomy: (AttributeError: 'NoneType' object has no attribute 'is_sim'), CategoryID: autonomy_component:496

 

не подскажете как вычислить этот компонент 496? понимаю что не смогло запуститься какое то действие автономное с объектом, как понять с каким? обычно это с малышами такое ( их 5 в семье), они по сути только лежат на месте, с чем им взаимодействовать не получается не пойму

Сегодня, 09:50

Спасибо

Сегодня, 09:34

Психанул немножечко. Версия 1.3.7 уже будет иметь в себе модель 3.1
Просто в моменте, всё пошло по одному месту. Как обычно.

Поломалась автономия, не работала система с эмоциями, не работала система страхов и их преодоления, как и система стресса.

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

Как известно, условно "общих" состояний тут не бывает. Нет мудлета грустный или счастливый, или просто злой. Каждый мудлет имеет контекст. Ну странно при хорошем разговоре получить мудлет о прочитанной книге... тем не менее пока так. Буду делать кастомные мудлеты. как делал для системы воспоминаний. Их сейчас две, должны работать. Случайные воспоминания о прошлых событиях, и воспоминания связанные с объектами, используют одинаковые кастомные мудлеты - что как бы логично.

Мне через час на работу. Сейчас сделаю легкий тест, чтобы заметить очевидные ошибки. Если пока ничего не будет. Выложу обновку, потом, после работы, буду оформлять описание и прочее. Собственно и обратная связь приветствуется. Все кто качает, считай тестировщик.

Сегодня, 03:05

Видимо, что-то случилось? Раз обновы все еще нет, вши заразили код mmmsexy  Я все еще надеюсь успеть поймать новую версию до обновления игры хд

Сегодня, 02:04

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



Журнал должен работать в рамках сохранения.
Новая игра с новым миром - новый журнал для всех.
Новая игра в существующем мире(через управление городом) - то сохранение то же, и журнал тот же. Т.е данные должны сохранятся.
Испольуется CommonPersistedSimDataStorage, это значит что данные привязываются к симу по ID.

Для первой семьи, журнал, счётчики, отношения, всё это продолжает существовать и обновляться, даже если за них не играть. Пока вы играете за новую семью, первая живёт своей автономной жизнью. Каждое их автономное взаимодействие будет фиксироваться в их личном журнале EM.
Для второй семьи(новой): Когда вы создаёте и начинаете играть за новую семью(в рамках одного мира и сохранения), для её членов будет создан новый, пустой журнал. Они начнут накапливать свою собственную историю с нуля.
Взаимодействие между семьями: Если ваша новая семья пойдёт в гости к старой, EM будет работать корректно для обеих сторон. Например, если новый сим подружится со старым:

В журнале нового сима появится запись о том, что он с кем-то познакомился.
В журнале старого сима тоже появится запись о том, что он встретил нового соседа.

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

Вчера, 19:26

А при начале новой игры (есть своя заготовка стартового сохранения) нужно ли удалять json чтобы так сказать разгрузить память? Имею ввиду если оставить не будет ли память из прошлого сохранения использоваться в новом? Зачастую я использую одного и того же персонажа.

Вчера, 18:04

Обновил, смотрите

Вчера, 14:47

Здравствуйте!

Скажите, пожалуйста, когда планируется обновление мода? У меня установлена версия Sims 4 1.121, но игра не запускается из-за некоторых особенностей, и этот мод в том числе. Очень хочется использовать его.

Вчера, 14:42

Перевод не работает с новой версией

Вчера, 12:47

Мод обновился в источнике от 28/02/2026.

Вчера, 11:57

Вышло обновление 04/03/2026 в источнике.

Вчера, 10:55

Немного не дошел до новых строк !Sexy Gigs v20.2(by_Just).package

14 марта 2026 21:02

Пишет мол "недостаточно стульев для выполнения действия". Что я делаю не так? Или мод уже не работает?

В похожем моде тоже самое.

14 марта 2026 20:58

Пишет мол "недостаточно стульев для выполнения действия". Что я делаю не так? Или мод уже не работает?

В похожем моде тоже самое.

14 марта 2026 20:58

Будут отсутствовать строки

14 марта 2026 19:06

Спасибо! Файлы от 4 марта, поэтому оставил как есть. 

14 марта 2026 18:45

Над этим еще Анадиус стебался, но вреда никакого. )

14 марта 2026 18:41

Про txt улыбнуло так что чай пролил.lol

14 марта 2026 18:15

обновлён 12 марта до бета версииsurrender

14 марта 2026 16:42

Подходит перевод прошлой версии !Sexy Gigs v19(by_Just)

14 марта 2026 15:17

автор на мой вопрос ответила, что будут модули, связанные с другими темами urauraura так что ждем!

14 марта 2026 14:27

Люди добрые, помогите!

У меня симы не могут заняться "Жестоким сексом", пишет, что нет анимации. Подумала, что их надо отдельно скачивать, но ничего не нашла. Вот уже целый день ломаю голову над этим.

Подскажите, может где-то реально эти анимации скачивать нужно или что? Я уже ничего не понимаю;-;

Если отдельно, то киньте ссылку и подскажите как правильно установить. Или можно использовать анимаци для вв? (хотя, мне кажется, что нет, но вдруг)

 

14 марта 2026 14:05

У меня все получилось. Просто через апдейтер, у меня пиратка от анадиус. Х знает как может не получиться у других. Был выключен защитник безопасности. Еще удалила файл game verison.txt из папки в моих документах на всякий случай

14 марта 2026 12:35

Популярное за неделю

Команда сайта


Администратор

Редактор, переводчик

Переводчик