Giter Site home page Giter Site logo

groovyscript's Introduction

GroovyScript

A comprehensive scripting sandbox for Minecraft 1.12.2.

For syntax and usage, visit the official wiki

Features:

  1. Groovy: a powerful and tested scripting language
    • Java-compatible syntax + interoperable code
    • Static compilation
    • Optional dynamic typing
    • Metaprogramming
  2. Sandboxed: scripts are effectively ran in a sandbox, with sensitive operations blacklisted from being called or referenced
  3. Reloading: able to test script changes within the game without restarting
    • Most if not all Forge Registry objects can be reloaded on the fly
    • Most mod registries are supported natively
  4. Events: Easily listen to Forge's EventBuses with Groovy Closures
  5. Familiarity: Bracket handlers for those that are familiar with CraftTweaker (currently implemented, may be removed in the near future)
  6. Informational: commands to display rich information for the item in your hand and more
  7. Optimized: Making sure no compromises are being made while delivering features with efficient code
  8. API: Great catalogue of code for other mod authors to make their mods compatible with GroovyScript such as package/class/method/field blacklists

groovyscript's People

Contributors

alongstringofnumbers avatar brachy84 avatar integerlimit avatar isurreali avatar jbredwards avatar juraj-hrivnak avatar korewalidesu avatar mcadventurecity avatar mczph avatar minmusxminmus avatar rongmario avatar supernoobv avatar testure avatar waitingidly avatar wong-innovations avatar

Stargazers

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

Watchers

 avatar  avatar  avatar

groovyscript's Issues

When using GroovyScript, crafting recipes in Gregtech machines are not shown in the JEI

Multiblocks model in jei is also not displayed
2024-02-03_19 59 02
I tried to remove the groovy folder with scripts and everything worked. I'm using Groovy to create a custom multiblock.
Mods
!configanytime-2.0
!mixinbooter-8.8
ae2-uel-v0.56.2
AppleSkin-mc1.12-1.0.14
AsmodeusCore-1.12.2-1.0.1
base-1.12.2-3.14.0
censoredasm5.18
Chameleon-1.12-4.1.3
Chisel-MC1.12.2-1.0.2.45
Clumps-3.1.2
CodeChickenLib-1.12.2-3.2.3.358-universal
ContentTweaker-1.12.2-4.10.0
coroutil-1.12.1-1.2.37
CraftTweaker2-1.12-4.1.20.698
CTM-MC1.12.2-1.0.2.31
CustomStartingGear-1.12-1.2.0.9-universal
EpicSiegeMod-13.167
Galacticraft-1.12.2-4.0.6
GalaxySpace-1.12.2-2.1.3
GregicalityMultiblocks-1.2.7
gregtech-1.12.2-2.8.6-beta
gregtechfoodoption-1.10.3
groovyscript-0.7.3
HadEnoughItems_1.12.2-4.25.1
ironchest-1.12.2-7.0.72.847
mobsunscreen-1.12.2-3.1.5
MoreFurnaces-Nomifactory-Edition-1.12.2-1.11.0
OptiFine-OptiFine-1.12.2_HD_U_G5
ResourceLoader-MC1.12.1-1.5.3
RTGU-1.12.2-1.1.0
StorageDrawers-1.12.2-5.5.0
techguns-1.12.2-2.0.2.0_pre3.2
UniversalTweaks-1.12.2-1.9.0
visualores-0.2.4
Xaeros_Minimap_23.9.7_Forge_1.12
XaerosWorldMap_1.37.8_Forge_1.12
zombieawareness-1.12.1-1.11.16
Groovy folder
Groovy.zip
Logs
latest.log
groovy.log

GrS lacks a recipe modification by MEK's Energized Smelter

As the title says
Although Energized Smelter can read the original furnace
However, you can use crt to add recipe support to Energized Smelter without modifying the original furnace recipe
This allows developers to use Energized Smelter instead of the original furnace
But this modification is missing from GrS

尝试按照实例配方编写mek的精密锯木厂配方无法运行

如题,我在测试mek的机器配方时发现,
这段代码无法运行
mods.mekanism.Sawmill.add(item('minecraft:diamond_block'), item('minecraft:diamond') * 9)
JEI会显示这样
image

而日志则会抛出错误,

Error caught from Recipe Category: mekanism.client.jei.machine.ChanceMachineRecipeCategory
java.lang.NullPointerException: null
at mekanism.common.recipe.outputs.ChanceOutput.hasSecondary(ChanceOutput.java:48) ~[ChanceOutput.class:?]
at mekanism.client.jei.machine.ChanceMachineRecipeCategory.setRecipe(ChanceMachineRecipeCategory.java:56) ~[ChanceMachineRecipeCategory.class:?]
at mekanism.client.jei.machine.ChanceMachineRecipeCategory.setRecipe(ChanceMachineRecipeCategory.java:19) ~[ChanceMachineRecipeCategory.class:?]
at mezz.jei.gui.recipes.RecipeLayout.create(RecipeLayout.java:69) [RecipeLayout.class:?]
at mezz.jei.gui.recipes.RecipeGuiLogic.getRecipeLayouts(RecipeGuiLogic.java:198) [RecipeGuiLogic.class:?]
at mezz.jei.gui.recipes.RecipesGui.updateLayout(RecipesGui.java:492) [RecipesGui.class:?]
at mezz.jei.gui.recipes.RecipesGui.onStateChange(RecipesGui.java:538) [RecipesGui.class:?]
at mezz.jei.gui.recipes.RecipeGuiLogic.setRecipeCategory(RecipeGuiLogic.java:231) [RecipeGuiLogic.class:?]
at mezz.jei.gui.recipes.RecipeCategoryTab.handleMouseClicked(RecipeCategoryTab.java:33) [RecipeCategoryTab.class:?]
at mezz.jei.gui.recipes.RecipeGuiTabs.handleMouseClicked(RecipeGuiTabs.java:133) [RecipeGuiTabs.class:?]
at mezz.jei.gui.recipes.RecipesGui.mouseClicked(RecipesGui.java:327) [RecipesGui.class:?]
at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:533) [blk.class:?]
at mezz.jei.gui.recipes.RecipesGui.handleMouseInput(RecipesGui.java:304) [RecipesGui.class:?]
at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:501) [blk.class:?]
at net.minecraft.client.Minecraft.runTick(MinecraftMixin.java:1759) [bib.class:?]
at net.minecraft.client.Minecraft.runGameLoop(MinecraftMixin.java:1098) [bib.class:?]
at net.minecraft.client.Minecraft.run(MinecraftMixin.java:4114) [bib.class:?]
at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_351]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_351]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_351]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_351]
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:?]

必须要在后面添加上物品在可以运行
mods.mekanism.Sawmill.add(item('minecraft:diamond_block'), item('minecraft:diamond') * 9,item('null'))

这些是GroovyScript回报可以添加的配方类型
add(com.cleanroommc.groovyscript.api.IIngredient, net.minecraft.item.ItemStack, net.minecraft.item.ItemStack),
add(com.cleanroommc.groovyscript.api.IIngredient, net.minecraft.item.ItemStack, net.minecraft.item.ItemStack, double), any(),
add(com.cleanroommc.groovyscript.api.IIngredient, net.minecraft.item.ItemStack), wait(), find()

另外,精密锯木厂的配方可以添加第二次输出槽可以概率输出,但是GRS配方是无法添加
以下为我用于测试的带概率的配方
mods.mekanism.Sawmill.add(item('minecraft:diamond_block'),item('minecraft:stone:0')*5,item('minecraft:stone:2'),0.2)
jei的显示
image

是否为我的配方有错误?

Unable to run GroovyScript on a server

if you install groovyscript on a server it crashes, because it calls client-side code. Looks like the keybind stuff added in the last update is the problem.

[Server thread/ERROR] [minecraft/MinecraftServer]: Encountered an unexpected exception
java.lang.NoClassDefFoundError: net/minecraft/client/settings/KeyBinding
        at com.cleanroommc.groovyscript.GroovyScript.<clinit>(GroovyScript.java:67) ~[groovyscript-0.2.0.jar:?]

issue with Aether Bauble an loot tables

hi, sorry to being bearer of bad tidings, but i've got a crash on startup with the mod The Aether Baubles and GroovyScripts during loot table loading

the mighty log

i've also contacted aether baubles dev, but don't know if it's an issue on it's side or your

Can not use null in recipe builders

The following code will fail with this error: Error adding Minecraft Shapeless Crafting recipe: - Key 'n' is not defined!

crafting.shapedBuilder()
    .output(item('advancedmortars:mortar'))
    .matrix('nns',
            'rfr',
            'nrn')
    .key('n', null)
    .key('s', ore('stickWood'))
    .key('r', ore('rocks'))
    .key('f', item('pyrotech:material', 10))
    .register()

Non-.groovy file extensions are logged differently

in GroovyLogImpl the regex only looks for files matching .groovy instead of any of the options in the run config, meaning non-.groovy extensions are not equally supported.
should only be a minor concern, since not matching just means it gets logged in a different way (at x.run(x.gvy:3) vs in test.groovy in line 3)

Pattern pattern = Pattern.compile("(\\w*).run\\(\\1.groovy:(\\d*)\\)");
for (String line : prepareStackTrace(throwable.getStackTrace())) {
Matcher matcher = pattern.matcher(line);
if (matcher.matches()) {
writeLogLine("\t\tin " + matcher.group(1) + ".groovy in line " + matcher.group(2));
} else {
writeLogLine("\t\tat " + line);
}
}

public static final String[] GROOVY_SUFFIXES = {".groovy", ".gvy", ".gy", ".gsh"};

load order problem

log:https://mclo.gs/uOUf8gM

load order:

  • groovyscript has to be after universal tweaks
  • universal tweaks has to be after mekanism
  • you are using the mekanism fork that adds groovyscript compat, and so mekanism has to be after groovyscript

copied from discord

Crash With GTCEU

I got a crash when start up a minecraft and Mod "Gregtech Community Edition unofficial"
On Groovy Version 4.5
Crash Report

crash with TFC

---- Minecraft Crash Report ----
// Lolis deobfuscated this stacktrace using MCP's stable-39 mappings.
// You're mean.

Time: 2023-08-10 18:33:10 CEST
Description: Initializing game

net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from GroovyScript (groovyscript)
Caused by: com.google.common.util.concurrent.UncheckedExecutionException: java.lang.NullPointerException
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2217)
at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
at net.minecraft.world.storage.loot.LootTableManager.getLootTableFromLocation(LootTableManager.java:40)
at net.minecraft.world.storage.loot.LootTableManager.reloadLootTables(LootTableManager.java:49)
at net.minecraft.world.storage.loot.LootTableManager.(LootTableManager.java:35)
at com.cleanroommc.groovyscript.GroovyScript.onInit(GroovyScript.java:120)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:637)
at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
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(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
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.init(Minecraft.java:535)
at net.minecraft.client.Minecraft.run(Minecraft.java:4101)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
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(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:243)
at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:278)
at org.multimc.EntryPoint.listen(EntryPoint.java:143)
at org.multimc.EntryPoint.main(EntryPoint.java:34)
Caused by: java.lang.NullPointerException
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:770)
at com.google.common.cache.LocalCache.get(LocalCache.java:4153)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
at net.minecraft.world.storage.loot.LootTableManager.getLootTableFromLocation(LootTableManager.java:40)
at net.dries007.tfc.objects.LootTablesTFC.onLootTableLoad(LootTablesTFC.java:128)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_209_LootTablesTFC_onLootTableLoad_LootTableLoadEvent.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
at net.minecraftforge.event.ForgeEventFactory.loadLootTable(ForgeEventFactory.java:775)
at net.minecraftforge.common.ForgeHooks.loadLootTable(ForgeHooks.java:1186)
at net.minecraft.world.storage.loot.LootTableManager$Loader.loadBuiltinLootTable(LootTableManager.java:156)
at net.minecraft.world.storage.loot.LootTableManager$Loader.load(LootTableManager.java:72)
at net.minecraft.world.storage.loot.LootTableManager$Loader.load(LootTableManager.java:53)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211)
... 56 more

A detailed walkthrough of the error, its code path and all known details is as follows:

-- System Details --
Minecraft Version: 1.12.2
Operating System: Windows 10 (amd64) version 10.0
Java Version: 1.8.0_381, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 5509058408 bytes (5253 MB) / 7397703680 bytes (7055 MB) up to 11304173568 bytes (10780 MB)
JVM Flags: 3 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xms4096m -Xmx12128m
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP 9.42 LoliASM 5.14 Powered by Forge 14.23.5.2860 32 mods loaded, 32 mods active
States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

   | State | ID                  | Version                            | Source                                                     | Signature                                |
   |:----- |:------------------- |:---------------------------------- |:---------------------------------------------------------- |:---------------------------------------- |
   | LCHI  | minecraft           | 1.12.2                             | minecraft.jar                                              | None                                     |
   | LCHI  | mcp                 | 9.42                               | minecraft.jar                                              | None                                     |
   | LCHI  | FML                 | 8.0.99.99                          | forge-1.12.2-14.23.5.2860-universal.jar                    | e3c3d50c7c986df74c645c0ac54639741c90a557 |
   | LCHI  | forge               | 14.23.5.2860                       | forge-1.12.2-14.23.5.2860-universal.jar                    | e3c3d50c7c986df74c645c0ac54639741c90a557 |
   | LCHI  | placeholdername     | 1.0.0                              | .minecraft                                                 | None                                     |
   | LCHI  | mixinbooter         | 8.3                                | minecraft.jar                                              | None                                     |
   | LCHI  | opencomputers|core  | 1.7.5.192                          | minecraft.jar                                              | None                                     |
   | LCHI  | appliedenergistics2 | rv6-stable-7-extended_life-v0.53.4 | appliedenergistics2-rv6-stable-7-extended_life-v0.53.4.jar | None                                     |
   | LCHI  | baubles             | 1.5.2                              | Baubles-1.12-1.5.2.jar                                     | None                                     |
   | LCHI  | crafttweaker        | 4.1.20                             | CraftTweaker2-1.12-4.1.20.684.jar                          | None                                     |
   | LCHI  | jei                 | 4.24.0                             | HadEnoughItems_1.12.2-4.24.0.jar                           | None                                     |
   | LCHI  | loliasm             | 5.14                               | censoredasm5.14.jar                                        | None                                     |
   | LCHI  | codechickenlib      | 3.2.3.358                          | CodeChickenLib-1.12.2-3.2.3.358-universal.jar              | f1850c39b2516232a2108a7bd84d1cb5df93b261 |
   | LCHI  | ctgui               | 1.0.0                              | CraftTweaker2-1.12-4.1.20.684.jar                          | None                                     |
   | LCHI  | crafttweakerjei     | 2.0.3                              | CraftTweaker2-1.12-4.1.20.684.jar                          | None                                     |
   | LCHI  | forestry            | 5.8.2.422                          | forestry_1.12.2-5.8.2.422.jar                              | None                                     |
   | LCHE  | groovyscript        | 0.6.0                              | groovyscript-0.6.0.jar                                     | None                                     |
   | LCH   | gregtech            | 2.7.2-beta                         | gregtech-1.12.2-2.7.2-beta.jar                             | None                                     |
   | LCH   | devtech             | 2.1.4                              | devtech-2.1.4.jar                                          | None                                     |
   | LCH   | forgelin            | 1.8.4                              | Forgelin-1.8.4.jar                                         | None                                     |
   | LCH   | exnihilocreatio     | 1.12.2-0.4.7.1                     | exnihilocreatio-1.12.2-0.4.7.1.jar                         | None                                     |
   | LCH   | extrautils2         | 1.0                                | extrautils2-1.12-1.9.9.jar                                 | None                                     |
   | LCH   | geckolib3           | 3.0.30                             | geckolib-forge-1.12.2-3.0.30.jar                           | None                                     |
   | LCH   | gfarm               | 0.1.8                              | gfarm-0.1.8.jar                                            | None                                     |
   | LCH   | gcym                | 1.2.4                              | GregicalityMultiblocks-1.2.4.jar                           | None                                     |
   | LCH   | gregification       | @VERSION@                          | Gregification-1.12.2-0.0.1.jar                             | None                                     |
   | LCH   | gregtechfoodoption  | @VERSION@                          | gregtechfoodoption-1.9.3.1.jar                             | None                                     |
   | LCH   | modularmachinery    | 1.11.1                             | ModularMachinery-CE-1.12.2-1.11.1-r24.jar                  | None                                     |
   | LCH   | multiblocktweaker   | 1.12.2-stable-gtceu-1.9.0          | multiblocktweaker-1.12.2-stable-gtceu-1.9.0.jar            | None                                     |
   | LCH   | opencomputers       | 1.7.5.192                          | OpenComputers-MC1.12.2-1.7.5.192.jar                       | None                                     |
   | LCH   | tfc                 | 1.7.23.181                         | TerraFirmaCraft-MC1.12.2-1.7.23.181.jar                    | None                                     |
   | LCH   | thaumcraft          | 6.1.BETA26                         | Thaumcraft-1.12.2-6.1.BETA26.-.fixed.jar                   | None                                     |

Loaded coremods (and transformers): MixinBooter (!mixinbooter-8.3.jar)

                                  GroovyScript-Core (groovyscript-0.6.0.jar)
                                    
                                  TransformerLoader (OpenComputers-MC1.12.2-1.7.5.192.jar)
                                    li.cil.oc.common.asm.ClassTransformer
                                  ForgelinPlugin (Forgelin-1.8.4.jar)
                                    
                                  LoliASM (censoredasm5.14.jar)
                                    
                                  GregTechLoadingPlugin (gregtech-1.12.2-2.7.2-beta.jar)
                                    gregtech.asm.GregTechTransformer
                                  Gregification (Gregification-1.12.2-0.0.1.jar)

GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.6.0 NVIDIA 536.67' Renderer: 'NVIDIA GeForce GTX 1080/PCIe/SSE2'
AE2 Version: stable rv6-stable-7-extended_life-v0.53.4 for Forge 14.23.5.2847
Suspected Mods: GroovyScript (groovyscript), Forge Mod Loader (FML), Minecraft Forge (forge), TerraFirmaCraft (tfc)
Launched Version: 1.12.2
LWJGL: 2.9.4
OpenGL: NVIDIA GeForce GTX 1080/PCIe/SSE2 GL version 4.6.0 NVIDIA 536.67, NVIDIA Corporation
GL Caps: Using GL 1.3 multitexturing.
Using GL 1.3 texture combiners.
Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
Shaders are available because OpenGL 2.1 is supported.
VBOs are available because OpenGL 1.5 is supported.
Using VBOs: Yes
Is Modded: Definitely; Client brand changed to 'fml,forge'
Type: Client (map_client.txt)
Resource Packs:
Current Language: English (US)
Profiler Position: N/A (disabled)
CPU: 16x Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz

NPE thrown form groovyscript astral sorcery compat on 0.7.1

Getting the following error on startup/reload
We are not using any Astral specific groovy scripts

[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: java.lang.NullPointerException
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.compat.mods.astralsorcery.perktree.PerkTreeConfig.setXpFunction(PerkTreeConfig.java:29)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.compat.mods.astralsorcery.perktree.PerkTreeConfig.onReload(PerkTreeConfig.java:22)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.registry.ReloadableRegistryManager$$Lambda$8454/1777225983.accept(Unknown Source)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.Iterator.forEachRemaining(Iterator.java:116)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.registry.ReloadableRegistryManager.onReload(ReloadableRegistryManager.java:82)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.sandbox.GroovyScriptSandbox.preRun(GroovyScriptSandbox.java:143)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.sandbox.GroovySandbox.load(GroovySandbox.java:92)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.sandbox.GroovyScriptSandbox.run(GroovyScriptSandbox.java:91)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.GroovyScript.runGroovyScriptsInLoader(GroovyScript.java:166)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.command.GSCommand.runReload(GSCommand.java:57)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.command.GSCommand.lambda$new$1(GSCommand.java:67)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.command.GSCommand$$Lambda$8045/556867832.execute(Unknown Source)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.cleanroommc.groovyscript.command.SimpleCommand.func_184881_a(SimpleCommand.java:43)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.feed_the_beast.ftbutilities.ranks.CommandOverride.func_184881_a(CommandOverride.java:83)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraftforge.server.command.CommandTreeBase.func_184881_a(CommandTreeBase.java:164)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at com.feed_the_beast.ftbutilities.ranks.CommandTreeOverride.func_184881_a(CommandTreeOverride.java:60)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.command.CommandHandler.func_175786_a(CommandHandler.java:119)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.command.CommandHandler.func_71556_a(CommandHandler.java:91)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.network.NetHandlerPlayServer.func_147361_d(NetHandlerPlayServer.java:962)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.network.NetHandlerPlayServer.func_147354_a(NetHandlerPlayServer.java:941)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.network.play.client.CPacketChatMessage.func_148833_a(SourceFile:37)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.network.play.client.CPacketChatMessage.func_148833_a(SourceFile:9)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.network.PacketThreadUtil$1.run(SourceFile:13)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.util.Util.func_181617_a(SourceFile:529)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:723)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:185)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526)
[20:18:06] [Server thread/INFO] [STDERR]: [com.cleanroommc.groovyscript.sandbox.GroovyLogImpl:exception:257]: 	at java.lang.Thread.run(Thread.java:745)

Groovy log

An exception occurred while running scripts. Look at latest.log for a full stacktrace:
	java.lang.NullPointerException
		at com.cleanroommc.groovyscript.compat.mods.astralsorcery.perktree.PerkTreeConfig.setXpFunction(PerkTreeConfig.java:29)
		at com.cleanroommc.groovyscript.compat.mods.astralsorcery.perktree.PerkTreeConfig.onReload(PerkTreeConfig.java:22)
		at com.cleanroommc.groovyscript.registry.ReloadableRegistryManager$$Lambda$8454/1777225983.accept(Unknown Source)
		at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
		at java.util.Iterator.forEachRemaining(Iterator.java:116)
		at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
		at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
		at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270)
		at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
		at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
		at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
		at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
		at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
		at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
		at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
		at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
		at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
		at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
		at com.cleanroommc.groovyscript.registry.ReloadableRegistryManager.onReload(ReloadableRegistryManager.java:82)
		at com.cleanroommc.groovyscript.sandbox.GroovyScriptSandbox.preRun(GroovyScriptSandbox.java:143)
		at com.cleanroommc.groovyscript.sandbox.GroovySandbox.load(GroovySandbox.java:92)
		at com.cleanroommc.groovyscript.sandbox.GroovyScriptSandbox.run(GroovyScriptSandbox.java:91)
		at com.cleanroommc.groovyscript.GroovyScript.runGroovyScriptsInLoader(GroovyScript.java:166)
		at com.cleanroommc.groovyscript.command.GSCommand.runReload(GSCommand.java:57)
		at com.cleanroommc.groovyscript.command.GSCommand.lambda$new$1(GSCommand.java:67)
		at com.cleanroommc.groovyscript.command.GSCommand$$Lambda$8045/556867832.execute(Unknown Source)
		at com.cleanroommc.groovyscript.command.SimpleCommand.func_184881_a(SimpleCommand.java:43)
		at com.feed_the_beast.ftbutilities.ranks.CommandOverride.func_184881_a(CommandOverride.java:83)
		at net.minecraftforge.server.command.CommandTreeBase.func_184881_a(CommandTreeBase.java:164)
		at com.feed_the_beast.ftbutilities.ranks.CommandTreeOverride.func_184881_a(CommandTreeOverride.java:60)
		at net.minecraft.command.CommandHandler.func_175786_a(CommandHandler.java:119)
		at net.minecraft.command.CommandHandler.func_71556_a(CommandHandler.java:91)
		at net.minecraft.network.NetHandlerPlayServer.func_147361_d(NetHandlerPlayServer.java:962)
		at net.minecraft.network.NetHandlerPlayServer.func_147354_a(NetHandlerPlayServer.java:941)
		at net.minecraft.network.play.client.CPacketChatMessage.func_148833_a(SourceFile:37)
		at net.minecraft.network.play.client.CPacketChatMessage.func_148833_a(SourceFile:9)
		at net.minecraft.network.PacketThreadUtil$1.run(SourceFile:13)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at net.minecraft.util.Util.func_181617_a(SourceFile:529)
		at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:723)
		at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668)
		at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:185)
		at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526)
		at java.lang.Thread.run(Thread.java:745)

Make recipe registries reloadable

  • Forge
  • Applied Energistics 2
  • Chisel
  • Mekanism
  • EnderIO
  • Thermal Expansion (started in thermal branch)
  • Immersive Engineering
  • IC2 (both)
  • GTCE (only on request)
  • GTCEu (on their side)
  • Nuclearcraft (WIP by brachy)
  • BloodMagic
  • Astral Sorcery
  • Botania
  • Thaumcraft
  • EvilCraft
  • Draconic Evolution
  • InWorldCrafting
  • Avaritia
  • Tinker Construct
  • Actually Additions
  • Extended Crafting
  • Terra Firma Craft
  • Harvest Festival Legacy
  • ModularMachinery: Community Edition
  • Artisan Workbench
  • Extra Utilities 2
  • Pyrotech
  • Ex Nihilo: Creatio (WIP)
  • Integrated Dynamics
  • Forestry
  • LootTweaker (Native) (Almost done)
  • foodtweaker
  • Initial Inventory (Native)
  • ZSRarity (Native)
  • Game Stages and addons (Item, Ore, Journeymap, Multiblock)
  • Packmode
  • Multiblocktweaker (For GTCEu)
  • Advanced Rocketry
  • Galacticraft
  • HBM
  • Embers
  • FutureMC
  • RockyTweaks
  • Vanilla Anvil Repair
  • Tabulator
    grafik

issue with midnight fishing table

the game chrash on loading a world with groovyscript and Midnight dimension, there are no scripts in groovy, tested in a bug modpack (400+) and in a light modpack for texting purposes to be sure, and it crash with midnight and groovy together

groovy script version: 0.6.4
the log

the crash is from the midnight side, but they are not supporting 1.12 anymore, is there something you can do?

Doesn't display Cyrillic correctly

image

import net.minecraftforge.event.world.BlockEvent.BreakEvent
import net.minecraftforge.event.world.BlockEvent
import net.minecraft.util.text.TextComponentString

def restrictPlacableBlocks = [
    block("minecraft:furnace")
]

event_manager.listen(EventPriority.HIGHEST) { BlockEvent.PlaceEvent event ->
    if (event.getState().getBlock() in restrictPlacableBlocks) {
        def restrictText = new TextComponentString("${textformat('BOLD')}${event.getState().getBlock().getLocalizedName()} ${textformat('GREEN')} не может быть установлен в этом мире")
        event.setCanceled(true)
        event.player.sendMessage(restrictText)
    }
}

weird interaction with agricraft config

hi! this is the weirdest interaction i've ever seen regarding two mods: (i think is the same as this issue, i admit is difficult to understand there XD)

it looks like having groovyscript and agricraft together cause agricraft jsons under config > agricraft to be regenerated and added into config > agricraft > config > agricraft after every game startup

this cause after a bit to have a huge number of subfolders with jsons that will slow down game load (i noticed the game freezing for a while during agricraft loading recently... there wers 40 mb of jsons in i don't even know how many subfolders...).

i know it's weird, but i managed to narrow down the issue in agricraft being loaded with groovyscript... is it something caused by groovyscript that you can fix?
you can test this out by just having groovyscript, mixinbooter, agricraft and infinityLib in a pack

Crashes with EnderIO

Crash log
Crash.txt

As per title Groovyscript crashes with EnderIO
For context I was using a slightly modified version of the GTCEu Community pack

Crash on startup w. Ender IO

Hi

The game crashes on startup with Ender IO.

Mods

crash-2023-06-25_15.40.45-client.txt
---- Minecraft Crash Report ----

WARNING: coremods are present:
  EnderCorePlugin (EnderCore-1.12.2-0.5.76-core.jar)
  GroovyScript-Core (groovyscript-0.5.0.jar)
  MixinBooter (!mixinbooter-8.2.jar)
Contact their authors BEFORE contacting forge

// I'm sorry, Dave.

Time: 6/25/23 3:40 PM
Description: Initializing game

com.google.common.util.concurrent.ExecutionError: java.lang.ExceptionInInitializerError
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2215)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
	at net.minecraft.world.storage.loot.LootTableManager.func_186521_a(LootTableManager.java:40)
	at net.minecraft.world.storage.loot.LootTableManager.func_186522_a(LootTableManager.java:49)
	at net.minecraft.world.storage.loot.LootTableManager.<init>(LootTableManager.java:35)
	at com.cleanroommc.groovyscript.GroovyScript.initializeGroovyPreInit(GroovyScript.java:138)
	at net.minecraftforge.fml.common.LoadController.handler$zzf000$groovyscript_0_5_0$preInit(LoadController.java:1017)
	at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java)
	at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:629)
	at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)
	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)
	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:243)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:278)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)
Caused by: java.lang.ExceptionInInitializerError
	at crazypants.enderio.base.config.config.PersonalConfig.<clinit>(PersonalConfig.java:11)
	at crazypants.enderio.base.loot.LootManager.onLootTableLoad(LootManager.java:94)
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_53_LootManager_onLootTableLoad_LootTableLoadEvent.invoke(.dynamic)
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
	at net.minecraftforge.event.ForgeEventFactory.loadLootTable(ForgeEventFactory.java:775)
	at net.minecraftforge.common.ForgeHooks.loadLootTable(ForgeHooks.java:1186)
	at net.minecraft.world.storage.loot.LootTableManager$Loader.func_186518_c(LootTableManager.java:156)
	at net.minecraft.world.storage.loot.LootTableManager$Loader.load(LootTableManager.java:72)
	at net.minecraft.world.storage.loot.LootTableManager$Loader.load(LootTableManager.java:53)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211)
	... 29 more
Caused by: java.lang.NullPointerException
	at crazypants.enderio.base.config.config.BaseConfig.<clinit>(BaseConfig.java:23)
	... 43 more

(MixinBooter) Mixins in Stacktrace:
	net.minecraft.client.Minecraft:
		com.cleanroommc.groovyscript.core.mixin.DefaultResourcePackAccessor (mixin.groovyscript.json) [groovyscript-0.5.0.jar]
	net.minecraftforge.fml.common.LoadController:
		com.cleanroommc.groovyscript.core.mixin.LoaderControllerMixin (mixin.groovyscript.json) [groovyscript-0.5.0.jar]
		zone.rong.mixinbooter.mixin.LoadControllerMixin (mixin.mixinbooter.init.json) [unknown]

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Client thread
Stacktrace:
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2215)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
	at net.minecraft.world.storage.loot.LootTableManager.func_186521_a(LootTableManager.java:40)
	at net.minecraft.world.storage.loot.LootTableManager.func_186522_a(LootTableManager.java:49)
	at net.minecraft.world.storage.loot.LootTableManager.<init>(LootTableManager.java:35)
	at com.cleanroommc.groovyscript.GroovyScript.initializeGroovyPreInit(GroovyScript.java:138)
	at net.minecraftforge.fml.common.LoadController.handler$zzf000$groovyscript_0_5_0$preInit(LoadController.java:1017)
	at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java)
	at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:629)
	at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)
	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)

-- 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:243)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:278)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)

-- System Details --
Details:
	Minecraft Version: 1.12.2
	Operating System: Linux (amd64) version 6.3.5-2-MANJARO
	Java Version: 1.8.0_361, Oracle Corporation
	Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
	Memory: 1669627632 bytes (1592 MB) / 3168796672 bytes (3022 MB) up to 7516192768 bytes (7168 MB)
	JVM Flags: 2 total; -Xms2048m -Xmx8064m
	IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
	FML: MCP 9.42 Powered by Forge 14.23.5.2859 10 mods loaded, 10 mods active
	States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

	| State | ID             | Version       | Source                                  | Signature                                |
	|:----- |:-------------- |:------------- |:--------------------------------------- |:---------------------------------------- |
	| LC    | minecraft      | 1.12.2        | minecraft.jar                           | None                                     |
	| LC    | mcp            | 9.42          | minecraft.jar                           | None                                     |
	| LC    | FML            | 8.0.99.99     | forge-1.12.2-14.23.5.2859-universal.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 |
	| LC    | forge          | 14.23.5.2859  | forge-1.12.2-14.23.5.2859-universal.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 |
	| LC    | beyond_reality | 2.1.0         | .minecraft                              | None                                     |
	| LC    | mixinbooter    | 8.2           | minecraft.jar                           | None                                     |
	| LC    | endercore      | 1.12.2-0.5.76 | EnderCore-1.12.2-0.5.76.jar             | None                                     |
	| LC    | enderio        | 5.3.70        | EnderIO-base-1.12.2-5.3.70.jar          | None                                     |
	| LC    | enderiobase    | 5.3.70        | EnderIO-base-1.12.2-5.3.70.jar          | None                                     |
	| LC    | groovyscript   | 0.5.0         | groovyscript-0.5.0.jar                  | None                                     |

	Loaded coremods (and transformers): 
EnderCorePlugin (EnderCore-1.12.2-0.5.76-core.jar)
  com.enderio.core.common.transform.EnderCoreTransformer
  com.enderio.core.common.transform.SimpleMixinPatcher
GroovyScript-Core (groovyscript-0.5.0.jar)
  
MixinBooter (!mixinbooter-8.2.jar)
  
	GL info: ' Vendor: 'AMD' Version: '4.6 (Compatibility Profile) Mesa 23.0.3' Renderer: 'AMD Radeon RX 6700 XT (navi22, LLVM 15.0.7, DRM 3.52, 6.3.5-2-MANJARO)'
	Ender IO: No known problems detected.
	Authlib is : /home/simon/.local/share/multimc/libraries/com/mojang/authlib/1.5.25/authlib-1.5.25.jar

	!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	!!!You are looking at the diagnostics information, not at the crash.       !!!
	!!!Scroll up until you see the line with '---- Minecraft Crash Report ----'!!!
	!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

	Launched Version: 1.12.2
	LWJGL: 2.9.4
	OpenGL: AMD Radeon RX 6700 XT (navi22, LLVM 15.0.7, DRM 3.52, 6.3.5-2-MANJARO) GL version 4.6 (Compatibility Profile) Mesa 23.0.3, AMD
	GL Caps: Using GL 1.3 multitexturing.
Using GL 1.3 texture combiners.
Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
Shaders are available because OpenGL 2.1 is supported.
VBOs are available because OpenGL 1.5 is supported.

	Using VBOs: Yes
	Is Modded: Definitely; Client brand changed to 'fml,forge'
	Type: Client (map_client.txt)
	Resource Packs: 
	Current Language: English (US)
	Profiler Position: N/A (disabled)
	CPU: 12x Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz

Unable to craft registered recipes in the Arcane Workbench

Hi

I am unable to craft recipes registered for the Arcane Workbench in GroovyScript. They do show up in JEI/HEI, but even with the research, Vis and crystals I'm unable to craft it. I tried the suggested recipe too from the docs, but it didn't work either.

mods.thaumcraft.ArcaneWorkbench.shapedBuilder()
        .researchKey('UNLOCKALCHEMY@3')
        .output(item('minecraft:pumpkin'))
        .row('SS ')
        .row('   ')
        .row('   ')
        .key('S', item('minecraft:pumpkin_seeds'))
        .aspect(aspect('terra'))
        .vis(5)
        .register()

I was unable to show these recipes in the Thaumonomicon too. At first I assumed it was because the registry id was something else, so I did a dump on the registry and found it was something like groovyscript:shaped_arcane_ffffffff. I inserted that into the research config and reloaded the Jsons, but it still didn't show up.

A /gs reload also showed me that the registry id changed too (groovyscript:shaped_arcane_ffffffff -> groovyscript:shaped_arcane_fffffffe), making the Jsons invalid again. Restarting the game made it go back to ffffffff. So perhaps an additional method in the builder to supply a registry id would be nice.

pthread_mutex_lock+0x4 error that causes CTD

LATEST OBSERVATION: #89 (comment)

Multithreading during loading error

latest.log
Right at the end of this log, is a fatal JRE error:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f9af2e97f74, pid=906808, tid=0x00007f9af2dff640
#
# JRE version: Java(TM) SE Runtime Environment (8.0_381) (build 1.8.0_381-b09)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.381-b09 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libc.so.6+0x97f74]  pthread_mutex_lock+0x4
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /mnt/wwn-0x50014ee0aec8bffb-part2/multiMC/instances/CBT- New Horizons/minecraft/hs_err_pid906808.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

JRE: 8u381 on Linux, 64-bit.
OS: Linux, Pop!_OS 22.04
Affected versions: Groovyscript 0.6.0 to 0.6.4

Crash after reload caused by recipe book

The game silently crashed after running /gs reload, constantly printing this error:

[STDOUT]: [net.minecraft.crash.CrashReport:func_85057_a:300]: Negative index in crash report handler

Crash Report
Latest Log

GroovyScript: 0.5.2

CensoredASM: 5.14
Had Enough Items: 4.25.0
VintageFix: 0.2.7

update groovyscript docs for GTCEu 2.7+

just found out that the examples in https://groovyscript-docs.readthedocs.io/en/latest/groovyscript/mods/gtceu/material/ are outdated and it should be updated.

this is just one example and there may be more outdated groovyscript docs.

as of GTCEu 2.7.4, the following example script will no longer work

import gregtech.api.GregTechAPI.MaterialEvent
import gregtech.api.unification.material.Material

event_manager.listen { MaterialEvent event ->
    def specialSteel = new Material.Builder(32002, "special_steel") // name
            .fluid("gas", false) // gas without block
            .ingot() // has ingot (and therefore dust)
            .color(0x0000FF) // pure blue
            .toolStats(10, 3, 256, 21) // tool stats
            .blastTemp(2900) // EBF temperature
            .ore() // has ore blocks
            .addOreByproducts(material('gold'), material('copper')) // add byproducts
            .cableProperties(128, 2, 4, false) // add cables
            .build() // build the actual material
}

update to this:

- new Material.Builder(32002, "special_steel"). 
+ new Material.Builder(32000, resource("modpack_modid", "special_steel"))

There are more outdated examples and feel free to list them in here.

TODO

  • Docs PR + Doc all existing compat (TiC !)
  • Full Gamestages support
  • Material system like contentweaker (maybe steal gregtech)

High Priority mod support (reload)

  • TFC
  • GregTech Multiblocks / Singleblock helpers
  • Nuclearcraft ???
  • Thermalexpansion

GTCEu Pack Server Crash

When attempting to start a new server it crashes and crash report mentions groovyscript. Removal of groovyscript stops crashes and server starts normally. I am using a Gregtech Jar that was compiled off of Prototypes fix to the Gregtech 2.4.3-beta JAR, otherwise all other files are from the a16b64a release of the pack.
crash-2022-10-31_20.05.05-server.txt

Groovy script crashes SUPERSYMMETRY on loading screen

When I load SUSY up with the groovy script mod on, the game will permanently freeze at exactly 12.50%, while pre initializing the CreativeCore mod. I waited for an entire hour for it to crash or something but it stayed frozen. This is why the two files I’m sending are completely useless. I checked task manager and the amount of cpu and ram being used by Minecraft was frozen too.
However, if I take the groovy script mod out, the game loads perfectly fine until I load into a world or join a server because groovy is a very required mod.

I’m sending my logs folder and my groovy.logs
The latest.log in the logs folder was when I tried it without the groovyscript mod.

groovy.log
logs.zip

how do I fix this bruh I just wanna play the game

[SUGGESTION] "Check" command

Hi

I'm notorious for doing syntax errors. It would be nice with a command similar to CraftTweaker to just check the syntax of all the scripts. Reloading takes a bit to do (especially with a large amount of scripts and some slow functions in conjunction). And scripts in preInit only runs once at startup so I don't get any errors unless I close and load the game and sees in either the console and have to spam-click exiting Minecraft or when I join a world and sees the error in chat.
So something like: /gs check preInit or /gs check postInit/<scriptName.groovy> or something. Or just /gs check to check all scripts under groovy/.

GroovyScript caused Terra Moss of Roots mod to be unable to split from Moss Stone

The same goes for other moss block or other blocks which customized in config.

But if you execute the GroovyScript command check/reload, after that, the Terra Moss of Roots mod can be split from Moss Stone.

loading mods:
jecharacters-1.12.0-3.7.2.jar
HadEnoughItems_1.12.2-4.25.0.jar
hecharacters-1.12.2-1.4.0.jar
groovyscript-0.6.1.jar
Cucumber-1.12.2-1.1.3.jar
CraftTweaker2-1.12-4.1.20.692.jar
!mixinbooter-8.4.jar
modtweaker-4.0.20.11.jar
MTLib-3.0.7.jar
mysticalworld-1.12.2-1.11.0.jar
mysticallib-1.12.2-1.13.0.jar
Patchouli-1.0-23.6.jar
Roots-1.12.2-3.1.7.jar

latest.log

GroovyScript conflicts with Ender IO

GroovyScript 0.7.0版本会与Ender IO 5.3.72版本冲突报错,错误报告经ChatGPT分析后输出为:根据报告,异常可能是由于Java类的初始化错误导致的。具体来说,crazypants.enderio.base.config.config.PersonalConfig类的初始化引发了异常。

GroovyScript version 0.7.0 will conflict with Ender IO version 5.3.72 and report an error, and the error report will be analyzed by ChatGPT and output as follows: According to the report, the exception may be caused by an initialization error of the Java class. Specifically, the initialization of the crazypants.enderio.base.config.config.PersonalConfig class throws an exception.

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.