FIXED PaperMC-specific issues FIXED Errors caused by JustLootIt's API changes (update JustLootIt if you use it and haven't already) FIXED Perk permission requirements not being read properly, causing them to not actually work FIXED Copper equipment not actually having been assigned a weight class. Copper armor is considered heavy. FIXED The leaderboard SQL query throwing errors if your system is set to a region that uses commas for decimals instead of periods
POTENTIAL FIX To profiles on occasion not actually saving and causing players to experience partial rollbacks
The following files have been updated again and must be reset for the changes to apply. These resets are optional, but you won't get the new copper gear recipes if you don't.
- recipes/grid_recipes.json (copper tools and armor)
- recipes/disabled_recipes.yml (to prevent interference with vanilla recipes)
If you are not aware. Resetting a file means to DELETE the file while the server is OFFLINE, then starting the server (counts for most plugins, this restores the default file).
Basically, because copper equipment and tools and weapons and such don't exist on 1.19 (the oldest version the plugin supports) the game can't properly read items made of copper EVEN on versions where they exist. It mistakes them as older materials. As a result, it tries to parse copper items with an older item reader, which creates an invalid item which causes errors. As a result, these fixes implement a workaround where I never actually use these copper items within recipes themselves (so the items saved aren't actually MADE of copper) and instead replace them with the copper material dynamically (this doesn't reference items made of copper, avoiding the legacy item reader, but basically just the material name which isn't read a special way)
ADDED New ingredient option which allows avoiding this issue within ingredients
FIXED The copper item recipes were reworked with new ingredients and results and modifiers to allow them to use and become actual copper items during crafting (lol)
FIXED Flash effect (crit) throwing a console error
FIXED Copper equipment often times not loading as a result of legacy material support being initialized improperly
FIXED Recipes often not copying properly due to their ingredient filters being linked
FIXED Typo in language file, submerged digging speed was called mounted damage
FIXED Infinite stat accumulation with compatible external inventories (like ValhallaTrinkets)
UNDO Discarded the spear recipe which was broken on older versions (1.21.8 and lower)
Made some tweaks for 1.21.9's release!
The plugin was already compatible with 1.21.9 thankfully, but it was lacking the copper stuff! So here that is.
The following files have been updated and must be reset for the changes to apply. These resets are optional, but you won't get the new copper gear recipes if you don't.
- recipes/grid_recipes.json (copper tools and armor)
- skills/smithing_progression.yml (separate progression for added COPPER material type)
- skills/fishing_progression.yml (copper salvaging recipes unlock)If you are not aware. Resetting a file means to DELETE the file while the server is OFFLINE, then starting the server (counts for most plugins, this restores the default file).
The resource pack has also been updated to add the custom models for custom copper weapons!
NEW Copper material class. You can now officially classify something as "made of copper" to the plugin. Added smithing profile properties to allow you to boost specifically copper things.
NEW In addition to the copper material class, I added 10 "generic" undefined material classes for you to do with as you see fit. You won't have to rely on using existing materials or scaling to make your custom material tools and armor scale with their own skill level. These are formatted as "custom1", "custom2", ..., "custom10". For example, if you wanna make a new set of tools and armor out of adamantine, you can arbitrarily decide "custom1" should be for adamantine, and now you can tell the plugin that certain items should be considered "made of custom1" or adamantine. These materials would then scale separately with their own "custom1" crafting quality.
NEW Copper tools, armor, and weapons set loaded only if you're playing on 1.21.9 and above. This will likely clash with the classic content package, but that's not a big deal and you can probably play with it regardless.
TWEAK ValhallaMMO "Spears" are now called "Javelins" since Minecraft will soon get spears added by default. No, you cannot throw these (yet)
Note: By the time the vanilla spears are added, I will probably rework the javelin stats a bit so that they have separate properties from vanilla spears, since vanilla spears seem to behave very similarly to my javelins.
FIX Added iron spear salvaging recipe which was previously absent
FIXED The item and recipe buttons in the dynamic item modifier menu conflicting at times
FIXED The "disabled recipes" menu not updating when toggling recipes on or off
FIXED Items becoming unstackable as a result of their stats being stored in random orders on the item. Primarily affected arrows.
TWEAK The power profile now has different minimum requirements to the other skill profiles, requiring any perks to be unlocked or having gotten any experience in order to be saved.
FIXED "on attack" triggers for real this time FIXED Saving of profiles no longer getting faster and faster FIXED Errors causing recipe manager to be unviewable as a result of certain modifiers having invalid field values FIXED Ranged attacks not being affected by pvp resistance or damage buffs/nerfs FIXED The recipe manager menu not updating when recipes are removed
TWEAK Daytime and light effect triggers not trigger appropriately, and added separate triggers for when the player is exposed to the outside daylight OR sheltered (meaning they have some block above them preventing some daylight)
FIXED Immersive recipes replacing the item in the player's hand even if the recipe failed
FIXED "on attack" effect trigger not working most of the time
FIXED Dummies getting default stats
FIXED Players often not being attributed responsibility for dealing custom damage types (primarily noticed with Hexblade) which caused them to be unaffected by damage modification stats
TWEAK "Material and custom model data" and "Material and custom ID" ingredient choices may now be configured to accept multiple materials
FIXED Possible error regarding leaderboards
FIXED The smithing recipes in /val recipes sometimes not updating with new entries when new smithing recipes are added
FIXED Enchantment algorithm sometimes allowing for conflicting enchantments to be applied on the same item
Also, premium edition is out now! If you're interested in a li'l something extra, please check it out! It's got a great overhaul to villagers and trading, and a martial arts skill!
A large update this one, and the premium version is going to be released soon!
Note: I know reading sucks, but please read these changes (you should be doing so with every update) They can be important and require you to do some more steps, the plugin may break without said steps.
The following files have been updated and must be reset for the changes to apply. These resets ARE mandatory, things may break if you don't.
- config.yml (new persistency properties, attribute priority)
If you are not aware. Resetting a file means to DELETE the file while the server is OFFLINE, then starting the server (counts for most plugins, this restores the default file).
Most important update of this patch:
Effect Triggers
The "Permanent effects" mechanic has been expanded upon, now allowing for custom effects to be used and also allowing them to be executed under specific conditions and events!
I think it's easier to showcase with examples as opposed to explaining it, but now it's possible to:
- Make armor that grants invisibility while sneaking
- Make races that burn in daylight (with ValhallaRaces)
- Make trinkets that grant regeneration during the night (with ValhallaTrinkets)
- Grant players water breathing only while in water
- Make swords that apply armor debuffs on hit
- Make daggers that grant a crit rate buff while out of combat
Want to know more? Check the wiki! There's a new page dedicated to these effects there.
TWEAK Player stat saving system is entirely overhauled thanks to JustAHuman_xD, should work more reliably and the plugin should be more performant.
RELATED ADDITION Added Redis compatibility to MySQL, which should enable the plugin to more reliably share data across multiple servers in real-time (such as Velocity setups!)
TWEAK The dynamic item modifiers that required a text input may now have you input their text directly in chat as opposed through clunky item NBT
TWEAK "Replace by indexed item" modifiers can now be configured to only execute the indexed item's modifiers, as opposed to replacing the item. Allows for much more modularised item creation
TWEAK All stats now have trailing 0's removed (for example, 100.0% now just displays as 100%)
TWEAK Attributes may now be given a priority rating in config.yml, which determines the order of appearance in the item's lore (stats like attack damage and attack speed are by default on the top while secondary stats are below it)
TWEAK /val items is now finally sorted by ID!
ADDED Some new modifiers relating to:
- Adding an armor color to leather armor when using the FancyPants shader, or using the EquipableComponent if available.
- Adding a Custom Model Data if below 1.21.4, or applying an Item Model if at or above 1.21.4
ADDED Item rarity modifiers. Only really useful if you have other plugins where item rarity is of relevance
ADDED /val migrate command (also from JustAHuman_xD), which allows you to switch from SQLite to MySQL and backwards.
FIXED "Unarmed" definition not counting empty hands as unarmed
FIXED Effect scoreboard not working on 1.19 versions
FIXED Double jumps not being affected by jump height multiplier attributes
FIXED Cooking recipes in the recipe book showing the wrong item output when it's a tinkering recipe
FIXED Biome filter in loot table not working on newer versions of Minecraft
FIXED One of the two custom durability modifiers not working (rather than removing one I've decided to make both work)
FIXED Under certain conditions seemingly identical items not being stackable due to semi-randomized stat saving order
FIXED Certain farms relying on mobs being hurt (you monster) not taking damage because the damage taken was 0. Instead now only players may receive immunity if damage taken is 0, while Armadillos continue to forever burn alive. They're in great pain. It sucks.
UPDATED RESOURCE PACK!
Mostly just for the new stat icons, as well as some assets for the premium version when it releases. Please execute "/val resourcepack setup" again, or if you're using different resource packs as well you should look into merging the new pack with your other packs. Or don't, it's not a big deal.
The following files have been updated and must be reset for the changes to apply. These resets are not mandatory, reset only if you agree with the changes:
- config.yml (damage absorption stat was involved in the armor calculation formula)
- skills/archery.yml (REQUIRED, because projectile damage is now configurable and the values that are currently present will throw errors if this is not done)
If you are not aware. Resetting a file means to DELETE the file while the server is OFFLINE, then starting the server (counts for most plugins, this restores the default file).
ADDED 7 new stats!
- WATER_MOVEMENT_EFFICIENCY_BONUS
Manipulates movement speed in water
- SUBMERGED_MINING_SPEED_BONUS
Manipulates mining speed in water
- FLIGHT_SPEED_BONUS
Manipulates flight speed of flying entities (does not affect players unfortunately, but might in the future)
- OXYGEN_BONUS
Manipulates how long the player can breathe under water. Represents a multiplier of breath duration
- BACK_PROTECTION
Manipulates the damage a player takes while looking away from an attack. "-1" for example would make a player take double damage when attacked from the back.
- FRONT_PROTECTION
Manipulates the damage a player takes while looking at an attack. "1" for example would make a player immune to damage they're looking at.
- DAMAGE_ABSORPTION
Reduces (or increases) damage by a value before armor mitigations. "2" would reduce all physical damage taken by 2. This does not bypass the minimum physical damage taken limit of 10%.
These stats can also be manipulated from the player's power profile.
Custom attributes and potion effects were also added for these stats.
ADDED /val debug command. Currently just debugs for woodcutting's tree capitator, which has an issue of stopping seemingly randomly, affecting everyone. When it happens, please do /val debug tree_capitator <player>, on the player that's currently experiencing the bug. Then ask them to tree capitate again. Then send me the messages you receive.
ADDED Configurable projectile damage formula. Previously, an arrow's velocity translated to a direct damage multiplier. In a lot of scenarios this was way too overtuned. The new damage formula puts diminishing returns on arrow velocity, but only while shot by players (you can still make a railgun that instantly kills anything).
This also allows you to modify critical damage more flexibly, and also puts diminishing returns on piercing arrows.
In general, this is a massive (well deserved) NERF for archery
ADDED Many new placeholders to display party information!
ADDED Trees can now be protected from accidental tree-capitation if there are any resource blocks in its construction (iron, gold, diamond, copper, lapis, redstone blocks, or obsidian)
FIXED Flight granted from the flight reward being lost when changing to another dimension under certain circumstances.
FIXED Arrow damage being 2 points higher than advertised. This usually meant that bow damage was double what was intended.
FIXED Large lag spikes when interacting with /val recipes, it's much quicker to navigate now.
FIXED Shields leaking damage through to the player. This was because the plugin checked if the vanilla final damage received was exactly 0 to actually block damage, but due to floating-point inaccuracies this was often not the case.
FIXED Shields being swapped hands for a tick every time damage is blocked. This was necessary for the "shield disabling" stat to work, but this still happened if the stat was not at all involved in an attack.
API EntityDodgeAttackEvent was added
Updated to 1.21.8
ADDED Update checker! Now you're notified whenever there's an update and reminded to read these update notes which is important often!!! Can be turned off in config.yml.
ADDED Lootin compatibility
ADDED "None" weight class, to specifically tell the plugin the item belongs to no weight class and should not benefit from unarmed or armed buffs/debuffs
FIXED Archery granting experience for shooting animals
FIXED (potentially) ValhallaMMO recipes being craftable in blacklisted worlds
FIXED "Item replacement" modifiers not passing the proper context, breaking produced items sometimes
FIXED Potions not actually being given their potion effects when brewed, causing splash potions to not function at all
Thank you again for your patience and bug reports, here's some more improvements
FIXED Issues regarding durability
FIXED Custom enchantments introduced by other plugins or datapacks being limited to max level 1 through anvil combining
FIXED The armor set editor improperly displaying stat quantities, and made it work a little better
FIXED A whole wide range of issues regarding an item's lore and display name. Mainly manifesting as an item's durability or upgrades not updating and certain recipes not working properly.
Please report any more bugs you find as this fix required a very large amount of files being changed
Thank you for your patience!
The following files have been updated and must be reset for the changes to apply. These resets are not mandatory, reset only if you agree with the changes:
- skills/woodcutting_progression.yml (tree capitator buff)
The plugin is now compatible with 1.21.7!
FIXED Issue regarding item buttons occasionally not showing lore properly
FIXED Perk permission requirements being ignored (not in any default configuration, so it doesn't likely affect you)
FIXED Rare issue with leaderboards causing NPE errors
TWEAK Slightly increased tree capitator's max tree size stats. This was because the tier 1 tree capitator was just barely too small to cut down tall thin spruce trees and larger oak trees whereas the tier 2 version was just barely too small to cut down dark oak trees in 1 go. The tier 3 max size was untouched.
Tier 1: 8 -> 16
Tier 2: 32 -> 48
Tier 3: 128 -> 128
The plugin's now compatible with 1.21.6!
FIXED Attribute stats (mainly armor and toughness) applied through vanilla commands or other plugins not contributing to ValhallaMMO's custom damage mechanics
FIXED Leaves decaying naturally not benefiting from golden/crystal apple drops from woodcutting
FIXED Error with armor set editor
Thanks for sticking around! Please leave a review if you can and like the plugin :)
It's been too long since the last update, reason being that I was working on resource pack changes for the premium branch that is still in development and wanted to add those changes to the main plugin for the sake of convenience. But it's taking too long to do, so I'll just update now. ANYWAY
This update brings immense performance improvements (Thanks to JustAHuman_xD and casperwtf)
There will be more performance improvements, but they will be relatively minor to these improvements (probably)
ADDED Mythicmobs integration for drops (if a drop is formatted like "val <itemdrop>" it uses an item from the item registry (/val items) instead. Mythicmobs may now also scale with ValhallaMMO's difficulty scaling. (Thanks to httpedor for this patch)
ADDED 'raw stat' placeholders for system stats. %stat_source_raw_<stat>% may be used to get the raw value of a stat, without formatting attached. These stats will be precise to 6 decimals. Of course, they may be converted to PAPI placeholders by doing %valhallammo_stat_source_raw_<stat>% instead.
FIXED Critical bug causing vanilla potion effects to be 20x stronger than intended
FIXED Critical exploit involving /redeem
FIXED Permission-based exp buffs not being removed when the permission is specifically set to 'false'
FIXED "infinity vector" errors that pop up sometimes
FIXED Typo in farming_progression.yml, where EYEBLOSSOM was used instead of OPEN_EYEBLOSSOM
API Largely reworked DynamicItemModifier API. This will require you to update ValhallaTrinkets as well, if you have it
TWEAK Iron golems built by players can no longer be used to grind weapon skills
TWEAK The "hunger save chance" stat now instead affects the player's exhaustion instead of hunger. This allows the stat to affect saturation as well, and the transition between hunger points should be smoother now. (instead of multiplying hunger or having a chance to not decrease a point, it will go faster or slower). The name is no longer accurate, but it's too late to change at this point
ADDED Mining property allowing items to not be destroyed with TNT
TWEAK Flight granted through the enable_flight reward can now be interrupted by PvP and PvE for configurable timings for each
TWEAK Damage hits exceeding 1 million will no longer grant EXP entirely, this is to prevent skills reaching max level instantly when the server has /kill or /suicide interactions
TWEAK Sand, dirt, clay, etc. broken with TNT now also rewards Digging EXP
TWEAK Logs destroyed with TNT now also rewards Woodcutting EXP
TWEAK The "signature" modifier may now parse placeholders, as well as the %quality_smithing% and %quality_alchemy% placeholders
FIXED Knockback resistance not being removed even after taking off armor granting it
FIXED Party exp sharing not allowing power to level up
FIXED Party exp sharing being able to share power exp
FIXED Inconsistent armor calculations, manifesting in armor being "reduced" when hit repeatedly. This may be a buff or nerf depending on your stats
FIXED Unnecessary stat cache resets when getting EXP at max skill level
TEMPFIX The "consumable" modifier throwing errors when used on PaperMC. Due to Paper's hard fork away from spigot, differences between APIs will start appearing. Paper applies the consumable NBT tag differently than Spigot, and it so as far as Paper is concerned the plugin is using a feature that doesn't exist on it. The consumable modifier will not work properly on paper still, but it will no longer throw errors