Commit graph

1718 commits

Author SHA1 Message Date
cpw
38cdbc16e2 Fix json cache crash, handle the file much more cleanly. Probably an MC JIRA since
it's a vanilla bug. Closes #619
2015-04-02 13:07:40 -04:00
GotoLink
5071e76881 Stop IllegalFormatConversionException thrown if @Mod has flagged client-only or server-only
%d is not a valid format for getModId(), which returns String.
2015-04-02 18:33:19 +02:00
Matthew Messinger
ee414b2037 Cherry-pick 01aaa7dc97480b381ca0d192ec65016d7baeb747
Fix mods defined via --mods or --modListFile launch args not being searched for coremods. #560
2015-04-01 19:51:44 -04:00
cpw
9d1f554075 Merge remote-tracking branch 'origin/1.7.10' 2015-04-01 17:17:24 -04:00
cpw
c3559b2dbd Pull in a lot of the FML tweaks from 1.7 to 1.8
Merge remote-tracking branch 'origin/1.7.10'

Conflicts:
	src/main/java/cpw/mods/fml/common/MissingModsException.java
2015-04-01 17:06:12 -04:00
cpw
45ec6e0833 OK, this is finally actually working, I think... 2015-04-01 15:56:48 -04:00
cpw
0d79aa1e0a You can't setAction to BLOCKONLY 2015-03-31 15:38:53 -04:00
cpw
d684a4e066 And fix itemblocks being removed, leaving behind a residual block. This
is a legitimate action - use the missing mapping event to let the mod
tell us about it
2015-03-31 15:29:51 -04:00
cpw
0b8ff5890a It's an IllegalState not an IllegalArgument *sigh* 2015-03-31 15:11:39 -04:00
cpw
0bff21315c Rather than try to fall back to the backup level.dat in case of weirdness
in the ID map, just fail hard. There is probably a serious modder derp in this
case and there's nothing FML can do to recover the situation except avoid
making it worse.
2015-03-31 15:09:49 -04:00
cpw
8309a32ad2 Forgot the register handling bit. Registration should work now.. 2015-03-31 13:38:30 -04:00
diesieben07
8f5bb75ef2 Fix scala mods, Closes #621 2015-03-28 16:00:50 +01:00
Lex Manos
ddcc6a1aa4 Enhance output of common FML errors in crash reports and server GUI. 2015-03-27 01:40:23 -07:00
Lex Manos
68c3a85fef Enhance output of common FML errors in crash reports and server GUI. 2015-03-27 01:17:57 -07:00
Matthew Messinger
8da78750aa Fix mods defined via --mods or --modListFile launch args not being searched for coremods. #560 2015-03-23 22:58:02 -04:00
cpw
c2f11ecc35 Change iterator behaviour for the registry - include substitutions in the standard iterator, so that
vanilla MC methods visit them (so they can get textures etc). The fml special one only visits the
absolute set, used mostly for sanity checking and serialization.

Closes #618
2015-03-22 12:56:05 -04:00
cpw
2451e49df2 Substitutions need to be activated when they're registered, otherwise they won't appear in world, ever. 2015-03-22 12:54:05 -04:00
cpw
3df54d3d0f What a dumb oversight. One needs to copy the active substitution set to the active gamedata. Doesn't work well otherwise.
Closes #616
2015-03-22 12:03:37 -04:00
diesieben07
961570f253 Fix ModDiscoverer ignoring inner classes. 2015-03-21 19:15:26 +01:00
cpw
f4972b7611 Need to load the dimension from disk - do it without filling out the player so that the normal player loading (including events)
works properly
2015-03-20 15:55:16 -04:00
cpw
613c5edc7d Forgot that I need a noarg ctor. I'm so rusty. 2015-03-20 15:11:12 -04:00
cpw
a8cbbfcd99 Clean up my patch. Terrible person I am.. 2015-03-20 15:00:19 -04:00
cpw
889c967a5b Something I meant to add a long time ago, but it got overlooked. My apologies. Presend the (int)
dimension ID in the serverhello packet. This should be 100% backward compatible with existing servers
but bumping a server to this version will allow clients with this version as well to now login in
dimensions outside the byte range. Probably fixes a bunch of mods that add dimensions.
2015-03-20 14:19:54 -04:00
LexManos
5ac394de0e Merge pull request #614 from tterrag1098/betterModList
Improve mod list GUI, adds sort buttons and a search bar
2015-03-16 10:01:12 -07:00
cpw
d81fd22792 First attempt at making FMLControlledRegistry something a bit more generic than just blocks/items.
It probably doesn't work yet though.
2015-03-15 16:22:28 -04:00
cpw
278612ad98 Try and improve performance of the registry by avoiding superType.cast. 2015-03-14 15:32:34 -04:00
tterrag1098
a27e7e03dd Improve mod list GUI, add sort and search 2015-03-13 18:38:10 -04:00
Lex Manos
418b7794d2 Fix Debug packet logger on local memory connections. 2015-03-04 21:00:31 -08:00
LexManos
4d4f82816f Merge pull request #610 from Zot201/1.8
Fixed WorldInfo properties not loaded
2015-03-04 10:34:25 -08:00
Zot201
189619fcdd Fixed WorldInfo properties not loaded 2015-03-05 03:21:19 +09:00
LexManos
7223e1a7d9 Merge pull request #609 from Zot201/1.8
Add transformer to allow protected/private classes to use the event bus.
2015-03-04 09:49:25 -08:00
Zot201
ccffcf60f8 Fix Event Bus Access Issues
1) Allow overriding methods in subclass without extra SubscribeEvent annotations
2) Transform event subscribers to have public method/class
2015-03-01 15:37:47 +09:00
Lex Manos
9335e2907b Fix NPEs in mlast commit. 2015-02-21 19:48:48 -08:00
Lex Manos
7269d22449 New @Mod properties to define which environment to load the mod on.
clientSideOnly will only be loaded in the Client environment.
serverSideOnly will only be loaded in the Dedicated server environment.
Combine with acceptedMinecraftVersions to prevent users from loading the mod in the incorrect environment.
2015-02-21 18:33:30 -08:00
Lex Manos
0281b74c7c Fix double decoding of UTF8 characters in lang files. 2015-02-21 17:27:21 -08:00
Lex Manos
0a8a535e2c Quiet ClassPatchManager debug spam by default. Reenable using -Dfml.debugClassPatchManager=true. 2015-02-15 17:30:56 -08:00
Lex Manos
d14ad7dd9a Filter more known libraries from potential mod canidates. 2015-02-15 17:30:18 -08:00
RainWarrior
68efb9d6f4 Moved transformer wrappers to a separate package (should fix signing errors), fixed debug mods not loading in forgedev (string comparison). 2015-02-14 05:17:14 +03:00
diesieben07
1a2c521b63 Handle empty lines in language files gracefully 2015-02-13 15:34:54 +01:00
Fry
c85aa9351a Merge pull request #597 from RainWarrior/blame
Added blaming of coremods and mods not targetting Java 6
2015-02-13 08:05:20 +03:00
RainWarrior
a4e70e44e1 Added blaming of coremods and mods not targetting Java 6 2015-02-13 08:07:27 +03:00
Lex Manos
e903f0ff69 Added ability for language files to opt-in to loading using normal Java properties format.
This allows for escape characters, as well as keeping %d and %f replacements in tact.
To opt-in, the lang file must have this comment line:
# PARSE_ESCAPES
As this is opt-in, any errors resulting from misused format strings is on the modder/end user.
2015-02-04 17:23:41 -08:00
Lex Manos
1b80328d3f Reset S->C CustomPayload data after Write, allowing the same packet to be written multiple times. Closes #588 2015-02-02 12:09:26 -08:00
Lex Manos
79b5c28d38 Merge remote-tracking branch 'origin/1.8' 2015-01-31 18:33:32 -08:00
Steven Downer
79d224f76e Update to ASM5 for Java 8 support
SpecialSource updated ASM5 and ForgeGradle supports ASM5 as well but
neither FML or Forge were actually updated to support ASM5 opcodes. This
commit resolves this.

Signed-off-by: Steven Downer <grinch@outlook.com>
2015-01-28 20:17:21 -06:00
LexManos
9a2c4998ae Merge pull request #591 from Minecrell/patch-1
Exclude only log4j2 queue from class loader
2015-01-18 14:46:18 -08:00
LexManos
c7da6c703f Merge pull request #575 from lumien231/1.8
Save the mod list of players in their NetworkDispatcher
2015-01-16 14:40:06 -08:00
Minecrell
8cfca4376f Exclude only log4j2 queue from class loader
Right now the complete com.mojang package is excluded from the LaunchClassLoader on the server. This means mods can't transform authlib for example which doesn't need to be excluded for the UI to work. By excluding only the specific log4j2 QueueLogAppender, mods can also transform the classes in the com.mojang.authlib package.
2015-01-16 23:15:17 +01:00
HEmile
a7ff70eaa4 Fixed getEffectiveSide() for Netty Server threads 2014-12-23 20:26:37 +01:00
Lex Manos
2096bcb5ab Finish removing marker in mapping entry names. FMLMissingMappingsEvent/FMLModIdMappingEvent should fire with correct names now. 2014-12-15 06:57:59 -08:00
Lex Manos
e9dbc71362 Ensure that EntitySpawn and OpenGUI packets are handled in the world thread.
Also log all errors that are thrown in FutureTasks.
2014-12-13 17:45:38 -08:00
Lumien
6f19fd1513 Save the mod list of players in their NetworkDispatcher (Make it accessable for mods) 2014-12-06 16:31:58 +01:00
Lex Manos
5b07c7fead Update Dev mcp mappings to 11-30 snapshot. 2014-12-01 18:28:18 -08:00
Lex Manos
7b2e7ac3c9 Unlink banner block and item id. Mojang should of matched these up but they didn't -.- 2014-12-01 18:00:28 -08:00
Lex Manos
4a92959cc1 Finalize modded handshakes in the World tick thread. Prevents potential CMEs when login event takes to long to fire. 2014-11-28 10:37:55 -08:00
Lex Manos
229848a4cb Add details message to MissingModsException and WrongMinecraftVersionException to make the Crash logs more useful. 2014-11-08 15:13:59 -08:00
Lex Manos
0dc112a198 Add duplicate protection to ModDiscoverer, do not process files in the mods directory if we already found them in the classpath. {Such as if LiteLoader is installed and added it} Closes #557 2014-11-05 15:27:43 -08:00
Parker Young
2544df8e44 Re-enabled Entity-Render registration 2014-10-19 20:05:39 -04:00
bspkrs
7e53132918 changed pass-thru method name to fix MCP name conflict
fixed a few old javadoc object name mistakes
2014-10-15 02:08:41 -04:00
Lex Manos
878f995711 Add the ability to register custom variant names in ModelBakery. 2014-10-13 20:48:09 -07:00
Lex Manos
70b57c337a Removed unneeded rebuild, was toying with where to put it. 2014-10-09 05:22:50 -07:00
Lex Manos
c002b98e5e Automatically register BlockStates when block is initally registered, and clear the list when new snapshots are injected. Modders DO NOT touch the registry in Block directly. Closes #537 2014-10-09 05:05:43 -07:00
Lex Manos
97bdcc7991 Fix FML's package for net.miencraftforge on maven. Fixes uploading of new builds.
Note: 1.7.10 builds are bug fixes only while FML/Forge for 1.8 stabelizes.
2014-10-06 15:36:17 -07:00
Lex Manos
471c9c5fd5 Remove debug code that was causing console spam in Forge. 2014-10-06 15:28:29 -07:00
Lex Manos
cfaedc384a Update TerminalTransformer for new FML package. Closes #535 2014-10-06 00:53:38 -07:00
Lex Manos
e4cdefb0e1 General class name cleanup, spelling mistakes and FF decompile issues. 2014-10-04 02:05:43 -07:00
Lex Manos
468d35e635 Take control over Item.BLOCK_TO_ITEM map and register Block's to this map from GameRegistry. 2014-10-03 17:48:57 -07:00
Lex Manos
f759f73801 Renamed TileEntityRendererChestHelper -> TileEntityItemStackRenderer
This class is used to render any tile entities in a non-location specific major
  Such as EntityItems, In minecarts, Held by entities, anyhting that isn't in world.

Switched the class names for BiomeGenForest $1 and $2 as Fernflower decompiled
  them in oposite order.
2014-10-03 17:48:28 -07:00
Abrar Syed
20d78df6e6 added mappings to default build.gradle 2014-10-03 15:57:04 -05:00
Lex Manos
1b587948f8 Add joptsimple as a server required library. Closes #531 2014-10-01 11:26:06 -07:00
Lex Manos
10d3062fc6 Restructure block and item mapping data in world save and network to potentially expand to custom mod ID registry syncing. Tip: ONLY use those functions in GameData that are marked as public API as internal API may change in 1.8. 2014-10-01 01:07:23 -07:00
bspkrs
927df1559e Update Config Gui stuff for 1.8
updated mappings to snapshot 20140930
got rid of derpy generics code
2014-09-30 05:20:56 -04:00
Lex Manos
28ff001cc0 Move FML to net.minecraft.fml package. 2014-09-22 22:50:54 -07:00
Lex Manos
1f1166e722 Move vanilla trades to inner class to prevent initilizer order issues. 2014-09-22 19:30:14 -07:00
Lex Manos
511c370193 Preliminary network protocol re-work. vanilla clients can now connect. Further cleanup needed. 2014-09-22 19:29:40 -07:00
Lex Manos
1ac0c5d87f Inital 1.8 patch update. 'It compiles!' 2014-09-19 17:25:14 -07:00
Lex Manos
ebb91ba280 1.8 Conf update. Uses MCPData Snapshots now. 2014-09-18 17:57:33 -07:00
Lex Manos
5f65fb754e Add IEventExceptionHandler for EventBus to allow special handeling exceptions that are fired while running an event.
Events now track what 'phase' they are in during the execution process. Each EventPriority is a 'phase'.
An exception is thrown if the event attempts to set its phase to a previous one.
2014-09-08 17:54:41 -07:00
Lex Manos
6192119682 Add jsr305 dev-time dependancy for Nullable/Nonnull annotations. Unneeded at runtime. 2014-09-08 17:50:46 -07:00
cpw
ad752886b0 Allow injecting alternative container types. This is the core support code for allowing sponge plugins! 2014-09-07 20:51:54 +12:00
cpw
3dae97cb4a Is vanilla possible with this mod load, side tests. 2014-09-07 20:13:37 +12:00
cpw
509d244ed4 Clean up import 2014-09-07 19:59:56 +12:00
cpw
9c27520427 Fix derp with ModType annotation. mods should load again now.. 2014-09-01 16:05:04 -04:00
cpw
1419a02d13 Merge branch 'simple-netw-improve' of github.com:diesieben07/FML 2014-08-31 21:50:25 -04:00
diesieben07
2dc1911f54 Make Keyevent also fire for key releases 2014-09-01 01:10:29 +02:00
cpw
a04c3e12fe Canonicalized file paths in modListFile handling with the minecraftDirectory. 2014-08-31 14:14:15 -04:00
cpw
f5cf87304b Two new features. ModLists can have a "parent" mod list. Circularity will
result in a crash, so be careful. Mods specified in a child will override
ones from a parent (using the maven group:name:classifier triple to identify -
ignoring the version component)

Finally, ModSide is now doable in MANIFEST.MF. If you have this, it can tell
a mod to only load on a client, or on a dedicated server (though I'd watch out
before using the dediserver one, you'll never load in integrated servers then).
The default value is BOTH, which means you'll load both sides, other values are
CLIENT and SERVER, obviously. Perhaps, also, CAULDRON might be possible?
2014-08-31 14:00:28 -04:00
cpw
c604a5e048 Change the mods and modListFile argument handling a bit. Other tweakers will get a chance at looking
at them now - they're only removed right before launch.
2014-08-31 13:35:38 -04:00
cpw
981ffe362d OK, lets make that a csv list. It'll let you be liteloader and fml in one jar file! 2014-08-30 17:45:35 -04:00
cpw
0c50d7b92d Add in ModType to the jar manifest. If it's present, and doesn't have value "FML"
it will be skipped from the modloading cycle. This should let liteloader mods have a .jar extension.
2014-08-30 17:39:43 -04:00
cpw
0e13403457 Wrap the server description box a little bit shorter. Stops the overlapping. Closes #489 2014-08-29 21:54:20 -04:00
cpw
f0d8b887b4 Fix bug with entityspawn - if the entity doesn't extend livingbase, it fails
to write a headyaw byte, and everything will be derped for that packet.

Fixes #499, but probably a bunch of others.
2014-08-29 21:43:17 -04:00
bloodshot
08ac6d548f Allow client handshake to be reset by server to support BungeeCord. 2014-08-26 20:49:20 -04:00
cpw
70c115588c Fix java 8u20. Closes #501 and a bunch of other bugs too. 2014-08-25 17:09:50 -04:00
cpw
bd8bd65ca1 Update for launchwrapper 1.11. Fixes java 6 compatibility. 2014-08-20 23:02:27 -04:00
cpw
c87a11e165 Mark the promise a success in the outbound handler. 2014-08-20 22:49:11 -04:00
cpw
ceae256c56 Fix ups from feedback. 2014-08-20 22:46:39 -04:00
cpw
e07bd74e34 Fix NPE from a boolean 2014-08-20 10:28:50 -04:00
cpw
dddbbd3bac ItemStack swapping 2014-08-20 10:28:39 -04:00
cpw
2ca75b3fa4 Update to legacylauncher 1.10 and asm 5.0.3 2014-08-16 13:21:07 -04:00