Sei Bellissima

Grifting through the files (aka Datamining)

Recommended Posts

Sei Bellissima    737
22 minutes ago, Instant-Noodles said:
Spoiler

 Hadn't noticed this thread til now, but I actually wrote basic converters (tex to png & bin files to scml) for Griftlands back when the game first launched on Steam.  If someone from Klei can clarify whether it's fine to post converters for the game, I'd be willing to share them.

Unlike other Klei games (like Don't Starve Together), Griftland animations are a tad different in that most characters have their individual sections (head, body, hands, etc.) split up into separate files.  So, for most characters, multiple anim.bin and build.bin files would need to be merged (this is what the game engine does) to construct a full character; otherwise, you'll end up with zombie-like animation that lack certain body parts.  

The anim.bin files also differ in that most consist of: (a) animations that rapidly cycle through the frames for a compiled body part (left eye, right eye, etc.) of a section (head, body, etc.), and (b) one or more "complete" animations for that section, but these reference multiple partial animations from (a).  So, most animations are just a slideshow for all the poses of an individual body part and "complete" animations aren't fully represented in a single Spriter file (see example below).  

For example, if we look at the lrg_shroog_build anim.bin file.  There are 4 animations within this file: character, head_swap, back, and eye.

  Reveal hidden contents

lrg_shroog_build-character.thumb.gif.5319ed7b982979346858cd4abdeafcd5.gif lrg_shroog_build-head_swap.thumb.gif.6caf2bfb585784ee6bfd7f7434cc4d5d.gif lrg_shroog_build-back.thumb.gif.24f05b2d5ccec922cacbf0ad1ec4a0cc.gif lrg_shroog_build-eye.gif.797751bc8ec79320f527e32b956acc12.gif

As you can probably tell, the "character" animation is incomplete because it actually references partial animations from head_swap, back, and eye. But, unfortunately, this isn't something that Spriter can natively do.  Not to mention that Spriter also doesn't support free-form deformations, so not all animations will be accurately representable.

And, here is a similar incomplete example with the "character" animation from med_sal_build (Sal's body):

  Reveal hidden contents

med_sal_build-character.thumb.gif.628f03585275e469ce6bb453b48e9cb3.gif 

And a more "completed" version that includes the partial animations from med_sal_build - arm, neck, collar

med_sal_build-character-with-references.thumb.gif.b7f83d94eb2fb7c897de6dfb6b9888b2.gif

Since this is a data-mining thread, here are some additional animations (including boss_oolo_slide that was mentioned in the above posts):

  Reveal hidden contents

birds_across

bird_across-birds.gif.0b9d15926ec3e00147f4d8e0d3b315ef.gif

boss_oolo_slide

boss_oolo_slide-pre-character.thumb.gif.ffac6d993d2ea594f72dfd957fbadee0.gif boss_oolo_slide-idle-character.gif.4200a72c00f5c1a406b6c65bffa8238f.gif

logo_text_anim

logo_text_anim-fx.gif.2f09e611b5322fac5d58d08ceac24460.gif

lumin_rat

lumin_rat-idle.gif.357e4378079789198fbb6edddc616a21.gif lumin_rat-run.gif.7964ad643e59a41766b0440dac57e8ca.gif lumin_rat-head.gif.900d00b3aeb445900f75db950c6bd804.gif

med_flead_larvae

med_flead_larvae-character.gif.8c84278382ca35e7deedd93581f481c2.gif med_flead_larvae-egg_sac2.gif.b2d5cca502a948f4eaafdbe5f4c61207.gif med_flead_larvae-head.gif.1acc4b9642b1dcb31a1cada88c1414a2.gif

world_campfire

world_campfire.gif.24d467a1047a7339c3455f09e282d707.gif

 

 

 

Holy Hesh you're a hero, thank you

22 minutes ago, Instant-Noodles said:

If someone from Klei can clarify whether it's fine to post converters for the game, I'd be willing to share them.

I've seen the tools used for Don't Starve and ONI animations posted here before so it should be fine, I think. I don't know if I'll ever use them myself but I'm sure it would be appreciated. (I'm mostly curious as to how the files work so I'd love to see how you cracked them open LOL)

Also, I had this downloaded when I was a game ripping newb and I didn't really know what I was doing—anyone heard of Dragonbones? Very similar program, a little newer than Spriter, I think. I wonder if it would be able to handle the different animation files all at once.

  • Like 2

Share this post


Link to post
Share on other sites
Sei Bellissima    737
9 hours ago, SpicyNiceCream said:

Bossbit didn't get a pre-battle slide, did it?

If it did, I don't see it anywhere. It's not even defined in the code. (I could just go into a Rook run and check but I don't have the time at the moment lol)

Anyway, new stuff, new stuff!

A preview of the Grifts system (from grift_defs.lua):

Spoiler

-- Grifts are achievement-style milestones that bestow Perk Points when completed.

And here are the current milestones:


"Win 10 Battles"
"Win 50 Battles"
"Win 250 Battles"
"Win 10 Negotiations"
"Win 50 Negotiations"
"Win 250 Negotiations"
"Install 10 Grafts"
"Install 100 Grafts"
"Beat Sparky"
"Beat Jeol"
"Upgrade 5 cards"
"Upgrade 25 cards"
"Upgrade 100 cards"
"Upgrade 300 cards"
"Deal 500 damage"
"Deal 1000 damage"
"Deal 250 resolve damage"
"Deal 750 resolve damage"

 

It looks like it's related to the new graft type. Speaking of that, here's what they do (from perk_grafts.lua):

Spoiler

        name = "Benefits",
        desc = "At the start of the game, 1 random person will love you.",

        name = "Researcher",
        desc = "Gain 10 shills every time you use an Item card.",
        
        name = "Premium Quality",
        desc = "The first graft you install is immediately upgraded.",
        
        name = "Innate Connection",
        desc = "New pets are immediately trained.",
        
        name = "Good Health",
        desc = "Gain 6 maximum Health.",
        
        name = "Resolute",
        desc = "Gain 4 maximum Resolve.",
        
        name = "Handy",
        desc = "All items have 1 additional use.",
        
        name = "Stamina",
        desc = "Fatigued starts 1 turn later than normal.",
        
        name = "Perfect Shape",
        desc = "Gain 1 {POWER} at the start of each battle.",
        
        name = "Tough Constitution",
        desc = "Once per day, drink and eat without any repercussions.",
        
        name = "Animal Bond",
        desc = "Eating food also restores the health of your pet.",
        
        name = "Benefits II",
        desc = "At the start of the game, 2 random person will love you.",
        
        name = "Good Health II",
        desc = "Gain 9 maximum Health.",
        
        name = "Resolute II",
        desc = "Gain 6 maximum Resolve.",
        
        name = "Basic Training",
        desc = "The max XP on both your basic decks is halved.",

        name = "Alert",
        desc = "Draw an additional card at the start of every turn.",

        name = "Ancient Warrior",
        desc = "The first 2 cards you draft in each deck are instantly upgraded.",

        name = "Unencumbered",
        desc = "Gain 1 additional graft slot of each type.",

        name = "Charming",
        desc = "At the start of each day, a random person that likes you will love you instead.",

        name = "Benefits III",
        desc = "At the start of the game, 3 random person will love you.",
        
        name = "Stamina II",
        desc = "Fatigued starts 2 turn later than normal.",
        
        name = "Good Health III",
        desc = "Gain 12 maximum Health.",
        
        name = "Resolute III",
        desc = "Gain 8 maximum Resolve.",
        
        name = "Fast Learner",
        desc = "Lower the max XP of all non-basic cards by 2.",
        
        name = "Animal Handling",
        desc = "You can own 1 additional pet.",
        
        name = "Survivalist",
        desc = "After each battle, heal 4 health.",
        
        name = "Socializer",
        desc = "Gain 1 maximum resolve whenever a new person loves you.",
        
        name = "Gourmet",
        desc = "Eating heals 8 bonus health and drinking restores 6 extra resolve.",
        
        name = "Forgiveness",
        desc = "At the start of each day, a random person that hates you will dislike you instead.",
        
        name = "Perseverance",
        desc = "When you would die, instead heal to 20 health. Only works once.",
        
    --     name = "Wildlife Expert",
    --     desc = "At the start of the game, choose a pet.", (this one's commented out, which means it's not active at the moment)
    
        name = "Terror",
        desc = "Whenever you kill an enemy, increase the {SURRENDER} of all their allies.",
        
        name = "Partner In Crime",
        desc = "Once per day, you can hire someone who loves you to help you on a quest.",
        
        name = "Expanded Assortment",
        desc = "Graft drafts have 1 additional option.",

 

holy hesh I can't wait to try these out. Also I guess I have an excuse to add the functionality to export the graft icons to my script, so let me go do that...

  • Thanks 3

Share this post


Link to post
Share on other sites
pacovf    890

Some of those effects are really powerful. I don’t know how I feel about the rogue-legacy mechanics though. It’s not like the game is so hard you need extra help to finish it.

Share this post


Link to post
Share on other sites
watermelen671    19302
11 hours ago, Instant-Noodles said:

If someone from Klei can clarify whether it's fine to post converters for the game, I'd be willing to share them.

I don't think it'd be a problem, seeing as there's no precedent for them not being okay with people posting how to rummage through their files (aside from DST's .dyn files for rather obvious reasons).

Let us perform a summoning ritual just in case! *Places Potato Cups on Altar*

O Great and Powerful @nome! Grant us an audience! :wilson_ecstatic:

Spoiler

and also maybe @Kevin :wilson_love:

 

  • Haha 2

Share this post


Link to post
Share on other sites
ZeppMan217    253
1 hour ago, pacovf said:

Some of those effects are really powerful. I don’t know how I feel about the rogue-legacy mechanics though. It’s not like the game is so hard you need extra help to finish it.

Are you forgetting about Prestige and Mutators?

Share this post


Link to post
Share on other sites
pacovf    890

Not forgetting about Prestige. Even at Prestige 15, it’s just not a very hard game. Mutators can make the game arbitrarily hard, sure, but then it’s about the player deciding how much harder (or easier) they want the game to be for them to have fun. Arguing that extra advantages for the player are necessary to handle nightmare mutator combinations just doesn’t make sense. The only reason someone would put themselves through that it’s precisely because it’s super hard. So it defeats the purpose.

Share this post


Link to post
Share on other sites
Collecter    20

Hello,Sei !

I'm a DST modder (You know,a Don't Starve Together modder),and I'm obsessed with GriftLand's SFX,animation and its music.

Maybe it sounds too greed,but I do want EVERY unpacked game animation and sound data of this game.I mean,just think how much favor they will do to me in my DST mod designing,only if I can get them !

And I try to unpack game's  TEX files with DST TEX Tool,however,I failed.

I hear that you have unpacked some of the game resources(maybe all of them ?).So........would you mind to help me,and give me a zip of the unpacked game resources ?

Thanks a lot !

Share this post


Link to post
Share on other sites
Collecter    20

Ah,thanks to your tool,I can finally unpack these game resources.:wilson_love:

But here comes another question ---------- I find no tool to unpack sound files (.bank files)......:wilson_dead:

Share this post


Link to post
Share on other sites
Sei Bellissima    737
10 hours ago, Instant-Noodles said:

snip

Works like a charm, thank you so much :D Extracted all the new perk icons with the tex converter just now:

Spoiler

perk_alert.png.3cbb8a768706a36fe8d4b6006efaaeb7.pngperk_ancient_warrior.png.7315137c51ad31bd2ed95ea6c3c15cb4.pngperk_animal_bond.png.484676d22458bbcd60e0a58e75c1cb30.pngperk_animal_handler.png.ebf36cbc7ceaf9b8f32a2ab9a7c06bbb.pngperk_basic_training.png.9d94c598ce26d4ddb8231618d4bd6e8c.pngperk_benefits_01.png.a4669e9531edd7db5437c8175309009d.pngperk_benefits_02.png.68df52b8eb20b63f65ffe8a8b0a969dc.pngperk_benefits_03.png.029066b542c681f00d1f84b4e63c1534.pngperk_charming.png.db9f8a0fd64fc8c36b542cd22b23640f.pngperk_expanded_assortment.png.29ff15a474c21ae7fc09adb3fbe2daad.pngperk_fast_learner.png.1b63267685fa6db01426968d2c55f9eb.pngperk_forgiveness.png.ac338c22724d2f12ec6b0543b71da3dd.pngperk_good_health_01.png.3e64396d3283d1273985c18c75ce1513.pngperk_good_health_02.png.9f93166bbd6090d535c93b755d10f278.pngperk_good_health_03.png.363ae7864e2ff331801cba0809bcca1c.pngperk_gourmet.png.49ad8f8d0d13dca095ff5b60545a8504.pngperk_handy.png.35a1381202f8b3359ecc975493ecb9b9.pngperk_innate_connection.png.299346c256dbab031504d7292a5e067d.pngperk_partner_in_crime.png.ba9b3f5332337074b5d7715703ff9f2a.pngperk_perfect_shape.png.d5dbcdcfcdb39f45a72d3f50ab6aea69.pngperk_perseverance.png.16994992b2c7973eeaf6d50dc860aa62.pngperk_premium_quality.png.ccb117874eefabb8a5f4300866784327.pngperk_researcher.png.07e496a045cf93a0ce134a8d5a235a4d.pngperk_resolute_01.png.918602282b462bc1da14a1f111fd91ba.pngperk_resolute_02.png.8a7831b38d927025dbf7f0a68044aa3a.pngperk_resolute_03.png.af4601f83c96c16140a2b2be20191ad5.pngperk_socializer.png.14c18a1c1e3b4d35088b89df61645439.pngperk_stamina_01.png.8b294c7de016739cdd54c279f1ff9eb2.pngperk_stamina_02.png.9b7cd1458b6113ceb54d1e8bfdce87a4.pngperk_stamina_03.png.7760557abbd7a81840f3f99e9a3d39dd.pngperk_survivalist.png.7175a43076fb4ac84ea5a4577a4e786b.pngperk_terror.png.ec772d3141abd9dc81c46c71ff434c16.pngperk_unencumbered.png.739784d660916962d854f2cf9ee321e6.pngperk_wildlife_expert.png.7bba2b834313fc3e4c49766a813904ed.png

Haven't tried the animation converter but I'm not gonna make them anyway out of fear of my laptop exploding lol

  • Like 3
  • Thanks 1

Share this post


Link to post
Share on other sites
watermelen671    19302
1 hour ago, Sei Bellissima said:

Haven't tried the animation converter but I'm not gonna make them anyway out of fear of my laptop exploding lol

I gatchu fam. :wilson_goodjob:

Currently batch extracting the files as we speak.

soyousay.png.05776c9f722aafebc2f89783d17baccd.png

  • Thanks 3

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now