Skip to content

Conversation

caoimhebyrne
Copy link
Member

This attribute was previously set to LIBRARY before 0696479 where it was removed for the following reason:

however since we require shading and relocation on ML9 anyway, we may as well just remove it outright.

This is fine for production, but relocation does not apply in development environments. The type should be declared as GAMELIBRARY on >=ML9, and LIBRARY on <=ML8.

Anything which uses UniversalCraft should also be on the GAME layer, and cannot be on any other layer (e.g. PLUGIN) as it will not be able to access UniversalCraft classes. This includes our other libraries (UniversalCraft, Elementa). If we want those to also be usable in development environments, we'll have to ship separate artifacts of those for >=ML9 and <=ML8 with the FMLModType attribute set accordingly 😢.

This PR might be a change that needs some more discussion, and we might want to hold off on it until we decide what to do with our other libraries (although, it probably makes sense to do either way).

Related to: #70, #73.

This attribute was previously set to `LIBRARY` before 0696479 where it
was removed for the following reason:
> however since we require shading and relocation on ML9 anyway,
  we may as well just remove it outright.

This is fine for production, but relocation does not apply in
development environments. The type should be declared as `GAMELIBRARY`
on >=ML9, and `LIBRARY` on <=ML8.

Anything which uses UniversalCraft should also be on the `GAME` layer,
and cannot be on any other layer (e.g. PLUGIN) as it will not be
able to access UniversalCraft classes. If we want other libraries to
be usable in development environments (Vigilance, Elementa), we'll have
to ship separate artifacts of those for >=ML9 and <=ML8 with the
`FMLModType` attribute set accordingly.
@caoimhebyrne caoimhebyrne requested a review from Johni0702 June 3, 2025 20:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant