Commit Graph

50 Commits

Author SHA1 Message Date
LexManos 7d00d015f3 Fix Biomes not properly copying over ids loaded from the save to the new Dynamic Registry. 2020-11-01 20:30:38 -08:00
David Quintana 53eedb0f10
Update forge mappings to 20201028-1.16.3 (#7435) 2020-10-29 01:11:57 +01:00
Richard Freimer 45f8dc5245
Add support for custom tag types (#7289) 2020-09-08 19:10:36 -07:00
LexManos d8eaeabf3c Wrap vanilla's 'default' biome registry in ForgeRegistry.
This should allow registering mod dimensions like in 1.16.1, while the data driven system is fleshed out.
2020-08-26 09:49:41 -07:00
David Quintana 517bbc8b5b Update copyright year to 2020. 2020-07-02 19:49:11 +02:00
LexManos 0f48e851a3 Fixed typo in registry alias writing causing infinite loop. Closes #6689 2020-05-15 09:38:20 -07:00
DaemonUmbra 2ce4f5ece5
Updated ForgeDev MCP Mapping Version (#6532) 2020-02-25 19:45:14 -08:00
tterrag 1558362583 Remove deprecations 2019-12-17 04:50:13 -05:00
LexManos 1933d05e36 Update to 1.15
Due to the massive rendering changes, certain features, such as emissive item rendering and the forge block rendering/lighting pipeline are currently disabled.

Co-authored-by: David Quintana <gigaherz@gmail.com>
Co-authored-by: tterrag <tterrag1098@gmail.com>
Co-authored-by: Unnoen <theunnoen@gmail.com>
2019-12-17 03:38:12 +01:00
LexManos b8ea220925 Fix registry snapshots not reading aliases correctly. Closes #6298 2019-11-05 11:10:03 -08:00
cpw 5048739b7f
Turned minecraft into a proper Mod, with a "dummy" language provider.
Also fixed the "translations" not being available early if an exception occurs
by force loading the forge and MC ones. Closes #5984

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-08-04 20:16:01 -04:00
cpw 9fa4641cb0
Update mappings
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-06-08 10:45:28 -04:00
LexManos a7df63e1a1
Update to 1.14.2 2019-06-07 16:50:47 -04:00
Ben Staddon a02bec7ebe Fix some null returns from defaulted registries (#5235) 2019-04-11 18:05:26 -04:00
LexManos 47e6b34d2b DimensionManager.registerDimension now returns the DimensionType instance for convienance.
You can still access others in DimensionType.getByName()
Fixed ForgeRegistry rappers not forwarding isEmpty.
2019-03-06 21:01:12 -08:00
LexManos 58494f8878 Rewrite the FML Handshake packet formats to include actually syncing the registry data and introduce the concept of caching it locally.
Snapshots are not injected yet due top threading issues.
2019-02-27 23:56:31 -08:00
LexManos ca72710937 Initial 1.13.2 update. Major thing to note is that Dimensions have been completely revamped.
DimensionType is not unique per Dimension. See DimensionManager for more details.
Vanilla now has a chunk loading system, so Forge's will need to be deprecated/adapted.
2019-02-14 15:08:53 -08:00
cpw 586c24f9d6
Implement a GUI packet and GUIFACTORY for triggering from the server.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-13 21:06:39 -05:00
cpw f83500db11
Its 2019. Update licence headers to match.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-10 17:57:03 -05:00
LexManos 053c5300ed Reintroduce ObfuscationReflestionHelper closes #5373 2019-02-06 20:46:21 -08:00
cpw 0a11ffb827
More logging tweaks, including some aimed at userdev.
`forge.logging.markers=<LIST OF MARKERS>` will enable markers.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-27 00:06:57 -05:00
cpw 040cc4bf16
Expose a couple of mods.toml properties properly. Half-implemented
override namespace - still needs to be reviewed and determined how this
might work in detail.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-20 21:26:31 -05:00
LexManos 3b029ba031 Re-introduce patch for injecting registry mappings during world loading.
And re-introduce registry freezing to ONLY the Register events.
Filter ObjectHolders by registry type and fire between every Register event.
2019-01-16 12:28:13 -08:00
David Quintana e98951ee65 Fix blockstate id map calculation. (#5279) 2019-01-11 14:52:30 -08:00
LexManos 94e1a8e0a4 Update mappings to 09/21 snapshots.
Conflict with getMatrix in ITransformation, so renamed to getMatrixVec.
2018-09-22 03:40:22 -07:00
LexManos 12869710de Remove old paulscode libraries.
Re-work EnumHelper and ObjectHolder systems to bypass JITer of final fields.
Other cleanups.
2018-09-06 04:39:01 -07:00
LexManos 2798080f60 More error cleanup, reinstanted IForgeReigstryEntry.
The abstract class will be used as the default, and to enable delegates but we should keep it api simple by keeping the interface.
Removed some patches that didnt get removed in the rebase.
2018-09-05 20:06:18 -07:00
cpw b50b768852 Server starts 2018-09-05 13:13:53 -07:00
cpw 77c3310711 Zeroth pass on 1.13 2018-09-05 12:56:01 -07:00
cpw d0ab0e166c Well, it works, for a game, now. 2018-09-05 12:30:02 -07:00
cpw 06b16aaa19 Some more stuffs. ObjectHolder's replacement? 2018-09-05 11:58:31 -07:00
cpw 1b1ee6f0b8 more things. Moving ModContainer around. 2018-09-05 11:49:48 -07:00
cpw c1f0e1b68f Holy Moly, it's a big fat commit of broken code! 2018-09-05 11:16:33 -07:00
LexManos 0cf5ef221c Run licenseFormat to apply license header to all files. 2018-07-01 14:17:31 -07:00
Ben Staddon 43895d773e Add validation to recipe registry (#4957) 2018-06-26 22:00:53 -07:00
cpw 9e9cb021ab Clean up broken aliases caused by registry bug #4894. (#4909) 2018-04-30 21:05:37 -07:00
LexManos f2fa21e6e2 Move registry snapshot read/write code to Snapshot class. Cleaner code. 2018-04-29 17:58:02 -07:00
mezz bc3bbe3d84 Avoid copying Forge Registry keys, values, and entries (#4545) 2018-01-18 12:46:05 -08:00
LexManos 45dfce0013 Fix for dummied server side registry entries while client has read entries. 2017-08-22 02:08:34 -07:00
LexManos 28e341002f Add support for server side only recipes, as well as detection of vanilla client recipe book filter to prevent errors. 2017-08-15 05:10:07 -07:00
LexManos fdfaa5036d Fix override duplication caused by bad comparison. 2017-07-05 14:41:24 -07:00
mezz 8581225da8 Use java 8 collection functions 2017-06-28 00:14:10 -07:00
LexManos d0b24313d3 Fix MissingMapping REMAP action. Closes #4069 2017-06-27 16:56:42 -07:00
LexManos 3ae30478db More work on registry override ability. Closes #4079 2017-06-25 20:45:48 -07:00
mezz 27321efb1f Clean up logging 2017-06-24 01:46:05 -07:00
tterrag b71ab7e444 Make ForgeRegistry iterator sorted. Closes #4058 (#4059) 2017-06-23 23:52:27 -05:00
LexManos f4afb6f56c Implement override tracking and syncing.
Overrides MUST be registered within a tracked event so we know what mod it came from.
This will allow servers/saves to select which mod 'wins' and becomes to active entry.
This should also mean that when connecting to a vanilla server things will revert.
2017-06-23 16:59:57 -05:00
LexManos e805b12df8 Fixup some registry tests, dummies are now persisted across syncing. 2017-06-23 16:59:57 -05:00
LexManos dee84dc1e4 More work, game loads and runs now.
Moved Registry events to directly AFTER PreInit instead of before.
This allows modders to register handlers for it without @EventBusSubscriber.
It also allows you to register custom things needed before the construction of blocks or items such as Fluids.
TODO: Move Fluids to a real registry.
@ObjectHolder can now be used on private fields.
Reworked FMLModIdMappingEvent to include data for all registries.
Tile Entities are now registrable.
2017-06-23 16:59:57 -05:00
LexManos a26d89c876 First pass of registry rewrite.
Tests do not run yet.
Things of note:
Removed the idea of substitutions, just register multiple items with the same name they will override each other like a normal map.
Decoupled Forge registries from vanilla classes. They now use bouncer classes. MODDERS SHOULD NEVER USE THESE
Introduced more stringent registry locking. As it sits things are only allowed to be registered during the RegistryEvent.Registry phases!
This is to force modders to split up their registrations, and pave the way for calling these functions multiple times during a single MC lifecycle.
ObjectHolder, Missing Mappings, etc... *should* now work for all registry types, nothing should be special cased to Blocks/Items anymore.
Added optional generic dummy factory to registries, to allow registry creators the ability to dummy more then just Blocks.
Re-worked the ItemStack transformer and applied it to ItemBlock and ItemBlockSpecial. Allowing us to cleanup reflective hacks in Block callbacks.
Registry onAdd callback is now only fired on the ACTIVE registry, fixing any issues of temp registries overriding active objects.
2017-06-23 16:59:57 -05:00