Battle brothers редактор сохранений как пользоваться

Обновлено: 09.05.2024

Battle Brothers

Александр Степанов

Александр Степанов запись закреплена

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

Владислав Митрофанов

Кирилл Фокин

Владислав, чтобы набрать больше половины пати читеров, а потом прокнули ивенты на получение сетового легендарного шмота "Читара из Машины"

Александр Константинов


Александр Константинов

Тевтонец Пётр

Блин, было бы интересно провернуть это со своим братков

Иван Глебов


Иван Глебов

Дмитрий Чистяков

Иван, зачем чит энджин, если можно просто сейв обработать в проге или хекс-редакторе

Иван Глебов


Иван Глебов ответил Дмитрию

Дмитрий, ну чит энженом можно анимации во время боя ускорить

Дмитрий Чистяков

Александр Титов

Какой в этом смысл? Ты же играешь в игру, чтобы получать удовольствие, а какое в твоём случае удовольствие можно получить?

Павел Шейн

Александр, ну для проверки кое-каких теорий я бы не отказался заиметь такой чит отряд. Да и иногда хочется спустить пар (эх вспоминаю М&B с читами).

Александр Троицкий

Эм, есть нормальный редактор сохранений, я вот сейчас им пользуюсь, так как игру сильно ребаланснули, ввели новые механики и противников, и просто надо тестить новые билды, так как в игре это долго да и че говорить на айрон мене жопа пригарает не хило, редактор экономит туеву хучу времени, ну и чит энжен на скорость в бою X3 на карте X5)

Battle brothers редактор сохранений как пользоваться


i will share basic structure of brother data in your save file


1


4,707 уникальных посетителей
93 добавили в избранное







hey guys im korean so my english is poor but i want to share what i know

YOU HAVE TO PUT OFF ALL ITEMS ON YOUR BROTHER

this is overview of brother data structure
name is seonwoo and no nickname
level is 11, perk point is 10, level up point is 10
xp is 15000

action point
human default valus is 9

real stat
other is hp, resolv, stamina, melee skill, range skill, melee defence, range defence, initiative

stats on screen is real stat + trait stat mod
ex) real stamina is 100 and brother has strong trait then game will say stamina is 110

bags count value is 02 and 04

bags and belt perk is simply change this data 02 to 04

so you dont need bag and belt perk

no item on this brother so value is now 00

perk count + trait count + background count( always 1 ) + 1

normal 1lv brother with 2 traits will bas 04 value

you can add traits with this value
(this brother has hex 12, is dec 18)



perk codes will insert here
(red marked place, between background code and 12 00, 4bytes)

C2 32 61 F9 is companion background

description length counter



brother background description

brother background descroption regen length

game will use this data when brother change name

trait codes ( 4 byte )

this brother has 16 traits

end of traits code

xp 98 3A is 3A98
in dec 15000 (current xp limit of battle brothers)

used perk points

level up points

potencial star
for display only
01 is 1 star
02 is 2 star
03 is 3 star

value is between 00

stats when you leveling up

0B 04 04 04 04 04 04 04 04 04 04 04
is one set and there are 8 sets (8 stats)

if you 1 level up and used 1 point

this will change like this

0A 04 04 04 04 04 04 04 04 04 04

your brother is level 11 and used 10 points

will be change like this

F1 38 A2 EF -> iron lung

A0 CF 97 74 -> drunkard

1e d3 81 9c -> strong

6f f4 6e fe -> athletic

98 8F 21 79 -> blood thirsty

8F 1F 32 16 -> brute

62 BE C5 FA -> deadwish

E8 BB E1 1A -> dexterious

84 3D 8D D9 -> eagle eye

46 AD B9 47 -> loyal

9D 81 C2 74 -> sure footing

9A 95 BB 9E -> optimist

8E 02 89 2D -> determinded

B4 76 0E 9D -> tough

15 A0 27 09 -> brave

C2 C1 13 4F -> quick

6A D5 32 7F -> fearless

D1 B9 2F 40 -> bright

12 4A 03 A3 -> spartan (eat less food)

0B 0E 08 CE -> weak

1F 29 11 A2 -> insecure

70 aa 50 f5 -> short sight

F2 1D 84 F3 -> disloyal

9c a0 eb b9 -> old

99 4F E7 08 -> short ( dwarf?)

B4 A3 C9 D5 -> fat

9c a0 eb b9 -> old

E0 4D 80 4B -> sword master

B4 72 05 E5 -> killer on the run

6D F3 81 C6 -> wind man

7C 6E B7 FB -> sell swords

3A 15 7B 3E -> hendge knight

C2 32 61 F9 -> companion

2A AE 85 59 -> vastard

07 46 32 9A -> deserter

71 BA 80 F4 -> disowned noble

3B 7D 94 08 -> hunter

F8 B4 4D E8 -> tailor

B5 DD 90 94 -> juggler

Here a mod vinilly made for battle brothers.
Spread the link around to help others.

You can sendvinilly request for mods.

0A 01 02 02 03 03 02 04 02 03 04 0A 02 03 02 03 03 04 04 03 02 02 0A 03 04 02 03 03 04 02 04 02 04 0A 04 05 03 03 04 03 03 04 05 04 0A 05 02 02 03 03 03 02 02 02 03 0A 06 03 04 02 03 04 02 02 03 04 0A 07 03 03 02 03 02 02 03 02 02 0A 08 02 02 03 03 02 02 02 03 03

this chunk comes shortly after the description, usually first "0A" you see. It shows how many points will potentially be available for a stat when leveling up. Easy to see:

0A 01 02 02 03 03 02 04 02 03 04 HP
0A 02 03 02 03 03 04 04 03 02 02 RES
0A 03 04 02 03 03 04 02 04 02 04 FAT
0A 04 05 03 03 04 03 03 04 05 04 INI
0A 05 02 02 03 03 03 02 02 02 03 MEL
0A 06 03 04 02 03 04 02 02 03 04 RNG
0A 07 03 03 02 03 02 02 03 02 02 MDF
0A 08 02 02 03 03 02 02 02 03 03 RDF

First lvl up, a character will be offered 1 HP, 2 RES, 3 FAT, etc. 2nd lvl up, 2 HP, 3 RES, 4 FAT, etc. Changing the talent stars changes nothing; this does. You can see the star chart at

got it. order for the chunks of stats per level up is

1. Health
2. Resolve
3. Fatigue
4. Initiative
5. Melee
6. Range
7. Melee Defense
8. Range Defense

Looks like your hunch was right. It matches the star display order, not the stat order. how annoying.

I'll figure out the order soon enough. Still messing around with everything and haven't gotten to level up anyone yet. Should be pretty easy to figure out at that point, I can just arrange every stat 1-8 for the first level up and see what correlates with what. Will update soon enough.

@ironstag 0A means 10 level-ups remaining, so there should be 10 bytes in that attribute's set.
Not too sure if that wiki guide is suggesting an exact range or an approximate one, also it is a case of what you see is what you get.

Resolve example: 4, 3, 4, 3, 3, 4, 3, 3, 3, 4
Level 2 = +4
Level 3 = +3
Level 4 = +4
.
Level 11 = +4

I can't remember the order, trial and error will help you with that, but I believe the talents are the best guide.

for fuck's sake, I don't think these chunks are in the same order as the stats from earlier.

Order of Stats in code
1. HP
2. Resolve
3. Fatigue
4. Melee
5. Range
6. Melee Defense
7. Range Defense
8. Initiative

Order of Talent Stars in code
1. HP
2. Resolve
3. Fatigue
4. Initiative
5. Melee
6. Range
7. Melee Defense
8. Range Defense

auuuugh that's so annoying. Does the order of chunks of stats per level up follow the stat order, or the talent star order? christ that's annoying.

(( 0A 04 04 04 04 04 04 04 04 04 04 )) (( 0A 04 03 04 03 03 04 03 03 03 04 )) 0A 04 03 04 04 04 04 04 04 04 03 0A 03 03 03 05 04 05 04 04 05 04 0A 03 01 02 03 02 01 03 01 02 03 0A 03 02 04 03 02 03 02 04 02 04 0A 03 02 01 02 02 01 02 03 03 02 0A 02 03 02 03 03 02 02 01 03 01 03

(( 0A 04 04 04 04 04 04 04 04 04 04 ))
So this first set represents HP. There are 10 "04"s, given that he has 2-star HP, which means he can ONLY potentially gain 4 HP per level up, as per this chart

(( 0A 04 03 04 03 03 04 03 03 03 04 ))
And when I look at resolve, the second set, where my character has 1 star, which is 3 or 4 points per level up. makes sense, but.. what's the pattern? 4, 3, 4, 3, 3, 4, 3, 3, 3, 4? Is this the pattern for his next 10 level ups, i.e He'll have 4 possible points available upon reaching level 2 for resolve, 3 possible points available upon reaching level 3, etc.

Also, any idea why it's "0A" instead of "0B" like in the post?

Battle brothers редактор сохранений как пользоваться


1

From 1.5.* it's for 1.4.0.32 patch with B&E, WotN and Balding Desserts DLCs.

No, I will not make this compatible with X mod.

If you want to apply a patch (presuming your version is lower than the patch), you have to extract the patch archive into resources/app folder of your bb-edit.

Awesome! Kudos to everyone, who worked on this so hard, and thanks for sharing it here!

Battle brothers редактор сохранений как пользоваться


1 Введение в моддинг для новичков / Intro to modding for beginners

Приветствуется любая обратная связь! Any feedback is appreciated!

__________________________________________________________Русская версия

Может быть, потому что эта "Белка" изначально разрабатывалась для применения "в условиях ограниченности ресурсов в приложениях реального времени", т. е. именно в компьютерных играх? Этот язык действительно компактен (шесть тысяч строк кода на C++), но вместе с тем умеет всё, ну или почти всё, что необходимо (функции и генераторы? - да, массивы и таблицы? - да, классы и наследования? - да. и много чего ещё, включая рекурсию), не потребляет впустую оперативной памяти, с которой управляется автоматически, и при этом достаточно производителен, конечно для интерпретируемого языка. Кроме того, ещё и свободно распространяемого.

Может быть, потому что эту "Белку" использует в своих играх компания <Valve>, к примеру, в "Counter-Strike: Global Offensive" или в "Portal 2". Да и не только она одна. Про "War Thunder" слышали, что-нибудь, когда-нибудь? Там тоже словили "Белочку".

Может быть, потому что белочки милые. и пушистые. и любят крепкие орешки?

Лучше, конечно, переадресовать этот вопрос разработчикам "боевых побратимов", потому что, для нас, причина, собственно, в этом: для модификации любимой игры, которая, почему-то, использует SQUIRELL 8))

Картинка 1: Кстати говоря, Альберто Демикелис, создатель данного языка программирования, вложил в его разработку не менее двенадцати лет своей жизни!

Для этого, прежде всего, нам нужно научиться декомпилировать файлы с расширением .cnut, содержащие в себе код для виртуальной машины squirell, т. е. практически все внутриигровые данные (и операции!).

Если Вам кажется, что это "сложновато", то разочарую: на самом деле всё гораздо проще, чем могло бы показаться! Весь процесс, на практике, будет сведён к банальной распаковке отдельных cnut-файлов в определённую директорию и запуску одного из двух bat-файлов. Т. е. всё будет сделано почти что без Вашего участия.

Но прежде чем мы это сделаем.

Декомпиляция сценариев:

Распакуйте содержимое архива bbros.zip (см. выше пункт один) в любую папку по Вашему выбору. Я предпочитаю, чтобы эта всегда была соседняя с игрой директория (например, modkit).

Теперь откройте архив data_001.dat (на самом деле - это обычный zip-архив!), выберите файл[ы], с которым[и] планируете в дальнейшем работать, пусть, например, это будет файл iron_lungs_trait.сnut, и распакуйте прямо в папку bin в директории с мод-комплектом. И там запустите massdecompile.bat. Собственно, всё.

И в моём случае это выглядит примерно так:
Games / Battle Brothers / data / data_001.dat: scripts / skills / traits / iron_lungs_trait.сnut
-> Games / modkit / bin / . -> massdecompile.bat -> iron_lungs_trait.nut

Создание модификации:

Chikanuk: Я по 10 раз просмотрел все видео и перечитал все посты и ничего не помогало, пока в конце концов до меня не допёрло, что у меня при архивировании у файлов в архиве получается отличная от оригинальных дата-архивов система.

Ещё раз: Вы хотите, как пример, изменить боевые характеристики ножа. Для этого Вы распаковали (и декомпилировали!) соответствующий файл из архива: data_001.dat => scripts / items / weapons / knife.cnut.

Теперь Вы должны воссоздать всю соответствующую структуру папок заново в директории data (и далее либо упаковать это в архив zip, либо оставить как есть).

Вот так: my_mod / knife.nut - не заработает (структура директорий не скопирована)!
И так: scripts / weapons / knife.nut - тоже работать не будет (пропущена папка items)!
И так: scripts / items / weapon / knife.nut - тоже работать не будет (пропущена буква s)!

Рабочая структура: data / scripts / items / weapons / knife.nut => [] ! ! !

Редактирование сценариев

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

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

Тестирование модификаций

Как узнать, что пошло не так? Просто просмотрите игровой "журнал":

C: \ Users \ User Name \ Documents \ Battle Brothers \ log.html

Там красным цветом будет выделена вся нужная информация: в каком именно файле и в какой строке случилась ошибка, а также будет указан тип ошибки. Отловите жучка!)

Перечень источников (все на английском языке):

Итак, поехали. Вернём "железным лёгким" прежнее значение параметра восстановления выносливости.

Извлечём и декомпилируем нужный нам файл: . \ game directory \ data \ data_001.dat => scripts \ skills \ traits \ iron_lungs_trait.nut. Открываем и в самом конце видим:

И что нужно сделать? А всего-навсего поменять тройку на пятёрку!)

Ещё раз: не забудьте сохранить изменения и повторить структуру папок из data_001! Собственно, всё. Ваш первый мод готов.

Ведь, действительно, это было не так-то и трудно?

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

Извлечём и декомпилируем файл по адресу: . \ game directory \ data \ data_001.dat => scripts \ skills \ actives \ indomitable.nut. Откроем и здесь уже в самом начале увидим:

На этот раз всё с точностью до наоборот: замените пятёрку на тройку. Снова всё.

В принципе, ничего сложного. Разве нет? ¯ \ _ (ツ) _ / ¯ (c) Caroline Eisenmann

Для дальнейшего, нам нужно попытаться осмыслить понятия "объекта" и "класса". Если коротко. Класс всегда один - это "прототип" объекта! Тогда как объекты - это вариации класса. Объектов может быть сколько угодно, сколько позволяет вместить объём памяти.

Данные и функции

Разберём шаблон подкласса weapon (для оружия ближнего боя) на примере боевого кнута.

data_001.dat: scripts / items / weapons / weapon / battle_whip.nut:

data_001.dat: scripts / items / weapons / weapon / short_bow.nut:

function getAmmoID() < return "ammo.arrows"; // возвращение идентификатора типа боеприпасов; >function getAdditionalRange( _actor ) < return _actor.getCurrentProperties().IsSpecializedInBows ? 1 : 0; // увеличение дистанции поражения объекта при специализации на луках; >function onEquip() < this.weapon.onEquip(); // вызов экипировочной функции класса; this.addSkill(this.new("scripts/skills/actives/quick_shot")); // добавление объектом при экипировке им умения quick shot; this.addSkill(this.new("scripts/skills/actives/aimed_shot")); // добавление объектом при экипировке им умения aimed shot; >

Список слотов (this.Const.ItemSlot.* <= переменная SlotType)

Accessory - аксессуар (для категории accessory, включая falcon & wardog);
Ammo - боеприпасы (для категории ammo, либо powder_bag, либо quiver);
Bag - поясная сумка (для категорий ammo & tool, shield & weapon);
Body - тело (для категории armor);
Head - голова (для категории helmet);
Mainhand - правая / ведущая рука (для разных категорий weapon);
Offhand - левая / вспомогательная рука (для категорий shield & tool).

Список категорий (this.Const.Items.ItemType.* <= переменная ItemType)

Accessory - аксессуары (ожерелья и всякое прочее, включая даже сокола, собак и волка);
Ammo - боеприпасы;
Armor - броня;
Crafting - ингредиенты для квалифицированного рукоделия;
Defensive - предметы для использования в целях самообороны;
Food - еда;
Helmet - шлем;
Legendary - легендарный предмет;
Loot - трофеи;
MeleeWeapon - оружие для ближнего боя;
Misc - разное (если не вписывается в иные категории, то это должно быть именно здесь);
Named - именной предмет;
OneHanded - одноручное [оружие];
RangedWeapon - оружие для дальнего боя;
Shield - щит;
Supply - условные инструменты, снаряды, травы;
Tool - баночки, бомбочки, сеточки и такое прочее;
TradeGood - товары (для торговли);
TwoHanded - двуручное [оружие];
Usable - для, предположительно, одноразового использования;
Weapon - оружие.

Разберём шаблон подкласса background на базовом примере подмастерья, относительно которого видоизменяется статистика прочих шаблонов.

data_001.dat: scripts / skills / backgrounds / apprentice_background.nut:


Последовательность вызова функций подкласса в игре (данные на основе log.html):
create() -> onAdded() -> onChangeAttributes() -> onBuildDescription -> onAddEquipment() -> onSetAppearance.

    // = Любой комментарий -> не будет выполнен программой;

// Ветвление / Branching: if (!condition_1) < return; >else if (condition_1 || condition_2) < doThis(); >else if (condition_1 && condition_2) < doThat(); >else < doSomethingElse(); >

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

Полезно, на самом деле, перекомпилировать исходные файлы игры, после того как Вы их модифицировали. Но тем не менее, если Вы добавляете новый файл .nut, а не изменяете оригинальный файл .cnut, то рекомендую не компилировать. Намного проще и быстрее редактировать скрипты, когда они не скомпилированы.

Игра скачала последнее обновление и модификации перестали работать. Что делать?
— Модифицированные файлы должны иметь дату перезаписи, более позднюю, чем у оригинальных файлов. Иначе работать не будет! Альтернативный способ решения проблемы: заново скомпилировать модифицированные файлы.

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

Какие программы лучше использовать при работе над модификациями?
— Для распаковки dat-архива вполне подойдёт WinZip. Или же воспользуйтесь 7-zip.
— Для редактирования внутриигровых скриптов порекомендую Notepad++.
— Для работы с графикой используйте Photoshop или же попробуйте Paint . NET.

Вам на самом деле не нужно ничего устанавливать [моё примечание: для работы с архивами], поскольку проводник Windows отлично справляется с файлами .zip. Чтобы создать архив, выделите нужные файлы и каталоги, щелкните правой кнопкой мыши и выберите: «Send to -> Compressed (zipped) folder».

Чтобы стать хорошим моддером, нужно быть неплохим кодером! Разве нет?
— Вероятно, скорее, всё наоборот: любой мододел со временем вполне может стать программистом 8)

________________________________________________________English translation

First remark: Alberto Demichelis, the creator of this programming language, has invested at least twelve years of his life in its development!

If it seems to You that this is very "complicated", then I will disappoint: in fact, everything is much simpler than it might seem! In practice, the whole process will be reduced to a ordinary unpacking of individual .cnut files into a specific directory and launching one of the two bat files. That is, everything will be done almost without Your participation.

But before we will do that.

Second remark: What is the program? As not a sequence of steps that implements a solution of tasks that lead to the achievement of definite goal. Or algorithm.

Decompilation of the scripts:

Unpack completely the contents of the archive bbros.zip (see point one above) into any folder of Your choice. I prefer this directory to always be adjacent to the game directory (let us say, modkit).

Now open the archive data_001.dat (it is a regular zip-archive!) and select the file[s], with which You plan to work in the near future, for example, let it be the file iron_lungs_trait.сnut, then unpack it directly to the folder "bin" in the directory "modkit". And there run massdecompile.bat. Actually that is all.

So in my case, it will look something like this:
Games / Battle Brothers / data / data_001.dat: scripts / skills / traits / iron_lungs_trait.сnut
-> Games / modkit / bin / . -> massdecompile.bat -> iron_lungs_trait.nut

Pay attention! Your modification, in summary, in the archive file or unpacked, should be located at: . / game directory / data / .

At the same time, loading the game files into the computer memory is carried out in alphabetical order! And since the original files are in the archives with name data_***, by analogy and together with that by default, it is customary in the community for the archives with the modifications to use name mod_***.

If the file that being modified is not too large in size (or, on the contrary, a significant number of changes will be made), then I recommend working directly with it or rather with its copy.

  1. decompile file_name.cnut to file_name.nut;
  2. add the file to the modification, preserving the folder structure;
  3. edit the script;
  4. do not forget save the script;
  5. start the game;
  6. get an error;
  7. save the game;
  8. read the log;
  9. do not be lazy and close the game;
  10. fix the error;
  11. start the game again;
  12. load the save and. get one more error or not!)

After modification, into the testing process of changes, in especially at first, You will definitely and constantly received the some messages about some errors. Do not be discouraged! It was happening, is happening and it will be happening not exclusively to You! The errors are absolutely usual practice, and, at the beginning, even useful!

But how do You know what went wrong? Just look at the game log:

C: \ Users \ User Name \ Documents \ Battle Brothers \ log.html

All the necessary information will be highlighted there in red: in which file and in which line the error occurred, the type of error will also be indicated. Catch the bug!)

¯ \ _ (ツ) _ / ¯ (c) Caroline Eisenmann

So begin. Let us return the "iron lungs" to their previous value of stamina recovery parameter.

Extract and decompile the file we need for: . \ game directory \ data \ data_001.dat => scripts \ skills \ traits \ iron_lungs_trait.nut. Open in notepad and at the very end we see:

But what needs to be done? And just change the three to the five!)

And again: do not forget to save all changes and repeat the folder structure from data_001! And that is all. Your first mod is already done.

So, is not it, nothing complicated?

For to develop and to consolidate modding competence let us return previous cost in action points for the "Indomitability" skill.

Extract and decompile the file to this address: . \ game directory \ data \ data_001.dat => scripts \ skills \ actives \ indomitable.nut. Open it and now at the very beginning we see:

This time, everything is exactly from the opposite: replace the five with the three. Again that is all.

For further, we need to try to comprehend the concepts of "object" and "class". In short. There is always one class - this is the object's "prototype"! Whereas objects are variations of a their class. There can be as many objects as You like, as much as the memory size allows.

Data and Functions

[To be continued. ]

Do I need to recompile the modified files?
— Not necessary. Since it makes scripts editing difficult. But it is desirable if there are many such files. Because the compiled files run faster.

Actually, it is useful to recompile built-in game files if you modify them. However, if you are adding a new .nut file rather than changing an existing file, then I recommend not recompiling. It is much easier and quicker to edit your mod if it's not compiled.

The game downloaded the last update and the modifications no longer work. What should I do?
— The modified files must have a rewriting date later than the original files. Otherwise it will not work! An alternative way to solve the problem just is to recompile the modified files.

Yes, this is not very fun or reliable. Better to compile your files (if you modify existing game files). Then you can be sure they will be loaded and won't have to worry about the modification date being later than the original.

What programs are best to use when working on modifications?
— For unpacking files from an dat-archive usual WinZip is fine. Or employ free 7-zip.
— For editing game scripts I recommend free Notepad++.
— For work with graphics use Photoshop or try free Paint . NET.

You don't actually need to install anything, since Windows Explorer can handle .zip files just fine. To create an archive, highlight the files and directories you want, right-click, and choose Send to -> Compressed (zipped) folder.

To become a good modder You have to be a good programmer! Is not it so?
— The opposite is probably more likely: any modder may well become a professional programmer with time 8)

Читайте также: