Commit Graph

166 Commits

Author SHA1 Message Date
OhYea777 444ba7a7d5 Update 'build.gradle' to fix run configs for launching forge 2019-05-12 12:51:18 -04:00
cpw 6a1337aa92
Updated a couple of libraries. Fixed bug where modid could be in toml but
not found during loading, yet game continued to load.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-05-11 20:47:42 -04:00
tterrag 605c4a0adf Add test mods run configs 2019-05-11 18:58:45 -04:00
LexManos a7204b5cd3 Bump ForgeSPI version, and add support for DistCleaner stripping interfaces from classes.
Add more detail to VersionChecker log info.
2019-05-06 15:52:12 -07:00
tterrag f30d7bc845 Fix #5688 config values are unordered, update Night-Config 2019-04-18 22:13:13 -04:00
DaemonUmbra e168d8e593 Remove Vanilla Logging Config (#5618)
This will re-enable Forge's logging configuration in "production"
2019-04-15 19:00:11 -07:00
cpw cdbd842494
Refactor to use naming service, and provide an MCP naming service when
in userdev. Step 1 to supporting loading SRG mods in userdev.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-04-06 12:10:54 -04:00
tterrag 10a06157aa Update Night-Config to 3.5.0, improve defineEnum methods
Closes #5537
2019-03-23 00:12:48 -04:00
LexManos 3003e33074 Refactor Userdev and Forgedev launching.
Locating mods on the classpath in dev should solve linked MC sources when debugging.
As well as loading deobfed mods.
Rewrote how arguments are handled in dev, so users can overwrite any defaults we provide.
Added basic Yggdrasil auth support. Passing in --username and --password arguments.
ONLY USE IF NECESSARY. Forge is NOT responsible for your login information.
2019-03-06 20:59:32 -08:00
cpw cbfa572acb
Tweak log4j2 config and allow access to classdump functionality from
modlauncher.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-03-02 15:31:35 -05:00
cpw b4ccafe718
Enforce specversion number for forgeSPI so we don't crash with weird errors later.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-03-01 19:27:22 -05:00
cpw 7f1ea578d6
Fix problem with duplicate mods caused by duplicate classes found during scan.
File Scan results are now sets.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-27 23:34:23 -05:00
cpw 0bcc60fbe3
Tidy up server launch. The JAR will resolve it's libraries from a relative
path. We just need to verify what we need is on the classpath, and
try and handle when it's not, cleanly (by recommending running the
installer).

The manifest now embeds the correct launch arguments to allow FML to
resolve - these were _never_ editable, and belong somewhere out of
the way.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-26 10:28:48 -05:00
cpw 245d0b6282
Fix startup Query to actually display (fixed commit).
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-23 20:42:45 -05:00
cpw bbdf52e038
Update to 0.10 modlauncher API with performance improvements..
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-23 14:36:05 -05:00
LexManos b7f6fbcfcb Merge extra and data jars. As Log4j has issues with it's config being in a different jar then the custom logger. 2019-02-21 04:24:39 -08:00
cpw 1d6536a53b
Move unsafehacks to separate JAR built separately..
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-18 15:54:36 -05:00
Jack Taylor 2e2c57dbd1 Refactor forge and example run configs based on MinecraftForge/ForgeGradle#546
- Updated run config formats based on the refactored setup
- Removed old 'runclient' and 'runserver' JavaExec tasks, replacing them by creating the run configs using the refactored setup.
- Set 'assetIndex' environment variable from FG
- Updated MDK for new run config setup
2019-02-18 14:39:05 -05:00
cpw bd1769b11f
Fix author and other strings in the mdk mods toml file, update coremods to 0.3.+
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-17 14:08:20 -05:00
cpw 738d54ff4c
Fixes #5446 Listening for the same registry event in two different mods fails
Tell the mod event bus not to track phasing for events.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-16 16:45:05 -05:00
cpw 1e6f3fc893
Use MC VERSION in the dependencies string for the extra jar
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-15 01:11:31 -05:00
cpw b4d0ee9b3b
Publish to mainline
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-14 23:15:40 -05:00
LexManos ca72710937 Initial 1.13.2 update. Major thing to note is that Dimensions have been completely revamped.
DimensionType is not unique per Dimension. See DimensionManager for more details.
Vanilla now has a chunk loading system, so Forge's will need to be deprecated/adapted.
2019-02-14 15:08:53 -08:00
cpw c6afb2be3f
Move to using Minecrell's terminal logger directly, for better ANSI control and JLine support.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-02-10 14:35:21 -05:00
LexManos aa91af865d Rework server launching at runtime to include needed default arguments and validate libraries exist.
Move Forge config loading to manual while config system is in development.
2019-02-04 18:23:58 -08:00
cpw 55691fce4e
Expose the ModFile in the scan data, so languages can read it and make
mod construction decisions.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-31 23:09:47 -05:00
ichttt ad32b01d85 Reimplement update checker 2019-01-27 21:23:24 +01:00
cpw 043069dc8a
Update to 0.9.0 of modlauncher..
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-26 17:38:59 -05:00
liach c01b336095 Improves topological sort
This can be used for mod sorting, dependencies between registries, etc.
e.g. https://github.com/MinecraftForge/MinecraftForge/pull/4694#issuecomment-412520302

New features:
Now accepts guava graph
Performance improvement: no longer reverse the graph; changed dfs to bfs
Accepets a comparator for secondary order, e.g. natural order, index by map
Now properly reports all cycles in a graph with Tarjan's strongly connected component algorithm
Adds a test to prove the validity of the sort and cycle detection
Modified build.gradle for test source directory and dependencies

Mod loading changes:
Sort mod file info instead of suppliers (we don't have suppliers instances)
Moves cycle error reporting out of topological sort and into mod sorter
Prevent mod file dependencies between mods that share the same file

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

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-20 21:26:31 -05:00
cpw f4d2d1a24b
Move Registry Events to the mod event bus.
Add infrastructure to allow parallel or synchronous dispatch of
mod events, and pass-through of events to the dispatch system.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-19 23:27:27 -05: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 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 997a15c0f2 Update to 0.4.0 of modlauncher 2019-01-06 16:34:32 -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 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
mcenderdragon 0bfa76251d Added JVM argument so lwjgl dll extraction works with unicode os usernames, closes #5282 (#5283) 2018-12-20 12:09:34 -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
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 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 7c0d94ce9c Patch work, most of block classes, and fix eclipse run configs. 2018-11-16 23:15:39 -08:00
LexManos f1552ef20d Fix changelog classifier, and prevent jenkins from running concurrent builds.
And remove caching from setup, as it doesn't use the rangemap.
2018-11-15 12:40:30 -08:00
LexManos de7eeed916 Make Forge group/name dynamic in MDK as well. 2018-11-14 13:42:11 -08:00
LexManos 93eabce1bc Include changelog in published artifacts. 2018-11-14 13:39:56 -08:00
LexManos 7f9acac469 Fix version number not having MC prefix, and build artifacts. 2018-11-13 16:49:03 -08:00