Dynamic Lights [Data Pack]

Dynamic Lights [Data Pack]

219k Downloads

[Incompatibility?] Dynamic Lights + Better Impaling floods console with the word "false" when mobs are on fire.

HatTrkPatrk opened this issue · 2 comments

commented

Describe the bug

First off, let me just stress that I have no idea how these two mods could possibly be connected let alone cause this when used together. It's very bizarre.

At first I couldn't tell what was causing it, but eventually I noticed that it was happening often at sunrise. And that as monsters around me burned, when more and more of them had died from it, the console flooding seemed to stop. At one point I used a Flint & Steel on a zombie and instantly I saw it happen, then when the zombie stopped burning it also stopped flooding the console.

From there I narrowed down the issue to these two mods, and have reached the point where I can confirm it happens with just these two mods (plus Fabric API of course) installed.

I have tried to find a way to contact the Better Impaling mod's author to make this same report to them since this only happens when both mods are installed, but they don't have an issues tracker linked on their Modrinth page and I haven't found anything else about them.

I don't know if you'll consider this to even be worth looking into, since it's such an obscure combination and issue, and it's merely an annoyance because it makes using the server console an absolute headache while it's going on (several dozen messages on new lines per second). I've removed Better Impaling from my server since I depend on Dynamic Lights a lot more, and I'm making this issue report so you can decide what to do with it, in the end.

I also must note that this is only flooding the console - if I check latest.log, none of the "false" messages are there.

Minecraft 1.21
Fabric loader 0.16.2, API 0.102.0
dynamiclights v1.8.3 (JAR version)
betterimpaling 3.0 - here is the mod's page on Modrinth: https://modrinth.com/mod/better-impaling

image

Steps to reproduce

  • Have the two mods in question installed on the server (and the fabric API)
  • Find (or summon) a zombie, skeleton, or some other monster that can be set on fire
  • Use a Flint and Steel to set the monster on fire and make it take the associated damage-over-time, or wait til sunrise for it to happen "naturally"
  • Watch the server console (latest.log will not contain the messages)

Expected behavior

No response

Additional context

No response

commented

Thank you for the bug report, but I couldn't replicate this with both mods installed. Anyhow, this seems to come from Better Impaling as there's a System.println.out in the test method (decompiled using Fernflower):

package com.boyonk.betterimpaling;

public record BetterImpalingPredicate(Optional<Boolean> isTouchingWater, Optional<Boolean> isBeingRainedOn, Optional<Boolean> isSubmergedInWater, Optional<Boolean> isInLava) implements Predicate<class_1297> {

...

    public boolean test(class_1297 entity) {
        System.out.println(this == DEFAULT); // <- Here
        if (this == DEFAULT) {
            return true;
        } else if (this.isTouchingWater.isPresent() && entity.method_5799() != (Boolean)this.isTouchingWater.get()) {
            return false;
        } else if (this.isBeingRainedOn.isPresent() && entity.method_5778() != (Boolean)this.isBeingRainedOn.get()) {
            return false;
        } else if (this.isSubmergedInWater.isPresent() && entity.method_5869() != (Boolean)this.isSubmergedInWater.get()) {
            return false;
        } else {
            return !this.isInLava.isPresent() || entity.method_5771() == (Boolean)this.isInLava.get();
        }
    }

...

}

Edit: Found his account over on Reddit and messaged him