Commit graph

1822 commits

Author SHA1 Message Date
cpw
56a3926b86 Fix up event naming, move them to sensible packages and document everything a bit. 2019-01-14 22:43:17 -05:00
Vincent Lee
220bf8730a [1.13] Expand tag deserializer to add optional values and remove values without overwriting everything. (#5350) 2019-01-14 19:23:36 -08:00
mezz
118eac8f39 Fix mod lifecycle event names 2019-01-14 14:00:15 -08:00
cpw
99452a8b45 Update a bunch of libs, rename some of the mod events to more
meaningful names.
2019-01-14 00:39:00 -05:00
LexManos
eb42614288 Add list support to ForgeConfigSpec.
Fix incorrect Supplier used in ForgeConfigSpec.
Port ForgeChunkManager config to new system.
Delete old Configuration classes. It's finally gone!
2019-01-11 23:01:08 -08:00
XCompWiz
f2b54acd67 Allow providing a BufferedImage for banner render generation (#5041)
Ported to 1.13 using NativeImage

Co-authored-by: tterrag <tterrag1098@gmail.com>
2019-01-11 18:32:17 -05:00
Tim
497bc10d0a Fix Mesa biome entry tags in the BiomeDictionary (#5177) 2019-01-11 18:32:17 -05:00
Ben Staddon
c1bb5cb250 Patch PotionHelper to use registry delegates (#5142) 2019-01-11 18:32:17 -05:00
tterrag
958bbf6c9a Fix MC-136995 - Chunk loading and unloading issue with entities placed in exact positions. (#5160)
This includes three commits from 1.12.x:
c20a5e8805
93b704b459
ee0d43bbde

Scatter gun patches to improve entity tracking and position tracking.
Provided by Aikar through the Paper project, this commit of patches combines the following patches:

fd1bd5223a/Spigot-Server-Patches/0306-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch
fd1bd5223a/Spigot-Server-Patches/0315-Always-process-chunk-registration-after-moving.patch
fd1bd5223a/Spigot-Server-Patches/0335-Ensure-chunks-are-always-loaded-on-hard-position-set.patch
fd1bd5223a/Spigot-Server-Patches/0378-Sync-Player-Position-to-Vehicles.patch

Co-authored-by: Gabriel Harris-Rouquette <github@gabizou.com>
2019-01-11 18:32:16 -05:00
David Quintana
e98951ee65 Fix blockstate id map calculation. (#5279) 2019-01-11 14:52:30 -08:00
LexManos
3765d912a5 Move @EventBusSubscriber application to just after construction instead of pre-init. 2019-01-11 12:28:06 -08:00
Vincent Lee
849bc00b46 Make Block.Builder methods accessible. Closes #5310 (#5313) 2019-01-11 11:47:51 -08:00
Vincent Lee
985a48f02e Fix datapack walking not working for mod datapacks. Closes #5334 (#5335) 2019-01-09 20:59:40 -08:00
Vincent Lee
4e196a445a Add missing setSeed calls to ForgeBlockModelRenderer (#5338) 2019-01-09 20:57:55 -08:00
LexManos
36d2e67b07 Reimplement @ObjectHolder scanning, and expose system for others to add handlers.
Fix forgedev and userdev run configs.
Fix issue in log functions assuming String arguments.
2019-01-09 20:57:01 -08:00
LexManos
f7acc73282 Update userdev and runconfigs for ForgeGradle changes. 2019-01-08 00:29:36 -08:00
cpw
60926ad6ea Fix some translation strings. Will pull a big string update from crowdin too. 2019-01-06 21:02:08 -05:00
cpw
f734e614e4 Fire registry events before preinit and after construct. 2019-01-06 17:19:18 -05:00
cpw
1b40618f02 Fix classloading properly. ModLoadingClassLoader doesn't work
with the proper delegation model. Abandoned it, in favour of injecting
locators into the Transformer classloader directly.
2019-01-06 16:24:32 -05:00
cpw
58c78560fa Fix up some stuff with resource packs, so the guilist works properly. 2019-01-05 10:19:47 -05:00
cpw
fd9c83b65f Finish up classloading system. Use ModJARURL to locate resources
and enable ModLauncher to use those instead. This allows all mods to load
within the scope of the game classloader, removing weird conflicts and
class discovery problems.
2019-01-04 23:56:10 -05:00
cpw
6baddc7e26 client and server work standalone and in forge dev. Next up userdev.
Moved some launchplugin code to the launcher. Moved servermain to
the launcher.

server currently needs cmdline arguments  --fml.forgeVersion=24.0.51-1.13-pre --fml.mcVersion=1.13 --fml.mcpVersion=2018.09.12.04.11.00 --fml.forgeGroup=net.minecraftforge.test
2019-01-01 21:35:23 -05:00
cpw
e9580877b4 fix up some discovery code, and make regular runtime _mostly_ work.
Still WIP and doesn't quite get to main screen yet.
2019-01-01 16:50:04 -05:00
LexManos
440649bb95 Fix new launcher jar packaging.
Run license checker over new code.
2018-12-31 16:48:23 -08:00
cpw
48846bc0ba separated fmllauncher code from main forge mod code. This enables much
stronger classloader separation between the two sides. Forge now
loads as a regular mod.

Still needs a bunch of debugging, but structure looks good and game loads
in forge dev.
2018-12-31 16:34:33 -05:00
cpw
558e1d2fb0 ResourceLocation Utils for doing things.. 2018-12-31 16:34:33 -05:00
tterrag
0b26047ea8 Better documentation for IForgeWorldType, TERFast, TERAnimation
Also rename AnimationTESR to TileEntityRendererAnimation
2018-12-29 12:18:10 -05:00
tterrag
7f5a57f4af Fix patch mistake in IForgeWorldType: CUSTOMIZED -> BUFFET 2018-12-29 12:01:41 -05:00
mezz
dc12cda505
Clean progress bar code and fix TextureMap patch (#5304) 2018-12-28 18:05:05 -08:00
mezz
b4cf6f7f36
Implement GuiScreen events for mouse and keyboard (#5297) 2018-12-23 23:46:42 -08:00
mezz
f2f04407a4
Add the sender to NetworkEvent.Context for server-side event handlers (#5295) 2018-12-22 23:24:11 -08:00
tterrag
8a11e3bac4 Port most of the world patches (#5294) 2018-12-22 10:31:18 -08:00
LexManos
4879b0611a Change how Forge itself is located to be loaded similar to a real mod.
Fixes Minecraft/Forge annotation data missing.
Fix Capability injection.
2018-12-21 16:07:39 -08:00
tterrag
d11a67499d FastTESR -> TileEntityRendererFast 2018-12-21 17:53:01 -05:00
tterrag
b3b8c78527 Rendering patches (#5262) 2018-12-21 14:45:35 -08:00
LexManos
a992a4325b Change getWorld function name to prevent inheritance change in Chunk 2018-12-18 16:11:03 -08:00
David Quintana
c1225f3876 Fix the path handling for mod jar resource packs. (#5228) 2018-12-18 12:48:39 -08:00
David Quintana
152836c907 Add raytrace logic to the GuiOverlayDebugForge, so that the debug overlay can show the currently targetted block and liquid. (#5278) 2018-12-16 12:47:16 -08:00
David Quintana
52b6da1759 Fix classloading issues in userdev (and possibly also for things like tests within forgedev) (#5275) 2018-12-13 15:33:35 -08:00
LexManos
f13465012b World and TileEntity patch work.
TerrtainGen events are removed, 1.13's world gen re-write invalidates them all.
2018-12-13 01:15:53 -08:00
David Quintana
b7b5dd5bea Create a userdev-specific main, and include it as an injected file in the userdev jar. (#5231) 2018-12-11 20:04:23 -08:00
LexManos
7265900c62 More entity patch work. ISpecialArmor deleted. 2018-12-10 22:19:43 -08:00
Liqueur Librazy
719ea50d1a Use getRawSchemeSpecificPart to preserve escape characters in uri, fix #5236 (#5237) 2018-12-10 11:07:50 -08:00
LexManos
bbf1ea41b8 world.gen.feature patches, worldgen should be stable with vanilla. In all places I looked. 2018-12-06 18:09:47 -08:00
LexManos
eb22f42fea More patch work, our async chunk loading doesn't appear to be viable for 1.13. 2018-12-05 18:08:27 -08:00
LexManos
dd32e74e34 Entity patches progress. 2018-12-05 01:16:33 -08:00
malte0811
e1b4a150c3 Fix race condition causing the FML handshake to hang (#5222) 2018-12-04 12:22:01 -08:00
LexManos
76d912c0ba Include project group in ForgeVersion and determine path to patched jar.
While testing we install to net.minecraftforge.test. So don't hardcode it.
2018-12-04 11:55:50 -08:00
LexManos
a3c8e04ee6 Item and NBT patches, IShearable blocks are responsible for setting themselves to air, to allow for setting other states. 2018-12-03 18:04:37 -08:00
LexManos
bf9158172f Most client patches done except the render pipeline.
Someone who has more in depth knowledge of that rendering system will need to do it.
2018-11-28 22:15:05 -08:00
LexManos
47a11b9a7e GUI Patches 2018-11-21 21:23:24 -08:00
LexManos
b6ddb0a7cf More patchwork. 2018-11-19 19:55:46 -08:00
LexManos
7c0d94ce9c Patch work, most of block classes, and fix eclipse run configs. 2018-11-16 23:15:39 -08:00
malte0811
b5264cacf0 Fix crash when placing furnaces or brewing stands in 1.13 (#5225) 2018-11-15 13:55:18 -08:00
David Quintana
64c8f67939 Add missing license headers. (#5192) 2018-10-19 20:35:29 -07:00
tterrag
74703e2a60 Fix mod asset loading 2018-10-11 18:06:16 -04:00
cpw
43ed744d46 run textcomponenttranslations through the ForgeI18N message format translator as well. 2018-10-05 22:21:30 -04:00
cpw
e199e78a4f load languages on the server as well as the client, and fix up a bunch of data packs. 2018-10-05 21:42:15 -04:00
cpw
1c9b5fae5e Server run profile, also setup logging for client profile. 2018-10-05 01:25:27 -04:00
cpw
2b23eb96fb Tweak library locating code. Works well on vanilla and dev now. 2018-10-04 23:24:02 -04:00
cpw
ca765b857b Move the version packages somewhere that is now filtered so it doesn't
load twice.
2018-10-04 19:28:45 -04:00
cpw
978d0ff2e3 Fall colours
🎃🎃🎃🎃🎃🎃🎃🎃🎃🎃
2018-10-04 18:40:34 -04:00
cpw
129870dbe8 Missing language now presents to the UI. 2018-10-04 11:31:08 -04:00
cpw
d5e04dbcb5 Better error passing from early to game client launch. 2018-10-04 00:57:08 -04:00
cpw
c6e7bbe18b Use the maven artifact code rather than our very outdated copy 2018-10-03 22:47:07 -04:00
cpw
0b11b0e6bb Launch in the vanilla launcher now. 2018-10-02 00:32:41 -04:00
cpw
6485a48d79 Use latest paulscode (removes need for soundfix transformer) and fix gitignore. 2018-09-30 14:29:14 -04:00
cpw
fe12687ec1 Branding fixup. 2018-09-30 14:29:14 -04:00
cpw
0024d9d283 Config GUI tweaks, and MCP is now part of the "minecraft" entry. 2018-09-30 14:29:14 -04:00
cpw
015ac2547e Fixup the config GUI and get things working again. 2018-09-29 01:29:49 -04:00
cpw
bb9eca96a8 Basic error display GUI. 2018-09-28 21:07:46 -04:00
cpw
09e2aeaec4 Some tweaks to get the launcher working. 2018-09-24 00:07:33 -04: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
5ed03945a0 Disable eclipse compiler and switch to SRG patches. 2018-09-22 00:38:21 -07:00
tterrag
d08f8e1a78 Fix remaining issues preventing compilation, launching, and loading worlds (#5156)
Fix duplicate ID for ingredient serializers
Fix KeyBinding compile errors. No GuiKeyBindingList patches yet.
Implement controls GUI and WorldServer patches
2018-09-21 19:07:48 -07:00
LexManos
c191851ec0 Fixed all compile errors except the 4 in KeyBinding. 2018-09-21 15:50:37 -07:00
LexManos
a0e217b1dc More because git likes to split to many 2018-09-21 02:17:20 -07:00
LexManos
e2a17ac31b Ran License checker to fix the headers of files missing them. 2018-09-21 02:15:03 -07:00
LexManos
cdfa7caaeb More work on compile errors, New system for ToolClasses, using a ToolType class instead to de-stringify things. 2018-09-21 01:47:12 -07:00
Anthony Anderson
0cd21ebe7e Block patches and event work (#5138) 2018-09-20 13:11:02 -07:00
LexManos
b25f92b0c0 Add concept of pushing/poping levels to ForgeConfigSpec as well as comments on those levels. 2018-09-18 12:19:19 -07:00
tterrag
c4cf950863
Fix the rest of the "easy" compile errors (#5151)
* Add Entity.changeDimension patch and transitively required patches

* Fix throws declaration on CommandSetDimension#execute

* Fix rest of errors in fluid package

* Add PLAYER_REACH attribute

* Fix compile errors in fml.client.config and add GuiButton patch

* Delete unnecessary client.config classes, fix all config errors

* Comment some fluid errors in models

* Fix all errors in common package root, except ForgeHooks

* Mass comment network package

* Experimental conversion of extended states to generic base class

* Fix errors in common.util

* Remove config annotation stuff cuz lex said so

* Make extended state stuff compile fully
2018-09-18 00:04:02 -04:00
LexManos
6814cbf0df Beginning work on redesigning Config API. 2018-09-17 20:40:42 -07:00
LexManos
02c31cc867 More work on recipes, custom ingredients, recipes, and constants should work now. 2018-09-17 03:41:16 -07:00
cpw
03d19f2e70 Tweak to remove javac compile errors related to generics on registries.
Also remove the recipes registry call - they're gone from registries completely.
2018-09-16 22:27:08 -04:00
cpw
abacf8e141 Net handling pass 2. Tidied up login packet sourcing, generate registry packets. 2018-09-16 20:59:25 -04:00
cpw
9f2c7c881c Net Handshake phase 1. Validates pairings on client and server. 2018-09-16 20:56:10 -04:00
LexManos
afead63381 Migrate most of the OreDictionary to tags. 2018-09-16 16:28:21 -07:00
tterrag
231dfeee31 Enforce bounds on min/max registry IDs 2018-09-16 16:59:08 -04:00
LexManos
c77d00efe4 Recipe work. No longer a registry. OreDictionary related code removed in favor of Tags. Started moving some OreDict items to tags.
Added code to RuntimeEnumExtender to return existing enum values with the same name if they exist instead of creating more.
2018-09-16 04:20:28 -07:00
tterrag
e3a931bf96 Fix errors in commands and getDimension->getId 2018-09-15 15:02:38 -04:00
LexManos
b4c23aba8e Command work, and Added TileEntityType as a Forge Registry. 2018-09-15 00:59:19 -07:00
tterrag
3f743887e7 More compile cleanups. (#5139) 2018-09-14 09:30:56 -07:00
tterrag
949a62a0da
Fix most of the compile errors in the client package (#5137)
* Add KeyBinding#getKey and clean up errors in KeyModifier

* Add dimension IRenderHandler patches

* Fix most of the compile errors in client package.

The rest are missing Block/KeyBinding patches

* Disable selective reloads until configs are finished

* Add OnlyIn on IForgeDimension to match those of Dimension
2018-09-11 21:42:29 -04:00
LexManos
a0cef07a0b Pin MCPConfig version
Cleanup and implement BrewingRecipes
Delete client command related things
Cleanup some biome stuff.
2018-09-11 18:25:25 -07:00
cpw
f72a7e02e3 Fix vanilla bug with GLFW init error display - actually the error, not the memory address containing the message
Load natives from the environment var, not hardcoding.
2018-09-10 20:31:51 -04:00
LexManos
bec9214d0c Fix launching in dev 2018-09-10 13:08:35 -07:00
cpw
a4f2802306 Add I18n accessor, fix up some mod log messages, make the EnumExtender work. 2018-09-09 23:35:02 -04:00
tterrag
334d925972
Port capability patches to 1.13 and refactor to new system (#5134)
* resource package and misc leftover rendering stuff

* Port Item and ItemStack patches

* Extract most item patches to interface

* Refactor Item#setNoRepair to be part of Item.Builder

* Adapt AnimationItemOverrideList to new cap system

* Improve null contract of OptionalCapabilityInstance

* Remove Capability.cast

* Update CapabilityAnimation to new cap system

* Remove OptionalCapabilityInstance#flatMap and add NonNullConsumer

* Add capability patch to Entity, not everything yet

* Fix Entity patch and add missing methods to IForgeEntity

* Fix null contract of CapabilityDispatcher

* Add TileEntity caps

* Adapt FluidUtil to new cap system

* Add world caps

* Add chunk caps

* Clean up cap patches

* Replace all tabs with spaces

* Move builder methods on Item to Item.Builder

Whitepsace fix

* Sided stuff take 2

* Prevent OptionalCapabilityInstance creating additional empty instances

* Cache getCapability result in AnimationTESR

* Fix imports in TileEntity patch

* Pull out cap code to base class, add village caps
2018-09-09 17:27:15 -04:00
mezz
f851b37aa0 Initial blind port of the mod error screens 2018-09-09 12:46:56 -07:00
tterrag
dde7dccef1 Porting Forge rendering code to 1.13 (#5132) 2018-09-08 13:34:59 -07:00
LexManos
eac693e785 Introduce rework of Capability provider. And reduce errors to <2000 2018-09-06 06:27:24 -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
LexManos
ff6fa2cfaf Add some missing libraries and work on GuiIngameForge. Down 700 errors. 2018-09-05 18:00:14 -07:00
cpw
f818cc8f71 Tweak 2018-09-05 13:14:16 -07:00
cpw
d7e9217695 Network init 2018-09-05 13:14:16 -07:00
cpw
b50b768852 Server starts 2018-09-05 13:13:53 -07:00
cpw
330db1a54d Patches deleted 2018-09-05 12:58:49 -07:00
cpw
77c3310711 Zeroth pass on 1.13 2018-09-05 12:56:01 -07:00
cpw
6e99f84e91 Moving some stuff around, network and server events. 2018-09-05 12:37:20 -07:00
cpw
689ebd8036 Dediserver runs and talks to clients. 2018-09-05 12:35:31 -07:00
cpw
506b51f189 A much more straightforward networking system. 2018-09-05 12:33:38 -07:00
cpw
4636365e30 Some beginnings of a network again. 2018-09-05 12:31:47 -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
baa9dfe55a Things. they work. Obviously still WAY more to do. 2018-09-05 11:53:54 -07:00
cpw
1b1ee6f0b8 more things. Moving ModContainer around. 2018-09-05 11:49:48 -07:00
cpw
f279a07586 metadata is dead 2018-09-05 11:40:48 -07:00
cpw
3b78e97ad8 Fidgeting while the world burns 🔥🔥🔥🔥🔥🔥 2018-09-05 11:40:48 -07:00
cpw
f942eb184a WOW 😲 such broken. Many brokes. 2018-09-05 11:40:47 -07:00
cpw
c1f0e1b68f Holy Moly, it's a big fat commit of broken code! 2018-09-05 11:16:33 -07:00
cpw
5b05e103f4 Starting to put the launch itself together 2018-09-05 10:56:03 -07:00
cpw
7e5bd4ecdb Access Transformer. Starting to try and launch things. 2018-09-05 10:56:03 -07:00
cpw
c38d2e48cd Early signs of modloading 2018-09-05 10:55:15 -07:00
cpw
66b6150027 Coremod 2018-09-05 10:55:15 -07:00
cpw
14ac77e444 Goodbye @Mod, it was lovely knowing you! 2018-09-05 10:54:20 -07:00
cpw
d23850ff98 Goodbye @Mod, it was lovely knowing you! 2018-09-05 10:49:33 -07:00
cpw
3e4f3ff142 Delete MarkerTransformer. I don't think this has been used in years. 2018-09-05 10:47:56 -07:00
LexManos
8ace535995 Fix --mods and --modListFile arguments not making it past LaunchWrapper. 2018-09-03 21:20:23 -07:00
Ben Staddon
f2da4be93e Remove BlamingTransformer (#5115) 2018-08-26 18:57:44 -07:00
LexManos
4aaa0370ab Fix more apache exclusions. 2018-08-22 11:56:35 -07:00
LexManos
c6abcf5b84 Change org.apache to org.apache.maven. class loader exclusion. 2018-08-21 23:50:25 -07:00
Ben Staddon
69233f1bbf Add variant alias for item models not loaded via blockstate (#5025) 2018-08-16 13:21:21 -07:00
mcenderdragon
f6b3893a05 Added getter for children of CompoundIngredient (#5082) 2018-08-16 13:19:45 -07:00
Ben Staddon
222a110eb1 Fix saved toolbars not working with non-vanilla items (#5063) 2018-08-16 13:17:27 -07:00
Ben Staddon
6ece0ba254 Fix server watchdog thread occasionally crashing on first run (#5019) 2018-08-16 13:16:31 -07:00
TheIllusiveC4
8e7b5be3d4 New SleepingTimeCheckEvent to add yet another way to control sleeping. (#5013) 2018-08-16 13:14:34 -07:00
Ben Staddon
1171668c25 Allow sending packets to client from ServerConnectionFromClientEvent (#4991) 2018-08-16 13:03:32 -07:00
TheCyberBrick
1f58bd71c0 Fixed overworld spawn point reset when respawning in another dimension (#4982) 2018-08-16 12:55:11 -07:00
Pyrofab
dd0c251b3d Fix ModList cache never being updated (#5081) 2018-08-16 11:54:56 -07:00
DaemonUmbra
afd6de3e30 Fix blank Server GUI console log (#5089) 2018-08-09 22:12:42 -07:00
mezz
cfa33be24b Fix SlotItemHandler.isItemValid check 2018-08-09 21:18:29 -07:00
mezz
5a48ca99b6 Improve performance of FluidRegistry.getBucketFluids 2018-08-01 22:29:10 -07:00
Ben Staddon
889fa4da7e Fix received data for last vertex format element not being recorded (#5074) 2018-08-01 13:35:56 -07:00
Karthas077
682a867a91 Fix missing lang entry for Swim Speed attribute (#5064) 2018-07-29 14:21:24 -07:00
Karthas077
9e30f4f6f9 Added Swim Speed Attribute to EntityLivingBase (#4990) 2018-07-28 19:24:30 -07:00
Ben Staddon
f3f1e585dc Add function to lookup model location for an ItemStack (#5017) 2018-07-28 18:55:33 -07:00
Ben Staddon
14bfeefb4d Allow custom SpawnPlacementType registration (#4973) 2018-07-28 17:51:44 -07:00
gegy1000
a935859b24 Resource type sensitive ResourceManager reloading, Disabled by default, but may increase performance. (#4658) 2018-07-28 17:47:01 -07:00