SonOfTheStars / Logistics-Pipes-2

MIT License
30 stars 7 forks source link

Hello #13

Open JugglerMaster opened 6 years ago

JugglerMaster commented 6 years ago

Hey, it's so great to see a new logistics pipe mod coming along! I personally was a great fan of the old one but it's sad to see it go. I honestly do believe it needed a rewrite because there were quite a few things that were buggy.

The one item I really miss was the logistics crafting table that that allowed you to partially craft what you needed and request items from the network and they would be sent to the table inventory.

Do you really need custom ores? Do they add something to LP2 that increases their value? It might be fun to have a multiblock structure required to be connected to the network to process a special LP2 ore or convert it from iron etc. This ore could then be used in more advanced LP2 modules and pipes. Mods adding lots of ore gen has caused some mod pack makers to just add a recipe for said item and remove the generation.

I would love to contribute ideas and code to help this project get up and running. Unfortunately I am still learning correct coding styles and how object oriented code works but I am very computer savvy and love scripting and playing with code.

Just thought I would contribute some, have a great day!

SonOfTheStars commented 6 years ago

Hey, First of all thanks for stopping on by! Glad to see you like it.

Now Regarding your concerns about the ores, they are basicly resources that unlock the different Tiers of Pipes that are planned. Titanium will allow you to access the Industrial pipes. They are faster and more durable. Vanadium will allow you to access the Warp Age, wich allow you to have very energy hungy but near instant travel pipes.

Also High quality Items, Modules and Structures will require these resources. But they will just be standard furnace recipes. (We might provide dust and stuff to accompany IC2 and other crusher mods)

Regarding the Logistics Order Table, i plan to bring it back but it'll be a LOT of UI work :D Everyone is free to contribute and offer stuff to the mod. Just note that i can be a bit picky when it comes to additions(Since I basicly have a design up and ready)

JugglerMaster commented 6 years ago

Ok, it is very fun to see what you have going and I hope you stay strong! I honestly have considered moving back to 1.7.10 just because I miss LP so much. The crafting was so fun and easy to setup.

ExpensiveKoala commented 6 years ago

What exactly is left to do?

SonOfTheStars commented 6 years ago

Basicly? Everything We still dont even have the modules, neither do we have more than 2 sets of pipes We still need a model for the network core All the recipes must be made ect ect

rlnt commented 6 years ago

I would love to help, either with programming, texturing, brainstorming or model making.

SonOfTheStars commented 6 years ago

@Relentless Feel free to fork and Contribute in case of programming. Modeling is not a big "needs to be done" right now, neither texturing.

We are approaching first item travel at the moment, with the first few modules on the way. Wich me luck that i can get this stuff done.

SonOfTheStars commented 6 years ago

Essentially, everyone can contribute, just be warned that your changes must pass my judgement. Tho I'm far from unmistakeable and open for discussion at any time.

And if I like your work, you might even become an official contributor.

rlnt commented 6 years ago

Fully agree. I often contribute to repos on github. Mostly ArmA modding, but Java is the first thing I've learned so whenever I have enough time, I will watch trough the source code and help with the developement. Anyways, it's very nice that you rebuild this amazing modification. I loved it and I was thinking myself about recoding it before I found this repository.

Edit: Don't know whether you are using IntelliJ or Eclipse as IDE but I prefer Eclipse and when I build this repository, it's missing libraries. Any idea?

SonOfTheStars commented 6 years ago

What libaries is it missing? have you looked into that?

elektronemulo commented 6 years ago

I share JugglerMaster's concern about additional ores. It would be great if industrial pipe could be made with processed vanilla items (BuildCraft used the magical lubricating properties of gold and diamonds, for example).

Instead of Vanadium, nearly-instant in the MineCraft world means the use of ender pearls in the recipe. If you're willing to get rid of custom ores but don't mind making us work for the faster pipes, may I suggest gold-dusted diamonds in the industrial pipes recipe and ender-coated diamonds for the express pipes (or perhaps a blend of diamond and gold dust and a blend of diamond and ender pearl dust). Pipes could then be dusted with the powdered lubricant in a crafting table or by right-clicking the pipe with dust to change the pipe in situ. Dusted pipes would only need a texture change, not a model change (as opposed to EnderIO conduits or that really big Thermal Expansion pipe with the block-sized casing).

Please allow the three grades of pipe to connect/interact without a step-down block of some sort.

JugglerMaster commented 6 years ago

It's also not the end of the world with world gen as many pack makers have resolved this issue of too many ores by simply disabling them and creating their own crafting recipes for them. It's pretty trivial to do that but just takes time for the pack maker.

SonOfTheStars commented 6 years ago

In Situation Upgrading was in the original Design Paper indeed.

Tho My reasoning for using Vanadium and Titanium ore to gate the player through the tech progress is rather simple:

  1. Uniqueness: I dont want to just simply require some diamonds or blended versions of that. and TBF, diamonds arent as rare as i want them to be. (Advanced recipes will definitly make use of them tho)
  2. Effective Gating Mechanism: Vanadium is planned to be like super super rare and needed in medium-large quantities in the endgame content. Ender pearls and Diamonds are, IMO far to easy to optain in larger quantities these days. Especially in modded.
  3. Mod Interop: Adding a rare ore gives players the incentive to use other mods to e.g. double their ore yield or set up massive quarries in order to advance to the lategame content.

At the end of the day, if you dont like the gating or feel like there are to many ores or simply dont like the recipes, you can allways go about and change the recipes via Minetweaker. As most packmakers do so anyways... This is concidered the VANILLA balance for Logistics Pipes 2

And im even debating to detect mods with ore double mechanisms and increase the endgame item cost if they are present automatically. Because im really not a friend of the easy rushing through the tech tree.

ExpensiveKoala commented 6 years ago

Is there a reason for the routing to be so convoluted?

List<Tuple<Boolean, Triple<NetworkNode, NetworkNode, Deque<Tuple<UUID, EnumFacing>>>>>

rlnt commented 6 years ago

Is this still being worked on? No offense, just want to be informed. :)

SonOfTheStars commented 6 years ago

@DAmNRelentless Im planning on picking up pace with it again soon, Reallife kind of got in the way of it as im going through a very rough time at the moment.

But as soon as things have settled ill be back on track trying to revive Logistics Pipes!

SonOfTheStars commented 6 years ago

@ExpensiveKoala I dont even know where you took that extract from right now. If its from any router except the JumpPoint Search, its not my logic, but by collegue @Borimino

ExpensiveKoala commented 6 years ago

That's from https://github.com/Bitterholz/LP2/blob/master/src/main/java/com/sots/routing/Network.java#L115

SonOfTheStars commented 6 years ago

Ah yes that... that really is nothing but Debug Code.... We used that to test if the system could sequentially find all routes from any given starting tile in the network(And boy it worked on the first try!)

Borimino commented 6 years ago

@ExpensiveKoala That method returns a list of all routes from a given node.

A route consists of a Boolean, which tells you whether the route has been computed yet, and a Triple, which gets updated once the route has been computed (at the same time the Boolean gets set to True). The Triple contains the Start and End nodes and a Deque (basically a Stack), which has the UUID for the node, which the Item should be at at that time, and the direction the Item should be going in from that node.

The Start and End nodes and the UUIDs for the nodes on the route might be unnecessary, but it has been a while since I have looked at that code, so I am not sure.

ExpensiveKoala commented 6 years ago

I want to help with this mod. I've got absolutely nothing to do for a month or so. It's just, I don't see what has been done and what needs to be. The issues with the check list only gives me a vague idea. Do you think you can show me what you want to be done/how you want it done and I wouldn't mind doing the grunt work.

Also, at this point I feel moving to 1.12.2 is better in the long run.

SonOfTheStars commented 6 years ago

Hey Koala. And everyone else That would like to commit, discuss and or participate in any way. Ive setup a discord server specifically for this Mod. That way we can communicate a lot easier than over Github Issue talk.

Attached you find the join link: https://discord.gg/S7AfEUP

See you on there!

SonOfTheStars commented 6 years ago

@ExpensiveKoala Id love to talk about the changes you made when I get off work later