V-Tweaks
V-Tweaks is a small Vanilla+ and QOL mod that plays beautifully with any modpack out there. It's highly configurable, and doesn't add any new items to the game -- just new mechanics and interactions! There's a lot in V-Tweaks, which is why it has its own highly-detailed Wiki - check it out to learn what all it has to offer!
Feature Breakdown
Block Tweaks
Crop Interact: Right-Clicking on crops will do all the work of harvesting for you!! Right clicking (empty hand or not!) will earn you not only the original drop of the crop, but even some of the bonus seeds that you'd normally get (minus one, of course, to account for what's been re-planted for you). Works with most plantables, assuming they follow similar code to Vanilla.
Cake Drop: Breaking a completely un-eaten cake will drop itself. Finally you can have your cake and eat it too!
Tree Falling: Trees actually fall down when breaking their trunk, based off of Tersnip's ChopDown Mod!
Torch Lighing: #Right-clicking a torch (or anything tagged # vtweaks:ignition_item) onto any block which can be lit (furnaces, redstone ore, campfires and anything not tagged # vtweaks:torch_ignition_blacklist) will ignite it!
Item Tweaks
Durability Tooltips: Shows durability of items on item hover
Food Tooltips: Shows food hunger & saturation on item hover
Cactus Item Protection: Cactus destroying items doesn't really make sense. Enabling this prevents cactus from destroying items that run into it.
Entity Tweaks
Challenger Mobs: Challenger Mobs are an insanely customizable data-driven approach to boss-like mobs. See its dedicated Datapack Page using the submenu above to learn more about customizing this feature!
Feather Pluck: Pluck feathers off of chickens with shears! There is a cool-down of approximately 5 minutes, but it doesn't hurt the chicken even though it looks like it does!
Entity Culling: V-Tweaks offers a very powerful data-driven tool for allow you to disable specific mobs (or entity_type tag) from spawning in a particular dimension, biome or biome tag! See its dedicated Datapack Page using the submenu above to learn more about customizing this feature!
Peaceful Surface: Prevents mobs spawning above sea level (configurable) on most nights, preventing you from having to deal with all the monsters. Only on new moons will mobs spawn on the surface, but you can otherwise find them in caves like usual. You can prevent certain mob spawns from being affected by this by using the vtweaks:ignored_by_peaceful_surface entity_type tag. You can control this feature in specific dimensions using the vtweaks:peaceful_surface_blacklist_dims tag.
Smaller Bees: This tweak makes it so that bees appear to be smaller (exactly half their size, actually!). Logistically this changes nothing about them - their bounding and hit box is the same for your convenience, but they're sooo cute!
Pet Friendly Fire: This tweak prevents pet owners (or all players - this is configurable) from hurting tamed pets so that you can keep your special friend alive and healthy!
Griefless Creepers: #When enabled, any explosion caused by a # forge:creeper (entity_type) will restore itself after time, even restoring Tile Entities and their data stored within!
Player Tweaks
Corpse Drops: The item despawn mechanic is really unfair when you die, isn't it? By enabling this tweak items dropped by players on death will never despawn!
Better Feather Falling: If you have a pair of boots with Feather Falling IV on them, all fall damage is negated. The damage you would have taken (literally - the amount of half-hearts you would have taken) is then applied to directly to your boots instead.
Recipes Tweaks
Anvil Recipes: Create custom anvil recipes using a datapack! See its dedicated Datapack Page using the submenu above to learn more about customizing this feature!
Fluid Conversion Recipes: Convert one item to another by throwing it into some fluid (now with JEI integration!). By default, V-Tweaks includes a set of recipes for converting Concrete Powder to Concrete, but check its dedicated Datapack Page using the submenu above to learn more about customizing this feature!
Item Repair: Sets the repair costs of tools to a fixed 1XP, making it so you can keep your tools forever!
World Tweaks
Disable Storms: Completely disable thunderstorms, converting them all to normal rain on the fly!
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
## 4.0.23:
(Backport of the 1.21.1 changes to the Crop Tweak)
### Fixed:
- Added
minecraft:melon_stem,minecraft:pumpkin_stemandminecraft:sweet_berry_bushto the defaultblacklisted_harvest_cropstag
### Changed:
- Completely rewrote the logic for determining if a block is a crop that can be harvested
- This means that any mod that adds a custom
ageblockstate will be detected - Completely rewrote the logic for harvesting and replanting
- We now find the seed by detecting if the item is the same as the pickblock (middle-click) item
- If it is, we now remove one item from the stack, to take into account the cost of the seed/crop used in replanting
- This, once again, maximized compatibility to the best of my ability without having to write a datapack system (which is not in the cards right now).
## 4.0.15:
### Added:
- NonStackingItemTweak
- Disabled by default for obvious reasons
- Makes it so items on the ground will no longer merge together into a single Item Entity like back in beta
## 4.0.14:
Thanks for your patience with this recurring problem that has been fixed by outright
removing it:
### Removed:
- TraderStonks tweak, which caused many issues for many players.
## 4.0.13:
### Added:
- Full ingredient support for Anvil and Fluid Conversion Recipes
- This means you can now define multiple inputs using Tags or Array Inputs. For example, the following recipe allows
``
json
{
"type": "vtweaks:fluid_conversion",
"input": [{
"item": "minecraft:stick"
}, {
"tag": "minecraft:wool"
}],
"output": {
"item": "minecraft:white_wool"
},
"fluid": "minecraft:water"
}
`
### Changed:
- Chopdown Config now has its own subsection - **previous settings will need to be re-applied**
### Removed:
- Accidentally left in a test JSON recipe for Anvil Crafting - removed that!
### Fixed:
- [Crash on Item Pickup](https://github.com/oitsjustjose/V-Tweaks/issues/110)
## 4.0.12:
### Changed:
- Anvil Recipe**:
- The setting
cpFromLeft has been renamed to copyTagsFromLeftThe setting cpFromRight has been renamed to copyTagsFromRightAdded a new optional setting strict. When set to false, the inputs on both sides of the recipe will ignore NBT; otherwise the inputs will need to match the NBT specified in the datapack entry
- Water Conversion Recipes**:
- Fixed background not working in JEI
- Added catalysts for the JEI tab so that it would appear as a "use" for Dispensers, Splash Water Bottles & Water
Buckets
## 4.0.11:
### Fixed:
- Actually fix feather falling tweak -_-
## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
you've lost recently
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuableIf configured (this setting is on by default), if a vtweaks:valuable item _can_ be enchanted, it'll only save the item _if_ it's enchanted.
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.toml file to verify that your previous settings are what they should be
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweak not working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows any vtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking to make the item frame transparent or glowing respectively. [Demo](https://dv2ls.com/vt-itemframetweak)
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using V-Tweaks' <u>Fluid Conversion Recipes</u>. Works as an alternative if you'd like to set enableFluidConversionRecipes
to false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)
### Changed:
- Mixin configs are now a part of
vtweaks-common.toml - if you previously changed enableCactusItemProtection, you'll need to change it again but in vtweaks-common.toml 🙁
## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color instead of the other colors defined below for the *hunger bar*. If food has no given custom color, then the
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on consumption
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at least one Positive potion effect on consumption
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on consumption
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting controls a multiplier for this in terms of the hunger tooltip on foods.
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
error java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into this
issue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
for this soon :)
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
defaults (currently they just include all concrete powder -> concrete conversions)! You can specify the fluid, input
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
drops
[CODE] The Tweak system has been introduced. Create a new tweak by extending VTweak and using the @Tweak annotation. The config system will automatically grab onto what configs you need based on this annotation, and the
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE] Config System has been overhauled, allowing each tweak to house its own configs rather than making them static members of some conglomerate config class. The category param in the @Tweak annotation tells the config
system what category to put the tweak's configs in - if it's not one of the ones listed in CommonConfig.java
or ClientConfig.java, then it will be skipped.
## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash error
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
with it. This update fixes the offsets when breaking trees, as well as rotates logs as they fall.
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeft and cpFromRight. Assumes to be false if not included. cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You can
choose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threads errors.
## 3.6.5
### Added
- New
vtweaks:anvil recipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvil recipes to control inputs and cost
### vtweaks:anvil
Inputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as {"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stick
with enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case, {Damage:0}).
imperishable.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.23:
### Fixed:
- Added
minecraft:melon_stem,minecraft:pumpkin_stemandminecraft:sweet_berry_bushto the defaultblacklisted_harvest_cropstag
### Changed:
- Completely rewrote the logic for determining if a block is a crop that can be harvested
- This means that any mod that adds a custom
ageblockstate will be detected - Completely rewrote the logic for harvesting and replanting
- We now find the seed by detecting if the item is the same as the pickblock (middle-click) item
- If it is, we now remove one item from the stack, to take into account the cost of the seed/crop used in replanting
- This, once again, maximized compatibility to the best of my ability without having to write a datapack system (which is not in the cards right now).3
## 4.0.22:
### Fixed:
- DestroySpeedMixin not having a config option
- This mixin made it so that tools would mine slower as they got more damaged
- This now has a config option which is **disabled** by default
### Changed:
- Localization for the GUI config options for various Mixin configs
## 4.0.21:
### Changed:
- Crop Tweak now checks that the 'seed' to place is
c:seeds - This fixes oddities for any crop whose harvest includes other placeable blockitems, for example Tripwire being placed when harvesting Actually Addition's Flax.
## 4.0.20:
### Fixed:
- Default Tags not loading because of directory changes
## 4.0.19:
### Added:
- Particle effect while walking on Powder Snow blocks
- Offers a more accessible approach to telling the difference between normal & powder snow
## 4.0.18
### Added:
- New mixin tweak to make Powder Snow blocks solid
- Disabled by default
- Makes exploration in ambient snowy areas less annoying
## 4.0.17
### Added:
- Config to control whether baby
#c:chickenscan have their feathers plucked - Defaults to false; babies cannot have their feathers plucked
### Fixed:
- Ungriefing Creepers tweak not working
- Feather Plucking using the wrong Shears tag
- Feather Plucking causing the player's arm to swing even if plucking failed
### Changed:
- Updated all references to tags in the
forgenamespace to now use thecnamespace instead - This change is also reflected in Config Comments for maximum clarity
- ChopDown Requires Tool setting uses a less sketchy method for tool detection
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.22:
### Fixed:
- DestroySpeedMixin not having a config option
- This mixin made it so that tools would mine slower as they got more damaged
- This now has a config option which is **disabled** by default
### Changed:
- Localization for the GUI config options for various Mixin configs
## 4.0.21:
### Changed:
- Crop Tweak now checks that the 'seed' to place is
c:seeds - This fixes oddities for any crop whose harvest includes other placeable blockitems, for example Tripwire being placed when harvesting Actually Addition's Flax.
## 4.0.20:
### Fixed:
- Default Tags not loading because of directory changes
## 4.0.19:
### Added:
- Particle effect while walking on Powder Snow blocks
- Offers a more accessible approach to telling the difference between normal & powder snow
## 4.0.18
### Added:
- New mixin tweak to make Powder Snow blocks solid
- Disabled by default
- Makes exploration in ambient snowy areas less annoying
## 4.0.17
### Added:
- Config to control whether baby
#c:chickenscan have their feathers plucked - Defaults to false; babies cannot have their feathers plucked
### Fixed:
- Ungriefing Creepers tweak not working
- Feather Plucking using the wrong Shears tag
- Feather Plucking causing the player's arm to swing even if plucking failed
### Changed:
- Updated all references to tags in the
forgenamespace to now use thecnamespace instead - This change is also reflected in Config Comments for maximum clarity
- ChopDown Requires Tool setting uses a less sketchy method for tool detection
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.21:
### Changed:
- Crop Tweak now checks that the 'seed' to place is
c:seeds - This fixes oddities for any crop whose harvest includes other placeable blockitems, for example Tripwire being placed when harvesting Actually Addition's Flax.
## 4.0.20:
### Fixed:
- Default Tags not loading because of directory changes
## 4.0.19:
### Added:
- Particle effect while walking on Powder Snow blocks
- Offers a more accessible approach to telling the difference between normal & powder snow
## 4.0.18
### Added:
- New mixin tweak to make Powder Snow blocks solid
- Disabled by default
- Makes exploration in ambient snowy areas less annoying
## 4.0.17
### Added:
- Config to control whether baby
#c:chickenscan have their feathers plucked - Defaults to false; babies cannot have their feathers plucked
### Fixed:
- Ungriefing Creepers tweak not working
- Feather Plucking using the wrong Shears tag
- Feather Plucking causing the player's arm to swing even if plucking failed
### Changed:
- Updated all references to tags in the
forgenamespace to now use thecnamespace instead - This change is also reflected in Config Comments for maximum clarity
- ChopDown Requires Tool setting uses a less sketchy method for tool detection
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.20:
### Fixed:
- Default Tags not loading because of directory changes
## 4.0.19:
### Added:
- Particle effect while walking on Powder Snow blocks
- Offers a more accessible approach to telling the difference between normal & powder snow
## 4.0.18
### Added:
- New mixin tweak to make Powder Snow blocks solid
- Disabled by default
- Makes exploration in ambient snowy areas less annoying
## 4.0.17
### Added:
- Config to control whether baby
#c:chickenscan have their feathers plucked - Defaults to false; babies cannot have their feathers plucked
### Fixed:
- Ungriefing Creepers tweak not working
- Feather Plucking using the wrong Shears tag
- Feather Plucking causing the player's arm to swing even if plucking failed
### Changed:
- Updated all references to tags in the
forgenamespace to now use thecnamespace instead - This change is also reflected in Config Comments for maximum clarity
- ChopDown Requires Tool setting uses a less sketchy method for tool detection
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.19:
### Added:
- Particle effect while walking on Powder Snow blocks
- Offers a more accessible approach to telling the difference between normal & powder snow
## 4.0.18
### Added:
- New mixin tweak to make Powder Snow blocks solid
- Disabled by default
- Makes exploration in ambient snowy areas less annoying
## 4.0.17
### Added:
- Config to control whether baby
#c:chickenscan have their feathers plucked - Defaults to false; babies cannot have their feathers plucked
### Fixed:
- Ungriefing Creepers tweak not working
- Feather Plucking using the wrong Shears tag
- Feather Plucking causing the player's arm to swing even if plucking failed
### Changed:
- Updated all references to tags in the
forgenamespace to now use thecnamespace instead - This change is also reflected in Config Comments for maximum clarity
- ChopDown Requires Tool setting uses a less sketchy method for tool detection
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.18
### Added:
- New mixin tweak to make Powder Snow blocks solid
- Disabled by default
- Makes exploration in ambient snowy areas less annoying
## 4.0.17
### Added:
- Config to control whether baby
#c:chickenscan have their feathers plucked - Defaults to false; babies cannot have their feathers plucked
### Fixed:
- Ungriefing Creepers tweak not working
- Feather Plucking using the wrong Shears tag
- Feather Plucking causing the player's arm to swing even if plucking failed
### Changed:
- Updated all references to tags in the
forgenamespace to now use thecnamespace instead - This change is also reflected in Config Comments for maximum clarity
- ChopDown Requires Tool setting uses a less sketchy method for tool detection
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.17
### Added:
- Config to control whether baby
#c:chickenscan have their feathers plucked - Defaults to false; babies cannot have their feathers plucked
### Fixed:
- Ungriefing Creepers tweak not working
- Feather Plucking using the wrong Shears tag
- Feather Plucking causing the player's arm to swing even if plucking failed
### Changed:
- Updated all references to tags in the
forgenamespace to now use thecnamespace instead - This change is also reflected in Config Comments for maximum clarity
- ChopDown Requires Tool setting uses a less sketchy method for tool detection
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.16
### Changed:
- The text
Durability:in the Durability Tooltip is now localizable!
### Fixed:
- Server Crash
## 4.0.15
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
### Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
Initial port to 1.21 (and 1.21.1 by proxy) using NeoForge. Tested full suite of features locally in dev server, so
hopefully there'll be minimal server-only issues, but we'll see!
Not too much has changed from a functional perspective really:
## Changed:
- Challenger Mobs' Gear and Drops now use the Component Feature to define properties like enchantments, potion data,
## Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
## 4.0.15:
### Added:
- NonStackingItemTweak
- Disabled by default for obvious reasons
- Makes it so items on the ground will no longer merge together into a single Item Entity like back in beta
## 4.0.14:
Thanks for your patience with this recurring problem that has been fixed by outright
removing it:
### Removed:
- TraderStonks tweak, which caused many issues for many players.
## 4.0.13:
### Added:
- Full ingredient support for Anvil and Fluid Conversion Recipes
- This means you can now define multiple inputs using Tags or Array Inputs. For example, the following recipe allows
``
json
{
"type": "vtweaks:fluid_conversion",
"input": [{
"item": "minecraft:stick"
}, {
"tag": "minecraft:wool"
}],
"output": {
"item": "minecraft:white_wool"
},
"fluid": "minecraft:water"
}
`
### Changed:
- Chopdown Config now has its own subsection - **previous settings will need to be re-applied**
### Removed:
- Accidentally left in a test JSON recipe for Anvil Crafting - removed that!
### Fixed:
- [Crash on Item Pickup](https://github.com/oitsjustjose/V-Tweaks/issues/110)
## 4.0.12:
### Changed:
- Anvil Recipe**:
- The setting
cpFromLeft has been renamed to copyTagsFromLeftThe setting cpFromRight has been renamed to copyTagsFromRightAdded a new optional setting strict. When set to false, the inputs on both sides of the recipe will ignore NBT; otherwise the inputs will need to match the NBT specified in the datapack entry
- Water Conversion Recipes**:
- Fixed background not working in JEI
- Added catalysts for the JEI tab so that it would appear as a "use" for Dispensers, Splash Water Bottles & Water
Buckets
## 4.0.11:
### Fixed:
- Actually fix feather falling tweak -_-
## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
you've lost recently
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuableIf configured (this setting is on by default), if a vtweaks:valuable item _can_ be enchanted, it'll only save the item _if_ it's enchanted.
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.toml file to verify that your previous settings are what they should be
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweak not working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows any vtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking to make the item frame transparent or glowing respectively. [Demo](https://dv2ls.com/vt-itemframetweak)
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using V-Tweaks' <u>Fluid Conversion Recipes</u>. Works as an alternative if you'd like to set enableFluidConversionRecipes
to false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)
### Changed:
- Mixin configs are now a part of
vtweaks-common.toml - if you previously changed enableCactusItemProtection, you'll need to change it again but in vtweaks-common.toml 🙁
## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color instead of the other colors defined below for the *hunger bar*. If food has no given custom color, then the
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on consumption
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at least one Positive potion effect on consumption
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on consumption
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting controls a multiplier for this in terms of the hunger tooltip on foods.
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
error java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into this
issue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
for this soon :)
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
defaults (currently they just include all concrete powder -> concrete conversions)! You can specify the fluid, input
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
drops
[CODE] The Tweak system has been introduced. Create a new tweak by extending VTweak and using the @Tweak annotation. The config system will automatically grab onto what configs you need based on this annotation, and the
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE] Config System has been overhauled, allowing each tweak to house its own configs rather than making them static members of some conglomerate config class. The category param in the @Tweak annotation tells the config
system what category to put the tweak's configs in - if it's not one of the ones listed in CommonConfig.java
or ClientConfig.java, then it will be skipped.
## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash error
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
with it. This update fixes the offsets when breaking trees, as well as rotates logs as they fall.
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeft and cpFromRight. Assumes to be false if not included. cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You can
choose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threads errors.
## 3.6.5
### Added
- New
vtweaks:anvil recipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvil recipes to control inputs and cost
### vtweaks:anvil
Inputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as {"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stick
with enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case, {Damage:0}).
imperishable.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.14:
This will be the last update for 1.20.1 as I begin porting to NeoForge on 1.21, and possibly start looking into Fabric
support (no promises though!). Thanks for your patience with this recurring problem that has been fixed by outright
removing it:
### Removed:
- TraderStonks tweak, which caused many issues for many players.
## 4.0.13:
### Added:
- Full ingredient support for Anvil and Fluid Conversion Recipes
- This means you can now define multiple inputs using Tags or Array Inputs. For example, the following recipe allows
``
json
{
"type": "vtweaks:fluid_conversion",
"input": [{
"item": "minecraft:stick"
}, {
"tag": "minecraft:wool"
}],
"output": {
"item": "minecraft:white_wool"
},
"fluid": "minecraft:water"
}
`
### Changed:
- Chopdown Config now has its own subsection - **previous settings will need to be re-applied**
### Removed:
- Accidentally left in a test JSON recipe for Anvil Crafting - removed that!
### Fixed:
- [Crash on Item Pickup](https://github.com/oitsjustjose/V-Tweaks/issues/110)
## 4.0.12:
### Changed:
- Anvil Recipe**:
- The setting
cpFromLeft has been renamed to copyTagsFromLeftThe setting cpFromRight has been renamed to copyTagsFromRightAdded a new optional setting strict. When set to false, the inputs on both sides of the recipe will ignore NBT; otherwise the inputs will need to match the NBT specified in the datapack entry
- Water Conversion Recipes**:
- Fixed background not working in JEI
- Added catalysts for the JEI tab so that it would appear as a "use" for Dispensers, Splash Water Bottles & Water
Buckets
## 4.0.11:
### Fixed:
- Actually fix feather falling tweak -_-
## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
you've lost recently
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuableIf configured (this setting is on by default), if a vtweaks:valuable item _can_ be enchanted, it'll only save the item _if_ it's enchanted.
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.toml file to verify that your previous settings are what they should be
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweak not working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows any vtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking to make the item frame transparent or glowing respectively. [Demo](https://dv2ls.com/vt-itemframetweak)
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using V-Tweaks' <u>Fluid Conversion Recipes</u>. Works as an alternative if you'd like to set enableFluidConversionRecipes
to false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)
### Changed:
- Mixin configs are now a part of
vtweaks-common.toml - if you previously changed enableCactusItemProtection, you'll need to change it again but in vtweaks-common.toml 🙁
## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color instead of the other colors defined below for the *hunger bar*. If food has no given custom color, then the
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on consumption
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at least one Positive potion effect on consumption
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on consumption
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting controls a multiplier for this in terms of the hunger tooltip on foods.
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
error java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into this
issue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
for this soon :)
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
defaults (currently they just include all concrete powder -> concrete conversions)! You can specify the fluid, input
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
drops
[CODE] The Tweak system has been introduced. Create a new tweak by extending VTweak and using the @Tweak annotation. The config system will automatically grab onto what configs you need based on this annotation, and the
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE] Config System has been overhauled, allowing each tweak to house its own configs rather than making them static members of some conglomerate config class. The category param in the @Tweak annotation tells the config
system what category to put the tweak's configs in - if it's not one of the ones listed in CommonConfig.java
or ClientConfig.java, then it will be skipped.
## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash error
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
with it. This update fixes the offsets when breaking trees, as well as rotates logs as they fall.
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeft and cpFromRight. Assumes to be false if not included. cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You can
choose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threads errors.
## 3.6.5
### Added
- New
vtweaks:anvil recipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvil recipes to control inputs and cost
### vtweaks:anvil
Inputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as {"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stick
with enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case, {Damage:0}).
imperishable.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.13:
### Added:
- Full ingredient support for Anvil and Fluid Conversion Recipes
- This means you can now define multiple inputs using Tags or Array Inputs. For example, the following recipe allows
``
json
{
"type": "vtweaks:fluid_conversion",
"input": [{
"item": "minecraft:stick"
}, {
"tag": "minecraft:wool"
}],
"output": {
"item": "minecraft:white_wool"
},
"fluid": "minecraft:water"
}
`
### Changed:
- Chopdown Config now has its own subsection - **previous settings will need to be re-applied**
### Removed:
- Accidentally left in a test JSON recipe for Anvil Crafting - removed that!
### Fixed:
- [Crash on Item Pickup](https://github.com/oitsjustjose/V-Tweaks/issues/110)
## 4.0.12:
### Changed:
- Anvil Recipe**:
- The setting
cpFromLeft has been renamed to copyTagsFromLeftThe setting cpFromRight has been renamed to copyTagsFromRightAdded a new optional setting strict. When set to false, the inputs on both sides of the recipe will ignore NBT; otherwise the inputs will need to match the NBT specified in the datapack entry
- Water Conversion Recipes**:
- Fixed background not working in JEI
- Added catalysts for the JEI tab so that it would appear as a "use" for Dispensers, Splash Water Bottles & Water
Buckets
## 4.0.11:
### Fixed:
- Actually fix feather falling tweak -_-
## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
you've lost recently
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuableIf configured (this setting is on by default), if a vtweaks:valuable item _can_ be enchanted, it'll only save the item _if_ it's enchanted.
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.toml file to verify that your previous settings are what they should be
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweak not working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows any vtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking to make the item frame transparent or glowing respectively. [Demo](https://dv2ls.com/vt-itemframetweak)
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using V-Tweaks' <u>Fluid Conversion Recipes</u>. Works as an alternative if you'd like to set enableFluidConversionRecipes
to false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)
### Changed:
- Mixin configs are now a part of
vtweaks-common.toml - if you previously changed enableCactusItemProtection, you'll need to change it again but in vtweaks-common.toml 🙁
## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color instead of the other colors defined below for the *hunger bar*. If food has no given custom color, then the
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on consumption
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at least one Positive potion effect on consumption
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on consumption
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting controls a multiplier for this in terms of the hunger tooltip on foods.
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
error java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into this
issue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
for this soon :)
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
defaults (currently they just include all concrete powder -> concrete conversions)! You can specify the fluid, input
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
drops
[CODE] The Tweak system has been introduced. Create a new tweak by extending VTweak and using the @Tweak annotation. The config system will automatically grab onto what configs you need based on this annotation, and the
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE] Config System has been overhauled, allowing each tweak to house its own configs rather than making them static members of some conglomerate config class. The category param in the @Tweak annotation tells the config
system what category to put the tweak's configs in - if it's not one of the ones listed in CommonConfig.java
or ClientConfig.java, then it will be skipped.
## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash error
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
with it. This update fixes the offsets when breaking trees, as well as rotates logs as they fall.
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeft and cpFromRight. Assumes to be false if not included. cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You can
choose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threads errors.
## 3.6.5
### Added
- New
vtweaks:anvil recipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvil recipes to control inputs and cost
### vtweaks:anvil
Inputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as {"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stick
with enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case, {Damage:0}).
imperishable.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.13:
Backport 4.0.9-current from 1.20.1
## 4.0.8
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
- Hard dependency on JEI
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.13:
Backport 4.0.9-current from 1.20.1
## 4.0.8
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
- Hard dependency on JEI
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.13:
Backport 4.0.9-current from 1.20.1
## 4.0.8
### Fixed:
- Hard dependency on JEI
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.13:
### Added:
- Full ingredient support for Anvil and Fluid Conversion Recipes
- This means you can now define multiple inputs using Tags or Array Inputs. For example, the following recipe allows
``
json
{
"type": "vtweaks:fluid_conversion",
"input": [{
"item": "minecraft:stick"
}, {
"tag": "minecraft:wool"
}],
"output": {
"item": "minecraft:white_wool"
},
"fluid": "minecraft:water"
}
`
### Changed:
- Chopdown Config now has its own subsection - **previous settings will need to be re-applied**
### Removed:
- Accidentally left in a test JSON recipe for Anvil Crafting - removed that!
### Fixed:
- [Crash on Item Pickup](https://github.com/oitsjustjose/V-Tweaks/issues/110)
## 4.0.12:
### Changed:
- Anvil Recipe**:
- The setting
cpFromLeft has been renamed to copyTagsFromLeftThe setting cpFromRight has been renamed to copyTagsFromRightAdded a new optional setting strict. When set to false, the inputs on both sides of the recipe will ignore NBT; otherwise the inputs will need to match the NBT specified in the datapack entry
- Water Conversion Recipes**:
- Fixed background not working in JEI
- Added catalysts for the JEI tab so that it would appear as a "use" for Dispensers, Splash Water Bottles & Water
Buckets
## 4.0.11:
### Fixed:
- Actually fix feather falling tweak -_-
## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
you've lost recently
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuableIf configured (this setting is on by default), if a vtweaks:valuable item _can_ be enchanted, it'll only save the item _if_ it's enchanted.
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.toml file to verify that your previous settings are what they should be
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweak not working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows any vtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking to make the item frame transparent or glowing respectively. [Demo](https://dv2ls.com/vt-itemframetweak)
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using V-Tweaks' <u>Fluid Conversion Recipes</u>. Works as an alternative if you'd like to set enableFluidConversionRecipes
to false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)
### Changed:
- Mixin configs are now a part of
vtweaks-common.toml - if you previously changed enableCactusItemProtection, you'll need to change it again but in vtweaks-common.toml 🙁
## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color instead of the other colors defined below for the *hunger bar*. If food has no given custom color, then the
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on consumption
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at least one Positive potion effect on consumption
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on consumption
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting controls a multiplier for this in terms of the hunger tooltip on foods.
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
error java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into this
issue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
for this soon :)
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
defaults (currently they just include all concrete powder -> concrete conversions)! You can specify the fluid, input
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
drops
[CODE] The Tweak system has been introduced. Create a new tweak by extending VTweak and using the @Tweak annotation. The config system will automatically grab onto what configs you need based on this annotation, and the
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE] Config System has been overhauled, allowing each tweak to house its own configs rather than making them static members of some conglomerate config class. The category param in the @Tweak annotation tells the config
system what category to put the tweak's configs in - if it's not one of the ones listed in CommonConfig.java
or ClientConfig.java, then it will be skipped.
## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash error
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
with it. This update fixes the offsets when breaking trees, as well as rotates logs as they fall.
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeft and cpFromRight. Assumes to be false if not included. cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You can
choose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threads errors.
## 3.6.5
### Added
- New
vtweaks:anvil recipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvil recipes to control inputs and cost
### vtweaks:anvil
Inputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as {"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stick
with enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case, {Damage:0}).
imperishable.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.12:
### Changed:
- Anvil Recipe**:
- The setting
cpFromLefthas been renamed tocopyTagsFromLeft - The setting
cpFromRighthas been renamed tocopyTagsFromRight - Added a new optional setting
strict. When set to false, the inputs on both sides of the recipe will ignore NBT;
- Water Conversion Recipes**:
- Fixed background not working in JEI
- Added catalysts for the JEI tab so that it would appear as a "use" for Dispensers, Splash Water Bottles & Water
## 4.0.11:
### Fixed:
- Actually fix feather falling tweak -_-
## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuable - If configured (this setting is on by default), if a
vtweaks:valuableitem _can_ be enchanted, it'll only
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.tomlfile to verify that your previous settings are
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweaknot working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.11:
### Fixed:
- Actually fix feather falling tweak -_-
## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuable - If configured (this setting is on by default), if a
vtweaks:valuableitem _can_ be enchanted, it'll only
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.tomlfile to verify that your previous settings are
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweaknot working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.10
### Added:
- Configuration for which moon phases Peaceful Surface should apply to (defaults to all but the New Moon)
- [Trader Stonks (Enabled by default)](https://twitter.com/oitsjustjose/status/1687305938816872448)
- This feature, inspired by SimplySarc's idea, makes it so that Wandering Traders may sell any "valuable" items that
- This functionality is in a beta state - please report bugs if you find any!!
- Technical details:
- Uses the tag
vtweaks:valuable - If configured (this setting is on by default), if a
vtweaks:valuableitem _can_ be enchanted, it'll only
- The chance that an item is added is configurable
- The Emerald cost is configurable, but it'll always cost Emeralds
- The item that gets added is random, and it might be yours _or_ some other players'!
- A silly message is shown when chatting with a Wanderer (can be disabled)
### Fixed:
- Peaceful Surface outright not working
- Feather Falling Tweak not working as intended, negating _all_ damage _except_ for fall damage 🤦♂️
- Splash potions of \<fluid\> not working on FluidConversionRecipes
### Changed:
- Re-organized a lot of configs - please check your
vtweaks-common.tomlfile to verify that your previous settings are
## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweaknot working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.9
### Fixed:
- Hard dependency on JEI
## 4.0.8
### Fixed:
FluidConversionTweaknot working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.8
### Fixed:
- Hard dependency on JEI
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.8
### Fixed:
- Hard dependency on JEI
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.8
### Fixed:
FluidConversionTweaknot working for many reasons
## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.7
### Port to 1.20.1 -- 1.20.0 support untested/unconfirmed
I think it should just work, but if it doesn't I don't make any guarantee. At the very least, it won't complain about loading in 1.20 as far as the
mods.toml is concerned.## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.7
### Added:
ItemFrameTweak: Allows anyvtweaks:clear_glass, or glow ink sac, to be activated on an item frame while sneaking
SplashPotionTweak: Allows splash potions of water to behave the same as throwing an item in water, but using
enableFluidConversionRecipesto
false, but **only works with blocks** instead of blocks and items. [Demo](https://dv2ls.com/vt-splash)### Changed:
- Mixin configs are now a part of
vtweaks-common.toml- if you previously changedenableCactusItemProtection,
vtweaks-common.toml 🙁## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``## 4.0.6: INITIAL PORT TO 1.19.4
### Added:
- All new configs for Food Tooltips:
useOriginalFoodTooltipColor (bool): if a food has a custom color such as via rarity or NBT, use that color
default color (or the buff/debuff color) will be
used. [Demo](https://oitsjustjose-sharex.s3.us-east-2.amazonaws.com/2023/04/java_04-02-23%2014-21-23-940.mp4)
foodTooltipColor (string): the HEX code for a normal food that gives no Positive / Negative potion effects on
foodTooltipPositiveColor (string): the HEX code for a food that gives **NO Negative Potion Effects** and at
foodTooltipNegativeColor (string): the HEX code for a food that gives at least one Negative potion effect on
foodTooltipMultiplier (float): similar to health, 1 hunger is equivalent to half a hunger haunch. This setting
foodTooltipSaturationColor (string): the HEX code for the saturation a food gives
### Fixed (Hopefully 🤞)
- Hopefully patched up a crash on world join with the
java.lang.IllegalStateException: Accessing LegacyRandomSource from multiple threads. I've looked into thisissue for most of my day today and I have no earthly idea what I'm doing wrong to cause this, but hopefully a small
change I made may have resolved this.
## 4.0.5
### Potential memory leak resolutions
## 4.0.4****
### Micro-Optimized server and world tick performance
## 4.0.3
### Fixed
- Feather Falling Tweaks not breaking boots when at max damage
## 4.0.2
### Fixed
- Feather Falling Tweaks not working
## 4.0.1
### Fixed
- Crash on dedicated servers (Thanks Apache 😒)
## 4.0.0
This rewrite includes a couple of major changes:
## Removed Features:
- All Enchantments: Chopdown somewhat removes the need for Lumbering and I always hated the Imperishable implementation
- Bonemeal Tweaks: Bonemealing non-bonemealable blocks
- Drop Tweaks: Configurable despawn timers, egg hatching, sapling planting - these were all bad.
- Pet Armory: Throw gear at tamed pets - this was poorly implemented and was never worth the time to learn rendering
- Death Point: This really isn't necessary now with the new echo compass thing in 1.19
- Low Health Sound: Not really fitting for this mod, and its implementation was very data-modification heavy
- Chat message welcoming you to V-Tweaks is removed, this was annoying. I'll be implementing an optional Patchouli book
## Added Features
- Corpse Drops Tweak - Items dropped by the player upon death will no longer despawn like other items.
- Cactus Item Protection - prevents items from being eaten up by Cacti. **Configuration change requires restart**
## Overhauls
- Fluid Conversion Recipes - this _used_ to be the Concrete Tweak, but now they're Datapack based and you can modify the
and output and the recipe will automatically propagate in JEI with the custom plugin I made.
- Falling blocks caused by the Chop Down tweak will no longer drop leaves, but instead drop the block's corresponding
[CODE]The Tweak system has been introduced. Create a new tweak by extendingVTweakand using the@Tweak
Tweak Registry will automatically grab and fire all custom tweaks' events
[CODE]Config System has been overhauled, allowing each tweak to house its own configs rather than making them
category param in the @Tweak annotation tells the configsystem what category to put the tweak's configs in - if it's not one of the ones listed in
CommonConfig.javaor
ClientConfig.java, then it will be skipped.## 3.6.8
- Chopdown will no longer consider player-placed leaves as part of a tree
- Hopefully fixed failure to start due to FastUtils
it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash
## 3.6.7
- At long last, the chopdown feature is _no longer experimental_ and has been finished to a point where I am content
## 3.6.6.2
- Fixes to NBT breakages!!
## 3.6.6
- Added new optional Anvil Recipe attributes
cpFromLeftandcpFromRight. Assumes to befalseif not
cpFrom[Left|Right] will copy all NBT **except** for those defined in the output, to the output. You canchoose to set BOTH to true, but any overlap in NBT will be overwritten by the **RIGHT** input.
## Should work on 1.19.1 and .2, but this has not been tested.
## 3.6.5.1
- Hopefully resolved issues with
Accessing LegacyRandomSource from multiple threadserrors.
## 3.6.5
### Added
- New
vtweaks:anvilrecipe type -- see below!
### Changed
- Huge internal refactor of code
- Lumbering and Imperishable will not disappear when disabled, but will not function
- Recipes for Enchanted Books now use
vtweaks:anvilrecipes to control inputs and cost
###
vtweaks:anvilInputs AND outputs can have NBT defined for them! This recipe type performs a **_soft_** NBT comparison.
Example: if your item is defined as
{"item": "minecraft:stick", "nbt": { "Damage": 0 }}, then if you input a stickwith enchantments or other NBT it will **succeed** so long as the NBT matches at the bare minimum the NBT defined in the
recipe (in this case,
{Damage:0}).imperishable.json:``
json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"right": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "minecraft:unbreaking",
"lvl": 3
}
]
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:imperishable",
"lvl": 1
}
]
}
},
"cost": 24
}
`
lumbering.json:
`json
{
"type": "vtweaks:anvil",
"left": {
"item": "minecraft:writable_book"
},
"right": {
"item": "minecraft:golden_axe",
"nbt": {
"Damage": 0
}
},
"result": {
"item": "minecraft:enchanted_book",
"nbt": {
"StoredEnchantments": [
{
"id": "vtweaks:lumbering",
"lvl": 1
}
]
}
},
"cost": 16
}
``