-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.20.1 port #1810
base: master
Are you sure you want to change the base?
1.20.1 port #1810
Conversation
Great work! This is the best attempt so far to port this mod to a new version. Will you continue to help with mod develop? There is only one person making the mod, and it would be nice to have someone else help with the mod. |
I probably won't. I just want to finish port and maybe add some features for the server I'm working on if server owner will need them. Also:
|
Well, good luck! I just wanted to say that there are some issues that the dev of this mod cannot solve, and it would be nice if someone else solved them. In any case, thanks for the answer! |
@slava110 try looking at the 1.18.2 branch for a lot of your issues here. I've started porting to that version and a lot of the things are likely to be similar between these two versions. The 1.18.2 branch will actually compile and boot, and you can even spawn in vehicles, though the GUI doesn't work, collision is wonky, and trying to render anything just kills the game. But, you at least can get most of the bulk of the code and methods converted. |
Also, the mod isn't techincally ARR, but it's certianly not one that permits forking. I've seen what that does to modpacked mods with what has happend to Flansmod, where there's tons of different versions, none of which combine the best work of the others. |
Yep, I totally missed that branch when I've started porting 💀. I don't think there's much I can take from it at this point, but I'll check again anyway a bit later, thanks.
Custom license is technically ARR. But anyway, forking is the thing that matters the most. Had a lot of mods that I cannot use anymore because developer is no longer active anywhere / developer doesn't want port to specific version/modloader (forge/fabric/quilt/mc version). And sometimes I cannot add specific features I want because developer doesn't want them (but that's mostly solvable with mixins nowadays). So I tend to avoid ARR mods usually. |
can you make the port to 1.19.2 |
Sorry, but as I've said earlier, I'm mostly doing this so our server could be ported to 1.20.1. I'm not interested in porting to any version we won't have our server on. Might port to 1.21 but only if we'll port our server to 1.21 🤷 (and we're currently targetting specifically 1.20.1). |
@DonBruce64 what specific problems did you have with FG6 on 1.12.2?
|
So I won't be porting to and 1.19.x versions. They just aren't popular enough, especially with the 1.20.x and 1.21.x versions. 1.18.2 is what I'm choosing for my first port personally as there's less different in there vs a larger jump, and even then I'm still struggling with the rendering routines not having any documentation or anything. Horridly de-motivating when all you want to do is send a batch of vertex data to be rendered but there's literally 0 functions in the code that take in a buffer and a stack and queue up said rendering. Even more a PITA when the code crashes with a segfault with no stack so you don't know what you did wrong. Cherry on top is the lack of documentation anywhere for the code. Wasn't a big issue in the older OpenGL direct rendering days as it was the same code as any other direct rendering, but now it's a MC-custom batch system that I have to essentially puzzle out what it wants. |
IIRC, it was a Java version issue. Updating to FG6 made 1.12.2 not compile nice since I had to run Java 17 for FG6 to run. However, as of the current setup it appears that this is not an issue as I'm able to run Java 17 with FG5 and not have any issues with compiling (all my issues are related to 1.18.2 ForgeGradle specific issues with I'd say go for FG6 as it probably does work, just was a user error on my end when I last tried it. |
When you will release? |
Whenever it will be finished. This port is currently postponed because migrating worlds from 1.12.2 to 1.13+ is harder than was expected (because of Forge and Minecraft changes). And there's no reason for me to port this mod if server world will not be migrated too. If somebody wants to pick it up - go ahead |
OK, will version 1.20.1 be publicly available or current for your server? |
Public. Otherwise I wouldn't have opened this PR in the first place. But it needs time and I'm dedicating time to other stuff rn |
How's the progress so far? |
Hi. I've started porting mod to 1.20.1 recently. Most of the stuff to make it compilable is done, but some things changed in MC a lot so I'm waiting for your opinion on some of then.
I'm currently using ArchLoom instead of ForgeGradle, but it could be changed later on if you really want. I just really hate ForgeGradle c:
P.S.: If you want, I can remake commits so it'll be clear what changes I've made from 1.16.5 version (by adding intermediate commit with unmodified 1.16.5 code on 1.20.1 branch).
Resources used
!mcp -c moj <search term>
command)Changes to Gradle:
enabled_platforms
property ingradle.properties
is required if you want to include specific subprojects and create tasks.Format:
<modloader>-<version>
, example:forge-1.12.2, forge-1.20.1
ToDo (opinion required):
mcinterface1201.WrapperWorld.getBlockMaterial
Block materials don't exist anymore. Maybe should be replaced with tags? Waiting for your opinion on that.
mcinterface1201.WrapperEntity.attack
DamageSource
isn't builder-style now. They are completely separated. Not sure what to do here. Waiting for your opinion on that.Other ToDo:
mcinterface1201.InterfaceRender
I'm bad at rendering but this mess should be fixed somehow. Probably will need your help with that 🤷
mcinterface1201.mixin.client.SimpleReloadableResourceManagerMixin
Not sure what to do about it, doesn't exist on new version. I guess it is something like ReloadableResourceManager though?.. Idk
- Controller class not foundI guess it doesn't exist on that version? Should be replaced with something. Or maybe dependency like Controllable could be used
- mcinterface1201.InterfaceCore.getOredictMaterialsI should just check how tag system works to fix this method
- mcinterface1201.BuilderTileEntity.tickDoesn't override anything. BlockEntityTicker should be registered
- mcinterface1201/BuilderItemmcinterface1201/InterfaceLoader
mcinterface1201.BuilderCreativeTab
Creative tabs changed in new MC. Should be registered using events IIRC
- JEI compatIs completely broken