Skip to content

Commit

Permalink
some more shit idk
Browse files Browse the repository at this point in the history
  • Loading branch information
HbmMods committed Dec 17, 2023
1 parent 46a5f82 commit 0d2ab05
Show file tree
Hide file tree
Showing 7 changed files with 65 additions and 94 deletions.
78 changes: 28 additions & 50 deletions changelog
Original file line number Diff line number Diff line change
@@ -1,55 +1,33 @@
## Added
* Doors!
* Your favorites from 1.12, the 7 remaining doors have finally been ported
* Thanks to KoblizekXD for biting the bullet
* Rubber boat
* Made from latex or synthetic rubber
* A much less jankier alternative to the vanilla boat. Rotations are silky smooth and done via the strafe keys instead of based on the player's orientation
* Won't break from ramming into blocks
* Faster than a regular boat, but will decelerate quicker when there's nobody sitting in it, preventing the boat from drifting off too far when empty
* Exposure chamber
* Now performs the particle transmutation recipes that were previously done in the crafting table
* Stylish as hell
* Decoy missile
* A cheap tier 1 missile that shows up on radar screens as tier 4 (eg. nuclear) missiles
* Printing press stamps
* 8 different stamps for printing certain pages
* If a meteor dungeon safe is generated without a black book inside, it will generate two random stamps instead
* With all 8 stamps, allows you to print your own black book
* Gylphid pheromones
* Used by certain glyphids, killing those allows for the pheromone glands to be harvested
* By mixing the pheromone with blood and medicine, it can be modified to extend its positive effects to non-glyphid entities
* Disperser canisters
* Throwable like grenades, will cause a small AoE effect based on the fluid
* Effectively a gas grenade, allows phosgene and mustard gas to be used directly
* Hot things like hot coolant or steam are especially effective

## Changed
* Updated russian localization
* Reduced the blast resistance of the large doors from absurdly high to still very but not quite as high
* Custom missiles are now launchable using the radar
* NTM's structures should no longer spawn in dimensions besides the overworld. Ores will still generate, assuming the config option is set.
* Decreased M1tty's radiation resistance
* It's really damn cheap, what did you expect
* M1tty's helmet now acts like a protective mask
* Most non-custom missiles except tier 0s are now assembled in the arc welder
* Crafting complexity has been reduced, the recipes only need the three major components without any extra loose plates
* Non-custom missiles have been slightly buffed
* Explosions are now slightly larger and they use the new cross-detection entity damage code which still affects entities behind small hills that would otherwise be shielded
* Explosions now have a 2x larger entity damage radius
* Updated the digiminer recipe for mekanism compat
* Added config options to the ground water pumps
* Missile parts such as non-custom thrusters and fuselages are now made in the arc welder, recipe ingredients have been adjusted as well
* Null grenades now have a slightly larger radius, should no longer wipe playerdata and require UNDEFINED to make
* Added some breedable material to BFB PWR fuel rods, meaning that the recycling recipes now actually yield a net positive instead of being a massive waste of time
* The RBMK control panel has been upgraded
* Right.clicking the color buttons will now assign the color to the selected control rods
* There's now a new button that allows to cycle through compressor settings on RBMK steam channels
* The flux display is now functional. It will display the flux curve of the last 30 seconds, as well as labels for the total flux level.
* With the color assigning buttons and the flux display finished, the console is now finally complete
* Compressing blood at 4 PU now turns it into crude oil at a ratio of 2:1
* Increased the cap for the overdrive upgrade in acidizers, tier 2 should now yield the proper amount and tier 3 should now be better than tier 2
* The tooltip of valid upgrades now changes when a compatible machine GUI is open
* Reworked glyphids
* Hives are no longer open, instead they are much flatter with multiple spawners inside
* Naturally spawning hives now spawn with some loot inside
* Spawners now place glyphids nearby instead of on top, preventing them from suffocating instantly
* Glyphids no longer spawn every second, instead they spawn in waves
* More config option for spawning behavior
* A new config option for rampant mode which makes glyphids more aggressive, scouts expand directly towards players and all glyphids able to dig away obstacles
* A dedicated glyphid for digging also exists outside of rampant mode
* Glyphid meat can now be processed into resources
* Glyphid behemoths now have an acid attack and create a gas effect on death
* Larger glyphids can now destroy lanterns
* Infested glyphids
* 10% of all glyphid hives will be infested
* Infested glyphids are roughly equal, but apply a poison effect and nausea when attacking
* When killed, they will drop maggots that attack the player
* Infested scouts will also create infested hives
* Glyphid hive blocks no longer drop when broken
* The industrial generator no longer has an exponential modifier for power generation, which means it no longer produces several times more power than any other generator
* The igen by default only burns with 50% efficiency, which can be raised back to 100% with water and even to 125% with lubricant, making it slightly better when lubed than the fluid burner

## Fixed
* Fixed ancient bug where custom missiles launched using the launch table would not use the accuracy calculation and always be pin-point accurate
* Fixed RBMK heat exchangers being able to use heatable fluids that don't have heat exchanger efficiency defined like liquid sodium, heavy water and thorium salt
* Fixed RBMK heat exchangers not using the heat exchanger efficiency variable to determine cooling power
* Fixed the ballistic gauntlet spawning a client-side ghost bullet that doesn't move or despawn
* Fixed bug where different custom machine cores would merge in a stack when picked up, turning them into the same type
* Fixed radar screen blips being visible through the back of the model
* Fixed desh crate's last half of slots preventing radiation entirely
* Fixed large mining drill shift-clicking
* Fixed the info system not being visible with a gun equipped
* Fixed a potential crash with suit batteries
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
mod_version=1.0.27
# Empty build number makes a release type
mod_build_number=4809H1
mod_build_number=4816

credits=HbMinecraft, rodolphito (explosion algorithms), grangerave (explosion algorithms),\
\ Hoboy (textures, models), Doctor17 (russian localization), Drillgon200 (effects, models,\
Expand Down
3 changes: 2 additions & 1 deletion src/main/java/com/hbm/crafting/WeaponRecipes.java
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ public static void register() {
CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_mirv, 1), new Object[] { "LLL", "WFW", "SSS", 'S', STEEL.plate(), 'L', PB.plate(), 'W', ModItems.wire_gold, 'F', ModItems.gun_fatman });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_proto, 1), new Object[] { "LLL", "WFW", "SSS", 'S', ANY_RUBBER.ingot(), 'L', ModItems.plate_desh, 'W', ModItems.wire_tungsten, 'F', ModItems.gun_fatman });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_nuke, 1, AmmoFatman.BALEFIRE.ordinal()), new Object[] { " S ", "EBE", " S ", 'S', ModItems.hull_small_steel, 'E', ModItems.powder_power, 'B', ModItems.egg_balefire_shard });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_mp40, 1), new Object[] { "IIM", " SW", " S ", 'S', STEEL.plate(), 'I', STEEL.ingot(), 'W', KEY_PLANKS, 'M', ModItems.mechanism_rifle_2 });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_mp40, 1), new Object[] { "IIM", " SW", " S ", 'S', STEEL.plate(), 'I', STEEL.ingot(), 'W', KEY_PLANKS, 'M', ModItems.mechanism_rifle_1 });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_thompson, 1), new Object[] { "IIM", " SW", " S ", 'S', IRON.plate(), 'I', STEEL.plate(), 'W', KEY_PLANKS, 'M', ModItems.mechanism_rifle_2 });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_flechette, 1), new Object[] { "PPM", "TIS", "G ", 'P', STEEL.plate(), 'M', ModItems.mechanism_rifle_2, 'T', ModItems.hull_small_steel, 'I', STEEL.ingot(), 'S', ANY_PLASTIC.ingot(), 'G', ModItems.mechanism_launcher_1 });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_uboinik, 1), new Object[] { "IIM", "SPW", 'P', STEEL.plate(), 'I', STEEL.ingot(), 'W', KEY_PLANKS, 'S', KEY_STICK, 'M', ModItems.mechanism_revolver_2 });
Expand Down Expand Up @@ -365,6 +365,7 @@ public static void register() {
CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_pink_cloud), new Object[] { " S ", "ECE", " E ", 'S', ModItems.powder_spark_mix, 'E', ModItems.powder_magic, 'C', ModItems.grenade_cloud });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.nuclear_waste_pearl), new Object[] { "WWW", "WFW", "WWW", 'W', ModItems.nuclear_waste_tiny, 'F', ModBlocks.block_fallout });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.grenade_kyiv), new Object[] { ModItems.canister_napalm, ModItems.bottle2_empty, ModItems.rag });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.disperser_canister_empty, 4), new Object[] { " P ", "PGP", " P ", 'P', ANY_HARDPLASTIC.ingot(), 'G', ModBlocks.glass_boron });

//Sticks of explosives
CraftingManager.addRecipeAuto(new ItemStack(ModItems.stick_dynamite, 4), new Object[] { " S ", "PDP", "PDP", 'S', ModItems.safety_fuse, 'P', Items.paper, 'D', ModItems.ball_dynamite });
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/hbm/inventory/fluid/Fluids.java
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ public static void init() {
UNSATURATEDS = new FluidType("UNSATURATEDS", 0x628FAE, 1, 4, 1, EnumSymbol.NONE).addTraits(new FT_Flammable(1_000_000), GASEOUS); //acetylene burns as hot as satan's asshole
SALIENT = new FluidType("SALIENT", 0x457F2D, 0, 0, 0, EnumSymbol.NONE).addTraits(DELICIOUS, LIQUID, VISCOUS);
XPJUICE = new FluidType("XPJUICE", 0xBBFF09, 0, 0, 0, EnumSymbol.NONE).addTraits(LIQUID, VISCOUS);
ENDERJUICE = new FluidType("ENDERJUICE", 0x127766, 0, 0, 0, EnumSymbol.NONE).addTraits(LIQUID, VISCOUS);
ENDERJUICE = new FluidType("ENDERJUICE", 0x127766, 0, 0, 0, EnumSymbol.NONE).addTraits(LIQUID);
PETROIL_LEADED = new FluidType("PETROIL_LEADED", 0x44413d, 1, 3, 0, EnumSymbol.NONE).addContainers(new CD_Canister(0x2331F6)).addTraits(new FT_Flammable(125_000), new FT_Combustible(FuelGrade.MEDIUM, 450_000), LIQUID, LEADED);
GASOLINE_LEADED = new FluidType("GASOLINE_LEADED", 0x445772, 1, 2, 0, EnumSymbol.NONE).addContainers(new CD_Canister(0x2F775A)).addTraits(new FT_Flammable(400_000), new FT_Combustible(FuelGrade.HIGH, 1_500_000), LIQUID, LEADED);
COALGAS_LEADED = new FluidType("COALGAS_LEADED", 0x445772, 1, 2, 0, EnumSymbol.NONE).addContainers(new CD_Canister(0x1E155F)).addTraits(new FT_Flammable(75_000), new FT_Combustible(FuelGrade.MEDIUM, 250_000), LIQUID, LEADED);
Expand Down
48 changes: 24 additions & 24 deletions src/main/java/com/hbm/items/tool/ItemFusionCore.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,32 +23,32 @@ public ItemFusionCore(int charge) {

@Override
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) {
if(ArmorFSB.hasFSBArmorIgnoreCharge(player) && player.inventory.armorInventory[3].getItem() instanceof ArmorFSBPowered) {
for(ItemStack st : player.inventory.armorInventory) {
if(st == null)
continue;
if(st.getItem() instanceof IBatteryItem) {
long maxcharge = ((IBatteryItem)st.getItem()).getMaxCharge();
long charge = ((IBatteryItem)st.getItem()).getCharge(st);
long newcharge = Math.min(charge + this.charge, maxcharge);
((IBatteryItem)st.getItem()).setCharge(st, newcharge);
}
}
stack.stackSize--;
world.playSoundAtEntity(player, "hbm:item.battery", 1.0F, 1.0F);
}

if(ArmorFSB.hasFSBArmorIgnoreCharge(player) && player.inventory.armorInventory[2].getItem() instanceof ArmorFSBPowered) {

for(ItemStack st : player.inventory.armorInventory) {

if(st == null)
continue;

if(st.getItem() instanceof IBatteryItem) {

long maxcharge = ((IBatteryItem) st.getItem()).getMaxCharge();
long charge = ((IBatteryItem) st.getItem()).getCharge(st);
long newcharge = Math.min(charge + this.charge, maxcharge);

((IBatteryItem) st.getItem()).setCharge(st, newcharge);
}
}

stack.stackSize--;

world.playSoundAtEntity(player, "hbm:item.battery", 1.0F, 1.0F);
}

return stack;
}

@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {

Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/hbm/lib/RefStrings.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
public class RefStrings {
public static final String MODID = "hbm";
public static final String NAME = "Hbm's Nuclear Tech Mod";
public static final String VERSION = "1.0.27 BETA (4809H1)";
public static final String VERSION = "1.0.27 BETA (4816)";
//HBM's Beta Naming Convention:
//V T (X)
//V -> next release version
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,11 +61,8 @@ public class TileEntityMachineIGenerator extends TileEntityMachineBase implement
public static int waterCap = 16000;
public static int oilCap = 16000;
public static int lubeCap = 4000;
public static int coalGenRate = 20;
public static int coalGenRate = 100;
public static double rtgHeatMult = 0.15D;
public static double waterPowerMult = 1.0D;
public static double lubePowerMult = 1.5D;
public static double heatExponent = 1.15D;
public static int waterRate = 10;
public static int lubeRate = 1;
public static long fluidHeatDiv = 1_000L;
Expand All @@ -81,11 +78,8 @@ public void readIfPresent(JsonObject obj) {
waterCap = IConfigurableMachine.grab(obj, "I:waterCap", waterCap);
oilCap = IConfigurableMachine.grab(obj, "I:oilCap", oilCap);
lubeCap = IConfigurableMachine.grab(obj, "I:lubeCap", lubeCap);
coalGenRate = IConfigurableMachine.grab(obj, "I:solidFuelRate", coalGenRate);
coalGenRate = IConfigurableMachine.grab(obj, "I:solidFuelRate2", coalGenRate);
rtgHeatMult = IConfigurableMachine.grab(obj, "D:rtgHeatMult", rtgHeatMult);
waterPowerMult = IConfigurableMachine.grab(obj, "D:waterPowerMult", waterPowerMult);
lubePowerMult = IConfigurableMachine.grab(obj, "D:lubePowerMult", lubePowerMult);
heatExponent = IConfigurableMachine.grab(obj, "D:heatExponent", heatExponent);
waterRate = IConfigurableMachine.grab(obj, "I:waterRate", waterRate);
lubeRate = IConfigurableMachine.grab(obj, "I:lubeRate", lubeRate);
fluidHeatDiv = IConfigurableMachine.grab(obj, "D:fluidHeatDiv", fluidHeatDiv);
Expand All @@ -97,11 +91,8 @@ public void writeConfig(JsonWriter writer) throws IOException {
writer.name("I:waterCap").value(waterCap);
writer.name("I:oilCap").value(oilCap);
writer.name("I:lubeCap").value(lubeCap);
writer.name("I:solidFuelRate").value(coalGenRate);
writer.name("I:solidFuelRate2").value(coalGenRate);
writer.name("D:rtgHeatMult").value(rtgHeatMult);
writer.name("D:waterPowerMult").value(waterPowerMult);
writer.name("D:lubePowerMult").value(lubePowerMult);
writer.name("D:heatExponent").value(heatExponent);
writer.name("I:waterRate").value(waterRate);
writer.name("I:lubeRate").value(lubeRate);
writer.name("D:fluidHeatDiv").value(fluidHeatDiv);
Expand Down Expand Up @@ -215,19 +206,20 @@ public void updateEntity() {

if(this.spin > 0) {

int powerGen = this.spin;
double genMult = 0.5D;


if(this.tanks[0].getFill() >= 10) {
powerGen += this.spin * waterPowerMult;
genMult += 0.5D;
this.tanks[0].setFill(this.tanks[0].getFill() - waterRate);
}

if(this.tanks[2].getFill() >= 1) {
powerGen += this.spin * lubePowerMult;
genMult += 0.25D;
this.tanks[2].setFill(this.tanks[2].getFill() - lubeRate);
}

this.power += Math.pow(powerGen, heatExponent);
this.power += this.spin * genMult;

if(this.power > this.maxPower)
this.power = this.maxPower;
Expand Down

0 comments on commit 0d2ab05

Please sign in to comment.