[WIP] ArzBaller - the CLI for packing dbrs

  • folders have no diff
  • crucible works
  • crucible towers work

success?
good job :slight_smile:

Thank you again Stormcaller for being my tester. Curiosity will force me to figure out why the arzs get a slightly different size, but for now, I hope to rest from this project.

didnt get to test it yet, but is the arzBaller created arz a little smaller? could be because you left out the 2 ints per record. not much data but enough if its really just a little different.

Yeah, I should not have singled out Stormcaller there as you and durruti also helped, but last night and this morning, Stormcaller and I have been in constant steam chat working out the final details. He also had the idea that if my data blocks are not sorted the same as the dev’s packer, then compression sizes could vary and that might be the issue, as some arzs repack a little smaller and others a little bigger.

k, so I tried to pack my mod, it crashed, thought, ok maybe its because of the additional folder, Ill grab the core source and pack that… crash again.

after that I went back to the initial release and grabbed the gimmest source and had another crash, made a screene of it

however unpacking the grimmest arz from the initial release and packing the source that comes out of it works.

The way I use it is get the arz, unpack the arz with unpack, and pack the arz with changes. Were you trying it with the unpack from a different program/asset manager?

Not able to see the image, will grab your source and give it a go.

well, your mod has tons of fields that were not in database.arz or SurvivalMode.arz…I guess I need to implement the guessfieldtype() function again.

Here is what I can grab from the bottom of the stderr stream: (look at the very bottom stuff, wtf is that?)


INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_54.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_55.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_56.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_57.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_58.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_59.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_6.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_60.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_61.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_62.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_63.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_64.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_65.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_66.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_67.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_68.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_69.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_7.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_70.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_71.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_72.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_73.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_74.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_75.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_76.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_77.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_78.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_79.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_8.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_80.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_81.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_82.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_83.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_84.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_85.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_86.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_87.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_88.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_89.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_9.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_90.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_91.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_92.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_93.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_94.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_95.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_96.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_97.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_98.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template oneshot_scroll
records/omega/items/crafting/consumables/transfer/omega_proof_99.dbr
INPUT 2 has FileDescription,Omega Proof scroll to level up,
MISSING FIELD TYPE INFORMATION FOR maxStackSize from template questitem records/
omega/items/crafting/materia/om_reagent_nemesis.dbr
INPUT 20 has maxStackSize,9000,
MISSING FIELD TYPE INFORMATION FOR offensiveDamageMultModifier from template jew
elry_ring records/omega/items/gearaccessories/cheater_ring.dbr
INPUT 197 has offensiveDamageMultModifier,1000.000000,
MISSING FIELD TYPE INFORMATION FOR augmentAllLevel from template armor_waist rec
ords/omega/items/gearaccessories/waist/om_bossmi_waist.dbr
INPUT 7 has augmentAllLevel,1,
MISSING FIELD TYPE INFORMATION FOR augmentAllLevel from template armor_feet reco
rds/omega/items/gearfeet/om_bossmi_feet.dbr
INPUT 10 has augmentAllLevel,1,
MISSING FIELD TYPE INFORMATION FOR onAddToWorld from template armor_head records
/omega/items/gearhead/om_bossmi_head.dbr
INPUT 423 has onAddToWorld,omega.scripts.bossMIonAddToWorld,
MISSING FIELD TYPE INFORMATION FOR onAddToWorld from template weapon_mace record
s/omega/items/gearweapons/blunt1h/om_bossmi_blunt.dbr
INPUT 429 has onAddToWorld,omega.scripts.bossMIonAddToWorld,
MISSING FIELD TYPE INFORMATION FOR augmentAllLevel from template weaponarmor_shi
eld records/omega/items/gearweapons/shields/om_bossmi_shield.dbr
INPUT 7 has augmentAllLevel,1,
MISSING FIELD TYPE INFORMATION FOR augmentAllLevel from template weapon_sword re
cords/omega/items/gearweapons/swords1h/om_katana.dbr
INPUT 7 has augmentAllLevel,1,
MISSING FIELD TYPE INFORMATION FOR augmentAllLevel from template weapon_sword re
cords/omega/items/gearweapons/swords1h/om_sacredsword.dbr
INPUT 7 has augmentAllLevel,1,
MISSING FIELD TYPE INFORMATION FOR areaOffsetX from template oneshot_potionmana
records/omega/items/misc/potions/omega_potion_attribute.dbr
INPUT 5 has areaOffsetX,0,
MISSING FIELD TYPE INFORMATION FOR areaOffsetX from template oneshot_potionmana
records/omega/items/misc/potions/omega_potion_experience.dbr
INPUT 5 has areaOffsetX,0,
MISSING FIELD TYPE INFORMATION FOR characterBaseAttackSpeedTag from template ite
menchantment records/omega/items/questitems/omega_essence_legendary.dbr
INPUT 15 has characterBaseAttackSpeedTag,CharacterAttackSpeedAverage,
MISSING FIELD TYPE INFORMATION FOR maxStackSize from template questitem records/
omega/items/questitems/omega_orb.dbr
INPUT 20 has maxStackSize,9000,
MISSING FIELD TYPE INFORMATION FOR maxStackSize from template questitem records/
omega/items/questitems/omega_potion_empty.dbr
INPUT 20 has maxStackSize,9000,
MISSING FIELD TYPE INFORMATION FOR characterBaseAttackSpeedTag from template ite
menchantment records/omega/items/questitems/omega_soul_boss.dbr
INPUT 15 has characterBaseAttackSpeedTag,CharacterAttackSpeedAverage,
MISSING FIELD TYPE INFORMATION FOR characterBaseAttackSpeedTag from template ite
menchantment records/omega/items/questitems/omega_soul_heroes.dbr
INPUT 15 has characterBaseAttackSpeedTag,CharacterAttackSpeedAverage,
MISSING FIELD TYPE INFORMATION FOR projectileFragmentsLaunchNumberMax from templ
ate skill_attackprojectileorbiting records/omega/skills/itemskills/legendary/om_
hammer.dbr
INPUT 264 has projectileFragmentsLaunchNumberMax,2,
MISSING FIELD TYPE INFORMATION FOR conversionPercentage from template skillbuff_
debuf records/omega/skills/itemskills/legendary/om_item_icechillaura_buff.dbr
INPUT 54 has conversionPercentage,20.000000,
MISSING FIELD TYPE INFORMATION FOR offensiveAetherChance from template skill_buf
fattackradiuslightning records/omega/skills/itemskills/legendary/om_item_lightni
ngaura.dbr
INPUT 187 has offensiveAetherChance,0.000000,
MISSING FIELD TYPE INFORMATION FOR Axe2h from template skill_attackradiuslightni
ng records/omega/skills/itemskills/legendary/om_item_lightningstrike.dbr
INPUT 2 has Axe2h,0,
MISSING FIELD TYPE INFORMATION FOR offensiveDamageMultModifier from template ski
ll_attackradius records/omega/skills/itemskills/legendary/om_nova.dbr
INPUT 34 has offensiveDamageMultModifier,-50.000000,
MISSING FIELD TYPE INFORMATION FOR offensiveDamageMultModifier from template ski
ll_attackprojectileburst records/omega/skills/itemskills/legendary/om_phantombla
de.dbr
INPUT 70 has offensiveDamageMultModifier,-50.000000,
MISSING FIELD TYPE INFORMATION FOR Axe2h from template skill_attackspellteleport
self records/omega/skills/itemskills/legendary/om_teleport.dbr
INPUT 2 has Axe2h,0,
MISSING FIELD TYPE INFORMATION FOR weaponDamagePct from template skillsecondary_
forklightning records/omega/skills/itemskills/legendary/om_vindictiveflame2.dbr
INPUT 274 has weaponDamagePct,100.000000,
MISSING FIELD TYPE INFORMATION FOR lootMisc1Item1 from template pet records/omeg
a/skills/itemskills/pets/om_itempet_willowisp.dbr
INPUT 358 has lootMisc1Item1,records/items/loottables/mastertables/mt_comp_rare_
a01.dbr,
MISSING FIELD TYPE INFORMATION FOR offensiveLifeLeechMin from template skill_att
ackprojectileorbiting records/omega/skills/nonplayerskills/bossskills/nemesis/om
_guard_hammer.dbr
INPUT 62 has offensiveLifeLeechMin,5.000000,
MISSING FIELD TYPE INFORMATION FOR offensiveLifeLeechMin from template skill_att
ackprojectileorbiting records/omega/skills/nonplayerskills/bossskills/nemesis/om
_guard_hammer_0.dbr
INPUT 62 has offensiveLifeLeechMin,5.000000,
MISSING FIELD TYPE INFORMATION FOR offensiveLifeLeechMin from template skill_att
ackprojectileorbiting records/omega/skills/nonplayerskills/bossskills/nemesis/om
_guard_hammer_2.dbr
INPUT 60 has offensiveLifeLeechMin,10.000000,
MISSING FIELD TYPE INFORMATION FOR autoCastController from template skill_attack
projectiledrop records/omega/skills/nonplayerskills/enemies/om_meteor_cast_curse
.dbr
INPUT 10 has autoCastController,records/controllers/itemskills/cast_@selfonattac
k_100%.dbr,
MISSING FIELD TYPE INFORMATION FOR offensiveTotalDamageReductionAbsoluteDuration
Min from template skill_attackprojectileareaeffect records/omega/skills/nonplaye
rskills/enemies/om_ombosscurse.dbr
INPUT 251 has offensiveTotalDamageReductionAbsoluteDurationMin,1.000000,
MISSING FIELD TYPE INFORMATION FOR dualRangedOrRanged2hOnly from template skill_
attackradius records/omega/skills/nonplayerskills/enemies/om_sparkeffect.dbr
INPUT 20 has dualRangedOrRanged2hOnly,0,
MISSING FIELD TYPE INFORMATION FOR offensiveTotalResistanceReductionAbsoluteDura
tionMax from template skillbuff_passive records/omega/skills/nonplayerskills/que
stskills/om_absreduc1_buff.dbr
INPUT 463 has offensiveTotalResistanceReductionAbsoluteDurationMax,4.000000,
MISSING FIELD TYPE INFORMATION FOR defensiveAllMaxResist from template skillbuff
_passive records/omega/skills/nonplayerskills/questskills/om_maxresist1_buff.dbr

INPUT 60 has defensiveAllMaxResist,5.000000,
MISSING FIELD TYPE INFORMATION FOR skillProjectileSpeedModifier from template sk
illbuff_passive records/omega/skills/nonplayerskills/questskills/projspeed/om_pr
ojspeed1_buff.dbr
INPUT 727 has skillProjectileSpeedModifier,10.000000,
MISSING FIELD TYPE INFORMATION FOR skillProjectileSpeedModifier from template sk
illbuff_passive records/omega/skills/nonplayerskills/questskills/projspeed/om_pr
ojspeed2_buff.dbr
INPUT 727 has skillProjectileSpeedModifier,20.000000,
MISSING FIELD TYPE INFORMATION FOR skillProjectileSpeedModifier from template sk
illbuff_passive records/omega/skills/nonplayerskills/questskills/projspeed/om_pr
ojspeed3_buff.dbr
INPUT 727 has skillProjectileSpeedModifier,40.000000,
MISSING FIELD TYPE INFORMATION FOR skillProjectileSpeedModifier from template sk
illbuff_passive records/omega/skills/nonplayerskills/questskills/projspeed/om_pr
ojspeed4_buff.dbr
INPUT 727 has skillProjectileSpeedModifier,40.000000,
MISSING FIELD TYPE INFORMATION FOR skillProjectileSpeedModifier from template sk
illbuff_passive records/omega/skills/nonplayerskills/questskills/projspeed/om_pr
ojspeed5_buff.dbr
INPUT 727 has skillProjectileSpeedModifier,50.000000,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template inventorygrid r
ecords/ui/caravan/caravan_stashinventory.dbr
INPUT 1 has FileDescription,ButtonStaticText β•βΏβ”΄β•¦β•©β•Ÿβ–“β•“β”Ξ“β•‘β”€β•”β•’β•¬β•—β•“β”œ ^;^,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template caravanwindowpr
ivate records/ui/caravan/caravan_stashwindow.dbr
INPUT 3 has FileDescription,ButtonStaticText β••Γ·β•šβ•¦β–“β•“β”Ξ“β”β•’β•Ξ£β•¬β•—β•“β”œ,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template inventorygrid r
ecords/ui/caravan/caravan_transferinventory.dbr
INPUT 1 has FileDescription,ButtonStaticText β•£β–“β•§Ο†β–“β•“β”Ξ“β”β•’β•Ξ£β•¬β•—β•“β”œ,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template caravanwindowpu
blic records/ui/caravan/caravan_transferwindow.dbr
INPUT 1 has FileDescription,ButtonStaticText ╣▓╧φ▓╓┐Γ╗╗β•₯β”‚β–‘β”€β”ΌΓ‘β•¬β•—β•“β”œ,
MISSING FIELD TYPE INFORMATION FOR FileDescription from template caravanwindow r
ecords/ui/caravan/caravan_window.dbr
INPUT 6 has FileDescription,ButtonStaticText β–“β•“β”Ξ“β•’βˆšβ• Οƒβ•¬β•—β•“β”œ,
COMPILE dga to output arz: dga.arz
C:\Users\jiaco\Documents	estArzBaller>

ignore the stuff about my mod and the core source, since its the same crash with the grimmest source
I copied the 2 folders from the first version over and edited the batch:

arzBaller.exe grimmest/database/Grimmest.arz testGrimmestExtract
works

arzBaller.exe testGrimmestExtract testGrimmest.arz
works

arzBaller.exe GrimmestSource testGrimmest.arz
crashes

from the stasher mod, so Im guessing chinese :smiley:

Great, I will have to handle that too then.

what happens with the last command if you remove the resources folder first?

well, I can remove the descriptions. It wont change it for everyone else, but you dont have to worry about that on my behalf :smiley:

and Im not using custom templates, its just the core ones. But it looks a lot like it crashes for empty fields.
Both were sound fields, Im gonna check their values.
Edit: yeah empty, but nothing special about it.

what happens with the last command if you remove the resources folder first?

same crash

When I stopped parsing the path using /records/ to find the record names, I switched to using the base path given to the program in argument #1. I assume that if the first argument is not able to be trimmed off the absolute path to the dbr (text) to get the record name, then it crashes. Will look into another way to do this.

For the templates issue, I could not bring myself to parse the .tpl files. First of all, they look like ASN.1 format and second of all, I am not sure how to obtain the templates for the dlc. (Well, in writing this, I have an idea, but whatever, see point #1 ASN.1 == not fun to parse).

So I make this object:
QMap<QString,QMap<QString,quint16>> templates;
By parsing all records in database.arz and SurvivorMode.dlc to get the field type for each field name with the outer QMap getting keyed by the templateName field. So any record using a field defined in the template (.tpl) but never used in the game, is not in the BSO stored inside arzBaller.exe. (BSO:binary serialized object, meaning this index (double-QMap) is made by me and then baked into the exe).

Since you say you did not use new templates, and I am not getting these errors with other files, then I guess you used fields defined in the template but never used in the game files.

I can either use my old code that tries to guess the field type, parse all the mod arzs when I build my double-QMap or just suck it up and parse the .tpl files…

Going to think on this for a bit. So ideas/opinions are welcome.

I will also figure out how to blindly pass on blobs of non-ascii text as well, I am using toUtf8() but I have no idea if Chinese and other languages are Utf8 or what. I was perfectly happy with 7bit ascii, but I guess it is not up to me.

Off topic, I just learned today that in French, an adult cat can be masculine or feminine and all baby cats (kittens) are masculine.

does that mean there is no word for a female cat baby?

in topic, I extracted the SurvivalMode.arz, edited records/game/gameengine.dbr

experienceEquation,155+(monsterLevel*5),

this is the only edit I made.
I repacked it, and I still gain only 0 exp. On previous versions, I could gain exp. When I unpack this arz, I still get the formula with the β€œ155+”, so its packed, somehow.

other changes I made in the arz(I only tried radical stuff like completely renaming folders and breaking links), seem to work

arz: https://a.uguu.se/vuytdT3LAbUH_SurvivalMode.arz

I will be trying stuff like changing file encodings, restarting my computer etc. maybe somewhere the game caches something.

edit: I tried changing skills and such. they work. this is unique to the experienceEquation. odd.

oh we can rate threads but only on newposts ._.
now it has a 5 rating, aww yiss.

its also your mod :slight_smile: Im gonna type down the error since you cant see the pic

MISSING FIELD TYPE INFORMATION FOR petAttackSound from template monster
database/records/creatures/enemies/grimmest_heros/zombie_h11.dbr
INPUT 24 has petAttackSound,,

and than the same for …/zombie_h12.dbr

sometimes it gets this one more output done before it crashes

MISSING FIELD TYPE INFORMATION FOR ActorName from template gameadjustment 
database/records/game/balancingadjustment_challengemode_enemies01.dbr
INPUT 1 has ActorName,,

again, only your mod source trying to pack now. I think we can worry about the wall of errors on mine later.
I just find it odd its fine extracting the arz and packing the resulting source works fine (smaller arz but it does it), but using the source you made via assetmanager or editor crashes :smiley:

and thats why Im using the grimmest source right now, you know how you did it - hopefully :slight_smile:

Yeah, my mod, ha ha ha…I knew this was going to be a pain in the ass, but I am going to try to finish it before my vacations are over, cause doing this after work (instead of mindlessly killing stuff) will be even more painful.

Thanks for the reports. I think I know what I need to do next. There are various issues, but each of them have a solution.

Well, I need help testing this again…and some ideas on how to handle stuff.

First off, here is v0.5

  • now handles guessing at field types and FileDescription should be passing through, I checked and missing values is still a bit of a mystery. I am really not sure how the dev’s toolset writes nothing, or what it writes to represent nothing.

Source v0.5


Binary

And as a quick test I used v0.5 to compile the dga sources I had extracted with v0.4 and it seems to work:

In any case, my Guess code does not have a chance in hell to correctly identify a boolean type. They will be β€œconverted” to int, which should break in game. so for now, all fields that are guessed are output to stderr. I will implement a log file soon. But I would really like to find a better way to deal with this. (See Field.cpp for the GuessFieldType function)

In addition, if I cannot use /records/ to snarf the record name from the file path, then I have to use argument #1 as a base path, I am not able to figure out how else to do it. So for me I have a folder called dga next to arzBaller.exe (inside dga are two subfolders: mod_wanez and records) and call:


arzBaller.exe dga_beta/beta_Wanez/database/beta_Wanez.arz dga
arzBaller.exe dga beta_Wanez.arz

then move the new beta_Wanez.arz to replace the origin and ran around the map and took the above screen.

Is the one I posted fixed, that is the experienceEquation thing?
I also found a bug with a buff aura failing to be applied. But the causes may be the same. Do you know the cause, or should I post the full details?

I could not make headway on the XP issue as the field seems to be there on pack and unpack/repack…Combined with the fact that this was not available for modding in CustomMaps upon release of the toolkit, makes me wonder if it is not the game, just ignoring the modification of this field.

Point me to the aura record in question and I will look at that.

well, 0.3 worked, and BULLHÆD did it with asset manager as well. but BULLHÆD also had faction bugs iirc, so its possible his mod, too, was corrupt.

I send you more details on the aura bug on steam.