V-Tweaks (V-Tweaks)
V-Tweaks 是一款小巧的Vanilla+和QOL模组,与任何模组包都能完美兼容。它非常可配置,并且不会向游戏中添加任何新物品——只会添加新的机制和交互!V-Tweaks中功能丰富而全面,因此它拥有自己高度详细的【Wiki】(
功能详解
方块调整
作物互动: 右键点击庄稼将自动进行收获!不管是空手还是拿着物品,右键点击庄稼都会得到原始的掉落物,甚至还会得到一些额外的种子(减去一个,以便为你重新种植)。这项功能适用于大多数可种植物,只要它们遵循与Vanilla相似的代码。
蛋糕掉落: 打破完全没有吃过的蛋糕会掉落自身。最终你能够拥有蛋糕,并将其吃掉!
树木倒下: 砍掉树干后,树木实际上会倒下,这是基于Tersnip的ChopDown Mod的功能!
点燃火把: 右键点击火把(或任何标记为`# vtweaks:ignition_item`的物品)到任何可点燃的方块(熔炉、红石矿石、营火以及任何未标记为`# vtweaks:torch_ignition_blacklist`的方块),将使其点燃!
物品调整
耐久度提示: 在鼠标悬停时显示物品的耐久度。
食物提示: 在鼠标悬停时显示食物的饥饿度和饱和度。
仙人掌物品保护: 仙人掌破坏物品并不合理。启用此功能可以防止仙人掌摧毁碰到它的物品。
实体调整
挑战者生物: 挑战者生物是一种极其可定制的数据驱动模式,用于创建类似boss的生物。查看专用的数据包页面以了解有关自定义此功能的更多信息!
拔羽毛: 使用剪刀从鸡身上剔除羽毛!大约5分钟有冷却时间,但它并不会伤害鸡,尽管看起来像是在伤害它们!
实体消隐: V-Tweaks提供了一个非常强大的数据驱动工具,允许您禁用特定生物(或`entity_type`标签)在特定维度、生物群落或生物群落标签中生成!查看专用的数据包页面以了解有关自定义此功能的更多信息!
平和表面: 阻止大多数夜晚在海平面以上(可配置)生成生物,使您不必与所有怪物打交道。只有在新月期间,生物才会在地表生成,但您可以像往常一样在洞穴中找到它们。您可以使用`vtweaks:ignored_by_peaceful_surface` `entity_type`标签来阻止某些生物生成受到此功能的影响。您可以使用`vtweaks:peaceful_surface_blacklist_dims`标签在特定维度中控制此功能。
较小的蜜蜂: 此调整使蜜蜂看起来较小(实际上是它们大小的一半!)。从逻辑上讲,这对它们来说没有任何改变——它们的限制框和碰撞箱对您来说是一样的,但它们看起来好可爱!
宠物友好防火: 此调整防止宠物主人(或所有玩家——这是可配置的)伤害已驯服的宠物,以便您可以保持您的特别朋友健康存活!
无破坏的苔原: 当启用时,由`# forge:creeper`(`entity_type`)引起的任何爆炸在一段时间后将恢复自身,甚至恢复存储在其中的块实体及其数据!
玩家调整
尸体掉落: 死亡时掉落物品的消失机制真的很不公平,不是吗?启用此调整后,玩家死亡时掉落的物品将永远不会消失!
更好的减速落体: 如果您有一双附有强跌落护甲IV的靴子,所有的跌落伤害都将被抵消。然后,您原本会受到的伤害(确切地说——你原本会受到的半颗心的数量)将直接应用于您的靴子。
配方调整
铁砧配方: 使用数据包创建自定义的铁砧配方!查看专用的数据包页面以了解有关自定义此功能的更多信息!
液体转换配方: 通过将物品扔入液体中将其转换为另一种物品(现在具有JEI集成!)。默认情况下,V-Tweaks包括一组将混凝土粉转换为混凝土的配方,但查看专用的数据包页面以了解有关自定义此功能的更多信息!
物品修复: 将工具的修复成本设置为固定的1XP,这样您就可以永远保留您的工具!
世界调整
禁用暴风雨: 彻底禁用雷暴,将它们全部转换为普通雨!
V-Tweaks 1.21.1 4.0.20
## 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:chickens` can 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 `forge` namespace to now use the `c` namespace 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,
etc.
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
anyways because better tools like Quark and AppleSkin exist.
V-Tweaks 1.21.1 4.0.19
## 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:chickens` can 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 `forge` namespace to now use the `c` namespace 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,
etc.
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
anyways because better tools like Quark and AppleSkin exist.
V-Tweaks 1.21.1 4.0.18
## 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:chickens` can 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 `forge` namespace to now use the `c` namespace 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,
etc.
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
anyways because better tools like Quark and AppleSkin exist.
V-Tweaks 1.21.1 4.0.17
## 4.0.17
### Added:
- Config to control whether baby `#c:chickens` can 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 `forge` namespace to now use the `c` namespace 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,
etc.
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
anyways because better tools like Quark and AppleSkin exist.
V-Tweaks 1.21.1 4.0.16
## 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,
etc.
### Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
anyways because better tools like Quark and AppleSkin exist.
V-Tweaks 1.21.1 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,
etc.
## Removed:
- Food Tooltip: This was trickier to re-implement than I had time for, plus this feature gets turned off by most users
anyways because better tools like Quark and AppleSkin exist.
V-Tweaks 1.20.1 4.0.15
## 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
you to throw either 1 stick, or any colored wool, to convert it to white wool.
```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 `copyTagsFromLeft`
- The setting `cpFromRight` has been renamed to `copyTagsFromRight`
- Added 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:valuable`
- If 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
}
```
V-Tweaks 1.20.1 4.0.14
## 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
you to throw either 1 stick, or any colored wool, to convert it to white wool.
```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 `copyTagsFromLeft`
- The setting `cpFromRight` has been renamed to `copyTagsFromRight`
- Added 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:valuable`
- If 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
}
```
V-Tweaks 1.20.1 4.0.13.fix1
## 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
you to throw either 1 stick, or any colored wool, to convert it to white wool.
```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 `copyTagsFromLeft`
- The setting `cpFromRight` has been renamed to `copyTagsFromRight`
- Added 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:valuable`
- If 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
}
```
V-Tweaks 1.19.2 4.0.13
## 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 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
}
```
V-Tweaks 1.19.2 4.0.13
## 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 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
}
```
V-Tweaks 1.19.4 4.0.13
## 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 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
}
```
V-Tweaks 1.20.1 4.0.13
## 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
you to throw either 1 stick, or any colored wool, to convert it to white wool.
```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 `copyTagsFromLeft`
- The setting `cpFromRight` has been renamed to `copyTagsFromRight`
- Added 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:valuable`
- If 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
}
```
V-Tweaks 1.20.1 4.0.12
## 4.0.12:
### Changed:
**Anvil Recipe**:
- The setting `cpFromLeft` has been renamed to `copyTagsFromLeft`
- The setting `cpFromRight` has been renamed to `copyTagsFromRight`
- Added 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:valuable`
- If 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
}
```
V-Tweaks 1.20.1 4.0.11
## 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:valuable`
- If 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
}
```
V-Tweaks 1.20.1 4.0.10
## 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:valuable`
- If 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
}
```
V-Tweaks 1.20.1 4.0.9
## 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
}
```
V-Tweaks 1.19.4 4.0.8
## 4.0.8
### Fixed:
- Hard dependency on JEI
## 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
}
```
V-Tweaks 1.19.2 4.0.8
## 4.0.8
### Fixed:
- Hard dependency on JEI
## 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
### 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
}
```
V-Tweaks 1.20.1 4.0.8
## 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
}
```
V-Tweaks 1.20.1 4.0.7
## 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.
V-Tweaks 1.19.2 4.0.7
## 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
### 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
}
```
V-Tweaks 1.19.4 4.0.7
## 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
}
```
V-Tweaks 1.19.4 4.0.6
## 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
instead of the other colors defined below for the *hunger bar*. If a 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 a food that gives **NO Negative Potion Effects** and at
least one Positive potion effect on consumption
- `foodTooltipNegativeColor (string)`: the HEX code for a 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
}
```
VTweaks 1.10.X 1.4.9.9
VTweaks 1.8.x 1.4.5.1
VTweaks 1.8.x 1.4.8
VTweaks 1.8.x 1.4.8.6
VTweaks 1.8.x 1.4.8.5
VTweaks 1.8.x 1.4.8.4
VTweaks 1.8.x 1.4.8.3
VTweaks 1.8.x 1.4.8.2
VTweaks 1.8.x 1.4.8.1
VTweaks 1.8.x 1.4.7
VTweaks 1.8.x 1.4.6
VTweaks 1.8.x 1.4.5
VTweaks 1.8.x 1.4.5.5
VTweaks 1.8.x 1.4.5.4
VTweaks 1.8.x 1.4.5.3
VTweaks 1.8.x 1.4.5.2
VTweaks 1.8.x 1.4.4
VTweaks 1.8.x 1.4.3
VTweaks 1.8.x 1.4.2
VTweaks 1.8.x 1.4.1
VTweaks 1.11.x 1.4.9.9
VTweaks 1.11.x 1.4.9.16
VTweaks 1.11.x 1.4.9.15
VTweaks 1.11.x 1.4.9.14
VTweaks 1.11.x 1.4.9.13
VTweaks 1.11.x 1.4.9.12
VTweaks 1.11.x 1.4.9.11
VTweaks 1.11.x 1.4.9.10
VTweaks 1.11.x 1.4.11.0
VTweaks 1.11.x 1.4.10.1
VTweaks 1.11.x 1.4.10.0
VTweaks 1.10.x 1.4.9.7
VTweaks 1.10.x 1.4.9.6
VTweaks 1.10.x 1.4.9.5
VTweaks 1.10.x 1.4.9.4
VTweaks 1.10.x 1.4.9.3
VTweaks 1.10.x 1.4.9.16
VTweaks 1.10.x 1.4.9.15
VTweaks 1.10.x 1.4.9.14
VTweaks 1.10.x 1.4.9.13
VTweaks 1.10.x 1.4.9.12
VTweaks 1.10.x 1.4.9.11
VTweaks 1.10.x 1.4.9.10
VTweaks 1.10.x 1.4.11.0
VTweaks 1.10.x 1.4.10.1
VTweaks 1.10.x 1.4.10.0
VTweaks 1.9.4 1.4.9
VTweaks 1.9.4 1.4.9.2
VTweaks 1.9.4 1.4.9.1
VTweaks 1.9 1.4.9
VTweaks 1.8.8 1.4
VTweaks 1.8.8 1.3
VTweaks 1.8.8 1.2
VTweaks 1.8 1.3
VTweaks 1.7.10 1.4
VTweaks 1.7.10 1.4.3
VTweaks 1.7.10 1.3a
VTweaks 1.7.10 1.3
VTweaks 1.19.2 4.0.6
VTweaks 1.19.2 4.0.5
VTweaks 1.19.2 4.0.4
VTweaks 1.19.2 4.0.3
VTweaks 1.19.2 4.0.2
VTweaks 1.19.2 4.0.1
VTweaks 1.19.2 4.0.0
VTweaks 1.19.2 3.6.8
VTweaks 1.19.2 3.6.7
VTweaks 1.19.2 3.6.6
VTweaks 1.19.2 3.6.6.2
VTweaks 1.19.2 3.6.6.1
VTweaks 1.19.2 3.6.5
VTweaks 1.19.2 3.6.5.1
VTweaks 1.18.2 3.6.7
VTweaks 1.18.2 3.6.5
VTweaks 1.18.2 3.6.5.2
VTweaks 1.18.2 3.6.5.1
VTweaks 1.18.2 3.6.4
VTweaks 1.18.2 3.6.4.1
VTweaks 1.18.2 3.6.3
VTweaks 1.18.2 3.6.2
VTweaks 1.18.2 3.6.0
VTweaks 1.18 3.6.2
VTweaks 1.18 3.5.4
VTweaks 1.18 3.5.3
VTweaks 1.18 3.5.2
VTweaks 1.18 1.0
VTweaks 1.17.1 1.0
VTweaks 1.16.4 3.6.2
VTweaks 1.16.4 3.6.1
VTweaks 1.16.4 3.6.0
VTweaks 1.16.4 3.5.0
VTweaks 1.16.4 3.4.2
VTweaks 1.16.4 3.4.1
VTweaks 1.16.4 3.4.1.1
VTweaks 1.16.4 3.4.0
VTweaks 1.16.4 3.4.0.1
VTweaks 1.16.4 3.3.3b
VTweaks 1.16.4 3.3.3
VTweaks 1.16.4 3.3.2
VTweaks 1.16.4 3.3.1
VTweaks 1.16.4 3.3.0
VTweaks 1.16.4 3.2.0
VTweaks 1.16.3 3.1.9
VTweaks 1.15.2 3.1.9
VTweaks 1.15.2 3.1.8
VTweaks 1.15.2 3.1.7
VTweaks 1.15.2 3.1.6
VTweaks 1.15.2 3.1.5
VTweaks 1.14.4 3.1.7
VTweaks 1.14.4 3.1.6
VTweaks 1.14.4 3.1.5
VTweaks 1.14.4 3.1.4
VTweaks 1.14.4 3.1.3
VTweaks 1.14.4 3.1.2
VTweaks 1.14.4 3.1.1
VTweaks 1.14.4 3.1.0
VTweaks 1.14.4 3.0.8
VTweaks 1.14.4 3.0.7
VTweaks 1.14.4 3.0.6
VTweaks 1.14.4 3.0.5
VTweaks 1.14.4 3.0.4
VTweaks 1.14.4 3.0.3c
VTweaks 1.14.4 3.0.3b
VTweaks 1.14.4 3.0.3
VTweaks 1.14.4 3.0.2
VTweaks 1.14.4 3.0.1
VTweaks 1.14.4 3.0.0
VTweaks 1.12.2 2.0.8
VTweaks 1.12.2 2.0.7
VTweaks 1.12.2 2.0.6b
VTweaks 1.12.2 2.0.6
VTweaks 1.12.2 2.0.5
VTweaks 1.12.2 2.0.4
VTweaks 1.12.2 2.0.3
VTweaks 1.12.2 2.0.2
VTweaks 1.12.2 2.0.1
VTweaks 1.12.2 2.0.0b
VTweaks 1.12.2 2.0.0
VTweaks 1.12.2 1.4.12b
VTweaks 1.12.2 1.4.12
VTweaks 1.12 1.4.11.4
VTweaks 1.12 1.4.11.3
VTweaks 1.12 1.4.11.2
VTweaks 1.12 1.4.11.1
VTweaks 1.11.2 1.4.11.1
VTweaks 1.11 1.4.9.8
VTweaks 1.11 1.4.9.8
VTweaks 1.10.2 1.4.11.3
VTweaks 1.10.2 1.4.11.1
V-Tweaks 4.0.6
收录