Code Monkey home page Code Monkey logo

shadows-of-greg's Introduction

Shadows-of-Greg

Downloads MCVersion

GitHub issues GitHub pull requests license


About

Shadows-of-Greg is an addon for GregTech Community Edition, and was originally a fork of Gregic Addons but has been updated to work with modern versions of Gregtecg CE. This mod continues the goal of Gregic Addons by making Gregtech CE much more complicated and realistic through the use of GregTech 5 Unofficial and GregTech 6 features.

Some features implemented specifically in this mod are:

  • The Fusion Reactor
  • The Processing Array
  • The Assembly Line
  • Additional tiers of Gregtech CE machines
  • Additional materials such as Curved Plates, Double ingots, and Rounds
  • The Cluster Mill, which is an machine specifically for making foils
  • Forestry Integration
  • Tinkers Construct Integration
  • The addiiton of content from GT5U and GT6

This mod was originally created by Shadows-of-Fire, but has had development and bug fixes taken over by the Nomifactory Team for Minecraft 1.12.2.

Nomifactory is a Gregtech CE based modpack, heavily focused on automation and factory creation and features Shadows-of-Greg as one of the key endgame mods.

shadows-of-greg's People

Contributors

alongstringofnumbers avatar antifluxfield avatar bartz24 avatar blood-asp avatar exaxxion avatar fluffle avatar jglauche avatar kafable avatar lagidiot avatar magcicada avatar notmywing avatar phantamanta44 avatar prototypetrousers avatar pyure avatar saereth avatar serenibyss avatar shadows-of-fire avatar syniox avatar takakura-anri avatar thelimepixel avatar woozymasta avatar zeyad001 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shadows-of-greg's Issues

Reimplement GT5 Scanner as a config option

As title says, reimplement the GT5 scanner as a use for data orbs and sticks, requiring the orbs for the replicator and the data sticks for the assembly line. Preferably with CT support so it's possible to add custom scanning data and recipes. As a config option off by default to allow for the current behavior to stay.

Config to disable overclocking mechanics and deferring to base GTCE

So GTCE just updated its overclocking mechanics, where instead of doubling its chances in SoG, it'll have a chanceTierBoost applied to each tier overclocked instead. Can we get a config to just disable SoG's overclocking or the section where it overrides? I have honestly no idea where to start on this so that's why I didn't wana webedit it.

Possible issue with upcoming GregTech CE Master

I tried to update my Omnifactory 1.2.1 pack to use GregTech CE master today, and I got the following stacktraces in my startup log. In addition, all of the recipes for things like macerate magnetite were missing when the game loaded. I'm not sure what the issue is, but it seems like there might be an API change in recent versions of GregTech CE. This issue doesn't happen with gregtech-1.12.2-1.8.4.419. Let me know if I can provide more issue to help debugging.

[13:03:15] [Client thread/ERROR]: Tried to register recipe, silicone_rubber_ring, with duplicate key. Recipe: "k", "P", "P", "1xitem.meta_item@12391"
[13:03:15] [Client thread/ERROR]: Stacktrace:
java.lang.IllegalArgumentException: null
	at gregtech.api.recipes.ModHandler.validateRecipe(ModHandler.java:337) [ModHandler.class:?]
	at gregtech.api.recipes.ModHandler.addShapedRecipe(ModHandler.java:280) [ModHandler.class:?]
	at gregicadditions.recipes.GARecipeAddition.init(GARecipeAddition.java:241) [GARecipeAddition.class:?]
	at gregicadditions.GregicAdditions.registerRecipes(GregicAdditions.java:73) [GregicAdditions.class:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1246_GregicAdditions_registerRecipes_Register.invoke(.dynamic) [?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) [ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144) [EventBus$1.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182) [EventBus.class:?]
	at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:857) [GameData.class:?]
	at net.minecraftforge.common.crafting.CraftingHelper.loadRecipes(CraftingHelper.java:629) [CraftingHelper.class:?]
	at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:742) [Loader.class:?]
	at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:336) [FMLClientHandler.class:?]
	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:535) [bib.class:?]
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378) [bib.class:?]
	at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51]
	at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51]
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
[13:03:15] [Client thread/ERROR]: Tried to register recipe, styrene_rubber_ring, with duplicate key. Recipe: "k", "P", "P", "1xitem.meta_item@12398"
[13:03:15] [Client thread/ERROR]: Stacktrace:
java.lang.IllegalArgumentException: null
	at gregtech.api.recipes.ModHandler.validateRecipe(ModHandler.java:337) [ModHandler.class:?]
	at gregtech.api.recipes.ModHandler.addShapedRecipe(ModHandler.java:280) [ModHandler.class:?]
	at gregicadditions.recipes.GARecipeAddition.init(GARecipeAddition.java:242) [GARecipeAddition.class:?]
	at gregicadditions.GregicAdditions.registerRecipes(GregicAdditions.java:73) [GregicAdditions.class:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1246_GregicAdditions_registerRecipes_Register.invoke(.dynamic) [?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) [ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144) [EventBus$1.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182) [EventBus.class:?]
	at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:857) [GameData.class:?]
	at net.minecraftforge.common.crafting.CraftingHelper.loadRecipes(CraftingHelper.java:629) [CraftingHelper.class:?]
	at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:742) [Loader.class:?]
	at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:336) [FMLClientHandler.class:?]
	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:535) [bib.class:?]
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378) [bib.class:?]
	at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51]
	at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51]
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]

CraftTweaker recipe adding bugged

Hello,
while building my pack I encountered a strange problem with the Assembly Line.
I would like to use it to turn Forestrys Sturdy Casing into an Impregnated Casing with Seed Oil and Honey. Therefore I wrote this script file:
"import mods.gregtech.recipe.RecipeMap;

val assembly_line = RecipeMap.getByName("assembly_line");

assembly_line.recipeBuilder().inputs(< forestry:sturdy_machine>).fluidInputs(liquid:seed.oil * 1000, liquid:for.honey * 1000).outputs(forestry:impregnated_casing).duration(200).EUt(80000).buildAndRegister();"

The "<>" are not displayed for whatever reason.

I looked into the syntax from a script from "Omnifactory".
But on startup the recipe is not added and neither I get a script-error.
And the strangest thing is, that recipe removal works fine.

MC: 1.12.2
CT: 1.12-4.1.19
MT: 4.0.17
Forestry: 5.8.2.387
GTCE: 1.8.2.415
SoG: 1.12.2-2.7.0

Thanks for any help
Rundas

Crashed on Startup

WARNING: coremods are present:
LoadingPlugin (RandomThings-MC1.12.2-4.2.7.jar)
CreativePatchingLoader (CreativeCore_v1.9.41_mc1.12.2.jar)
ColytraLoadingPlugin (colytra-1.12.2-1.1.1.jar)
ForgelinPlugin (Forgelin-1.8.2.jar)
CTMCorePlugin (CTM-MC1.12.2-0.3.3.22.jar)
TheBetweenlandsLoadingPlugin (TheBetweenlands-3.4.4-core.jar)
Inventory Tweaks Coremod (InventoryTweaks-1.63.jar)
AstralCore (astralsorcery-1.12.2-1.10.11.jar)
Wizardry Plugin (wizardry-0.9.9.jar)
OpenModsCorePlugin (OpenModsLib-1.12.2-0.12.1.jar)
Botania Tweaks Core (botaniatweaks-1.8.4.jar)
LoadingPlugin (Bloodmoon-MC1.12.2-1.5.3 (1).jar)
MicdoodlePlugin (MicdoodleCore-1.12.2-4.0.1.181.jar)
LoadingPlugin (Quark-r1.5-146 (2).jar)
LibrarianLib Plugin (librarianlib-1.12.2-4.15.jar)
JEIDLoadingPlugin (JustEnoughIDs-1.0.2-26.jar)
IELoadingPlugin (ImmersiveEngineering-core-0.12-89.jar)
CoreMod (Aroma1997Core-1.12.2-2.0.0.0.b162.jar)
llibrary (llibrary-core-1.0.10-1.12.2.jar)
HCASM (HammerCore-1.12.2-2.0.4.2.jar)
IvToolkit (IvToolkit-1.3.3-1.12 (1).jar)
MalisisCorePlugin (malisiscore-1.12.2-6.5.1 (1).jar)
Do not report to Forge! (If you haven't disabled the FoamFix coremod, try disabling it in the config! Note that this bit of text will still appear.) (foamfix-0.10.3-1.12.2.jar)
AdvancedRocketryPlugin (AdvancedRocketry-1.12.2-1.5.0-136-universal.jar)
EnderCorePlugin (EnderCore-1.12.2-0.5.45.jar)
Contact their authors BEFORE contacting forge

// Quite honestly, I wouldn't worry myself about that.

Time: 4/2/19 8:46 PM
Description: There was a severe problem during mod loading that has caused the game to fail

net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Shadows of Greg (gtadditions)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at gregicadditions.recipes.GARecipeAddition.generatedRecipes(GARecipeAddition.java:1399)
at gregicadditions.GregicAdditions.postInit(GregicAdditions.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:624)
at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
at com.google.common.eventbus.EventBus.post(EventBus.java:217)
at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:219)
at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:197)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
at com.google.common.eventbus.EventBus.post(EventBus.java:217)
at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:136)
at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:749)
at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:336)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:535)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

Recipes registered late in loading? (Can't remove with crafttweaker)

Many sog recipes in gt machines can't be removed with crafttweaker:

  • if the option to add compressor recipes for all 3x3 block crafting recipes is enabled, they can't be removed. Iterating over the recipe list for the compressor reveals no such recipes have been registered when crafttweaker runs.
  • if bees are enabled, chemReactor.findRecipe(24, [<gtadditions:bee_comb:13>*9, <ore:crushedSpodumene>.firstItem], [<fluid:water>*1000]) is null since the recipe hasn't been registered yet.
  • fwiw, nuclearcraft does the same thing if "mirroring" nc machine recipes in gt machines is enabled
    I assume these recipes can't be removed and aren't registered because crafttweaker is running its recipe addition stage after sog and nc, which could be fixed by sog but could also be considered a ct bug since why isn't ct running last of all.

Assembly line cannot take all 16 items as input

The Assembly line has a maximum number of input items set to 16 in its recipeMap, as defined here: https://github.com/Shadows-of-Fire/Shadows-of-Greg/blob/master/src/main/java/gregicadditions/recipes/GARecipeMaps.java#L33

However, in the structure pattern defined here: https://github.com/Shadows-of-Fire/Shadows-of-Greg/blob/master/src/main/java/gregicadditions/machines/TileEntityAssemblyLine.java#L39

there is a maximum of 15 item inputs, 14 from repeatable aisles and 1 from the controller slice. This means that the assembly line will never be able to take the maximum number of items as defined in its recipeMap. The easy solution is to just increase the number of repeatable aisle sections by 1, but then the assembly line has the ability to exceed chunk boundaries when it is constructed to its maximum size. I am not sure if this is desirable or not, but I also do not see any other solution to the issue than allowing the assembly line to exceed chunk boundaries.

[Suggestion] Add a flag for custom materials to add TiC support for them

In a crafttweaker script, I was thinking something like this, for example:

var enderium = //init
enderium.addFlags("GENERATE_TIC_MATERIAL");

Since tweaker's construct can change the stats of TiC materials already, I was assuming perhaps this can simply return values of 0 for each TiC stat, like durability, modifier, mining lvl, etc. in appropriate data types (double, int, etc.) and then it would have no modifiers since that can be added as well. It would use the same name as the material's registry name, and would use the localized name. Also bonus if you can add a page in the materials book for the material after init of the normal GT materials.

Processing Arrays do not work with electric furnaces

SoG: 2.14
GTCE: 1.10.1.557

Processing Arrays do not work with electric furnaces, even though the recipeMap is whitelisted. This is because the recipeMap switch checks for "furnace", when electric furnaces have an unlocalized name of "electric_furnace" that gets passed to the switch statement.

Recipe for Sulfuric Light Fuel to Light Fuel in Chemical Reactor is unavailable.

Mod Used
gregtech-1.12.2-1.11.1.632
gregtech-1.12.2-1.11.1.632-energy-api
gregtech-1.12.2-1.11.1.632-source
Shadows_of_Greg-1.12.2-2.15.0
CodeChickenLib-1.12.2-3.2.3.358-universal

Issue

  1. Unable to produce Light Fuel through vanilla process of reaction in chemical reactor by desulfurization of Sulfuric Light Fuel. Also , Heavy Fuel, Gas and Naphtha are all unable to be desulfurized.
  2. According to my JEI in game, I found it out that to produce Light Fuel the only way is to distill Cracked Fuel, which is produced only after cracking those Fuel. That is an endless cycle.

Test
Case 1: I ran the game without SoG, and the recipe successfully exists in my JEI.
Case 2: I ran the game with SoG, and the recipe didn't exist.

My Question
Is that a new feature of SoG in newer version? Since it cancels the recipe, To upgrade to MV from LV is almost impossible, for it is unable to produce ethene, which is critical for making MV machines.
Or it is only a Bug? Whatever, I believe if this issue continues exist, the process to reach MV from LV is , well, quite complicated.

Pump + FeW Assembler Recipes for Ultimet Pipes Introduces Material Transformation Exploit

First noticed this in Nomifactory/Nomifactory#649; in short since Ultimet Pipes can be melted down this allows players to turn Tungstensteel into Ultimet.

These pipes already get table and extruder recipes registered for them via material generation flags so there's no real purpose to adding the recipes here and it introduces an exploit. We should remove these recipes from the registry to avoid this problem.

What happened with some things from GA?

I was playing my survival, and I seem some missing things, like the ultima dust, IV cables and limonite blast furnace recipe, and ores. that things were in GA, What happened to them? Will you add these things? (recipes and ores can be added with CT).

gregicadditions.tconstruct.FluidTemp class does not implement IMaterialHandler

[16:12:12] [Server thread/ERROR] [gregtech]: Failed to load material handler class gregicadditions.tconstruct.FluidTemp from Shadows_of_Greg-1.12.2-2.13.0.jar: class does not implement IMaterialHandler
[16:12:12] [Server thread/ERROR] [gregtech]: Consult the mod author for fix on his side.

TConstruct is NOT present in modpack.

Materials/Items now redundant/deprecated with GTCE 1.6

Circuit assembler (All tiers)
All circuits including all variants of circuits or any $circuitX oredict items
supercomputers
mainframes
crystalcomputers
advanced alloy
mixed metal ingots
bick forms (all variants)
compressed fireclay
unfired clay brick

pretty much ALL the wafers
silicone boules (all variants)
raw carbon fiber
raw crystal chips
crystal processing unit
crystal SOC
lapotron crystals
iridium alloy plate
uncompressed iridium alloy plate
vacuum tube
all SMD components: transistor, resistor, capacitor, diode, small coil
electrical components: small coil, resistor, glass tube, capacitor, diode, vacuum tube
all circuit boards
stem cells

All of GA's materials except:
fish oil
CarbonMonoxde
RawGrowthMedium
SterilizedGrowthMedium
Meat
NeutralMatter
PositiveMatter
Neutronium
lignite coke
Extreme
Infinite

Redundant materials/machines/items

Several GA items/blocks/materials have been moved to core GTCE, this is what I could find for sure

Machines/multiblocks :

  • coke oven
  • coke oven chute/faucet
  • coke oven bricks
  • distillation tower
  • cracking unit

Items:

  • coke oven brick ingots/unfired
  • brick forms (all variants)

Materials:

  • coke coal

Macerator issues

With the gtce 1.8.5 jei does not show uses for crushed ores or macerators

The Proessing Array does not process Precision Laser Engraver recipes

The Processing Array has the Precision Laser Engraver on its machine whitelist, but does not process recipes from the Precision Laser Engraver. I believe this is because of the fact that the Lens used is not consumed during the recipe, which causing issues during the recipe lookup.

Neutron reflector no longer needed

The neutron reflector has been moved to gtce so the one in Sog is no longer needed, the fusion coil recipe should get pointed to the gtce item now

Moving Recipes from Deprecated Distillation Tower

Moving it from meta tile entity ID distill_tower (GA) that was deprecated to distillation_tower
From:
image

To:
image

There's only one recipe in there already because we added that ourselves in Interactions.

GTCEBees causes failure to start if enabled while Forestry apiculture module is disabled

Tested with latest version of SoG (2.10.2), various versions of Forestry including 5.8.2.394 and latest (5.8.2.409).
Disabling the feature in the config causes game to run without issue.
If Forestry has Apiculture module disabled while GTBees is enabled, game start fails with:

Thread: Client thread
Stacktrace:
	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:770)
	at forestry.apiculture.ModuleApiculture.getItems(ModuleApiculture.java:175)
	at gregicadditions.bees.ForestryMachineRecipes.init(ForestryMachineRecipes.java:15)
	at gregicadditions.bees.CommonProxy.registerRecipes(CommonProxy.java:69)
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_619_CommonProxy_registerRecipes_Register.invoke(.dynamic)
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
	at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144)
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
	at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:857)
	at net.minecraftforge.common.crafting.CraftingHelper.loadRecipes(CraftingHelper.java:629)
	at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:742)
	at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:336)
	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:535)

-- Initialization --
Details:
Stacktrace:
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)
	at net.minecraft.client.main.Main.main(SourceFile:123)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)

If possible, could this module be made to not load if Forestry's bees are not enabled?

minor typo

There is typo: registerDums -> registerDrums

public boolean registerDums = true;

Corresponding fixes:

For some reason I cannot create PR, so I made this Issue.

Fusion reactors can run recipes with unsatisfied EU-to-start requirements in certain cases

Suppose a given fusion recipe r is intended to be unrunnable in a given fusion reactor because its EU-to-start threshold is too high. The EU-to-start threshold can be bypassed if the inputs are present in sufficient quantity to execute r more than one time. The inputs for the first run will be destroyed, then the remainder of the runs will complete normally.

The mechanism for this behaviour spans two iterations of the updateFormedValid() method in TileEntityFusionReactor, and is as follows:

  1. In the first iteration, the previously-matched recipe is retrieved from the recipe logic at 160, which will be nil.
  2. A recipe match is performed at 161, which produces the recipe r; this destroys the first batch of ingredients, as they are to be consumed for the successfully-matched recipe.
  3. We check to see if the recipe has changed at 163; since r != nil, we continue into the conditional block.
  4. We check to see if the EU-to-start threshold is satisfied; since it is not, we continue into the conditional block.
  5. An attempt is made to reset the state of the recipe logic by clearing various variables using reflection. Note in particular that the previously-matched recipe is not cleared.
  6. In the second iteration, the previously-matched recipe is retrieved once again at 160; since this wasn't cleared, we get r.
  7. A recipe match is once again performed at 161 because we reset the recipe progress time to zero. Since there are still enough ingredients for the recipe, the second batch of ingredients are destroyed and r is produced once more.
  8. We check to see if the recipe has changed at 163; since r = r, we skip the conditional block.
  9. Since the EU-to-start threshold check has been skipped, we can now continue on and run the recipe normally (as well as all subsequent runs, as long as the previously-matched recipe does not change).

This issue could be patched with minor changes to the logic here, but the code is extraordinarily hacky and makes bad abuse of reflection. As such, I would suggest using this opportunity to perform a major refactoring of the code to reduce the hackiness and avoid abusing reflection. In particular, I would suggest subclassing MultiBlockRecipeLogic so that the EU-to-start check can be directly implemented in the recipe matching routine rather than in the roundabout way it is currently implemented.

[Suggestion] Make crates the same size as chests

Sometimes when making automation lines it gets very hard to remove/edit covers from machines or crates if direct outputting. Making the crates smaller would be very helpful as any side of the crate would be accessful.
Probably it's not possible as it would cause bugs with covers, but maybe some other solution is possible?

Block Compression Priority

KAfable/FTB-Interactions#505

GA has configs that looks for all blocks and then generates block recipes for them in the compressor (eg 9 iron ingots into 1 iron block), while removing the compression crafting recipes.

Right now putting nine 9 GT sapphires in a compressor makes Ice and Fire Sapphire blocks. Could ways to change this, is it possible to have these recipes generate AFTER crafttweaker runs (although dangerous as players will need to use the configs to reenable block compression, the benefit is that any scripts that removes blocks from ore dictionary don't get recipes generated, eg we remove the blockSapphire oredictionary tag from Ice and Fire sapphire blbock.

Another solution is to just expand the configs that lets you put modid so we can set a priority for gregtech, thermalfoundation, etc. blocks first.

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.