Lucky Tweaks

Fixes and balance tools for the Lucky Block mod: block luck that actually works, per-block luck caps, and lucky block fusion

Lucky Tweaks

Fixes and balance tools for the Lucky Block mod (Forge 1.20.1).

Luck fix

The Lucky Block mod reads a broken block's Luck after the block has been removed from the world, so player breaks always roll at luck 0. Luck crafting, natural lucky/unlucky structures and custom Luck values then have no effect. Lucky Tweaks captures the real Luck at break time and injects it into the drop roll. No changes to the Lucky Block jar.

Chance

Luck bonuses are expressed as a single Chance %, so the same number means the same thing on every block: +100% always targets that block's best possible outcome, -100% its worst. Other mods and scripts contribute Chance through the API (the Lucky Ring, Lucky Belt and the invasion penalty all go through it), and it's translated into each block's own Luck behind the scenes.

In-game config screen

Every option below can be set from the mod list config button, with no file editing. The screen lists every lucky block it detects and gives each one its own controls (cap, spawn rule, on/off).

Per-block luck caps

Cap any lucky block's positive luck (negative luck is never capped):

# config/luckytweaks-common.toml
luckCaps = ["lucky:lucky_block=60"]

The cap applies to the break roll, the luck crafting result and the crafting preview, so the tooltip always matches the actual roll. Reloadable, and overrides caps registered through the API.

Worldgen control

  • Global spawn multiplier (1.0 to 3.0) for how often lucky blocks appear in newly generated terrain. Already generated chunks are never changed.
  • Per-dimension rules for any block: block it in a dimension, force it into one, or set its rate (1 in N chunks).

Disable lucky blocks

Switch off specific lucky blocks. A disabled block no longer generates, and breaking an existing one fires no effect: it drops back as an item with its Luck kept. Covers the base block, addon blocks and cross-mod lucky blocks.

Lucky weapons fix

Lucky Swords, Bows and Potions fire a lucky-block effect on hit, and some of those effects hurt the wielder. When enabled, harmful effects (TNT, lightning, lava, fire, cobweb) are removed from the on-hit roll with a chance that rises with the weapon's Luck, down to about 1% at +100. Offensive and beneficial effects are kept, and lucky blocks are never touched. Configurable.

Fusion

A crafting recipe that combines two or more lucky blocks of the same type into one, with their Luck values added (bounded by the block's cap and an overall +/- 100 limit). Works with stacks and shift-click for batches.

Shared lives

The pack's difficulty dial, in place of a plain hardcore on/off switch. The run has a pool of lives shared by the whole team that never refills on its own, so the death that empties it ends the run. One life solo; in multiplayer, one per player plus a spare (three for two of you, four for three), counted on the biggest the team has ever been. Both numbers are configurable, and what decides it is how many of you are actually playing, not whether the world is open to LAN. Remaining lives show as a row of hearts on the HUD, with a colour, corner and offset set from a dedicated "Lives" tab in the config screen.

PlayerRevive support

With the optional PlayerRevive mod installed, a player who would die instead drops into a downed state a team-mate can undo. It only arms itself while another player is actually online, so a solo run dies the plain hardcore way, on a server exactly as in singleplayer. Going down spends a shared life; giving up costs your items instead. There is no switch to turn it off on the Lucky Tweaks side: the shared pool grants co-op an extra life per player because the revive exists, so the two ship together (PlayerRevive's own config is still yours).

Player locator

In multiplayer, a strip of markers above the XP bar points at the other players, coloured per player and fading with distance. Hold the player-list key to raise their name plaques and head icons. A faithful reproduction of Player Locator Plus, fully configurable, with options to hide a sneaking or invisible player.

Sacred Heart cap

Caps how many Yakurum Sacred Hearts a player can ever eat (10 by default). Each one permanently adds a heart and Yakurum caps nothing, so it stops the health bar growing without end. Every other source of extra health is left alone.

Crocodile fix

Makes Fuze Relics' crocodile give an eaten item back when it is killed, instead of destroying it for good.

Legendary and cursed drops

Reads the NBT markers a pack injects into its drop tables to recognise its rarest "legendary" drops and its nastiest "cursed" ones. A legendary draw fires a server-wide fanfare (sound + particles); both feed the legendary/cursed counters on the Lucky Stats screen. The Lucky Idol's boost and curse hook into the same markers.

Main-menu branding

Shows a configurable line (the modpack name and version) at the bottom of the title screen. One config file, no rebuild.

Run integrity seal

For runs and contests where legitimacy matters. A per-player seal records, on the Lucky Stats screen, whether a run used creative or spectator, had cheats enabled, ran outside hardcore, used a non-default Lucky Tweaks config, or had its save edited. Once a flag is set it stays set, and the record is checksummed so basic save editing is detectable. As with any client-side check it can be bypassed by a determined modder, so host contests on a server for full assurance. Requires Lucky Stats.

JEI

With JEI installed, example recipes are generated for every registered lucky block and luck-crafting ingredient (luck crafting and fusion are dynamic recipes JEI cannot display on its own).

API

com.lwi.luckytweaks.api.LuckyTweaksApi:

  • addChance(int): contribute Chance % to the current break (call from a BlockEvent.BreakEvent handler at priority HIGH or below)
  • addTopReroll(): grant one re-roll toward the block's top tier
  • registerLuckCap(blockId, max) / getLuckCap(blockId) / getCapturedLuck() / getContributedChance()
  • registerBreakListener(...), isLuckyBlock(...), getLuckyBlockIds(...), plus the LEG_TAG / CURSE_TAG drop markers

Usable from KubeJS server scripts via Java.loadClass.


Requires Lucky Block. Optional: PlayerRevive (co-op revive), JEI (recipe display), Lucky Stats (run integrity seal). Built for Lucky World Invasion Reloaded.

The Lucky Tweaks Team

Forgeborn tier frameprofile avatar
Owner
Forgeborn tier icon
  • 28
    Followers
  • 6
    Projects
  • 184.6K
    Downloads

More from LainkView all