Lazy AE2

Lazy AE2

2M Downloads

Me Level Emitter display flickering and showing wrong values

Rubijox opened this issue ยท 10 comments

commented

i've come across 2 separate issues with values displayed in the me level maintainer
First is the numbers randomly flickering, with no input from me
Second is , every time i open the gui of a level maintainer, the values of the previously opened maintainer gets displayed instead of the ones from the maintainer i just right clicked

Gui flickering:
https://user-images.githubusercontent.com/32174232/136659484-3c09b333-5c63-4bce-8245-962b84e0343b.mp4

Gui showing wrong value:
https://user-images.githubusercontent.com/32174232/136659646-73493c79-c5ab-464a-9620-63aaaa0d4af2.mp4

commented

Could you point me to a class/line? I'll make a PR

commented

should be the sync packet handler in the level maintainer tile entity class. i think i probably forgot to check if the open level maintainer gui is the correct one for that tile entity

commented

Seconding this.

I'm using the mod with Omnifactory modpack(dev version).

I think flickering is due to other Level Maintainers activating request of a new craft.

Example:
Set LevelMaintainer1 slot1 to 10k stone with batch 2k, slot2 to 5k gravel 1k batch
Set LevelMaintainer2 slot2 to 100k sand with batch 20k, slot3 to 50k sandstone 10k batch
Then go to newly set LM3 and open GUI. If at this point LM1 decides to order stone, you'll see numbers being changed to:
10k 2k
5k 1k
0 1
0 1
0 1
So basically all numbers for LM1. Then let's say LM2 decided to order sand, or sandstone - doesn't matter. You'll see:
0 1
100k 20k
50k 10k
0 1
0 1
Again, correct numbers for LM2. The initial numbers for LM3 don't matter.
The icons are fine, as are numbers near them(in the bottom right of icons). Only editable numbers are affected.

This is huge. Once you start automating and those LMs start ordering, you basically can't edit any values anymore.

As a side note - could you please add another digit or two to LM GUI numbers? If users set ludicrous amounts, it's on them. And I use ae2fluid crafting, that has "drops" items that are only 1mB each, so I can only have up to 999 buckets, which is not ideal:)

commented

i think i've worked out what's going on, but i'm really busy with grad school applications for a bit. i'll try to get a patch out in maybe a week or two.

commented

Whew, setting it up to do anything was a pain and a half.
I had to change build.gradle all deobfCompile to implementation;
add maven { url 'https://jitpack.io' } for ae to download;
and libnine didn't want to download period, so I had to clone it as welll, and there was some weird-ass version of forgeGradle that I had to change to 2.3 to match what's here.
libnine also has 1.2.1 but dependency is for 1.2.0
Then I "gradle install" it, and added jar manually in Project Structure to Lazy. (coulda just downloaded the jar from curse)
And then in GuiLevelMaintainer and GuiBigAssembler method drawSlot has private access and @OverRide did not apply, as well as super.drawSlot being not available.

Don't know how much of it was my inexperience with mods.

I'll probably do more than fix this - here are a couple of things I wanted to change as well:
Remove number in slot, it's redundant as you have a number in a field near it
Make jei ghost item pull onto LM slots
Add a couple of digits max to numbers, so it goes not to 10^6 max but to 10^8 or ^9
Remove checkmarks and have numbers instantly registering when user inputs them
Making Enter go to next line(batch1 to batch2, qty1 to qty2), Tab to next entry(so to batch1 from qty1, or qty2 from batch1)
On moving to a text field, select everything in it. So you don't have to delete a number to enter another one
Typing "k" in a field will type 000, for easy thousands entering

Don't know which of these I'll implement, and which you'll want for the mod - I'll submit separate commits, feel free to cherry pick.

commented

hey sorry, i got bogged down with work. i'll take a look at your work now

commented

also, i have to apologize about the build script; i haven't worked on lazy ae2 in a while, so it's a bit outdated. i'll push an updated version after merging the PR

you're intended to compile libnine (and a custom build of forgegradle) for now. i plan on distributing them from my personal maven repo in the future, but i haven't had the chance to set it up yet

commented

When you update mod?

commented

I have created a mod to fix this issue ๐Ÿ™ƒ https://github.com/Team-Fruit/Lazy-AE2-Patch https://www.curseforge.com/minecraft/mc-mods/lazy-ae2-patch

Thank you very much!