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

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


Автор:
  Дата публикации: 22.03.2019, 07:45 · 18 082 · 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" либо просто имя вашего мода. Если найдено, значит мод собран и загружен успешно.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Категории

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

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

Выполнил чистый запуск Sim Control Hub, чтобы проверить как он должен работать.

На панели с правой стороны по персонажам ЛКМ - отображается спокойно. За это отвечает настройка "showInRelationshipPanel": true. Если будет false, то отображаться Sim Control Hub там не будет. Функция "hideInCheatMenu": false работает исключительно в режиме shift+лкм и непосредственно на самих персонажей, при этом функция будет работать только при testingcheats true.

Запуск с библиотекой, некоторыми другими отладочными модами и Sim Control Hub, всё работает абсолютно так же. На панели справа ЛКМ по персу - отображается меню. Чтобы меню отображалось непосредственно в пай меню, на персонажах, то только в режиме читов. Т.е всё работает так же как и при чистом запуске.

Сегодня, 02:54

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

Мой мод опирается на страхи как на один из источников информации, и будет получать пустой список*(вызовет это ошибку или нет - не знаю). Механика преодоления страхов не сможет работать.

И мой мод не должен конфликтовать с тем, что предлагает игра, а дополняет её.

Потому DisableFeatures_BG_Fears лучше убрать, и включить отображение страхов в игре.

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

Сегодня, 02:29

Так что, DisableFeatures_BG_Fears от Zero лучше убрать и включить "Показывать желания и страхи" в настройках игры?

Вчера, 22:56

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

 А взяв сима под контроль, всё работает штатно через "действия", включая действия на иконках.

Вчера, 22:27

Причём здесь шифт? Должно быть вот так, безо всякого шифта:

 

Вчера, 22:18

Тоже рекомендую остаться с SNB. Я этот пока использую только, чтобы деньги списывали периодически за налоги, штрафы и прочее. 

Вчера, 22:01

Все доп рецепты от других авторов в итоге снесла, оставила только Бабулины, самые лучшие.

Вчера, 21:57

Автор уже анонсировал новый мод про ангелов и демонов woow

Вчера, 21:54

зажмите шифт и кликните по любому симу в панели отношений, если вас не убедил мой скрин

Вчера, 21:36

Тоже проверил BE поиском конфликтов. Их нет. Хотя BE в скрипты не умеет, только .package проверяет. При наличии в папке модов Sims 4 Community Library, не важно, с вашим модом, или без него, у Sim Control Hub пропадает меню на панели отношений, в меню персонажа остаётся:

"followCamFix": true,
"debugModeEnabled": true,
"showInRelationshipPanel": true,
"hideInCheatMenu": false
Спасибо за наводку, посмотрю в сторону UI Cheats Extension и Better Simology Panel, хотя странно, что баг проявляется, ещё раз повторю, только при установке Sims 4 Community Library.

На всякий случай: у меня Sims 4 Community Library v3.20, игра 1.121.372.1020.

Вчера, 21:29

Все тут мучаются как пиратку превратить в полу-лицензию, а у меня возникла необходимость состряпать из полу-лицензии [(EAapp-BaseGame)+(DLC&Kit+Unlocker)] обратно в пиратку с галлереей. Так вышло, что после установки EP19 и всех последующих DLC, на базовую лицензию, я пропустил тот момент что при копировании файлов из архивов в папку Sims 4 часть файлов в __Installer не перезаписывалась т.к EAapp включило для папки режим "только для чтения" из-за чего кряк от Aaros кричал что необходимо переустановить(восстановить) файлы игры и напрочь отказывался запускаться. Хотя игра без проблем запускалась через EAapp. Пришлось снова скачать все пропушенные DLC&Kit,  снять защиту от записи и перезаписать файлы заново, после этого крякнутый EXE запустился как положено. 

Вчера, 17:56
то подключения нет

 

Определенно это проблема апдейтера, как и отсутствие допов. (нет)

Вчера, 17:24

С апдейтером тоже. Туше.

Вчера, 17:22

со стимом таких проблем нет)

Вчера, 16:48

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

Вчера, 16:23

ну через неделю всем доступен станет перевод

Вчера, 16:08

Все заработало, спасибо большое!

Вчера, 16:07

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

Вчера, 16:06

Да и не критично, просто бывает глаз режет)

Вчера, 15:14

Можно вопрос, с какой целью вы запускаете апдейтер "что не день"?

Удалите все файлы из папки апдейтера, оставьте только один exe, повторите запуск.

Вчера, 14:53

что не день то приключение с аптейдером,что делать на этот раз?

 

Вчера, 14:00

Скорее всего, дело в том, что тут выложены старые версии, которые могут не работать после февральского патча. У автора есть более новая версия, которая сейчас прекрасно работает, но сюда он её пока не выложил

https://www.simfileshare.net/download/5973767/

Вчера, 13:44

Выглядит интересно, но, полагаю, будет конфликтовать с модом FunctionalMobile от Lumpinou. Для исторических сохранений, наверное, подойдёт.

Вчера, 13:20
Мучаюсь уже несколько недель с модом. Установился наконец, есть даже при создании новых персонажей жизненные цели "начинающий садист" и тп. Но взаимодействий с персонажами нету. Ранее играла с ww и подобными модами, потому привыкла к данному управлению, что взаимодействия на ряду с другими. Возможно установила не так что то или не удостоновила? Поместила не в ту папку. Возможно мод управляется другими способами? При shift + click вроде бы тоже нового ничего нету, если правильно сделала, включила как было указано команду. Хотелось бы советов от знающий, ведь найти информацию о моде не нашла.
Вчера, 11:14

пробуйте альтернативную ссылку в последнем окне под кнопкой "скачать"

Вчера, 10:51

Не получается скачать файл. Код ошибки: ERR_CONNECTION_RESET. Сообщает что такого файла в хранилище нет. Можно на Яндекс Облако положить?

Вчера, 10:41

Помогите пожалуйста, у меня все дополнения и т.д. скачалось, но если я захожу в симс через ЕА то у меня половину дополнений и каталогов тупо нету, я если я зайду в симс онлайн то всё есть и всё работает. + анлокер при скачивании выбил "installed but mising language files"

Вчера, 10:14

Не могу с вами согласится, особенно учитывая утверждения по поводу решения любых проблем))
Байка связана с вполне конкретными случаями, с модами, которые априори несовместимы и выполняют одну и ту же функцию. Библиотеки тут непричём она не является источником проблем. Да она добавляет в пай своё меню... хм, как и другие моды с отладкой. И что еще? Ничего. Если мод вызывает ошибки, нужно его удалить)) Разве нет? Просто в данном случае ошибки стали очевидны. BE в помощь, чтоб понять, конкретно что и конкретно где.

Вообще чтобы ошибок не возникало, лучше удалить игру) Тогда вообще никаких проблем не будет



У меня модов, овер дофига, чекнул BE конфликтность. Ни с чем кроме русика SimControlHub не конфликтует(что нормально). Отображение в пай меню, или в панели отношений настраивается в настройках мода.



"При любых проблемах в игре прежде всего удали моды от ColonolNutty!" - это утверждение гуляет по сети из за DD. Т.к он не стабилен, глючный, много ошибок.

Но библиотека Sims4CommunityLibrary, которую создал ColonolNutty стабильна. Её используют многие, т.к с ней проще работать. Она стабильна и по мере возможностей обновляется.

S4CL предоставляет инструменты для добавления пунктов в меню, другие моды что делают тоже самое вполне могут законфликтовать, UI Cheats Extension или Better Simology Panel. Но это лишь возможные конфликтные моды. У турбо своя turboLib, раньше были конфликты, сейчас нет.

Смотри файл конфига Sim Control Hub(DQuiet_SimControlHub.json), функции для панели и пай-меню должны быть включены. Если в игре их отключить, то включить можно будет только через конфиг.

Но в это S4CL никак не лезет. Я час потратил на то, чтобы проверить совместимость. Они прекрасно работают вместе. Во всяком случае, заявленные тобой проблемы, не обнаружены. 

"hideInCheatMenu": true,
"debugModeEnabled": false,
"followCamFix": false,
"showInRelationshipPanel": true

Вчера, 11:59
Да и получив "опыт", скажем, в автономии, то какой тогда смысл в нем, если "дубиной" игрок это всё перечеркивает (а ведь так примерно и будет)? Многие вообще не парятся и глушат "свободу воли" и получают в игре те самые эмоциональные качели, а потом ПКМ накидывают им уровни романтики и дружбы, тк, условно, эта парочка вообще не пара и игра стремиться всё это увести в минус.

Главное понять, для кого это мод. Если тебе не нужна "воля" у сима - то моды на автономность не нужны вовсе))

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

Если игрок отключит свободу у симов, мод ему не помешает, ведь ручные команды всегда в приоритете.

Если же оставить симов самих на себя и наблюдать, то тут мод и раскроется в полной мере.

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

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

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

Какой в этом смысл?

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

Для тех, кто оставляет свободу воли включённой, мод превращает случайные действия в психологически обоснованные. Вы увидите, как застенчивый сим наконец-то решается подойти к объекту воздыхания после долгих колебаний - и это будет результатом его внутренних изменений.
Для тех, кто управляет вручную, мод добавляет "вес" вашим решениям. Вы знаете, что если заставите симов, которые ненавидят друг друга, пожениться, вам придётся постоянно "тушить пожары" их автономных ссор. Это добавляет глубины даже в ручное управление.
Дубина игрока всегда перевесит, этого не отнять, да и никто не собирался как бы.

Я хотел чтобы симы помнили, о том что с ними происходит и действовали исходя из прошлого опыта.

Вчера, 08:16

Вообще по поводу преодолений страхов, это тема довольно интересна.

Как это работает сейчас:

При столкновении с объектом страха, например, готовка при боязни огня, сим получает стресс и бафф страха. Это сделано для того, чтобы избегание было естественной реакцией, а преодоление требовало усилий.
Однако ручное управление всегда позволяет заставить сима действовать вопреки страху, но с указанными негативными последствиями.

Но можно это дополнить и доработать.

Каждое успешное или просто совершённое взаимодействие с объектом страха постепенно снижает его интенсивность.

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

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

На данном этапе, мод поощряет избегание стресса. Думаю этим и займусь в ближайшее время.

А пока, ручные команды всегда работают, и сим сделает всё, что ему приказать, даже если ему страшно - просто ему будет от этого плохо.

Вчера, 07:55

Всё верно. Действия игрока повышают авторитет у любого действия.

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

Вчера, 07:46

Тут речь о вероятностях. И не блокировка дейтвия, а его отмена.

Вычисляется итоговая вероятность, к примеру 0.4, это значит, что в 40% случаев сим всё равно может совершить действие, даже если все факторы "против". Это оставляет пространство для случайности и неожиданных решений.

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

Пример про "динамо":

Серия отказов создала состояние "interested = False" и высокий rejection_count(изменчивый показатель), если продолжить мягко ухаживать (действия не отменяются полностью, а лишь становятся реже), каждое успешное действие будет немного снижать rejection_count. Если она например романтик, то такие действия будут восприниматься ею чувствительней. А когда interested снова станет True, тогда накопленная положительная история начнёт работать.

Мод создаёт не круг, а скорее инерцию, которую можно преодолеть настойчивостью, или усугубить невнимательностью.

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

И да, тут мы либо работаем над над преодолением, либо избегаем тригерров.

В моде нет волшебной пилюли на исцеление, а игрова механика позволяет избавляться от старых фобий и получать новые через взаимодействия. Мой мод не создаёт, а лишь учитывает. Так что преодоление возможно, а мой мод поддержит "ненакозанием" стрессом.

И да, речь в основном про автономию симов. Если дать команду приготовить еду - она будет выполнена, т.к это высокий приоритет. Вся логика on_interaction_queued работает исключительно для автономии. Эта архитектура является дополнением, а не заменой вашей воли.
Вероятности, а не гарантии. Сим может "передумать", но может и не передумать. Это не бесконечные уговоры, а элемент непредсказуемости.
Инерция, а не блокировка. Плохой опыт делает действия менее вероятными, но не невозможными. Хороший опыт - более вероятными.
Ручной режим всегда в приоритете. Если дорого игровое время, всегда можно отдать команду, и сим её выполнит, несмотря ни на что.

Если действие противоречит накопленному негативному опыту (например, флирт с тем, кто неоднократно отказывал), сим выполнит команду, но это может усугубить его внутреннее состояние (например, повысить стресс или снизить удовлетворённость).

Вчера, 07:43
Основная проблема в Sims4CommunityLibrary: эта библиотека нарушает в частности работу Sim Control Hub (может быть, каких-то других модов ещё, не проверял детально) — пропадают все меню мода, проверил два раза. Без Sim Control Hub не представляю себе как играть, так что, увы...

 

Всё работает.

 

 

 

Вчера, 07:28

Я прочел, к примеру, это:

И по мере игры, ведётся журнал, например разговор сим А - сим Б. И у кадого сима сохранится этот разговор. Будь то разговор игрока с нипом. Или нип и нип. Действия за пределами участка не учитываются, т.к их нет, там имитация жизни.

 

Да и получив "опыт", скажем, в автономии, то какой тогда смысл в нем, если "дубиной" игрок это всё перечеркивает (а ведь так примерно и будет)? Многие вообще не парятся и глушат "свободу воли" и получают в игре те самые эмоциональные качели, а потом ПКМ накидывают им уровни романтики и дружбы, тк, условно, эта парочка вообще не пара и игра стремиться всё это увести в минус.

Вчера, 07:17

К сожалению, не удалось как следует протестировать мод. То есть, игра загружается, ошибок нет, файл .json создаётся, тормозов не замечено, хотя сразу отправил сима в школу, где на участке одновременно под сотню NPC, и все норовят повзаимодействовать между собой. Основная проблема в Sims4CommunityLibrary: эта библиотека нарушает в частности работу Sim Control Hub (может быть, каких-то других модов ещё, не проверял детально) — пропадают все меню мода, проверил два раза. Без Sim Control Hub не представляю себе как играть, так что, увы... cry2 Видимо не зря пишут: "При любых проблемах в игре прежде всего удали моды от ColonolNutty!"

Вчера, 07:14

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

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


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

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

Переводчик