4 Screenshots

About This File


These aren't free gifts, you've gotta work for them!

A 24 slot backpack you can build from your cave spoils! Get Spelunking!

20 Broken Shells

20 Slurtle Slime

1 Snurtle Shell Armor


To install this mod:

Double-click downloaded ZIP file and DRAG enclosed directory into your dontstarve/mods directory.

Start game and enable mod on the mods screen.

Discuss >>

What's New in Version 1.5   See changelog


  • Fixed the white border bug...

User Feedback

Recommended Comments

Still works in nightmares, however there is a white border around the images, and the game closes when you quit a world. Not a big  deal, so If you're not worried about some minor things, you can still use this mod in the latest version.

Share this comment

Link to comment
Share on other sites

I noticed it doesn't count as a bag anymore for some reason? it takes up a armor slot despite the extra bag slot.....it also isn't able to be picked up only equiped

Share this comment

Link to comment
Share on other sites

Can we hope a RPG HUD patch/compatibility?

It's nearly the problem reported by kurobara...


I'll try to play with pririty setting but without real hope :(

Here's a way to make CaveBag RPG HUD Compatible:

Edit "..\DontStarve\mods\Caves Bag\scripts\prefabs\caves_bag.lua"

Replace line 68 to line 78 by this

Then, you will certainly need to edit the end of the line 85, to properly display the contener grid:

Report to @Skrzelik spoiler further.

	inst.components.inventoryitem.cangoincontainer = true	inst.components.inventoryitem.foleysound = "dontstarve/movement/foley/backpack"	    inst:AddComponent("equippable")	--Add support for RPG HUD by Kiopho	if EQUIPSLOTS["PACK"] then		inst.components.equippable.equipslot = EQUIPSLOTS.PACK	else		inst.components.equippable.equipslot = EQUIPSLOTS.BODY	end	-- / Add support for RPG HUD by Kiopho


.....it also isn't able to be picked up only equiped

Let's try this:

Edit "..\DontStarve\mods\Caves Bag\scripts\prefabs\caves_bag.lua"




    inst.components.inventoryitem.cangoincontainer = false
    inst.components.inventoryitem.cangoincontainer = true


it's buggy beacuse you can't see half of the bag inventory (game just don't show it it's cut)

   Let's try this:

Edit "..\DontStarve\mods\Caves Bag\scripts\prefabs\caves_bag.lua"

Play with the first number into brackets:

I'm using RPG HUD (Default 55 slots) in 1680*1050 with a HUD Size in option/setting menu. When I replace 625 by 581, it's fitting like a charm. Good tip helps to wait after an update.

	inst.components.container.widgetpos = Vector3(625,-75,0)

Share this comment

Link to comment
Share on other sites

I modified the caves_bag.lua to make this mod working again, replace the content of the caves_bag.lua with the following:


print("Loading Caves Bag Prefab...")

local function OnEquip(inst, owner)
    owner.AnimState:OverrideSymbol("swap_body", "swap_cavepac_sack", "backpack")
    owner.AnimState:OverrideSymbol("swap_body", "swap_cavepac_sack", "swap_body")

local function OnUnequip(inst, owner)

local function OnOpen(inst)
    inst.SoundEmitter:PlaySound("dontstarve/wilson/backpack_open", "open")

local function OnClose(inst)
    inst.SoundEmitter:PlaySound("dontstarve/wilson/backpack_close", "open")

local slotpos = {}
for y = 0, 7 do

    table.insert(slotpos, Vector3(3  -75, -y*75 + 265, 0))    --New 3rd col
    table.insert(slotpos, Vector3(3     , -y*75 + 265 ,0))    --2nd col
    table.insert(slotpos, Vector3(3  +75, -y*75 + 265 ,0))    --1st col at screen edge

local function fn(Sim)

    local inst = CreateEntity()


    inst.components.inventoryitem.imagename = "caves_bag"
    inst.components.inventoryitem.atlasname = "images/inventoryimages/caves_bag.xml"
    inst.components.inventoryitem.cangoincontainer = true
    inst.components.inventoryitem.foleysound = "dontstarve/movement/foley/backpack"
    if EQUIPSLOTS["PACK"] then
        inst.components.equippable.equipslot = EQUIPSLOTS.PACK
        inst.components.equippable.equipslot = EQUIPSLOTS.BODY
    inst.components.equippable:SetOnEquip( OnEquip )
    inst.components.equippable:SetOnUnequip( OnUnequip )
    inst.components.container.widgetslotpos = slotpos
    inst.components.container.widgetpos = Vector3(-90,-50,0)
    inst.components.container.widgetanimbank = "ui_backpack_2x4"
    inst.components.container.widgetanimbuild = "ui_backpack_2x4"
    inst.components.container.widgetbgimage = "ui_caves_bag_7x3.tex"
    inst.components.container.widgetbgatlas = "images/inventoryimages/ui_caves_bag_7x3.xml"
    inst.components.container.widgetbgimagepos = Vector3(-65, -185, 0)
    inst.components.container.onopenfn = OnOpen
    inst.components.container.onclosefn = OnClose
    inst.components.container.side_widget = true
    inst.components.container.type = "pack"
    return inst

return Prefab( "common/inventory/caves_bag", fn, assets)

  • Like 1

Share this comment

Link to comment
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