Technicity

Technicity

Not enough ratings
РУКОВОДСТВО ПО РАСШИРЕННЫМ ФУНКЦИЯМ АССЕМБЛЕРА
By 444elistnik
Точно не гайд по краже чужих работ
2
   
Award
Favorite
Favorited
Unfavorite
Цели Руководства
Добро пожаловать на мини гайд по работе с “секретными” функциями ассемблера. Здесь будет расписано как копировать целые ветки в пару кликов и как переносить любые предметы мастерской к себе на ассемблер для детального просмотра их устройства через работу с файлами игры.

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

Логи игры
- D:\SteamLibrary\steamapps\common\Technicity\technicityLogs (Подчеркнутое это примерное название файла)
Через логи игры крайне легко находить айди вашего мира, если у вас их много. Айди мира никак не совпадает с названием и дата изменения не меняется с перезаходов или строительства, что делает поиск нужного мира иногда затруднительным. Интересуют нас эти данные после захода в мир --->






























Папка предметов мастерской
- C:\Users\Username\AppData\Roaming\.technicity\items\custom-123456789.JSON
Здесь вы найдете все скачанные предметы мастерской. Не смотря на то, что уже по самим датам должно быть вполне просто ориентироваться, вы можете открыть jpg файл с картинкой с тем же названием, чтобы убедиться, что именно это за предмет, ведь к каждому предмету мастерской идет 3 файла с одним названием и разными форматами: Json файл, Jpg файл и Zip архив.

(Если даже через превью картинку вам неясно, что это за предмет, откройте Json файл и найдите 29 строку снизу, где написано название предмета - “Name” : “123456789”)











































Папка ассемблера в вашем мире
C:\Users\Username\AppData\Roaming\.technicity\saves\world987902137604419140\world\json\tmp\tmpev
(Tmpevent123456789)
Здесь находятся данные всех ассемблеров (и не только) и их данные (включая данные о производимом объекте) Во вкладке saves выбираем найденные айди мира через логи. Во вкладке tmp выбираем айди ассемблера. Айди ассемблера находится непосредственно в игре - вам нужно нажать F3 или Fn+F3, чтобы открыть в левом верхнем углу специальное поле и нацелиться на нужный ассемблер, в котором нас интересует вот это значение —>
Подготовка
Перед тем как сделать ассемблер доступным к модификациям через файлы в режиме реального времени нужно выдать ему Steamid. Лучший способ сделать это - собрать в ассемблере что угодно и выложить это в мастерскую (делать видимость публичной не обязательно). После этого, в Json файле на строке 8 "SteamId": должно появиться значение после открытия файла.

Остановите производство предмета на ассемблере и выйдете из него, чтобы перевести его в режим “считывания”. Откройте актуальный файл ассемблера и поменяйте 29 строку названия снизу на один символ и сохраните изменения в текстовом редакторе, проверьте вносятся-ли изменения в игре, перейдя в третью вкладку ассемблера с названием.




Если название поменялось - то теперь можно работать; если нет - то проверьте правильное выполнение пунктов выше, правильность айди предмета и актуальность версии json файла, ведь она меняется от любых взаимодействий с ассемблером.

(Вообще я советую использовать Notepad++ потому что он автоматически предлагает актуализировать файл, если он был изменен через игру и по многим другим причинам)

Далее у вас есть полная свобода редактирования ассемблера для любых нужд. Все же представлю 3 самых удобных из них:
Перенос чужого предмета к себе на ассемблер
Причины могут быть разные, но надеюсь это не кража. Все что вам надо это открыть Json файл нужного предмета мастерской и скопировать все, что следует за строкой 8 "SteamId" так как его менять вам нельзя.

В Json файле ассемблера тем временем удаляем все, что идет за строкой 8 "SteamId", чтобы вставить туда то, что мы вырезали. Вообщем, подменяем содержимое.





































Сохраняем и готово!
Копирование веток деталей
Чтобы не вставлять одни и те же детали вручную по сто раз, милости просим. Здесь нужно понимать как иерархия предметов расписывается в json файле и находить нужные ветки предметов без проблем. Вот схема, которая может помочь.

Здесь разными цветами показывается какая часть кода отвечает за какие детали


































А вот тут я провожу копирование ветки 2 - 3 так, чтобы она по-прежнему была присоединена к детали 1 потому что так удобнее. (Розовым помечена скопированная часть)


































А теперь, чтоб уж наверняка стало ясно, копирую деталь 3 на деталь 2. Обратите внимание, что там было мало просто скопировать часть кода и вставить вслед, но нужно было также поставить запятую за скобкой "}" (Розовым помечена скопированная часть)
Замена деталей
Как вы знаете детали бывает трудно заменять, если что-то присоединено к ним поверх - удаление детали выше в иерархии удаляет все следующие за ней. Метод позволит делать то же самое без особых потерь.

Что за деталь используется определяется этой строкой - "PartUid" Все, что вам нужно, это заменить это значение на нужную вам деталь. Значение нужной вам детали можно узнать установив ее где-то в конце иерархии, чтобы скопировать айди оттуда. Если у вас больше чем одна деталь, которую вы хотите заменить используйте комбинацию Ctrl+H в Notepad++, чтобы упростить представление значений.













P.s Если после такого массового подставления ваш ассемблер опустел, это значит что айди предмета, который вы заменяете фигурирует где-то как другое цифровое значение. Например, если вы массово меняете Роторы, чей айди 39, это значение - “39” может найтись внутри других айди - 28378391 и быть заменено, чего нужно избежать. Поэтому рекомендую использовать Replace вместо Replace all в меню Notepad++

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



Гайд был, как всегда, предоставлен компанией Pom1dorov
7 Comments
alekseueeliseev 3 Nov, 2022 @ 10:29am 
а как скинуть? я думаю какогото файла нехватает но вот какого
444elistnik  [author] 3 Nov, 2022 @ 9:44am 
Скинь логи игры, посмотрю
alekseueeliseev 3 Nov, 2022 @ 8:30am 
почему игра незапускается пробовал все варианты
2005Guyver02 13 Oct, 2022 @ 9:05am 
For me, I stuck it all through google translate, so I'm good.
444elistnik  [author] 13 Oct, 2022 @ 2:33am 
Tell me if you want to see a translated version.
2005Guyver02 9 Oct, 2022 @ 7:19pm 
Nice.
Титаникус 9 Oct, 2022 @ 9:01am 
Спасибо Огромное!!!