Download Respective Effectiveness — Minecraft Mods — MetaMods

Respective Effectiveness

Active

Downloads

0

Last update

2 years ago

Versions

b1.7.3
Client and server
Forge
Weapons and armor
Game mechanics
Utils

Respective Effectiveness for Minecraft Beta 1.7.3

The Respective Effectiveness modification is a small but useful gameplay improvement focusing on the effectiveness of tools when gathering resources.

Core Concept

This mod changes the block mining system to make it more logical. Now any pickaxe will efficiently break a furnace since pickaxes are specifically designed for working with stone surfaces. Similarly, axes work great with wooden structures, and shovels handle loose materials perfectly.

Watching the video demonstration is recommended - screenshots cannot fully convey the essence of this mod.

Slab Particularities

The slab system uses metadata to handle two block states and four different slabs. This creates some confusion in the processing code. A potential solution could be creating separate blocks for wooden slabs, as implemented in version 1.3, but this would require using two additional block IDs.

Technical Requirements

For the mod to function, you'll need:

  • Modloader Beta 1.7.3
  • ModloaderMP Unofficial v2
  • Forge V1.0.6
public class mod_RespectiveEffectiveness extends BaseModMp {

    public static final int zero = 0;
    public static final int one = 1;
    public static final int two = 2;
    public static final int three = 3;
    public static final String pickaxe = "pickaxe";
    public static final String axe = "axe";
    public static final String shovel = "shovel";

    public mod_RespectiveEffectiveness() {
        // Setup harvest levels for pickaxes
        MinecraftForge.setBlockHarvestLevel(Block.stone, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.cobblestone, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.oreCoal, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.glass, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.dispenser, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.sandStone, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.rail, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.railDetector, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.railPowered, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pistonBase, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pistonStickyBase, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pistonExtension, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pistonMoving, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairDouble, 0, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairSingle, 0, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairDouble, 1, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairSingle, 1, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairDouble, 3, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairSingle, 3, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.brick, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.cobblestoneMossy, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.mobSpawner, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stoneOvenActive, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stoneOvenIdle, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairCompactCobblestone, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.lever, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pressurePlateStone, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.button, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.ice, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.netherrack, pickaxe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.glowStone, pickaxe, zero);

        // Iron ore and similar require level 1
        MinecraftForge.setBlockHarvestLevel(Block.oreIron, pickaxe, 1);
        MinecraftForge.setBlockHarvestLevel(Block.blockSteel, pickaxe, 1);
        MinecraftForge.setBlockHarvestLevel(Block.oreLapis, pickaxe, 1);
        MinecraftForge.setBlockHarvestLevel(Block.blockLapis, pickaxe, 1);

        // Level 2 for diamond ore, gold
        MinecraftForge.setBlockHarvestLevel(Block.doorSteel, pickaxe, 2);
        MinecraftForge.setBlockHarvestLevel(Block.oreDiamond, pickaxe, 2);
        MinecraftForge.setBlockHarvestLevel(Block.blockDiamond, pickaxe, 2);
        MinecraftForge.setBlockHarvestLevel(Block.oreGold, pickaxe, 2);
        MinecraftForge.setBlockHarvestLevel(Block.blockGold, pickaxe, 2);
        MinecraftForge.setBlockHarvestLevel(Block.oreRedstone, pickaxe, 2);
        MinecraftForge.setBlockHarvestLevel(Block.oreRedstoneGlowing, pickaxe, 2);

        // Obsidian requires pickaxe with harvest level 3
        MinecraftForge.setBlockHarvestLevel(Block.obsidian, pickaxe, 3);

        // Setup for axes
        MinecraftForge.setBlockHarvestLevel(Block.wood, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.sponge, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.glass, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.musicBlock, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.blockBed, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.web, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairDouble, 2, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairSingle, 2, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.workbench, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.bookShelf, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pressurePlatePlanks, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.stairCompactPlanks, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.chest, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.lockedChest, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.doorWood, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.trapdoor, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.ladder, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.signPost, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.signWall, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.cactus, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.cake, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.jukebox, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.fence, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pumpkin, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.pumpkinLantern, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.planks, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.blockSnow, axe, zero);
        MinecraftForge.setBlockHarvestLevel(Block.snow, axe, zero);

        // Setup for shovels
        MinecraftForge.setBlockHarvestLevel(Block.grass, shovel, zero);
        MinecraftForge.setBlockHarvestLevel(Block.dirt, shovel, zero);
        MinecraftForge.setBlockHarvestLevel(Block.sand, shovel, zero);
        MinecraftForge.setBlockHarvestLevel(Block.gravel, shovel, zero);
        MinecraftForge.setBlockHarvestLevel(Block.tilledField, shovel, zero);
        MinecraftForge.setBlockHarvestLevel(Block.slowSand, shovel, zero);
        MinecraftForge.setBlockHarvestLevel(Block.blockClay, shovel, zero);
    }

    public String Version() {
        return "v1.0";
    }

    public String Name() {
        return "Respective Effectiveness";
    }
}
Project members
poopiedoopie9002

poopiedoopie9002

Developer

Created: 18 Mar 2024

ID: 24663