Commit Graph

931 Commits

Author SHA1 Message Date
Christian cb2535fa95 Fix bug causing NPE if non-whitelisted player joins an FML server without FML installed 2012-09-21 10:12:39 -04:00
iChun efb0e73df9 Fixed ModTextureAnimation not updating and not binding to correct image. 2012-09-17 23:46:09 +08:00
Christian a837d82e68 Tidy code 2012-09-16 21:44:11 -04:00
Christian 9b081b9d46 Change version.properties search slightly, allow access to found file from the preinit event 2012-09-16 21:42:59 -04:00
Christian 83a57f5259 Add in the capability to read an internal version as <modid>.version from a file
in the zip call version.properties. Handy for autobuilding scripts.
2012-09-16 21:05:56 -04:00
Christian e619e00079 Fix up reversed assignment for version fallback 2012-09-16 21:05:56 -04:00
LexManos 8f0b7c05fe Fixup Item in hand rendering of textures > 16x 2012-09-15 18:24:27 -07:00
LexManos b404f294c5 Make the exception print for headless servers if the Downloader cant initalize. 2012-09-15 18:06:59 -07:00
LexManos 48d12444c0 Remove a bunch of warning about javadoc, not a real fix, but no more warning. 2012-09-15 18:04:56 -07:00
LexManos 82fba4bfaa Update MCP Mapings 2012-09-15 17:09:45 -07:00
LexManos ec2a59bde8 Makes GetModSrc check the common folder when attempting to extract source files 2012-09-15 17:09:34 -07:00
Christian 149a626e5a Tie parent/child containers together again. Should close #96 2012-09-15 15:58:20 -04:00
Christian 9cd4ed0c91 Village mating produces added villagers, and the egg should place
added villagers too. Closes #97.
2012-09-15 15:49:08 -04:00
Christian 09558e9e15 Clean up stale references to the Player stored in the NetworkRegistry,
closes #100
2012-09-15 15:36:26 -04:00
CovertJaguar 13756b6f2c More readable init logs 2012-09-14 00:47:48 -07:00
Christian 0de240c4fe Fix onConnectionClosed not being called on the client side of a connection 2012-09-09 11:29:08 -04:00
Christian 74343a0cff Add in exclusion list for IFMLLoadingPlugin. 2012-09-08 12:19:03 -04:00
Christian 3461c12d95 Remove debug cruft 2012-09-07 23:14:54 -04:00
Christian 67d8b3b475 To properly align with packet9respawn, make packet1login's dimension an int as well 2012-09-07 22:57:01 -04:00
Christian ab34f2d2cf Attempt to build some protocol negotiation, and fix packet1login so that the dimension is a short, matching packet9respawn 2012-09-07 22:46:31 -04:00
Christian c4d5c89f85 Compatibility level is now passed from server to client - and
the client tracks it. This means certain packet changes can be made
without breaking comms, hopefully
2012-09-07 19:32:36 -04:00
Christian 67b9fbe363 Fix dependency checking: you can depend on specific versions of FML 2012-09-07 19:08:28 -04:00
iChun 7a0ab7e563 Fix handleTinyPacket using short instead of int.
Silly cpw :P
2012-09-07 18:35:26 +08:00
Christian e564610b54 Fix up tiny packet handler to actually work 2012-09-06 22:59:38 -04:00
Christian 94d076a14a Allow javax to be shipped by mods. Should allow some more modloader mods to work
unaltered
2012-09-06 22:03:02 -04:00
Christian d2e99c3443 Add in a little bit of protocol cleanup. Start work on allowing multiple
protocol versions
2012-09-06 21:54:43 -04:00
Christian 45bbdd14d6 Give a way to build the packet131mapdata packet correctly populated 2012-09-06 10:12:37 -04:00
Christian 8b8d9a58f6 Capture and leverage Packet131MapData 2012-09-06 10:03:30 -04:00
Christian 50c74f93bd Make console logging pass through a single logging thread to avoid concurrency problems with launchers and stuff 2012-09-04 19:11:45 -04:00
Christian 6d9b9fde47 Overlooked chat message support *sigh*. Fixes wierd mods that communicate through custom
chat messages rather than anything else. Hi Superior enchanting!
2012-09-04 12:37:59 -04:00
Christian 7a58542fb8 Rescan mod packages where there was a possible mod identified to try and make sure we load it. Fixes Matmos r16 2012-09-04 11:39:51 -04:00
Christian 61153abf7b And handle the other way to globally register an entity 2012-09-03 21:37:20 -04:00
Christian 788d1c9925 Fix up mods trying to register entities outside of modloading. Now you'll get a big fat warning for doing such a derpy thing. 2012-09-03 21:32:21 -04:00
Christian 6de655df47 Fix CJB mod compatibilty for real. Gui container registration can now happen in the constructor. YUK! 2012-09-03 21:14:11 -04:00
Christian 2af15b3a95 Fix compatibility with ModLoader dispenser hook. Fixes a bug with
IDispenseHandler too - though it means that interface is now
deprecated
2012-09-03 11:37:17 -04:00
Christian 5bea2a0bbd Fix headless operation, hopefully 2012-09-02 13:29:46 -04:00
Christian 599476d587 Fix up trying to re-add stuff to the classpath when it's already there 2012-09-02 12:56:08 -04:00
Christian d538dcf06f Fix out of range entity id handling for ModLoader mods a bit more. Thanks Herobrine mod! 2012-09-02 12:39:06 -04:00
Christian 6072420a02 Expose GuiMerchantButton 2012-09-02 12:15:13 -04:00
Christian 6056c760d4 Log a big fat warning for the developer in the case the network version
is not acceptable to the mod itself. (This can happen because of a bad range
specifier for example)
2012-08-31 23:41:29 -04:00
Christian 8f70ed5f33 Also, make missing entity not blow things up 2012-08-31 16:49:35 -04:00
Christian 17cbb9d3b7 Fix entity tracker "update" packet not computing correctly. Should work now.. 2012-08-31 16:41:05 -04:00
Christian bd137b7f06 Fix up addRenderer to catch exceptions from the basemod, also, addrenderer now supplies a list of the
default renderers from MC for editing and will note the changes made.
2012-08-31 11:18:17 -04:00
Christian befe8f5f47 Change download location for FML libraries to files.minecraftforge.net, add an encoding param to the javac command line to force utf 8 2012-08-31 11:18:17 -04:00
Christian 74d6437856 Add in random jar/zip files to the classpath. UGH this is so fucking ugly it's not funny. 2012-08-30 20:10:53 -04:00
Christian 93f9cc45f9 Use a null socket and try to prefer the result of getLocalHost in the broadcast data. 2012-08-29 16:12:40 -04:00
Christian ece5483ad7 Add in an ItemRenderer null check so FML can run render adding mods 2012-08-29 13:58:56 -04:00
Christian 8df9a051d6 Inverted boolean logic. Grrr. 2012-08-29 13:44:40 -04:00
Christian 81a8e94c79 ModLoader mob spawns use packet 24- build a bypass system so that
they can still use it
2012-08-29 12:58:16 -04:00
Christian 3415dbfd0d Remove debug statements 2012-08-28 23:07:37 -04:00
Christian 3b0c0fcecf Fix keybindings not loading properly from gamesettings file after restart 2012-08-28 22:15:18 -04:00
Christian 62a7d347e7 Fix so we always send received packets to handlers.
Renders 250 filtering useless unless i can figure a way to intercept *outbound* packets that isn't as messy as I'm
contemplating
2012-08-27 17:46:08 -04:00
Christian d105213aed Some tests 2012-08-26 22:23:05 -04:00
Christian 870214000f Fix trying to load the client side packet handler, when on the server, hopefully? 2012-08-26 22:18:57 -04:00
Christian 5a6275f0e1 Fix up network negotiation - now it will disconnect with a nice
error screen if there are missing mods on the client vs server
2012-08-26 22:13:43 -04:00
Christian b32dea398b Fix missing addCommand call: thanks "spawnwolf test command" 2012-08-26 13:07:35 -04:00
Christian 4b371d8d5b Fix a couple of modloader mods. Thanks! 2012-08-26 12:52:50 -04:00
Christian 85a585725b Some functionality fixes for @Instance injection. 2012-08-26 10:55:55 -04:00
Christian fe73f11443 Versions now have two flavours: the @Mod(version) which is the "programmatic version" and
is used for all version relationship calculation. The "display version" as sourced from
mcmod.info is used for display purposes only and can be literally anything. Note: they fall back
to one another when they're missing, and to "1.0" if both are absent.

Also, changed @Instance. Now, you can inject *other* mods using @Instance as long as you depend
on them as a "before" or "dependency" relationship. Classes containing @Instance will only be
loaded if the Mod the @Instance refers is present. So you don't have to worry about runtime class
resolution.
2012-08-26 10:45:00 -04:00
Christian a0302861cf Always for ML mods into "public" class accessibility - we don't call from the default package like ML does. 2012-08-25 21:57:25 -04:00
Christian 1da6a1fc6c Add in a convenience method for getting a class instance based on
existence of another Mod. Useful for soft dependencies.
2012-08-25 21:26:41 -04:00
Christian b308be04e7 And more mod sorting fixes. 2012-08-24 12:10:43 -04:00
Christian 67fa435dd4 Actually *use* the sorted mod list 2012-08-24 11:58:18 -04:00
Chicken Bones 542219112a The access transformer will now handle classes in packages.
Eg.

public net/minecraft/client/Minecraft.T #timer
2012-08-24 08:09:10 +10:00
Christian 6657b6561b Reverse the meaning of state in fml.modStates system property and fmlModState.properties - it was very
derpy before. Now: true is enabled, false is disabled, as you would expect
2012-08-23 17:37:44 -04:00
Christian 02792c45e6 Actually fix the corrupt JSON problem 2012-08-23 17:27:53 -04:00
Christian 4f6861ee50 Fix isModLoaded for "disabled" mods, and the toposort as well 2012-08-23 17:08:18 -04:00
Christian 1870b7d793 A bit more information for dependency handling 2012-08-23 16:46:23 -04:00
Christian c465b17afe Fix up handing corrupt mcmod.info 2012-08-23 16:43:28 -04:00
Christian 72097d5bf5 Fix a problem with network ids 2012-08-23 16:38:34 -04:00
Christian 87fa59b0f7 Fix up version handling properly. Hopefully, and the error screen. 2012-08-23 15:29:17 -04:00
Christian 675f4115aa Only active mods should have dependencies checked, and be sorted 2012-08-23 14:33:54 -04:00
Christian e7c6a47951 Fix oddity with Screen, print a version out in the sorted list! 2012-08-23 14:28:49 -04:00
Christian 9974f7a6d5 Fix metadata 2012-08-23 14:05:17 -04:00
Christian 4b6b090712 Fix up versioned dependencies so they work a lot better, also add in a missing mods screen 2012-08-23 13:43:25 -04:00
Christian e6dce6cdbc Fix missing serverSendPacket 2012-08-23 09:02:12 -04:00
Christian e37b40dac9 Trading support for ModLoader - thanks Herblore! 2012-08-23 01:40:03 -04:00
Christian 4e8668c922 Close the jar, for cleanliness sake 2012-08-23 01:39:35 -04:00
Christian 12f66bdc86 Fix authors - it'll read both "authors" and "authorList" from the json now 2012-08-23 01:17:47 -04:00
Christian 346661cc6b More ML compatibility - fix up dragon mounts, thanks! 2012-08-23 00:37:45 -04:00
Christian fe0d081eec Fix up loading mods that are grandchildren of BaseMod 2012-08-23 00:04:34 -04:00
Christian 0ae888e8f8 Fix entity handling for ModLoader mods, thanks parachute mod! 2012-08-22 23:46:16 -04:00
Christian 908a57f3c4 Fix formatting 2012-08-22 18:00:38 -04:00
Christian 8f6883da8e Tweak patches and hooks slightly 2012-08-22 17:58:46 -04:00
Christian 9bfa7acf0d More precise error handling when an invalid class is present 2012-08-22 17:50:07 -04:00
Christian af104b81f2 Fix textures not applying properly 2012-08-22 17:50:07 -04:00
Christian 5233ae520d Fix up entity spawning - hopefully they won't warp anymore. 2012-08-22 17:50:07 -04:00
Christian d544e56ec3 Add in a helper on the server start event for adding commands to
the server.
2012-08-22 17:50:07 -04:00
Christian be7b413bec Move villager trading hook up a bit. thanks sengir. 2012-08-22 17:50:07 -04:00
Christian 550c206997 Fix LAN to try hard to find a real network interface, not just localhost
most of the time
2012-08-22 17:50:07 -04:00
Christian 5330afb78e Update build to not bother building client jar. Universal is everything
now.
2012-08-22 17:50:07 -04:00
Christian ebc1aea5d2 Null protection for ticks() -- probably should uses EnumSet.noneOf() but
you can also use null now to stop ticking. closes #77
2012-08-22 17:50:07 -04:00
Chicken Bones fe263206e2 FML will now search '<mcpdir>/forge/accesstransformers' for user defined access transformer config files to be applied during forge setup 2012-08-23 06:31:00 +10:00
Chicken Bones 0806bc7b22 Added IPlayerTracker hooks 2012-08-23 06:28:53 +10:00
Christian 5d59af0cec Automatic mod entity registration into the global entity list. This might break
entity code out there, sorry, but this way for most entities you no longer
need to manage the global mod entity stuff at all. just remove it. FML will
take care of the rest (note, worlds won't load the old entities)
2012-08-21 19:34:33 -04:00
Christian d27e722903 Add in a utility function that *might* tell you the context
you're running in on either client or server: FMLCommonHandler.getEffectiveSide
2012-08-21 19:15:07 -04:00
Christian ba16217fe2 Try and stop sendPacketToAllAround from being crashy 2012-08-21 18:50:26 -04:00
Christian 63e8249040 Mods can add mod specific crash information to the crash report now
Forge needs to implement MinecraftForge.getCrashCallable
2012-08-21 18:48:12 -04:00
Christian a17396eca5 Fix up dispenser handling, add in new params for the dispenser: breaks IDispenseHandler, sorry 2012-08-20 21:44:54 -04:00
Christian ab90aa4d99 Fix up MLProp handling for null info 2012-08-20 21:44:47 -04:00
Christian b8a30cec94 GUIs working in FML for ML mods 2012-08-20 21:44:28 -04:00
Christian bb98ae9e28 Support gui opening for Shelf mod 2012-08-20 21:43:59 -04:00
LexManos 85e3c330e7 Updated MCPMerger to annotate unique classes with there sides, and SideTransformer to null out any class that is loaded on the wrong side. 2012-08-19 22:26:52 -07:00
Christian 45175c0e94 Expose more of the village construction parts for building village
pieces
2012-08-19 11:23:29 -04:00
Christian 52d3f237af Allow access to the type "ComponentVillage" 2012-08-19 10:35:06 -04:00
Christian 09c7ea2d9d Documentation and registration for villager stuff 2012-08-19 10:30:24 -04:00
Christian 3a0ad876b5 Fix javadoc derp 2012-08-19 10:21:19 -04:00
Christian 8a521c1d32 Villager trading, manipulation and village enhancement. Still WIP but should be functional 2012-08-19 10:13:15 -04:00
Christian b07f1069b9 Fix exception based logging to actually log the exception! 2012-08-19 09:31:26 -04:00
Christian 3e94ee2c36 Fix up keyboard events for modloader 2012-08-19 01:44:33 -04:00
Christian a1385f4797 Pickup notification 2012-08-19 00:26:55 -04:00
Christian ce276375b2 Update fml_at with new transforms 2012-08-18 20:08:27 -04:00
Christian 9a540ef6d4 Fix derp where client sided packet handler would be created on a dedi server env 2012-08-18 19:50:46 -04:00
Christian f86a29468e Add in support for "dummy" keybindings- ones that are added to the list but never do anything
so the mod can handle it all themselves.
2012-08-18 10:24:29 -04:00
Christian b65a38cb30 Don't complain about minecraft source code being in "net.minecraft.src". Derp. 2012-08-18 10:09:53 -04:00
Christian 298d6db6e2 Fix ModLoader add XP Smelting 2012-08-18 10:09:25 -04:00
Christian 3d87561505 Actually register client/server packetspecs as their correct sides! fixes #71 2012-08-18 09:28:36 -04:00
Christian 1cbe058250 Error if channel name is invalid - either too short, or too long 2012-08-17 16:59:48 -04:00
Christian 8a679f6d9e Add a connect and read timeout for downloading libraries. This should really stop the "waiting forever" at startup screen. 2012-08-17 16:21:18 -04:00
Christian 0e473145b3 GIANT FAT WARNINGS if you use any code in net.minecraft.src or any subpackage thereof. Get it out of there, now! 2012-08-17 16:13:05 -04:00
Christian 73bf3a8985 Fix up ML GUI ticking. Thanks sharose! 2012-08-17 16:09:46 -04:00
Christian 5ea0932e24 Organize ALL the imports 2012-08-17 09:25:04 -04:00
Christian 290f2d6781 Expose the server in serverstart event 2012-08-17 09:25:04 -04:00
Christian 94f834d5d7 Fix up directory injection of log file locations 2012-08-17 09:25:04 -04:00
Christian 30d6970e77 Refer to FMLLog, not FMLRelaunchLog 2012-08-17 09:25:04 -04:00
Christian 8408f58fb1 Tidy up server launch - reflection not required anymore 2012-08-17 09:25:04 -04:00
Christian 0fab4eca7b Also, log what the directory discoverer finds for mcmod.info 2012-08-17 09:25:04 -04:00
Christian 549969ade6 And log the exception if it has a problem reading the jar file 2012-08-17 09:25:04 -04:00
Christian 26bb005731 Fix jar loader failing to inject any metadata at all if mcmod.info is not found. 2012-08-17 09:25:04 -04:00
LexManos 8444fa6d3c Change install.cmd to install.bat, why, cuz people are .... Updated readme to mention needing server and client. 2012-08-16 22:57:11 -07:00
Christian 11c1cae8b0 Some compatibility fixes for Rei's minimap, and tidy up a couple of things 2012-08-16 13:55:42 -04:00
Christian 4d87779d39 Fix Forge branding string call 2012-08-16 13:01:48 -04:00
Christian 1cc6778038 Update FML for mcp 72 final, change download location for FML files, and make the stop button work.
Hello is NOT going to go away :)
2012-08-16 12:22:56 -04:00
Christian a7a1f55091 Fix critical bug in FML load controller that complains about injected mod containers 2012-08-16 08:34:12 -04:00
Christian e1fd0b1d7b Handle the case where a mod tries to do something stateful during constructor phase, and log a big
fat message about it. Don't do it!
2012-08-15 20:05:12 -04:00
Christian 81512c3458 Small fixes, including showing the FULL name of Forge Mod Loader 2012-08-15 19:54:56 -04:00
Christian fcf6fd57ee Fix up null array in keybinding handler 2012-08-15 19:17:21 -04:00
Christian 7988323073 Actually add in the system property for the minecraft home, should fix multimc too 2012-08-15 19:16:36 -04:00
Christian ba902537ca Add in support for setting the home dir via the applet launch, also a system property for forcing the home dir 2012-08-15 17:18:11 -04:00
LexManos 96b78514a8 Cleanup fml.py a little, should fix double printing of 'patching file' 2012-08-15 03:10:45 -07:00
LexManos e0cb8cd503 Wrap mod description rendering in BLEND calls https://github.com/MinecraftForge/MinecraftForge/issues/96 2012-08-15 02:52:29 -07:00
LexManos 022b3e57dc Made getmodifiedsrc noop for server. 2012-08-15 00:50:40 -07:00
LexManos 9ad520cb2a Fix new eclipse workspace to load the project properly from start. 2012-08-15 00:50:16 -07:00
Christian 071caee228 KeyBinding handler change: a handler now takes an array of keys and calls back with the
activated key. Sorry for the inconvenience but this improves the usability of this
API a lot
2012-08-14 22:32:19 -04:00
Christian 352df9cc30 Fix renderer's not getting the rendermanager set on them at registration time 2012-08-14 22:32:19 -04:00
LexManos eef3303dfe Finished update to MCP 7.2, MC 1.3.2 pre. 2012-08-14 19:24:49 -07:00
LexManos 646a0b4fc4 Fixup included workspace to have single project with client/server launches. 2012-08-14 17:42:40 -07:00
Christian 3d0bd2bc7a Start working on MC 1.3.2 2012-08-14 20:09:24 -04:00
Christian b69364e168 Add in a helper for code migrating from ML renderer stuff 2012-08-14 19:09:22 -04:00
calclavia 4c5dcb543f Shortcut function for addNameForObject()
Having that long line of code makes the code a bit ugly... Please make this shortcut function like ModLoader.addName() so I don't need to use ModLoader.addName(). :)
2012-08-15 04:45:32 +08:00
Christian a234fdf00b Handle mod duplicate detection much better. Default the name of a mod to it's id.
Fix up the block registry problem. Fix the packetsend from c->s actually being
"disconnect" :)
2012-08-14 13:36:29 -04:00
Christian 5f4423119a Fix entity spawn packets 2012-08-14 08:20:28 -04:00
LexManos d7dcbe7007 Force a Jenkins build 2012-08-14 01:21:56 -07:00
remuladgryta 438c8eca35 fixed java.lang.NoSuchMethodException
getServerHandlerSpecDefaultValue() and
getClientHandlerSpecDefaultValue() should no longer give derp exeption
2012-08-14 09:50:22 +03:00
LexManos f1a8b2ea72 FML will skip gathering MD5s for classes in the cpw package during the the inital recompile {Make Side/SideOnly reobf properly} 2012-08-13 21:53:52 -07:00
LexManos 908227ce0c Merge remote-tracking branch 'origin/master' 2012-08-13 21:05:14 -07:00
LexManos bbcdaa7dfb Updated FML install to provide better error output, Updated commands.py patch to disable recompile of server project. 2012-08-13 21:02:55 -07:00
Christian 6f10295936 Hopefully let build continue if server reobf fails, and fix derp in FMLNetworkHandler for entities 2012-08-13 23:25:08 -04:00
Christian a8f69529fd Fix up concurrent modification exception - ticks for players now occur on both sides 2012-08-13 22:55:23 -04:00
Christian 7de5191848 Merge the last bits of the server code into the common directory, and annotate ModLoader/BaseMod for sided use
This means the FML-Server project is now defunct as all code is either common, client or bukkit.
2012-08-13 22:51:53 -04:00
Christian 416cac675b Actually fix the applet launch - it now launches properly *and* closes the window 2012-08-13 22:12:36 -04:00
Christian 17bf8dc363 Fix up relaunch of the applet 2012-08-13 21:44:43 -04:00
Christian 466022b402 Change language loading a bit 2012-08-13 20:28:53 -04:00
Christian df9ec4bf3f Update spritehelper bitmaps for items and terrain 2012-08-13 20:08:03 -04:00
Christian fa38c1a6b3 Tidy up some APIs, expose the addOverride mechanism. This should be pluggable by forge
but may need work to allow for each mod to have it's own override set
2012-08-13 19:57:40 -04:00
Christian 6a273dd98f Fix derp in LanguageRegistry 2012-08-13 16:45:47 -04:00
Christian f41391b13c FMLModcontainer should not complain about annotations it has no idea about. so stfu fmlmodcontainer 2012-08-13 16:15:11 -04:00
Christian 179ed74456 Fix derp with EntityRegistry- bimap is not the right type for the name->container list 2012-08-13 15:55:24 -04:00
Christian deab31fb03 Add in a sided variant of the packethandlers in the annotation - also, a bit more
explicit warning on when to register blocks - if you do it after pre-init, you'll
reset the achievements
2012-08-13 15:26:29 -04:00
Christian c393299a91 Generate channel registration for client, also, do it before the login events so you can send packets 2012-08-13 11:58:44 -04:00
Christian 80b3f0fd97 Capture server packet handling errors into the FML log file for diagnostics 2012-08-13 11:52:30 -04:00
Christian 519d2365ca one more change for the road :) 2012-08-13 01:24:02 -04:00
Christian 71642f02f8 Don't spit debug all over the floor 2012-08-13 00:24:15 -04:00
Christian 0c3535ff26 updated conf, commands patch (missing newline?) and capturing the actual running
MC version and validating it at relaunch time is the correct MC version.
2012-08-13 00:17:34 -04:00
Christian 6f4dbd5376 Add in callableminecraftversion 2012-08-12 23:54:41 -04:00
Christian 9b74df5e62 Entity AI accessibility, also AccessTransformer can make certain classes public now 2012-08-12 23:50:27 -04:00
Christian 8d8f36bac0 Add in a simple packet dispatcher for sending packets around 2012-08-12 22:45:18 -04:00
Christian 8a0cfed5c6 Add in a sided packet registry so that client vs server can vary 2012-08-12 22:23:03 -04:00
Christian e229b6f6eb Fix double forge init on server 2012-08-12 20:34:23 -04:00
Krapht c1dccae4b8 Fixed getNextAvailableRenderId() returning ids in use by vanilla 2012-08-12 14:45:03 +02:00
LexManos f73e4b6169 Fix MCPMerger injecting Side/SideOnly when it already exists. 2012-08-12 04:27:36 -07:00
LexManos 9777204547 Added patch verification to commands.py patch, and made it so MCP will check the original jars for the server, to prevent it from saying modified when it started out clean. 2012-08-12 02:49:39 -07:00
LexManos 0b343c1a49 Add DEBUG constant to Access/Side Transformers to remove spam when not needed. Also AccessTransformer and MCPMerger should return a error code when it can not process causing MCP to stop decompile. 2012-08-12 01:23:10 -07:00
Christian 4f7996e361 Fix EntityRegistry - mods can specify update frequency, range and velocity data, and also
patch EntityTracker to actually track FML entities
2012-08-12 00:18:04 -04:00
Christian 20029feb88 Fix NPE with no channels - always register FML 2012-08-12 00:17:07 -04:00
LexManos c4149f7b55 Added missing quotes around compile command. 2012-08-11 16:03:33 -07:00
Christian f20ef77a91 Fix up the network mod issue properly. Maintain a real cache of mod objects 2012-08-11 16:21:03 -04:00
Christian 6d79241652 Remove profiler stuff - it's been deeply reorged. I'll look at re-adding it later 2012-08-11 14:12:39 -04:00
Christian 4f9cc6b398 Fix up command patch to actually work 2012-08-11 14:12:23 -04:00
Christian 5a0d08b892 Fix commands.py to always include the two side classes so the fml jars are valid. 2012-08-11 14:01:27 -04:00
Christian 85f665dd1d Fix build script- put client in first 2012-08-11 13:05:37 -04:00
Christian 2d31dbba15 Put the marker on the server ML file too 2012-08-11 13:04:59 -04:00
Christian 938cecbdf7 Fix universal not to dupe entries in the jar, also add in the fml mod as "untransformable" 2012-08-11 12:34:25 -04:00
Christian 57de5c1b90 Fix up launch when obfuscated *sigh* 2012-08-11 12:24:43 -04:00
Christian 35fda10b50 Update netclienthandler patch. 2012-08-11 12:10:22 -04:00
Christian d663884aa5 Fix NPE for server relaunch 2012-08-11 12:05:13 -04:00
Christian ff18294591 Fix up Package.getPackage(), also fix up loadcontroller construction 2012-08-11 11:44:55 -04:00
Christian 3918c5e810 Add in Package.getPackage() support for sengir 2012-08-11 11:12:16 -04:00
Christian 92b7ed1182 Lost of work to try and complete ML support - probably still bits missing, but mostly there 2012-08-11 11:02:09 -04:00
LexManos 185f8ddbc7 Newlines in diff file 2012-08-11 02:27:19 -07:00
LexManos 953f99787e Add special case to add Side/SideOnly to difflist 2012-08-11 02:25:40 -07:00
Christian 7e35f13f30 Fix up some network related stuff and optimize mod lookup a bit 2012-08-11 02:43:04 -04:00
Christian 2e66429b03 Fix up proxy injector to inject properly 2012-08-11 02:24:29 -04:00
LexManos 1e4d788cd0 Fix decompile 2012-08-10 20:41:59 -07:00
Christian 7440cc89e9 Fix NPE on missing mods - still need to actually handle missing mods properly on client 2012-08-10 23:27:11 -04:00
Christian fde0619e9b New downloader UI and new downloader backend - should be more robust now 2012-08-10 23:18:52 -04:00
LexManos a1c14779d2 Added -no_gen_conf to jenkins build 2012-08-10 20:09:47 -07:00
LexManos 5a1f84ed5b Added some extra error prints, hopeully get something useful when installed in the client. 2012-08-10 18:54:06 -07:00
LexManos 49385961d9 Updated conf merger script to just merge everything, and normalize the line endings so git doesn't complain. 2012-08-10 18:25:11 -07:00
Christian dd319a2938 SidedProxy should work again - anywhere. Make sure it's on a static field though 2012-08-10 17:42:43 -04:00
Christian 7b2d09844c More ticking hooks, and some other bits of clean up. Very close to "done" now. 2012-08-10 17:11:01 -04:00
Christian b5dc18ff7e Fix up modloader and clean up junk method 2012-08-10 16:42:21 -04:00
Christian 5e7cb9106d A lot of missing patches to code re-added. Almost all functionality should now
be restored.

ModLoader compatibility is not yet assured, there are some wrapper classes that
need re-writing first
2012-08-10 16:39:03 -04:00
LexManos fcd4a8e854 Readded common folder to startclient/server. 2012-08-10 12:38:59 -07:00
Christian 1c189ae762 Add in a registration method for gui handlers 2012-08-10 11:12:57 -04:00
Christian a58306abc6 Overwrote lex's command patch 2012-08-10 10:57:18 -04:00
Christian 3c1b234a61 Fix up MCP merger - it definitely works now - the game runs and runs well.
Fix up a couple of small network related issues.
Fix up the server launching fml properly.
2012-08-10 10:03:33 -04:00
LexManos ba0cc6ec12 Added common folder support to startclient/startserver 2012-08-09 20:34:16 -07:00
LexManos 349da399ff Added some missing quotes that caused issues if your workspace had a space in it. 2012-08-09 20:01:51 -07:00
LexManos dca24fd567 Add lib folder to installed eclipse 2012-08-09 19:02:28 -07:00
Christian 6eb4bceee3 Add in missing patch - also, launch FML properly from the server 2012-08-09 09:21:16 -04:00
Christian 6d0f7ace17 Entity spawn adjustment - tracker 2012-08-09 08:40:32 -04:00
LexManos 859ebae365 Fix ModLoader compilation, and MCPmerger invocation for Forge. 2012-08-09 03:04:25 -07:00
LexManos 3d26511322 Include conf folder and merge config in source zip 2012-08-08 23:44:32 -07:00
Christian 185babbd85 Entity spawning - done 2012-08-09 01:58:14 -04:00
Christian d970f7a530 Generate a universal binary package since we can now :) 2012-08-09 01:57:42 -04:00
Christian c1bd11e64a Reorganized all the current patches 2012-08-08 22:57:37 -04:00
Christian c1b3bfd007 Fix up annotation parser to parse arrays and enums 2012-08-08 22:10:56 -04:00
LexManos 9b81775a2f Added SideTransformer to strip side only functions/fields out. 2012-08-08 18:53:41 -07:00
LexManos ac8945a4f8 Stage 1 of merging the client and server for MCP.
Results:
Client: 362
Server: 3 (Only due to issues of FF decompilation inconsistancies)
Common: 910

Stage 2: Write runtime transformer to remove annotated fields/methods with invalid side annotation.
2012-08-08 05:48:06 -07:00
Christian 77f4cc5bea Gui Handler ported from MC forge 2012-08-08 00:31:24 -04:00
Christian 8998d4c5e0 Revert dumb stuff with commands patch - lots of gfx patching 2012-08-07 23:11:37 -04:00
Christian 0ddf61cee2 Almost finished basic network stuff now 2012-08-07 20:41:37 -04:00
Christian 84efb72e46 Update some patches- more network work 2012-08-07 20:10:36 -04:00
Christian f4b9055171 Bunch of hooks re-added : network is more complete now, lot of basemod cleanup, moving stuff into
the registry area
2012-08-06 22:30:13 -04:00
Christian 12927291a7 Fix location of forge in common handler - also some tweaks to modloader and other stuff 2012-08-06 17:27:21 -04:00
Christian 73bdd512c5 Network support - there's still some work to do and full id sync isn't done yet, but it has proper registration
semantics and hooks for 250 handling
2012-08-06 16:12:50 -04:00
Christian 8bda53cb77 Add in a lot of network handler stuff - also, expose the asm harvested data 2012-08-06 09:52:42 -04:00
Christian 09098f8a0f Remove some unneeded fields from the annotations 2012-08-05 02:24:02 -04:00
LexManos 63d5d42512 Made empty constructor for ModMetadata public 2012-08-04 22:51:57 -07:00
LexManos 7e68b53196 Fix path trimming for copytree 2012-08-04 20:36:27 -07:00
Christian e92be964fd Change property name to fml.modStates not fml.disabledMods- it makes more sense that way 2012-08-04 12:35:46 -04:00
Christian 969de94d8a Add in a bit of logging when events get sent to mod containers 2012-08-04 11:45:40 -04:00
Christian e39092335a Allow coremods to inject a modcontainer and run code
this will mean that FML is deliberately and very obviously incompatible with a modloader installation.

Fix up worldtype so that the server can run.
2012-08-04 11:31:06 -04:00
LexManos ae79c79447 Patch commands.py to support side '2' as common, as well as fix a few small errors in the update_patches and fml scripts. 2012-08-04 03:34:34 -07:00
LexManos fc8c2ac6e4 Merged transformers/ to /common and renamed the asm source download to align better with the asm bin file name. 2012-08-03 23:51:49 -07:00
LexManos fbc968e1b4 Change place commands.py backup is stored. 2012-08-03 23:24:58 -07:00
LexManos 08eb7c5c45 FML finish won't updatemcp automatically, easier integration with forge. 2012-08-03 17:36:16 -07:00
LexManos 18aec5b257 Fix packaging and install to not have the src/ folder, making it align better with the dev env. 2012-08-03 17:32:23 -07:00
LexManos 34706d6acf Moved setting up eclipse to setup_mcp 2012-08-03 16:56:00 -07:00
LexManos b572c6a038 Fixed ant script to support common folder building and add the new files to the dist archives. 2012-08-03 03:37:45 -07:00
LexManos 2fccc04903 setup_fml's decompile will result in proper md5 files now {if there is no compiler issues} 2012-08-03 03:35:38 -07:00
LexManos 7949a15226 Removed FMLRegistry, and IMinecraftRegistry.
Updated server side to use the seperated registry classes like the client does.
Updated searge name references on server
Made StatBase.statName public using AccessTransformer
Server should compile now
2012-08-03 01:50:48 -07:00
LexManos 476dfbc754 Fix MockBlock compile 2012-08-03 01:47:09 -07:00
LexManos f1717526d8 Download argo/guava source references in install, and updated eclipse workspaces to reference them. 2012-08-02 23:36:00 -07:00
LexManos 56153c43d6 Cleaned up commands.patch, removed debug print in fml.py 2012-08-02 21:14:06 -07:00
LexManos 79ed963c4a Remove clientdrop, old reference files. 2012-08-02 20:32:51 -07:00
LexManos 5f848d3d2a Delete some dead files 2012-08-02 19:42:12 -07:00
Christian 1b20de0ab6 Fix commands patch, WorldType patch and some ML compat stuff 2012-08-02 20:09:18 -02:30
Christian 6d70a76c95 More fixes 2012-08-02 16:50:30 -02:30
Christian b51c357d50 More build fixes for jenkins 2012-08-02 10:33:29 -02:30
Christian e44515304a Try and fix the jenkins build 2012-08-02 10:30:52 -02:30
Christian dab4179024 Change some event names, hook up the event code for server events for FML 2012-08-02 09:31:03 -02:30
LexManos 1e47f3e468 Introduced patching of runtime/commands.py to allow for usage of the src/common folder. 2012-08-02 00:51:51 -07:00
Christian 582a785fb8 Change some stuff around - begin launching the server through the wrapper too.
A lot of patches went in - the client and server both launch and start up mods.
2012-08-02 02:08:30 -02:30
Christian ff152479e6 More stuff 2012-08-01 21:19:11 -02:30
Christian 7f8bf56d4f Fix classpath for Client, maybe? 2012-08-01 21:19:11 -02:30
Christian 22fd1652a0 Line endings for this branch 2012-08-01 21:18:55 -02:30
Christian 5f51e63385 A load of transformer accesses- also a few tweaks to the transformer, and linux support in the fml python 2012-08-01 18:59:45 -02:30
LexManos 4fb08f1660 Rewrote patch generation and application to no longer need diff, and attempt to apply common patches on decompiles that don't have one side or the other. 2012-08-01 06:54:57 -07:00
LexManos d0036dda00 Updated eclipse projects to have src-common linked resources 2012-08-01 03:52:03 -07:00
LexManos 4ca63717e5 Modified the decompiler stage to:
Compile and run AccessTransformer during the pre-RG stage of decompilation.
Merge resulting sources that are identical to src/common

ToDo:
Finish the common intergration:
-update_patches - Add common folder support
-apply_patches:
--patch each side, also patch all common patches to each side incase they are not merged, only if file exists.
2012-08-01 03:25:45 -07:00
LexManos 62535863ad Add temp AccessTransformer config for FML 2012-08-01 03:18:31 -07:00
LexManos 629b384f0d Discard old setup script 2012-08-01 03:18:02 -07:00
LexManos b9982f18f5 Fixed AccessTransformer issue with trying to load files, instead of resources. 2012-08-01 03:17:36 -07:00
Christian 1753b28475 Commit the start of some pluggable transformers 2012-07-31 09:46:45 -04:00
Christian e7a7b3c844 XP for smelting 2012-07-30 23:07:53 -04:00
Christian 6f8b39ea09 Beginning the 1.3.1 update 2012-07-30 22:31:07 -04:00
Christian e001103ed8 Add in the ability to create versioned dependencies for mod relationships
BaseMod versions are loaded too late so will never work as a versioned
dependency requirement, but can have versioned deps of others
2012-07-30 17:01:27 -04:00
Christian d1d12e4ebd Fix up coremods with relaunch, add in a sample "coremod" 2012-07-30 11:34:30 -04:00
Christian b79ec382d7 Add in events for the method pre/init/post annotations so we can add in extra data during the event phase 2012-07-30 00:33:21 -04:00
Christian a850ea6bc0 Fix whitespace issue 2012-07-29 23:54:07 -04:00
Christian 825f1a8b50 Fix window sticking around - it doesn't anymore 2012-07-29 23:46:52 -04:00
Christian e1fc02b5b9 Add in "transform excluded" classes that we still need to take loading responsibility for 2012-07-29 23:30:37 -04:00
Christian b53ce2aa90 Added in some dialogs when things don't go so well 2012-07-29 22:55:53 -04:00
Christian ba28161f16 New logging stuff, also the early plugin api for forge 2012-07-29 22:54:59 -04:00
Christian 50ed44359d Merge branch 'minecraft1.3' into newfmlmod 2012-07-23 23:02:25 -02:30
Christian f78400711e Fix up mod classloading delegation 2012-07-23 22:54:36 -02:30
Christian 69e895e687 Some patches to go along with the other changes 2012-07-23 22:51:16 -02:30
Christian 769663466f More stuff as I roll out the changes 2012-07-23 22:50:37 -02:30
Christian 9e4131c3e8 A bunch more fixes for FML mods 2012-07-23 16:33:17 -02:30
Christian 8b5ddf1739 Merge remote-tracking branch 'mainlap/newkeys' into newfmlmod
Conflicts:
	client/cpw/mods/fml/client/FMLClientHandler.java
2012-07-22 20:30:42 -02:30
Christian 5561f8218a New key handling 2012-07-22 20:25:18 -02:30
Christian 2a19eca517 Check in a lot of recent work 2012-07-22 11:56:38 -02:30
Christian 3115f92ee4 Check in new fml mod work so far. Lots still to do. 2012-07-14 13:58:46 -04:00
LexManos 2671641b83 Cleaned up the install script for the source distrabution to setup the workspace properly, delete argo, and download all required dependancies. 2012-07-12 18:07:58 -07:00
LexManos 0a9ee584bf Added call to clean_source to build script to fix patch fuzz on windows. 2012-07-12 18:06:39 -07:00
LexManos 48dcdca805 Fix Client-Clean project to use relative path to argo. 2012-07-12 18:06:01 -07:00
Christian 2db9292ba5 Another bloody ticking fix. This should fix mods that use ML.setInGameHook(true,false) on the
server side to recieve ticks.
2012-07-08 22:06:11 -04:00
Christian 9d6266d85b Fix up mod classloading delegation 2012-07-06 15:59:16 -04:00
Christian 25fb847dc1 Fixes 2012-07-06 10:42:49 -04:00
Christian 98e31e5f03 Incorporate server patches into client 2012-07-06 10:29:17 -04:00
Christian 0ff59e7978 Remove two places that are unpatchable now 2012-07-06 09:52:21 -04:00
Christian 97cfbb990d Server repatching 2012-07-06 09:44:00 -04:00
Christian 59949849f0 Add a "checkpatches" target and check if your patches are up to date before running a repatch operation 2012-07-06 09:19:58 -04:00
Christian be59dfff54 Launch through the applet launcher too 2012-07-06 01:04:33 -04:00
Christian 32e93213f1 Some patches for the server 2012-07-05 22:31:46 -04:00
Christian b9466b8ee5 Lots of client patch fixup 2012-07-05 18:13:47 -04:00
Christian 275b78957a Update git ignore to ignore a fernflowerzip that's lying around 2012-07-05 15:38:37 -04:00
Christian 4ab2a3cb6b And we have a brand, "fml". We're definitely modded :) 2012-07-05 15:36:31 -04:00
Christian 58576c2a19 UnexpectedThrowable is now the much more awesome CrashReport! 2012-07-05 15:35:38 -04:00
Christian c0b707a9bd Merge branch 'master' into minecraft1.3
Bring some of the ticking fixes in

Conflicts:
	client/cpw/mods/fml/client/FMLClientHandler.java
	patches/minecraft_server/net/minecraft/server/MinecraftServer.java.patch
2012-07-05 15:30:21 -04:00
Christian e8b09f4692 Got the relauncher downloading and injecting library files 2012-07-05 15:23:37 -04:00
Christian decbe8ba7c Tweak ticking YET AGAIN. Should fire a solitary GUILOAD tick right as the game screen loads.
Hopefully fixes worldload tick issue too
2012-07-04 00:16:30 -04:00
Christian 53c2b50212 FFS let this fix that bloody ticking mess that is ML compatibility. 2012-07-03 23:03:51 -04:00
Christian 3d8a5edc30 Separate gui ticking completely. send it as if it's a world tick. ML gui ticks are epically dumb.
Fix Worldload being filtered from the trigger arming.
Also, improve errors going to an error screen. There should be more information now.
2012-07-03 22:39:35 -04:00
Christian 275fd394c1 Change gui ticking and world load tick. Should close issue #40 and kill it deader
than a very very dead thing. *$^*(#% Modloader ticking b#%$hit
2012-07-03 21:37:54 -04:00
Christian d1f791f94e Merge branch 'master' into minecraft1.3 2012-07-03 08:15:58 -04:00
Christian 60b50bb7f2 Tweak build xml for more cleanliness 2012-07-03 08:14:35 -04:00
Christian 9cafdf94ac Merge branch 'antscriptupdates' 2012-07-02 23:50:49 -04:00
Christian 07a1927c25 Update some stuff 2012-07-02 23:49:40 -04:00
Christian 777b4407c2 Merge branch 'antscriptupdates' into minecraft1.3 2012-07-02 23:49:06 -04:00
Christian a98ffafd71 Add in more options for ant script and clean up needing to clean every time. 2012-07-02 23:43:29 -04:00
Christian 414d59b1aa Merge branch 'testrecover' 2012-07-02 20:19:23 -04:00
Christian f0aa28162e Merge branch 'antscriptupdates' into minecraft1.3 2012-07-02 15:56:33 -04:00
Christian 2090264599 Some more fixes to the ant stuff: apply patches now happens at the right time, I grab fernflower as part of
setup and added an updatepatches call too
2012-07-02 15:54:25 -04:00
Christian ecaa158981 Merge branch 'antscriptupdates' into minecraft1.3
Conflicts:
	build.xml
2012-07-02 15:21:15 -04:00
Christian 6c99b80b73 Add in a setupenvironment ant target specifically for setting up an FML environment from scratch 2012-07-02 15:16:40 -04:00
Christian 0418f01886 Harvest MC version from MCP 2012-07-02 13:31:45 -04:00
Christian 6f8409a2ce fix sided proxy bukkit test (not used so not a biggie) 2012-07-02 12:32:41 -04:00
Christian a8f599983e Harvest MC version from MCP 2012-07-02 12:24:37 -04:00
Christian b51ce21b70 Initial checkin. Some patches are probably missing, but client compiles. 2012-06-29 20:18:04 -04:00
Christian 731dbf5175 Working simple scheduled ticking, Player ticks 2012-06-28 23:37:30 -04:00
Christian d3b48f0c21 Support tick spacing through new IScheduledTickHandler 2012-06-28 17:10:35 -04:00
Christian ce9be2864c Change TickType.WORLD to send the world as arg[0] to match the server. 2012-06-28 14:24:34 -04:00
Christian 541951416e And there are not 1000 seconds in a second 2012-06-28 08:31:32 -04:00
Christian 4f8d71e289 Seconds are 1000 milliseconds long. Not 1 millisecond long. 2012-06-28 08:27:21 -04:00
Christian 7098d613a0 Tweak profiler command on bukkit 2012-06-28 08:21:24 -04:00
Christian e688e04446 Fix up a derp in the timing command 2012-06-27 22:13:55 -04:00
Christian 0878bd1fcf Fix code to use guava 10 only. Stupid bukkit plugins and daft dependencies on guava 10! 2012-06-27 08:23:53 -04:00
Christian 1c7bcf8077 Tweak for end profiling 2012-06-26 23:37:54 -04:00
Christian 81d4d77202 Add in simple profiler for bukkit 2012-06-26 23:16:23 -04:00
Christian 5a5ff97f39 Add in a mechanism to get the modcontainer for a mod - so things can be programmatically changed 2012-06-26 16:24:50 -04:00
Christian a7caad10ba Add in bukkit support for recipe change 2012-06-26 15:40:30 -04:00
Christian 64dab3c8d7 Add in a new recipe handler registry method for ease of adding recipes to MC 2012-06-26 15:29:34 -04:00
Christian 5d4fdd1337 Update tester mod 2012-06-22 09:30:47 -04:00
Christian 77479d8b74 Fix ticking for GUI ticks too! 2012-06-22 09:30:27 -04:00
Christian dd7ee6e268 Fix dependency string processing error 2012-06-22 06:21:04 -04:00
Christian 1236abf679 ModSorting test case 2012-06-21 21:56:16 -04:00
Christian 64d1b29c43 Fix ticking properly - ML world ticks now fire once, properly 2012-06-21 18:11:40 -04:00