Giter VIP home page Giter VIP logo

integrateddynamics-compat's People

Contributors

imgbotapp avatar jack-mckalling avatar josephcsible avatar regnander avatar rubensworks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

integrateddynamics-compat's Issues

CPacketSetSlot Exploit still works inside the GUI

NotAfter: Tue Aug 25 05:19:04 AWST 2020
still getting this when trying to build the repo so i can't make a new merge request since the repo won't build but i already fixed this with mixins by using the following code

    /**
     * @author ShinyAfro
     * @reason https://www.youtube.com/watch?v=HCQ0kbMBSvc (Item Spawn Exploit)
     */
    @Overwrite
    public void actionServer(World world, EntityPlayerMP player) {
        if (!(player.openContainer instanceof ContainerLogicProgrammerBase) || player.openContainer.inventorySlots.size() <= slot) return;
        final Slot itemSlot = player.openContainer.getSlot(slot);

        if (itemSlot instanceof SlotExtended && ((SlotExtended) itemSlot).isPhantom()) itemSlot.putStack(itemStack);
    }

Currently the exploit still works if you open the GUI, whereas my fix forces the slot to be phantom in order to work.

Originally posted by @shinyafro in #24 (comment)

The Issue from Reddit

Issue type:

I.D. appears to continue having all parts check all unique item ids every tick.

What_is_this_lag

  • ๐Ÿ› Bug

Short description:

This screenshot is from 1.12, but I had the same problem with 1.16, and haven't bothered to test the 1.18 version. At least, that's what I and several members of the FTB University discord think is the problem. As far as we are aware the mod never recycles unique part ids, and new parts always have a new id. Our best guess is that new parts always check every part id, to see if they're connected, even when the part that was assigned that id no longer exists (either being decommissioned in the crafting table or being otherwise destroyed). In the screenshot I had the over 1200 part ids but only about 200 active parts (not counting logic cards).

After that point the lowest I could get it to be was about 1.3 million event subscribers at under 25 parts (including logic cards). This is what led us to the conclusion that all parts, check all unique ids, at all times.

Steps to reproduce the problem:

Make a bunch of parts, like, a lot a lot of parts, and put them in use.

  1. ...

Expected behaviour:

Apparently, not certain and irrevocable world-ending lag.


Versions:

  • This mod: literally every version I've played.
  • Minecraft: 1.12, and 1.16.
  • Forge: IDK

It was reported first to the pack author, where I and other mods went about diagnosing the problem. Testing alone indicates that it was wholly self-contained in just the mod itself.

Log file:

No crash, no log.

Can't run in dev without disabling most mods

You can't currently run IntegratedDynamics-Compat in the development environment without disabling almost all of the mods. If you try, your game will crash with a NoSuchFieldError or NoSuchMethodError. This is because of changes to the MCP mappings. For example, Tinkers' Construct contains several references to "isBlockContainer", but this was changed in more recent mappings to be "hasTileEntity". In a normal environment, these would both be the same SRG name in the compiled classes, but in the development environment they're not, resulting in this problem. This can't be easily fixed by changing the version of the mappings we use; doing that will only result in it crashing somewhere else.

Signals compat

We should add compat with the Signals mod. Here's what I have in mind:

  • Writing minecarts' schedules (as a list of strings)
  • Writing minecarts' next destination (as an integer index)
  • Forcibly changing signals, like the rail network controller lets you do (they can already be read with an ordinary redstone reader)
  • Some way of directing items either into the cart's inventory or the engine's inventory, possibly by letting you change a cart hopper's mode

ct integration demands an "optional" output to be present

trying to remove the gravel squeezing recipe with Squeezer.removeRecipesWithOutput(<minecraft:flint>,1.0f,<minecraft:flint>,0.5f); doesn't work in cyclopscore 1.0.5, yet it did in 1.0.4; adding a fake liquidstack like <liquid:water>*0 doesn't remove the target recipe and null just flat out refuses to work

cyclopscore 1.0.5

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.