Jump to content

[1.18.1] Connecting machines with Generator


1HA

Recommended Posts

Hi

(I'm trying to build my first, tech mod. I looked up several tutorial videos and their code, and tried not to use any deprecated things.)🙂

I finished making generators a few days ago, and I'm wondering how it should work(cables, etc.)

In my case, I thought that cables like IC2 cables would be better than Immersive Engineering's.

I'm not sure about how it should send&receive energy with it. I couldn't find any examples.

One way I'm thinking :

the machine(which receives the energy and consumes) tracks the connected cable. If it's connected to the generator which has energy stored, this machine works.

Mod github repository

https://github.com/hawon10617/SpaceSim

Edited by 1HA
Link to comment
Share on other sites

On 2/10/2022 at 6:35 AM, 1HA said:

the machine(which receives the energy and consumes) tracks the connected cable. If it's connected to the generator which has energy stored, this machine works.

How do you plan on determining whether or not the bolded statement is true?
(by the way, the way IC2 works is that generators "push" power into cables and cables push that power into all connected adjacent blocks that accept power).

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

8 hours ago, Draco18s said:

How do you plan on determining whether or not the bolded statement is true?
(by the way, the way IC2 works is that generators "push" power into cables, and cables push that power into all connected adjacent blocks that accept power).

Well, I'm working on it.

First of all, thank you for your information about IC2. I had no idea about "pushing" the power from the generator. It helped me a lot.

I made cables with BlockEntity. Because I thought that the cables should check their connection in every tick. And I did almost the same as what you said.

 

During this, I got some weird error, so I just committed and pushed it to GitHub.

Error: Cannot resolve method 'of(<method reference>, net.hawon.spacesim.common.block.CopperCableBlock)'

-> from "BlockEntityInit.java" : 27

Maybe I think this error is triggered because something's missing. I think I can fix this.

*CopperCableBlockEntity.java is not a final code. It's just a test code. 

===============

By the way, what do you mean "bolded" statement?

Edited by 1HA
Link to comment
Share on other sites

3 hours ago, 1HA said:

By the way, what do you mean "bolded" statement?

I bolded a section in the quote of your previous post.

 

3 hours ago, 1HA said:

Error: Cannot resolve method 'of(<method reference>, net.hawon.spacesim.common.block.CopperCableBlock)'

-> from "BlockEntityInit.java" : 27

Maybe I think this error is triggered because something's missing. I think I can fix this.

Your CopperCableBlockEntity doesn't have a constructor that matches the parameters being passed.

Compare:

With:

I'm a bit less familiar with 1.17 and newer and how the various lambda stuff is defined, but I can compare the other block entities you have that do work with the one that doesn't: Your other two subclass and only have 2 parameters in their constructor, and generate the third for super.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

11 hours ago, Draco18s said:

I bolded a section in the quote of your previous post.

 

Your CopperCableBlockEntity doesn't have a constructor that matches the parameters being passed.

Compare:

With:

I'm a bit less familiar with 1.17 and newer and how the various lambda stuff is defined, but I can compare the other block entities you have that do work with the one that doesn't: Your other two subclass and only have 2 parameters in their constructor, and generate the third for super.

Yeah, I also checked what caused the error last night(Now it's 1 pm in Seoul, Korea) quoting after you

 

I made both GeneratorBlockEntity and ExampleChestEntity with InventoryBlockEntity because they both need item handlers and they share basic logic. But in the case of CopperCableEntity, it was a kinda experiment and never needed for inv or containers. Maybe I should make a new "CableEntity" class. Then CoppperCableEntity will extend it as a super.

I'm not sure about making it with BlockEntity is right. In my case, each cable is made with BlockEntity, and as you know BlockEntity takes a lot of computing tasks, so I'm worried about whether it's not too "heavy". I know that in some parts, we have to let it go, but I'm just worried.

And... Your bolded statement. So, the cable works the same as IC2 one. It automatically attaches to the generator or any other machines if they're neighbored. Tell me if I need extra conditions for this.

Edited by 1HA
Link to comment
Share on other sites

17 hours ago, 1HA said:

Tell me if I need extra conditions for this.

Do this (top down):

G┬┐
 └┴M

where G is the generator and the M is the machine and the four others are cables.

Will your code crash, infinite loop, or transmit power?

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

17 hours ago, Draco18s said:

Do this (top down):

G┬┐
 └┴M

where G is the generator and the M is the machine and the four others are cables.

Will your code crash, infinite loop, or transmit power?

Well, still almost nothing, 'cause I think I have to start from the scratch "again".

I think I should think more about the logic. heww...

Now I'm testing a few things with IC2 cable. 

 

About the Code Difficulty >

  1. It is hard to know how to use CapabilityEnergy.
  2. Especially, sendOutPower() (GeneratorBlockEntity:93).

And there are some serious logical problems... I'll do it tomorrow.

I really appreciate your help 

Edited by 1HA
Link to comment
Share on other sites

On 2/15/2022 at 6:42 AM, Draco18s said:

Do this (top down):

G┬┐
 └┴M

where G is the generator and the M is the machine and the four others are cables.

Will your code crash, infinite loop, or transmit power?

Glad to tell u that I found a solution.

Now I'm trying to add a new custom blockstateproperty.

I hope this will work 

Edited by 1HA
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Sometimes, tweaking load order or specific configs can also help ease those conflicts.
    • I have recently tired downloading forge so i can run mods for hypixel skyblock but whenever i download forge and do it the same way as videos and tutorials forge keeps downloading as log file and doesnt download the .jar file any help will be aprecciated.
    • So I have created a Create Mod Server with my friends and i to play everyone can join play except one of my friends because when he tries to launch the game from the CurseForge Launcher it will load but never open or give him a crash report, we have tried everything from deleting CF and reinstalling it to Updating his drivers, IDK what to do if anyone can help I would be very Grateful
    • I get this error when trying to start the server for forged mods. In the code below it mentions distant horizons but no matter what mod I put in (deleting distant horizons) it still gives an error and doesn't launch Crash Report UUID: 3e91d5c7-18a7-43c2-a935-a8d28de560d1 FML: 47.3 Forge: net.minecraftforge:47.3.10[23:33:47] [main/ERROR] [minecraft/Main]: Failed to start the minecraft server net.minecraftforge.fml.LoadingFailedException: Loading errors encountered: [    Distant Horizons (distanthorizons) encountered an error during the sided_setup event phase§7java.lang.ExceptionInInitializerError: null]     at net.minecraftforge.fml.ModLoader.waitForTransition(ModLoader.java:246) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at net.minecraftforge.fml.ModLoader.lambda$dispatchAndHandleError$20(ModLoader.java:210) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at java.util.Optional.ifPresent(Optional.java:178) ~[?:?] {}     at net.minecraftforge.fml.ModLoader.dispatchAndHandleError(ModLoader.java:210) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at net.minecraftforge.fml.ModLoader.lambda$loadMods$15(ModLoader.java:190) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?] {}     at net.minecraftforge.fml.ModLoader.loadMods(ModLoader.java:190) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at net.minecraft.server.loading.ServerModLoader.load(ServerModLoader.java:31) ~[forge-1.20.1-47.3.10-universal.jar%23108!/:?] {re:classloading}     at net.minecraft.server.Main.main(Main.java:125) ~[server-1.20.1-20230612.114412-srg.jar%23103!/:?] {re:classloading}     at jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {}     at java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.3.10.jar%2369!/:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.lambda$run$1(CommonLaunchHandler.java:103) ~[fmlloader-1.20.1-47.3.10.jar%2369!/:?] {}     at net.minecraftforge.fml.loading.targets.CommonServerLaunchHandler.lambda$makeService$0(CommonServerLaunchHandler.java:27) ~[fmlloader-1.20.1-47.3.10.jar%2369!/:?] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?] {}  
    • This error keeps coming up after player tries to join server, doesn't happen to anyone else.  Error: Internal Exception: io.netty.handler.codec.DecoderException: java.lang.ArrayIndexOutOfBoundsException: Index 17196645 out of bounds for length 13 Heres the latest.log https://pastebin.com/uaw3KC0K  Heres the debug.log https://drive.google.com/file/d/1QzqtCMUf7ps1Iz85AOsMM7W8QhbHjBeU/view?usp=sharing
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.