Skip to content
This repository has been archived by the owner on Sep 17, 2022. It is now read-only.

Update Chemistry for consistancy with GTCE #388

Merged
merged 213 commits into from
Apr 18, 2021
Merged

Update Chemistry for consistancy with GTCE #388

merged 213 commits into from
Apr 18, 2021

Conversation

TechLord22
Copy link
Member

@TechLord22 TechLord22 commented Mar 1, 2021

Introduction

This PR addresses issues in every single chain we have in the mod. We have been thorough and made sure to double or triple check every single recipe we have added to the game. Most of these adjustments were to adjust mole amounts, which I will get into later, though there was a fairly substantial amount of recipes reworked to maintain proper chemistry and avoid positive loop exploits/lossy recipes.

Conventions

As per conventions established and followed rigorously by GTCE, our mole counts follow two rules:

  • Fluids are always 1B per mole
  • Dusts are always* N dusts per mole, where N is the number of total elements in the compound

See GregTechCE/GregTech#1414 for the original unification of the conventions we are maintaining in this PR.

*: Some dusts have very large formulas, and some are almost completely unknown, so in these rare cases, we left them at 1 dust per mole. This is a bad thing to do, but sometimes there is just no other way. Any time this was done, it was handled very carefully to ensure no side effects.

Recipe Map Changes

As a result of this PR, we have changed the RecipeMaps for the LCR and Chemical Plant slightly, changing input/output amounts.

  • LCR: Added 1 additional item output
  • Chemical Plant: Added 2 item inputs and 2 item outputs
  • Large Engraver: Added 1 fluid input and 1 fluid output

This allowed for some of our more complex balanced reactions to fit in a machine, and also helps differentiate the Chemical Plant from the LCR. Additionally, it will help for the future when condensed processes are eventually added to the Chemical Plant.

Material Changes

Since fluid tooltips now exist, we have implemented a way for tooltips to be provided for fluids. We have this provided as either an ImmutableList like before, or simply as a String. There is also now a way to give a tooltip to a SimpleDust as a String instead of an ImmutableList. This should be the preferred way, since it is more efficient on load time since we were not using the ImmutableList for anything other than tooltip generation anyway.

There was a fair amount of materials changed, mostly due to misspelled variable names, translation keys, and translated names. These have all been updated, but there may be some warnings on updating. As a result, the release including this PR should definitely be stated in the release notes very clearly.



Credits

  • @TechLord22 For doing the first pass of all recipes and the majority of the work
  • @DStrand1 For doing the second pass of all recipes, implementing the new tooltip systems, and writing this opening comment.
  • The rest of the Gregicality devs, for helping with balancing formulas and determining the formulas of some compounds (and adding the original recipes of course)

Issues Closed
Closes #371
Closes #392
(both of these issues have active issues in the comments addressed in this PR, despite both of these issues being closed)

@serenibyss
Copy link
Member

serenibyss commented Mar 2, 2021

A list of (currently) changed files, with checkboxes for if I have reviewed and finalized the chemistry in them:

  • GARecipeAddition
  • AluminiumChain
  • AmmoniaChain
  • BariumChain
  • BrineChain
  • ChromiumChain
  • CosmicComponents
  • Dyes
  • FullerineChain
  • FusionElementsChain
  • GoldChain
  • InsulationWireAssemblyChain
  • IodineChain
  • LithiumChain
  • NanotubeChain
  • NaquadahChain
  • NiobiumTantalumChain
  • NuclearChain
  • PEEKChain
  • PlasticChain
  • PlatinumSludgeGroupChain
  • REEChain
  • RheniumChain
  • SeleniumChain
  • SensorEmitter
  • SuperconductorsSMDChain
  • ZirconChain
  • ZylonChain
  • GrowthMedium
  • SterilizedGrowthMedium
  • Lasers
  • OpticalComponents
  • OpticalFiber
  • SupraCausalComponents
  • TungstenChain
  • UHVMaterials
  • UltimateMaterials
  • UraniumChain
  • VanadiumChain
  • VariousChains
  • ZincChain
  • Batteries
  • BacteriaCultures
  • ProcessingUnits
  • StemCells

@serenibyss
Copy link
Member

With this REEChain finalization, the step:
REChlorides + Diethylhexyl Phosphoric Acid -> NaOH + REE's ...
The Diethylhexyl Phosphoric Acid was not consumed in the process, so I changed it to consume 10mB instead of 1B, so that the player still needs to make it, but does not burn through it extremely quickly. This is my "fluid catalyst" solution for now.

@serenibyss
Copy link
Member

serenibyss commented Mar 21, 2021

In the last commit d4a6189 I removed the FluidMaterial "Dimethylbenzene" because it is simply another name for Xylene. I needed Xylene to be lowered significantly in tier for my Kapton circuit board work, so I decided to lower Ortho-Xylene (the first in the chain) to MV-tier, where Dimethylbenzene was previously. This frees up another GT material ID, 846.

@serenibyss
Copy link
Member

serenibyss commented Apr 1, 2021

The last commit cleans up a bunch of code in the recipes package. Mostly, it ensures that:

  • Methods and parameters are properly Nonnull/Nullable
  • Variables are set to final
  • Deprecated methods are not being used
  • Unused warnings are suppressed for things like CT methods

This kind of cleanup of the code, I would like to do over the entire codebase at some point. But for today, I only touched the recipes section since that is what this PR is working in.

I was able to make some optimizations while doing this just over this small subsection of the codebase, and also found a place where I believe the functionality is broken, but I will have to test it further.

@serenibyss
Copy link
Member

For those paying loose attention to this branch, with that last commit, that means that we are done with the second phase of this PR. Now, we have one last review of a few things, mostly cleaning up some remaining TODOs and some things in GAMaterials.

Nearly there!

@TechLord22 TechLord22 mentioned this pull request Apr 4, 2021
@serenibyss
Copy link
Member

Marking this PR as Ready To Review

@serenibyss serenibyss marked this pull request as ready for review April 6, 2021 01:38
@serenibyss serenibyss requested review from huneau, hjae78 and a team April 6, 2021 01:38
@TechLord22 TechLord22 mentioned this pull request Apr 7, 2021
@hjae78
Copy link
Contributor

hjae78 commented Apr 7, 2021

Have you run your recipe conflict tests on this?

@Pnc6lx
Copy link

Pnc6lx commented Apr 7, 2021

i want to know if we can have those ore dust process in ebf back? it was add to improve duction from ores. after this change, many ore contain less elements than before. so i want more output, like more dust in one ore, or add them back

@TechLord22
Copy link
Member Author

Balancing those EBF recipes would make them completely equivalent to electrolysis, except that they would take the extra step in the EBF. There wouldn't be a benefit to them anymore, which is why they were removed.

@Pnc6lx
Copy link

Pnc6lx commented Apr 7, 2021

so can we get more crushed ores from ore?

Copy link
Contributor

@pablocnvs pablocnvs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have nothing further to comment, so i'll aprove the PR.

TechLord22 and others added 19 commits April 16, 2021 17:48
* Create checks on master commits

* Add badges to README

update required licensing information

* remove gradle.properties from checks

* Revert "remove gradle.properties from checks"

This reverts commit 2e131db.

* Add command handler

Remove BuildCraftAPI as its unneeded

* Update fs permission

* add execution permission

* Add executable bit to gradlew

* remove old execution enabling
* Update zh_cn.lang

* Update zn_cn.lang

* update zh_cn.lang

* Update zh_cn.lang

* Update zh_cn.lang

* Update zh_cn.lang
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

recipe conflict Conflicted Recipes
9 participants