Satchel // Open-source modern backpack system

You could. No guarantees as I’ve never tried it before but let me know how it goes.

Ah it works normal. Btw for Search Box Placeholder, if I use TextStrokeTransparency = 1, the placeholder doesn’t work, do you know why?

EDIT: nevermind, in the searchBox.TextTransparency it also uses TEXT_STROKE_TRANSPARENCY

1 Like

This seems like a bug. TextTransparency shouldn’t be binded to TextStrokeTransparency. I’ll look into a fix it later, seems like a simple fix.

Haven’t found a fix yet, but I believe it is an issue with Satchel, our game Neighbors has been having the issue where clicking on a number (1-0) on the keyboard to equip a tool sometimes does not work unless a player types something into the roblox chat or rejoins the game.

Note:
Clicking on a tool in the hotbar with your mouse works while it doesn’t with the keys.

I believe this might be an issue with how Satchel handled dynamic inputs and it not initializing correctly for each platform.

Can you try this version of Satchel and seeing if that solves it?

Satchel-1.3.0-rc2.lua (68.5 KB)

Let me of any more issues you have or bugs.

I’ll implement this version but I can’t tell you for certain if it will fix it until we get player feedback since it is an uncommon occurrence

I love this a lot and I actually got it. I just have one question, is there a way you can make a limited inventory. What I mean is, normally the inventory slots are 9 which is default, but I want it to be 5 instead of 9 in my Roblox game. Do you know how I can do that?

I think it’s in this part

– Hotbar slots
local HOTBAR_SLOTS_FULL: number = 10 – 10 is the max
local HOTBAR_SLOTS_VR: number = 6
local HOTBAR_SLOTS_MINI: number = 6 – Mobile gets 6 slots instead of default 3 it had before

Hello,

Will there every be the feature to limit the total number tools the user can have?

Meaning if the slots is set to 6, they only get 6 tools and it does not overflow into the top search area, whatever that upper box is called where you can have lots of tools that do not show up in the hotbar.

I think even if you limit the slots number, like to 6, the 7 one will still over flow into the other area…

If it cannot be done, how could it be done via another method?

Thanks

Also where are we supposed to get the most current version of a .rbxl or model, or editable play? The marketplace has a date of Nov 17, 2023, … the playground date is 1/27/2023… the github is a few weeks ago…

thanks

No, since I would need Satchel to constantly monitor the player’s backpack and remove whenever this is over six tools parented. And handling whether if the player picks another to up to discard it or another tool is difficult.

I do plan to be able to disable opening the inventory though at some point so Satchel becomes hotbar only.

For now, just don’t assign the player more than the amount of tools you want it to have. This is the only way to make sure that the inventory cap is properly handled the way the developer wants it.

You could use the .rbxl file, GitHub, or from the Creator Store. The Playground may contain unstable builds so I suggest not using it.

You can refer to the documentation for more details on how to install.

Doing only this 'I do plan to be able to disable opening the inventory though at some point so Satchel becomes hotbar only. ’ the extra tool still go into the inventory , which then you can not get to. Correct?

Unless you are doing max slot bar checking and not picking up tools over the slot, which then means you need custom code to first check the slot total before picking them up… which also means they cannot have touchinterest on… or they automatically get picked up… I think from what I have see where the ` keybind is disabled… the tools still go there and cannot be used…

is there a way to get positions of hotbar items?

Internally the items will be in the inventory but not able to be accessed by the player.

The only surefire way to ensure that the player can’t use a tool is never assigning it to a player.

You probably could exploit the system to add or remove tools out of your inventory but most hot bar systems have the same problem. We can’t limit whether or not a player equips any tool parented to their backpack on the client.

The table SlotsByTool on line 207 has all the tools including which slot they are assigned if assigned at all.

1 Like

After further investigation, this still happens but is uncommon, pressing the hotkey to open the backpack still works, but the hotkeys for the tool slots are now unresponsive and will only work after I type something in the roblox chat and hit enter and then work again.

Hello, I’ve found a bug where the old toolbar is showing with the new one at the same time, could you suggest any solution please? (happens on both pc and mobile, but not every time)

Do any of your scripts call StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, true)? It seems like one of your scripts is enabling the default backpack.

Due to the nature of not being able to reproduce this issue I can’t say for sure whether I can properly locate the problem and resolve it in a typical manner.

On the keybindings branch of Satchel, I’ve made some changes to the selection logic which might solve it. Additionally, it will print the last keycode pressed. If you do encounter this issue again, can you let me know whether the keycodes are printing in the developer console and if they are the expected keycodes?

Another thing I am noticing is that sometime keycodes will be Enum.KeyCode.Unknown sometimes, which could be the case for you. I do not know why the keycode will become interpreted as unknown or the conditions to get this.

In summary this version:

  • Prints all detected keycodes
  • Rewrites slot selection logic
  • Rewrites textbox focused logic (we want to ignore any numbers the user presses when they are typing in a textbox)
  • Removes the older HotkeyStrings system
  • Fixes controller bindings

If you prefer your developer console not to be cluttered with prints of keycodes then you can just remove line 1085.

Satchel-1.3.0-keybindings.rbxm (44.9 KB)

1 Like

no, just double checked, only satchel comes up when looking for CoreGui calls

Wait no, I found something in the roblox weapon system… checking now

Ok, commented out that part in WeaponsSystem.onCharacterAdded(character)

Should probably help! (yeap, it was the issue, thank you!)

I ran a public test with this version, even though no issues were reported I won’t be able to confirm fully until time passes after we release a patch this weekend.