Commit Graph

267 Commits

Author SHA1 Message Date
LexManos c4e000dbe7 1.15.2 Initial Update 2020-01-22 13:44:03 -08:00
ichttt 747cb0f151 Some code cleanup for 1.15 (#6362) 2019-12-18 20:39:41 -08:00
tterrag 6256ba336e Update fallback spec version 2019-12-17 17:15:09 -05:00
tterrag 5987d917b8 Update to 1.15.1 2019-12-17 14:37:34 -05:00
David Quintana 738abbb360 Finish converting the code from javax.vecmath to the vanilla vector classes. Forge is now vecmath-free! 2019-12-17 19:14:52 +01:00
LexManos 1933d05e36 Update to 1.15
Due to the massive rendering changes, certain features, such as emissive item rendering and the forge block rendering/lighting pipeline are currently disabled.

Co-authored-by: David Quintana <gigaherz@gmail.com>
Co-authored-by: tterrag <tterrag1098@gmail.com>
Co-authored-by: Unnoen <theunnoen@gmail.com>
2019-12-17 03:38:12 +01:00
cpw 1e1644f6d4
A few tweaks to things. Make the mods command a bit better, make the
IndexedMessageCodec actually log which network channel it got back packets
on. Also, improve the custom directorymodlocator with actual custom names,
finally, allow up to 99 log rollovers, up from 7 default (this means a
repeatedly crashing server is less likely to roll out the log of the first
crash).

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-11-03 12:33:07 -05:00
tterrag acaa470dea
Add Blockstate and Model data providers (#6241) 2019-10-24 22:33:24 -04:00
ichttt 6cbd418703 Include a profile icon for the launcher json (#6222) 2019-10-15 15:00:03 -07:00
cpw 408104dbaf
Bump modlauncher version to 4.1
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-10-13 14:21:24 -04:00
cpw 9c759294c6
Add a super early GUI for showing pre-game launch messages from FML. NOTE: this cannot show on MAC because MAC can't handle
off-thread GUIs in any way shape or form, and we need the main thread to do real work.

Fix forge fading in wrongly.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-10-05 17:03:02 -04:00
cpw 136452840d
Remove forced ANSI terminal - it breaks the Eclipse terminal output.
As a result, we can now support coloured log output again, by default.

Regen run configs to get the change (you should do this every update, you
know :D)

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-09-28 16:05:50 -04:00
cpw f4bab8b8c1
Integrate modlauncher changes for mixin.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-09-27 17:42:24 -04:00
LexManos 583ff81dba Fix server jar manifest path. 2019-09-23 18:42:54 -07:00
LexManos f03745ce45 Fix timezone issue with the installer. 2019-09-23 02:46:43 +00:00
LexManos 48cf910626 Bump binpatcher and jarsplitter versions to address Java differences on older JDKs. 2019-09-22 17:30:29 -07:00
LexManos 3cc76a3f60 Fix Entity.getPersistentData function name. Closes #6131
Bump spec version for first 1.14.4 RB.
2019-09-12 09:12:30 -07:00
LexManos e1863383ff Fix naming conflicts with official names. 2019-09-04 22:33:17 -07:00
cpw bdce8d0494
Add a modfolderfactory. Fix up login payload exposure.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-09-01 14:40:39 -04:00
cpw 734a3d76aa
Peel IModLocator into the SPI package and extract a small IModFile
interface as well. This allows building external IModLocator
implementations.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-09-01 11:31:09 -04:00
cpw 0d448a5e4f
Update libs to 1.0 versions, bump grgit, and fix tag search behaviour that resulted.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-08-29 23:39:49 -04:00
LexManos e784a7f606 Recipe system cleanup. (#6014) 2019-08-29 03:18:41 +02:00
LexManos 88595dd26b Fix extract inheritance not using proper classpath and update buildscript for FG asm changes. 2019-08-14 16:13:15 -07:00
cpw 0fd8fa2211
Bump modlauncher to 3.2.x. Add a sender modid and document IMC. Closes #5746
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-08-04 22:19:02 -04:00
cpw 5048739b7f
Turned minecraft into a proper Mod, with a "dummy" language provider.
Also fixed the "translations" not being available early if an exception occurs
by force loading the forge and MC ones. Closes #5984

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-08-04 20:16:01 -04:00
LexManos ed1c55508f Fix userdev setup by moving SAS concept to FG. 2019-08-02 18:03:27 -07:00
LexManos b009cedc0c Introduce new Side Annotation Stripper system to semi-automate the shipment of Sided methods and cleanup patches.
New forge:checkSAS task to validate this config file. Closes #5995
2019-07-31 21:15:39 -07:00
cpw e17714583f
Crash report extended to show ModLauncher FML and Forge data.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-07-26 20:02:21 -04:00
cpw 0bdc2d04b4
Added a coremod, shush, don't tell Lex.
Seriously, this is how to do targeted changes to specific classes.

In this case, adding a fieldtomethod redirect for EffectInstance.potion
to allow substitution.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-07-25 23:02:05 -04:00
David Quintana ae3d002ac6 Fix & Improve state comparison when checking vanilla block replacements (#5922) 2019-07-22 19:23:20 -07:00
LexManos 00fc29d40d Fix javac compile issues. 2019-07-19 23:27:31 -07:00
cpw 27afdc8a27
Provisional update to 1.14.4. Missing a lot of playerinteractionmanager patches because everything moved and I'm tired.
Fix up immediate problems.

bump to 28.
2019-07-20 00:35:40 -04:00
cpw eff42f6066
Update mappings to 20190719 in prep for 1.14.4..
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-07-19 11:55:30 -04:00
cpw ad64d383e1
Update modlauncher to the 3.x series.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-07-14 22:48:30 -04:00
LexManos ce28c5794d Cleanup Forge's Access Transformer, and add ATs for Block.Properties#noDrop, and AxeItem/PickaxeItem. Closes #5866 and Closes #5921 2019-07-10 17:39:19 -07:00
LexManos a01c1cdc3a Fix installer realms issue on server.
Uptake EventBus changes to fix some potential dead locks.
2019-07-05 13:26:23 -07:00
LexManos bc23c1ddb2 Add installer processor to deobfuscate Mincraft's Realms library.
This task will processes the current realms library from the json, so the installer must be re-ran every time they update it.
2019-07-03 01:08:20 -07:00
cpw 943fedb073
Update coremods to newer version, with support for new targets.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-06-29 17:05:18 -04:00
LexManos c284de366b Split userdev data entry point into it's own provider to fix duplicate mod issue. 2019-06-25 18:03:51 -07:00
LexManos ff0bb8c83c Initial 1.14.3 update. 2019-06-24 19:01:03 -07:00
cpw 89baeb3d5d
Fix StartupQuery, and put tests back.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-06-22 19:58:10 -04:00
cpw 256bd01e0c
Fix server side loading, tweak mods command.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-06-22 12:31:27 -04:00
cpw c10174d50d
Update mappings, move mod initialization to the async loader.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-06-21 22:42:16 -04:00
cpw 604987a005
Skip running the datagenerator on unrequested mods.
Add a run config for the data task for modders to use

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-06-16 00:47:50 -04:00
LexManos e1cdb2e558 Expose the data entry point and generate Forge's Tags using it. 2019-06-13 20:58:03 -07:00
cpw 9fa4641cb0
Update mappings
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-06-08 10:45:28 -04:00
LexManos b74b72e44c Fix NamespacedWrapper not delegating a new getter. Fixing data loading spam at world start.
Update red/yellow/green tags with new vanilla item names.
Reenabled test source directory in project and made ModelDataTest compile.
2019-06-07 19:34:16 -07:00
LexManos a7df63e1a1
Update to 1.14.2 2019-06-07 16:50:47 -04:00
LexManos d3e8804dbf Include new library in installer json.
Change order of versions on main menu, to prevent overlap with default window size.
Fix Forge update not displaying version info.
2019-05-27 19:13:55 -07:00
cpw c57c6213ea
Enhance crash reports and logging to capture transformers on stack trace elements.
Moved log4j2.xml file to the launcher source set, so it loads first in the client.

Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-05-27 00:00:45 -04:00
LexManos eae0858de6 Fix build script producing duplicated eclipse source folders.
Fix not including userdev source in sources jar.
Update license header of files that need it.
Delete patches_old folders. Most are unneeded in 1.13+ as the systems they effected were changed significantly. Any that need to be readdressed can be done as PRs.
2019-05-13 19:11:24 -07:00
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