GithubHelp home page GithubHelp logo

Comments (8)

jacobsjo avatar jacobsjo commented on June 24, 2024 1

I have no idea how the knownPackInfo could any effect on the RecipeManager. Its only used in SynchronizeRegistriesTask, which only deals with synced dynamic registries, i.e. using the DynamicRegistriesS2CPacket.

from fabric.

apple502j avatar apple502j commented on June 24, 2024

@kikugie This is weird, as that commit should only affect DRMs.

@jacobsjo Any opinions? @modmuss50 Maybe we should revert that change for .6?

from fabric.

modmuss50 avatar modmuss50 commented on June 24, 2024

Im not going to rush to revert it, its still marked as a beta.

I need to look at the code to be 100% sure, but I dont think it does only affect DRM though. I could be wrong. I think we need to understand the problem in detail before figuring out what to do next.

@kikugie can you provide a log or even a minimal reproduction example to help us understand the issue better?

from fabric.

kikugie avatar kikugie commented on June 24, 2024

Sorry for the confusion, it seems like any fabric api release on 1.20.5+

Error log:

https://mclo.gs/ETAzinz (Ik the namespace shouldn't be minecraft, I fixed it in the mod and it produces the same error)

Steps to reproduce:

Server:

  1. Create a 1.20.6 local fabric server
  2. Install Elytra Trims
  3. Install Fabric Language Kotlin
  4. Install Fabric API
  5. Launch the server

Client (FAPI)

  1. Create a 1.20.6 fabric instance
  2. Install Fabric API
  3. Join localhost server
  4. Crash linked above

Client (no FAPI)

  1. Create a 1.20.6 vanilla/empty fabric instance
  2. Join localhost server
  3. No error is printed in the log, recipes work

from fabric.

apple502j avatar apple502j commented on June 24, 2024

Intentional desynchronization has never been supported - especially in 1.20.5, as almost every registry-related entry is synced using integer IDs. Closing as wontfix.

from fabric.

apple502j avatar apple502j commented on June 24, 2024

If there is a good use for this, maybe FAPI could add a special case, otherwise I do not see any good solution just for this. also see #2168

from fabric.

kikugie avatar kikugie commented on June 24, 2024

What is the right way to achieve this behavior then?

from fabric.

apple502j avatar apple502j commented on June 24, 2024

@kikugie In an ideal world Fabric API would offer a way to register certain stuff at the very end of the registry. However that still leaves one question: how should we handle such entries within networking? There are many pitfalls, especially since 1) another mod could sync the recipe using raw ID, 2) that probably requires per-user raw ID rewriting on server side (which is too complicated), and 3) the expected behavior is undefined in many cases.

I recommend you consult with people familiar with the field of server-side only modding, like Patbox.

from fabric.

Related Issues (20)

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.