Commit graph

1281 commits

Author SHA1 Message Date
Lex Manos
d41794a9b6 Step 2: The Reformation 2013-11-09 14:28:53 -05:00
AbrarSyed
d2d36880b0 Step 1: The Purge 2013-11-09 14:28:53 -05:00
Christian
7831555a7f Add in the ability to strip interface references for specific interfaces - this is probably mostly useful for
scala scenarios where sythetic methods are generated and is not a substitute for using Optional.Method where appropriate.
Closes #300
2013-11-09 14:27:15 -05:00
Christian
3b42a14dba Change a couple of warnings, as a prelude to 1.7- preinit is now required for all GameRegistry activity, and every item and block REQUIRES registration. 2013-11-06 16:18:41 -05:00
Christian
83d8713bea Fix derp with custom properties. They work now! 2013-11-05 22:23:24 -05:00
Christian
289678252b Fix recursive API dependency resolution. Allows nested APIs, such as BuildCraft's 2013-10-31 09:39:34 -04:00
Christian
cfeebf7810 Fix up duplicate entries 2013-10-30 22:46:19 -04:00
Christian
ee8630bc55 Add in an API marker for API type packages.
This does several things:
1. Packages marked as API will generate a new "modid" (the provides) that can be depended on.
2. Packages marked as API will be searched systemwide, and anything declaring that package (even without the API marker)
will get an implicit dependency on the API package.
3. The API package itself will get a soft dependency on the "owner" package.

@Optional elements can refer to the API packages instead of a concrete mod as well.
2013-10-30 22:20:28 -04:00
Christian
9efeaa8caa Attempt to inject coremods as tweakers, so both can share a dependency ordering 2013-10-27 13:28:50 -04:00
Christian
f7a6bb7eb7 Wrapping coremods as tweakers. Part 1. 2013-10-20 11:53:07 +02:00
Christian
cfb78d482a Fix up documentation of VersionCheckHandler - it only ever accepted a String and only works on the NetworkMod annotated class 2013-10-20 11:45:00 +02:00
Christian
09c7df2bb3 Modify ordering of networkmod registration and mod instantiation. This fixes VersionCheckHandler logging an incorrect failure message due
to NPE.
2013-10-20 11:41:28 +02:00
Lex Manos
0b0b94978c Make each mod's EventBus log a child of it's main logger. 2013-10-19 18:24:24 -07:00
Christian
fa97bebf34 Fix up handling the new method signature data for NetworkCheckHandlers 2013-10-14 21:28:15 -04:00
Christian
c56f2e3b37 Use null to empty, so missing values work. *sigh* 2013-10-13 22:36:47 -04:00
Christian
5e03f2e85b Primitive capability for tweakers to order. Add a "TweakOrder" integer
property to your manifest, or accept the default of zero.
2013-10-12 10:28:11 -04:00
Kevin Ji
cfcdb92c8e Very minor style fixes
Replacing tabs with spaces consistently, making brace styles consistent, etc.
2013-10-09 19:53:50 -07:00
Christian
daf454af62 Support, and fix up, interface lists for Optional 2013-10-09 13:58:14 -04:00
Lex Manos
1754a5820a Delay sound system backend initalization to speed up startup and prevent race condition on some computers. 2013-10-06 11:13:07 -07:00
Christian
b542f13c5c ModLoader is officially deprecated. It will all cease to be with 1.7. 2013-10-06 11:06:31 -04:00
Christian
955d532264 Optional shouldn't be constructable itself. It's purely a wrapper thing. 2013-10-06 10:56:47 -04:00
Christian
19173a7b97 Add in support for Optional interfaces and methods. Be gone coremods! 2013-10-04 17:20:05 -04:00
Christian
ea25a3ffd0 Fix null killing the server 2013-09-29 15:51:38 -04:00
Lex Manos
7e53a294fe Fix md5s for new checksums.sha1 in scala libraries. 2013-09-28 19:47:32 -07:00
Christian
05c66728e7 Attempt at a shared modlist implementation - should allow visibility between liteloader and fml for "mod list display" 2013-09-27 10:45:20 -04:00
Christian
dc72bfe56a Cross-modsystem compatibility fix with thanks to Mumfrey @ liteloader 2013-09-27 10:01:39 -04:00
Christian
ef70a1d29e Add to both the classloader and the parent 2013-09-26 13:01:00 -04:00
Christian
9bcf633e8c Fix deobf tweaker 2013-09-26 10:11:29 -04:00
Christian
036cda37b0 TYPOS!!! 2013-09-26 09:33:48 -04:00
Christian
cbf22b0ab5 Separate deobf tweaker so it runs last. Should fix problems with cascaded tweakers
expecting an obf environment.
2013-09-26 09:23:25 -04:00
Christian
952d602f49 Update for launchwrapper 1.8 2013-09-25 16:40:59 -04:00
Christian
61ae96f03a Use the negative cache in latest legacylauncher. 2013-09-25 11:46:11 -04:00
Christian
96d9c3b8bc Add debugging for deobfuscation
Add negative caching for field and method maps. Should shortcut some work

Fix handling the case where a class doesn't exist, but still needs deobf

Ask the patch manager for the bytes for the class, not the classLoader

Fix up some more places where we should look for a patched class

Fix problem with empty source classes and runtime deobfuscation
2013-09-25 07:37:25 -04:00
Lex Manos
c1623cb8e3 Update to new installer that uses xz compression and better support for non-standard jvms 2013-09-24 23:21:17 -07:00
Christian
8f17d1c694 And use the parent that's actually going to be valid. *sigh* 2013-09-24 08:42:13 -04:00
Christian
8929267b20 Herpaderp. Make addURL accessible. *sigh* 2013-09-24 07:33:11 -04:00
Christian
48c92084da Fix injection of tweaker into system 2013-09-23 13:33:16 -04:00
Simon McVittie
5bf7d3cb4b Fix NPE when loading second single-player world
After leaving a single-player world, getServer() can return null, resulting
in the stack trace below, "Fatal errors were detected during the
transition from SERVER_STOPPING to SERVER_ABOUT_TO_START",
"The ForgeModLoader state engine has become corrupted" and the client
getting stuck forever.

Exception in thread "Server thread" java.lang.NullPointerException
at cpw.mods.fml.client.FMLClientHandler.serverStopped(FMLClientHandler.java:620)
at cpw.mods.fml.common.FMLCommonHandler.handleServerStopped(FMLCommonHandler.java:468)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471)
at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:583)
2013-09-22 16:56:24 +01:00
Christian
85811a013d Fix classpath for launchwrapper 1.7 2013-09-21 16:15:05 -04:00
Christian
0c365eb893 Update workspaces for 1.6.4 2013-09-20 17:23:18 -04:00
Christian
da0972980b Fix up a deep crash in the early server init hanging the client 2013-09-20 17:12:01 -04:00
Christian
74b7cba492 Update for MC 1.6.4 2013-09-20 16:25:12 -04:00
Lex Manos
1928c177ac Make final transformers actually work on methods as well. 2013-09-19 12:59:12 -07:00
Christian
d2712dafdb Format the log messages through MessageFormat. Thanks CovertJaguar for the pointer. Closes #282 2013-09-19 08:23:56 -04:00
Lex Manos
fcf2af484d Update the src distro's eclipse workspace. 2013-09-18 15:21:56 -07:00
Christian
b721a51bc4 Update mc_versions data and commands patch and eclipse workspace 2013-09-18 18:01:04 -04:00
Christian
3768ca1713 Update mcp mod info 2013-09-18 17:02:41 -04:00
Christian
2ea5f04228 Update for real 1.6.3 update 2013-09-18 16:59:28 -04:00
Christian
12c556bc36 Update for pre-ninja 1.6.3 update 2013-09-18 16:33:11 -04:00
Christian
88f1dce658 Merge branch 'master' into newtweak 2013-09-18 14:49:53 -04:00
Christian
56bf94b441 Update for new installer and thank you. 2013-09-17 21:56:25 -04:00
Christian
466902654e Add in support for using a mirror list and provide checksums for packed download of libs 2013-09-15 22:58:39 -04:00
Christian
4fc4accb6e Fix sidedness derp in LanguageRegistry. 2013-09-13 19:04:25 -05:00
Christian
9387bae26b Update MCP data 2013-09-03 17:56:09 -04:00
Christian
b41a7e1dab Remove @SideOnly from 70318 (getDistance) it makes no sense that it's not on the server. 2013-09-02 12:24:17 -04:00
Christian
b9ac2ac13c Use java 1.6 compatible method of closing the zip file. Stops stupid compile error. 2013-09-02 00:12:36 -04:00
Christian
4f9b778d14 Allow server side lang file injection, hopefully 2013-08-27 22:45:10 -04:00
Christian
5925fa7c79 Allow coremods to properly inject asset readers. 2013-08-27 12:31:37 -04:00
Christian
ded1a92dfd Update tweaker for new Launcher API 2013-08-23 10:42:26 -04:00
Christian
3b4f1983ce More exception handling for less derpiness. 2013-08-20 20:46:18 -04:00
Christian
94462565a5 Reset the IWorldGenerator seed for each mod, before calling. That should mean worldgen is consistent
and not dependent on mod ordering, or mod sideeffects.
2013-08-19 14:56:01 -04:00
Christian
6818c0f4da Try and use the relaunch log, which should be classloaded.. 2013-08-19 14:55:37 -04:00
Christian
4eb97daac3 Fix up scala refs, for better results 2013-08-18 18:58:36 -04:00
Christian
ed258920a0 Check keys, not values *sigh* 2013-08-17 13:27:43 -04:00
Christian
877dc77b75 And more coremod logging 2013-08-17 13:14:55 -04:00
Christian
dcba47209f Add in some log information 2013-08-17 13:10:28 -04:00
Christian
904e2df1f9 And actually instantiate the collection *sigh* 2013-08-17 12:57:15 -04:00
Christian
643e3d441a Add in "FMLCorePluginContainsMod" in the manifest. If this value is
present, FML will attempt to parse your mod jar file as a normal mod
file as well, instantiating mod containers there.
2013-08-17 12:48:38 -04:00
Christian
8f9b54a97a Clean up a couple of resources. Also, don't parse jars just because
they're in the mods dir
2013-08-17 11:40:15 -04:00
Christian
7c7cafbae1 Make sure we only add args to the argument list if a tweaker hasn't already.
Should fix LiteLoader compatibility issue.
2013-08-16 16:28:55 -04:00
Christian
779139b3ca Fix stupid derp is stupid. Closes #275 and means sp614x can do his thing 2013-08-16 16:18:50 -04:00
LexManos
4406d1e171 Update installer. 2013-08-06 11:42:38 -07:00
Bo
ea33f502fc Fixed install.sh not passing arguments to install.py 2013-08-03 17:43:57 +01:00
Grom PE
971dc1eb00 Add missing SideOnly in BaseMod
NetClientHandler exists only on client side and thus method using it should be annotated with SideOnly.
2013-08-01 14:19:30 +07:00
cpw
952218c845 Add in some reverse lookup methods for game registry data 2013-07-29 22:05:22 +02:00
cpw
7d31e4b25e Temporarily add a version of 'reobfuscate.py' that will resolve complex
reobfuscation graph issues with specialsource. Copy it over 'reobfuscate.py'
in the mcp runtime dir. Hopefully will have an MCP/specialsource fix in
the coming days.
2013-07-28 22:38:26 +02:00
cpw
e71ee7721b Fix keybindings being derped 2013-07-28 20:52:12 +02:00
LexManos
f872ac0a90 Use json 2.9.1 nightly for OSX in release json like vanilla does. 2013-07-17 12:21:26 -07:00
LexManos
f4311e2fae Stupid spaces and windows escaping -.- 2013-07-16 14:34:43 -07:00
LexManos
a9e2a2089f Add quotes for paths with spaces -.- 2013-07-16 13:35:14 -07:00
LexManos
f40e4cf3a8 Use a temporary file for recompile's command line to combat command length to long issues. 2013-07-16 13:08:26 -07:00
LexManos
9de739723f Fix potential NPE in villager skin registry. 2013-07-16 10:32:29 -07:00
LexManos
136e2180f7 Fix server launching. 2013-07-15 10:57:44 -07:00
Christian
10c6e5e353 Fix logo handling. no more NPE if the logo can't be found. Also, fix location of mcp logo now. 2013-07-14 13:40:55 -04:00
Christian
d0c2a8e62b Fix up jar sanity check code. FML validation of the jar works now and doesn't derp classloading. 2013-07-14 13:11:32 -04:00
Christian
8f2823709c The server.classpath generates the runtime manifest, so it needs the
non-debug asm jars.
2013-07-14 11:12:42 -04:00
LexManos
bf6f038793 Update Forge signature for new private key 2013-07-12 03:05:20 -07:00
LexManos
5d89e17ae9 Update build and eclipse workspaces for debug asm. 2013-07-12 00:22:11 -07:00
Christian
caeb0afecf Coremods now have a primitive dependency capability. Also, we search mods dir for special
"TweakClass" manifests. These are using the vanilla tweak mechanism to inject into
Minecraft. Helpful for other "platform" systems, when you don't want to have to deal
with json changes!
2013-07-11 23:23:33 -04:00
LexManos
3dd0b5d496 Kill release time scala libraries, to be re-evaluated after all movement is done and shit is fixed. May require manual instalation for mods that use scala. 2013-07-11 15:24:54 -07:00
LexManos
09cf5feee5 Kill mcp's truncate method, for more useful logs. 2013-07-10 15:23:21 -07:00
Christian
e33a1a02bf Fix up logos in the mod screen. Clean up some unnecessary casts and suppressions, use the -debug asm
library at dev time, since it contains full symbols and code in compiled form.
2013-07-10 15:47:13 -04:00
Christian
32680bb84d Force a global asset scan prior to mod construction : you should be able to
reference assets anywhere in your mod now.
2013-07-10 00:42:40 -04:00
Christian
28727a51a6 Update FML for new stealth update for 1.6.2 2013-07-09 15:00:28 -04:00
cpw
11bf88fceb Merge pull request #254 from CaptainShadows/patch-1
@InstanceFactory was set to look for Fields instead of methods
2013-07-09 07:19:24 -07:00
Christian
1fe0dcec09 And don't forget to remove the test code 2013-07-09 08:31:40 -04:00
Christian
fbfc11c9a9 Decode the file URL. Hopefully will make things work more.. 2013-07-09 08:30:47 -04:00
LexManos
95aa81bb3f Disable signature check of client for now, it's broken. 2013-07-09 05:04:11 -07:00
LexManos
50a8b1cc68 Temporarily disable GuiModList's Mod logos. 2013-07-09 03:27:49 -07:00
LexManos
a0211c4fb7 Don't validate signatures on servers, they are not signed. 2013-07-09 03:27:29 -07:00