Fureniku's Roads

Fureniku's Roads

575k Downloads

I don't get any tar

RezaJawaheri opened this issue ยท 11 comments

commented

2021-02-22_00 12 40

commented

Hi,

I have the same issue in a pretty large pack.
The issue occurs regardless of being on the server or in singleplayer.

In my case, I have "The Betweenlands" installed, which also provides a tar liquid. I had a hunch, so I took a closer look at the (very very large) logfile. Found this:

[08:02:13] [Server thread/DEBUG] [FML]: The fluid thebetweenlands:tar has been selected as the default fluid for tar
The Tar from Furenikus Roads does not appear in NEI either, so it's probably been completely replaced with the Betweenlands version of it.

Removing "The Betweenlands" fixes the issue, so this is an issue of mod compatibility.

commented

Thanks for passing that information along. Roads should be able to use any tar variant in the game, but I wasn't aware that the game will only register one at a time. You should be able to use Betweenland's tar for actual road production but you won't be able to produce it until I fix that*. Alternatively, Minecraft loads mods in alphabetical order based on the .jar name. Changing my mod's file name to AAFurenikusRoads or ZZFurenikusRoads (based on whether it's currently before or after betweenlands, I don't know if their file is just betweenlands.jar or thebetweenlands.jar) may force mine to register instead of theirs and also serve as a workaround - but that entirely depends on if they register their tar in the same game loading stage as me.

*I'm not familiar with Betweenlands, would being able to make their tar cause any balance issues? I'm a bit wary of just letting the game produce any tar instead of specifically my own in case another mod treats it as a rare natural resource or something.

commented

Thanks for the very quick response.

I have tested using Betweenlands's tar, but haven't had any luck in getting your machines to recognize it as a valid input. I can place the bucket into the machine just fine, but it won't transfer to the machines tank.

As for the rarity and uses of Betweenlands's tar, the "betweenlands fandom wiki" states the following:
"Tar is a liquid that generates occasionally in small pools on the surface of Swamplands and Sludge Plains biomes. It also generates as part of Tar Pool Dungeons.".

It's not all that common of a liquid, but not exactly rare either. Being able to produce tar shouldn't cause huge balancing implications, I think. It's been a while since I've last been to the betweenlands myself.

The betweenlands tar liquid has a lot of special interactions with other fluids and some betweenlands mobs, but I don't recall actually ever crafting something from it. I'll try switching the filename order around later. If that does indeed elect the "FR tar" to be the primary type, I'll have a look at the betweenlands to see if everything is still working as intended.

In the very worst case, would it be possible to make the id of your tar-version configurable so that forge doesn't try to conflate them? It's not a pretty solution, but it'd probably work (... I think :D)

commented

Alright, let me know what you find when you test the filename stuff.

I think I can make the name configurable yes. That will obviously need to be part of the next version though, but I can probably do a beta for it sooner as its a game-breaking problem - just be aware that there may be minor issues with some of the 1.2 things if they're used (they're all currently creative-only so shouldn't be a problem for survival servers and it'll be mostly graphical anyway)

commented

Hey, thanks. My case is a survival multiplayer world, so that wouldn't be an issue in my case in particular.

I have tried switching filenames around, but it would seem that Betweenlands hooks an earlier loader stage, so that didn't work.
I managed to get FML to swap out which fluid to use in the bucket by temporarily removing The Betweenlands, loading into a world, getting FR tar buckets into my inventory, then closing the game and adding The Betweenlands back in. Apparently FML prioritizes whichever is already in use as a bucket.

So, going from there, here's what I found

  • Betweenlands has two custom bucket types, "Syrmorite" and "Weedwood" buckets - these are supposed to become available with Betweenlands's tar; However, with FR tar being active they don't show up in NEI.
  • You can still use an empty bucket of either type to pick up the Betweenlands overworld tar. This yields filled buckets of the given type, however, NEI will say that this bucket belongs to FR when hovered.
  • These buckets will not be accepted into the corresponding slot of the Road Factory machine
  • Doing the same with a vanilla bucket will work
  • Placing a fluid out of these buckets in the world will place FR tar (WAILA doesn't actually tell me fluid types that I'm looking at, but I do know that Betweenlands tar spreads very slowly while FR tar is similar or the same as water)
  • Trying to pick that fluid back up again (with any bucket type, vanilla or otherwise) crashes the game (I will have to test this again later, however, because the stack trace contained a reference to the railcraft mod - might be their fault)
  • The previous crash also happens with buckets taken out of the Tar Distiller machine
  • Betweenlands interactions between tar generated in the world and certain entities and blocks still work
  • Obviously, these interactions do not work with FR tar

Just on the off-chance this information is helpful, here's the crashing exception for the case where an attempt at getting FR tar back into a bucket is made (as I said, this one might not be related to FR and because of Railcraft instead):

[11:49:10] [Client thread/ERROR] [FML]: Exception caught during firing event net.minecraftforge.event.entity.player.PlayerInteractEvent$RightClickItem@236510fd:
java.lang.NullPointerException: null
	at net.minecraftforge.fluids.FluidStack.getFluid(FluidStack.java:119) ~[FluidStack.class:?]
	at net.minecraftforge.fluids.FluidStack.copy(FluidStack.java:137) ~[FluidStack.class:?]
	at net.minecraftforge.fluids.BlockFluidClassic.drain(BlockFluidClassic.java:333) ~[BlockFluidClassic.class:?]
	at mods.railcraft.common.fluids.CustomContainerHandler.onItemUse(CustomContainerHandler.java:81) ~[CustomContainerHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1455_CustomContainerHandler_onItemUse_RightClickItem.invoke(.dynamic) ~[?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) ~[ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182) [EventBus.class:?]
	at net.minecraftforge.common.ForgeHooks.onItemRightClick(ForgeHooks.java:1123) [ForgeHooks.class:14.23.5.2854]
	at net.minecraft.client.multiplayer.PlayerControllerMP.processRightClick(PlayerControllerMP.java:508) [bsa.class:?]
	at net.optifine.override.PlayerControllerOF.processRightClick(PlayerControllerOF.java:80) [PlayerControllerOF.class:?]
	at net.minecraft.client.Minecraft.rightClickMouse(Minecraft.java:1597) [bib.class:?]
	at net.minecraft.client.Minecraft.processKeyBinds(Minecraft.java:2254) [bib.class:?]
	at net.minecraft.client.Minecraft.runTickKeyboard(Minecraft.java:2020) [bib.class:?]
	at net.minecraft.client.Minecraft.runTick(Minecraft.java:1808) [bib.class:?]
	at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1098) [bib.class:?]
	at net.minecraft.client.Minecraft.run(Minecraft.java:3942) [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:?]
commented

Hi, it looks like you have some other machines around your tar distiller, can you show me how you've got things set up? It may be that your tar is automatically moving into the road factory.

commented

2021-02-22_21 07 10
2021-02-22_21 07 13
2021-02-22_21 07 31

commented

Can you please go to the Roads config and set the debug level to 3, make a new world with just the tar distiller and road factory set up like this, try and run it and then send me your output log?

Don't forget to set the debug level back to 0 when you're done, it'll get very spammy otherwise :)

commented

It worked on singleplayer but not on my server. What should i do on my server?

commented

Were you using the same full modpack for single player as you were on the server, with the same config files?

commented

Closing for inactivity