Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
9a0f37f
API changes for 1.17. Added local files to .gitignore and removed the…
antoinehu Sep 21, 2022
ed99d0a
Updated modinfo for unofficial release.
antoinehu Sep 23, 2022
c795bee
Changed trader's ticklistener from 10ms to 10s and fixed trader's foo…
antoinehu Sep 23, 2022
b8df639
Slightly improved checking for food and bed (WalkBlocks -> SearchBloc…
antoinehu Sep 24, 2022
fb742b1
Removed shield and caves from README. Added quench and welcome mat to…
antoinehu Sep 24, 2022
6744590
Fixed a problem with certain items not firing in the pit kiln.
antoinehu Oct 7, 2022
8b28d24
1.18-pre compatibility changes.
antoinehu Mar 1, 2023
5bf67b9
Debugged pottery kiln.
antoinehu Mar 2, 2023
0a0a01a
Fixed tentbag bug.
antoinehu Mar 3, 2023
b6cb1f7
Fixed tentbag bug.
antoinehu Mar 3, 2023
21347cb
Renamed ItemGlider to ItemUSGlider to avoid conflict with base game g…
antoinehu Mar 28, 2023
feec109
Merge branch 'unofficial' of https://github.com/antoinehu/vs-usefulst…
antoinehu Mar 28, 2023
c53b59d
Version bump to 1.18.1. Might fix game crashing in rare circumstances…
antoinehu May 1, 2023
6330f59
Made climbing pick and falx grindable. Added Russian translation. Upd…
antoinehu Jun 1, 2023
1f821d9
Some changes to how the quench bonus works to make it play nice with …
antoinehu Jun 18, 2023
fc9e208
Fireboxchanges texture when burning and indicates burning hours left.…
antoinehu Aug 13, 2023
8d66b57
Update to .NET7. Version bump to 1.2. Started updating README.
antoinehu Aug 17, 2023
a38373a
Update to .NET7. Version bump to 1.2. Started updating README.
antoinehu Aug 17, 2023
61d71d1
Merge
antoinehu Aug 17, 2023
8b65974
API updates to 1.19.
antoinehu Jan 21, 2024
190aff5
Adjusted glider for the new first person mode. Glider and climbing pi…
antoinehu Feb 3, 2024
bcb3b31
Adjusted glider for the new first person mode. Glider and climbing pi…
antoinehu Feb 3, 2024
be53943
Merge branch 'net7' of https://github.com/antoinehu/vs-usefulstuff in…
antoinehu Feb 3, 2024
fa8501d
Brazilian Portuguese translation by AzuliBluespots. Highlighting unso…
antoinehu Feb 7, 2024
81c7c38
Brazilian Portuguese translation by AzuliBluespots. Highlighting unso…
antoinehu Feb 7, 2024
f83890f
Git weirdness.
antoinehu Feb 7, 2024
12e98c0
Updated to 1.20.0. Repaired NameTag. Including csproj.
antoinehu Jan 17, 2025
b555d0f
Updated to 1.20.0. Repaired NameTag. Including csproj.
antoinehu Jan 17, 2025
d689c2f
Git weirdness.
antoinehu Jan 17, 2025
160ff83
BlockEntityFireBox now replaces raw clay items with fired ones instea…
antoinehu Jul 7, 2025
d524967
Updated to 1.21. Bump to 1.5.0
antoinehu Jul 7, 2025
1b5b712
Merge pull request #7 from antoinehu/testing
antoinehu Jul 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
usefulstuff*.csproj.user
usefulstuff*.dll
usefulstuff*.pdb
screenshots
/bin/Debug Normal
/obj/Debug Normal
/bin/Debug 1.17.11
/obj/Debug 1.17.11
/obj/Debug 1.18
/bin/Debug 1.18
/bin
/obj
/Properties
62 changes: 50 additions & 12 deletions README.MD
Original file line number Diff line number Diff line change
@@ -1,18 +1,56 @@
-----Sluice Details-----
Sluice Details
--------------
- The sluice takes from the vanilla panning system so any block added from another mod should work.
- The sluice efficiency and speed can be changed in the config.
- The inventory of the sluice is limited to blocks with the "pannable" attribute and will drop something that does not have it.

-----Shield Details-----
- The shield item does not truly do anything, rather it is the shield behavior patched to the player that activates when the proper conditions are met:
- The item is in a active hotbar slot, the player is crouching, the damage comes from an entity, and the entity is in front of the player
- Damage to the shield is calculated by the tier of the damage, the damage itself, and the tier of the Shield
Sluice Config
--------------
- SluiceEfficiency = 1.0; A float that determines the percentage of how high the chance of getting drops from a block is
- SluiceSiftTime = 0.25: A float that determines how much time it takes to process a block. 1 is one in game hour
- SluiceSiftPerBlock = 1: Manually sifting sifts one block 8 times, the sluice only once.
- SlucieGiveRocks = true: Can sifting with the sluice produce rocks (granite, andesite...)

-----World Gen Changes-----
With the world generation changes activated in config, a Harmony patch increases cave sizes by 50% and makes it so that they are always larger near the bottom. With the added mode they also become bigger by making them branch more. This is a WIP and a suitable replacement will be made in the Terrain Generation instead as that is much more efficient.
Climbing Pick Config
--------------------
- ClimbingPickDamageRate = 100:
- ClimbingPickDisabledInProtected = true:

Glider Config
-------------
- GliderDamageRate = 100:
- GliderDescentRModifier = 0.75:
- GliderMaxStall
- GliderMinStall
- GliderThrustModifier
- GliderWindPushModifier
- GliderBackwardsAt
- GliderNoCaveDiving

Quench Details
--------------
After you've forged a tool head (e.g. hammer, falx, etc.), you can throw the hot tool head into water to quench it.
Quenching gives a bonus to the maximum durability of the material. By default, this only works on iron tools and better.

Quench Config
-------------
- QuenchBonusMats = { "iron", "steel", "meteoriciron" }
- QuenchBonusMult = 0.2

Tent Config
-----------
- TentRadius
- TentHeight
- TentKeepContents
- TentBuildEffort

Kiln Config
-----------
- PotKilnBurnHours

Chisel Bench Config
-------------------
- ChiselBenchRestoreCost



-----Config Options-----
SluiceEfficiency: A float that determines the percentage of how high the chance of getting drops from a block is
SluiceSiftTime: A float that determines how much time it takes to process a block. 1 is one in game hour
CrazyCaves: A bool that when true enables the cave changes
CrazyCavesInsanityMode: A bool which makes caves significantly bigger.
13 changes: 8 additions & 5 deletions assets/usefulstuff/blocktypes/firebox.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
code: "firebox",
code: "firebox",
class: "BlockFireBox",
entityClass: "FireBox",
attributes: {
Expand All @@ -14,7 +14,7 @@
blockNumbers: {
"air": 1,
"mudbrick-*": 2,
"usefulstuff:firebox-*": 3,
"usefulstuff:firebox-*": 3
},
offsets: [
{ x: 0, y: 3, z: 0, w: 1 },
Expand Down Expand Up @@ -98,14 +98,14 @@
{ x: -2, y: 1, z: -1, w: 2 },
{ x: -2, y: 0, z: 0, w: 1 },
{ x: -2, y: 0, z: 1, w: 2 },
{ x: -2, y: 0, z: -1, w: 2 },
{ x: -2, y: 0, z: -1, w: 2 }
]
}
},
variantgroups: [
{ code:"type", states: ["light", "dark"] }
{code:"type", states: ["light", "dark"] }
],
shape: { base: "usefulstuff:block/firebox/empty" },
shape: { base: "usefulstuff:block/firebox/empty"},
sidesolid: {
all: false,
},
Expand All @@ -125,6 +125,9 @@
"fuel": {
base: "game:block/wood/firewood/side"
},
"fire": {
base: "game:block/coal/ember"
},
},
sounds: {
walk: "game:walk/stone",
Expand Down
216 changes: 164 additions & 52 deletions assets/usefulstuff/itemtypes/climbingpick.json
Original file line number Diff line number Diff line change
@@ -1,65 +1,177 @@
{
code: "climbingpick",
class: "ItemClimbingPick",
variantgroups: [
{ code: "metal", states: ["iron", "meteoriciron", "steel" ] },
"code": "climbingpick",
"class": "ItemClimbingPick",
"behaviors": [
{
"name": "GroundStorable",
"properties": {
"layout": "WallHalves",
"wallOffY": 1,
"sprintKey": true,
"selectionBox": {
"x1": 0,
"y1": 0,
"z1": 0,
"x2": 1,
"y2": 0.1,
"z2": 1
},
"collisionBox": {
"x1": 0,
"y1": 0,
"z1": 0,
"x2": 0,
"y2": 0,
"z2": 0
}
}
}
],
storageFlags: 257,
attributes: {
rackable: true,
toolrackTransform: {
translation: { x: 0, y: 0.5, z: 0 },
rotation: { x: 0, y: 3, z: -1 }
},
sharpenable: true,
onGrindstoneTransform : {
translation: { x: 0.2, y: 0.3, z: 0.37 },
rotation: { x: 50, y: 0, z: 0 },
origin: { x: 0.5, y: 0.1, z: 0.5 },
scale: 0.5
},
handbook: {
groupBy: ["climbingpick-*"]
"variantgroups": [
{
"code": "metal",
"states": [ "iron", "meteoriciron", "steel" ]
}
],
"storageFlags": 257,
"attributes": {
"rackable": true,
"toolrackTransform": {
"translation": {
"x": 0,
"y": 0.5,
"z": 0
},
"rotation": {
"x": 0,
"y": 3,
"z": -1
}
},
"sharpenable": true,
"onGrindstoneTransform": {
"translation": {
"x": 0.2,
"y": 0.3,
"z": 0.37
},
"rotation": {
"x": 50,
"y": 0,
"z": 0
},
"origin": {
"x": 0.5,
"y": 0.1,
"z": 0.5
},
"scale": 0.5
},
toolrackTransform: {
rotation: { y: 3, z: -1 },
translation: { x: -0.35, y: 0.5 },
scale: 1,
"handbook": {
"groupBy": [ "climbingpick-*" ]
},
"groundStorageTransform": {
"translation": {
"x": 0,
"y": 0.1,
"z": -0.065
},
"rotation": {
"x": 20,
"y": 88,
"z": -87
},
"scale": 0.88
}
},
shape: { base: "item/tool/climbingpick" },
textures: {
"metal": { base: "game:block/metal/ingot/{metal}" },
"handle": { base: "game:item/tool/material/handle" },
"string":{ base: "game:item/tool/material/string" },
"shape": { "base": "item/tool/climbingpick" },
"textures": {
"metal": { "base": "game:block/metal/ingot/{metal}" },
"handle": { "base": "game:item/tool/material/handle" },
"string": { "base": "game:item/tool/material/string" }
},
durabilitybytype: {
"durabilitybytype": {
"*-iron": 1350,
"*-meteoriciron": 1800,
"*-steel": 3400,
"*-steel": 3400
},
"creativeinventory": {
"general": [ "*" ],
"items": [ "*" ],
"tools": [ "*" ]
},
"guiTransform": {
"translation": {
"x": 0,
"y": 0,
"z": 0
},
"rotation": {
"x": -93,
"y": 30,
"z": 44
},
"origin": {
"x": 0.5,
"y": 0,
"z": 0.05
},
"scale": 0.82
},
creativeinventory: { "general": ["*"], "items": ["*"], "tools": ["*"] },
guiTransform: {
translation: { x: 0, y: 0, z: 0 },
rotation: { x: -93, y: 30, z: 44 },
origin: { x: 0.5, y: 0, z: 0.05 },
scale: 0.82
"fpHandTransform": {
"translation": {
"x": -0.2,
"y": -0.2,
"z": 0
},
"rotation": {
"x": 15,
"y": 15,
"z": 90
},
"scale": 2.45
},
fpHandTransform: {
translation: { x: -0.2, y: -0.2, z: 0 },
rotation: { x: 15, y: 15, z: 90 },
scale: 2.45
"groundTransform": {
"translation": {
"x": 0,
"y": 0,
"z": 0
},
"rotation": {
"x": 0,
"y": 0,
"z": 0
},
"origin": {
"x": 0.5,
"y": 0,
"z": 0.5
},
"scale": 1.8
},
groundTransform: {
translation: { x: 0, y: 0, z: 0 },
rotation: { x: 0, y: 0, z: 0 },
origin: { x: 0.5, y: 0, z: 0.5 },
scale: 1.8
"tpHandTransform": {
"translation": {
"x": -1.79,
"y": -0.01,
"z": -0.97
},
"rotation": {
"x": 90,
"y": 0,
"z": 0
},
"origin": {
"x": 0.5,
"y": 0,
"z": 0.5
},
"scale": 0.5
},
tpHandTransform: {
translation: { x: -1.79, y: -0.01, z: -0.97 },
rotation: { x: 90, y: 0, z: 0 },
origin: { x: 0.5, y: 0, z: 0.5 },
scale: 0.5
}
"grindingProps": {
"GroundStack": {
"type": "item",
"code": "game:metalbit-{metal}",
"quantity": 10
}
}
}
Loading