GlobbyPotato / Rockhounding_Chemistry

The purpose of Rockhounding Chemistry is to assembly and maintain an industrial area in which several machines handle various types of ingredients (solid, fluid and gaseous) to produce advanced material for mid-late game stages. It also leads to several features, functional applications and experiments.
Other
15 stars 17 forks source link

Question about 1.13.2 (+1.14.2) #96

Closed Shazuli closed 5 years ago

Shazuli commented 5 years ago

Hi

From the title, you can guess what I'm going to say. So keeping it short: When/if are you going to update past 1.12.2? Been working on a mod for 1.13.2 for the past few days and would say they've made it really good when it comes to making a mod compared to older versions of Minecraft. And though it is still in beta I would say it's stable enough.

GlobbyPotato commented 5 years ago

Hi, no real info at the moment. Planned something but taking a break by real life, checking the mood around if the mod is really worth the update and waiting to see if at least a recommended version of Forge will come out anytime soon as I'm not that good a chasing developenemt.

Shazuli commented 5 years ago

Ok, good to hear. A burnt-out mod developer will only give a half-decent mod. I would say it is a while left before Forge exits beta. So when you are in the mood, go for it. So update when you feel like, good that you've not abandoned this awesome mod.

GlobbyPotato commented 5 years ago

I think those who burnt-out are the players who tried to master the mod XD having lot of fun making it, just some busy time.

Shazuli commented 4 years ago

Hi again @GlobbyPotato. Just doing the 5 months 9 days check. xD But yeah, some info about Forge is that they've finally left beta ( \o/ ). The latest version of it right now is version 1.14.4-28.1.90 and later versions are mostly focused on crunching out bugs and inconsistencies, but no more backend changes for at least a few years Lexmanos (Forge dev) mentioned. Not sure how busy you are in real life, but if you still enjoy making this awesome mod I wouldn't worry some fundamental change in Forge will happen one version to another. Otherwise, there is the problem of only Bookshelf being updated to 1.14.4. I haven't looked that deep into your source of how much you use these libraries. There is the obvious GuideBook you use as the official, umm, Guide Book. He started on porting it to 1.13, but that was six months ago. I haven't tried to build his source yet, but it can be probably be salvaged and then updated to 1.14. A Forge Dev made an IntelliJ mapping to change all the classpaths to the 1.14 format. Lastly, there is Redstone Flux. The energy API for your mod. That one is trickier due to it not being open source. To that I would probably recommend using a different energy API, or better yet, your own power API. Not an eight or ninth power type, but more like an interface you attach power APIs as they update, could probably increase compatibility more in that case. Not sure how you did your power system, but I'm guessing you used their version of just what I explained. You could take the chance of possibly changing how you power the machines in the mod as usually most industrial processes use the heat and not the electrical current. Right now in your mod, you did a semi-solution to have it match reality by just having your machines fill up their RF buffer if it receives power or is given a burnable material in the power box. Heat transportation and have some of the machines needing heat. Then the heat is created either by an electrical current or an oven. Possibly having them behave like sponges but for heat, so placing a lava source block against would provide heat, but will eventually absorb all the heat from the lava block that it changes into an Obsidian Block. Most chemical reactions produce heat, not sure real industrial practices re-use heat like that, but I know heat can also be a problem too, so I think it would be a waste in discarding a possible feature like that.

Ok, so, for a "pls updete pls" message, it got way out scope. But I would love for this mod to be in newer versions of Minecraft, I have never seen a single mod like it.

GlobbyPotato commented 4 years ago

Hi, thanks for the interest :) Well, time is still a thing but I'd love to make it into the newer version, learning from mistakes I'd like to twist things to be an improvement of the current state. 1.12 is already too deep for such changes but did some homework and flowcharts for a new RH plant system.

About the libraries, of course I'd like to shrink them to none if possible, but I'd prefer to have stable code shared by good devs than coding again the same thing, Guidebook (or available alternatives) is a candidate to stay because an ingame book is necessary for this big project. Bookshelf is used out of convenience because it packs up several useful methods that I can borrow saving to code myself. Will see if can be kept or not. About the redstone API, it will surely go. It was inherited from older game versions so I kept the code for simplicity. I plan to use the internal Forge Energy as it should be already made compatible by other modded APIs so you just hook up hopefully. Will surely keep an internal RH own powering system too because the point of the mod is having fun experimenting my own ideas. The heat part is something I was thinkng about too, being multiblocks I can reserve any block for a specific purpose like heat recovering and such.

The are still a couple of issues that I need to consider though: The lack of real coding skills that time won't solve quickly. I already identified some known issues with syncing that make the mod unfriendly for servers. It's already hard to improve java skills, even harder learning the minecraft code these days. This makes the mod removed pretty quickly from packs. The nature itself of the mod that makes it hard to implement in packs. I don't care about yet another crusher, smelter, alloyer or infuser, If you noticed in the mod I aim at the journey, not the destination. So any future plan depend on how worth is to bring it on.

Shazuli commented 4 years ago

Hi again.

Just wanted to mention two things. The first is is that Guidebook has updated to 1.15.2 for Forge (around two weeks ago).

The second is a possible approach for how to handle metadata being deprecated post 1.12. So going to do a little selfish self-promotion, as I think our approach did it pretty nicely. Something to note is this is something I did not come up with myself but by another friend who I have built on top of and made a bit more efficient and prettier. Basically we have a Element class here with byte flags for each individual form that element can be in (ingot, nugget, plate, etc). In the constructor, he made a nice "exclusion" byte conversion to remove unwanted forms of a particular element (Minecraft already adds ingots and nuggets for Iron and Gold). Then we made a bunch of classes for each element we would like to make, here is the directory with all the elements sorted into metals, non-metals and alloys. This doesn't make items and block, and for that we have this for items and this for blocks. This will create all the items and blocks for us, but because we want efficiency (and we're lazy) we made a Color Handler class here. Inside that we have an array of first items and then blocks which then are looped through and added to the final list which are iterated through again and applying the tint. Not sure how efficient it is doing it this way, but it works well enough.

I am in no means an expert in Java, but this approach appears to be working fine: resources1

Shazuli commented 4 years ago

Hi @GlobbyPotato, just doing a life-signature check. Also going to mention that Bookshelf has begun to release Jars for 1.15+. But I would discourage looking into 1.15 as 1.16 is just around the corner with most likely mods following shortly thereafter.