В общем система такая:
LevelInfoManager - число открытых карт
VisibilityMaps - видимые и нивидемые области карты
LevelObjects - обьекты на карте
WeaponGroupManager - инфа о циферках (группах) оружия
NavPointManager - скорее всего точки на радаре
QuestInfoManager - скорее всего инфа о текущем квесте
History, BooksWnd, Encyclopaedia, - ну это наверное всем понятно - журнал, книги, предметы, энциклопедия
Clans - отношения с группировками
Далее идёт куча Belong-ов и куча Node-ов, это я не знаю чё за тема
Потом:
ObjectId="0"
Name="Player1"
Belong="1100"
Prototype="player" - с этих слов начинается инфо об игроке, там разобраться не сложно, первые строки - инфа о модели тачки, её координаты, угол поворота и т.д.
Затем идёт столбик
Runtime
SkinNumber="1"
TargetId="-1"
TimeOutForReAimGuns="0.000"
TargetPos="0.000 0.000 0.000"
TimeAfterDeath="0.000"
NumBlownParts="0"...и т.д. - это всяческая информация о самом разном - обороты движка, текущая передача, бессмертие (ImmortalMode) , и прочая байда.
Далее - Wheels, WheelInfo - информация о колёсах: их координаты, угол поворота, к какой тачке они принадлежат.
Потом Parts (части):
BASKET - фиг знает, что за часть
CABIN - кабина. В ней MaxTorque - мощность (Больше 999,999 не ставить, а то ошибка будет), MaxSpeed - скорость
CHASSIS - вроде как кузов. Fuel и Health надеюсь не надо обьяснять - бензин и броня.
Decals - следы от пуль, столкновений и т.д.
BASKET_BIG_GUN_0, BASKET_GIANT_GUN, CABIN_BIG_GUN_1, CABIN_GIANT_GUN - орудия, в которых Price - цена, Damage - урон, FiringRate - скорострельность, ReChargingTime - время перезарядки.
Далее я не знаю, что идёт, т.к. это уже не об игроке и мне это не нужно было. (в конце, например, инфа о том, какие квесты пройдены, а какие - нет.)
Я делаю так - покупаю нужную тачку (например миротворца), ставлю нормальные кабины, кузова, орудия, еду в место, где игрок появляется в самом начале и сохраняюсь там. Потом начинаю игру заново и тоже сохраняюсь. Далее открываю сэйв новой игры и заменяю в нём начиная со строк
ObjectId="0"
Name="Player1"
Belong="1100"
Prototype="player"
Money="100">
и заканчивая
на данные из сэйва с хорошей тачкой, оружием и т.д.
Прикол заключается в том, что у каждого Object'а должен быть свой ID. Это параметр ObjectId. Самое главное - этих ID НЕ ДОЛЖНО НЕДОСТАВАТЬ ИЛИ БЫТЬ НЕСКОЛЬКО ОДИНАКОВЫХ, ИНАЧЕ ПРИ ЗАГРУЗКЕ ВЫЛЕЗЕТ ОШИБКА!!!!!!
Я это решил следующим образом - нумеровал эти ID по порядку, т.е. id плэйера (0), тачки(1), кабины, кузова, колёс, оружия, но тогда получалось 9 повторяющихся, я их компенсировал удалением магазинных кабин и кузовов. Блин, я наверное непонятно обьясняю, ну в общем система такова, что одинаковых или недостающих ID не должно быть.
Надеюсь вы хоть что-то поняли из моего рассказа, там не сложно разобраться в принципе. Я с нуля это всё примерно за 4 часа осилил. Может, если уж что-нибудь совсем непонятно, можно спросить у товарищей разработчиков, они обьяснить лучше смогут.