jasonmbrown Posted January 6 Share Posted January 6 I am trying to spawn a fake player entity using forge, however apparently a bunch of the imports are obfuscated still? public class FakePlayerEntity extends Entity { public FakePlayerEntity(World worldIn) { super(worldIn, worldIn.getGameRules().getBoolean(GameRules.NATURAL_REGENERATION)); // Additional setup for your fake player entity } World is not found, when I auto implement the required super. IntelliJ sets the code to the following public FakePlayerEntity(EntityType<?> p_19870_, Level p_19871_) { super(p_19870_, p_19871_); } The example mod works fine and all the imports for it are accurate. Just wondering If I am going about creating an Entity the wrong way Quote Link to comment Share on other sites More sharing options...
warjort Posted January 6 Share Posted January 6 (edited) Don't post code snippets out of context in the forums, put a complete example of your problem on github where we can see everything. But if you are posting compiler errors, you want a learning java forum not a minecraft modding forum. Edited January 6 by warjort Quote Boilerplate: If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one. If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install Large files should be posted to a file sharing site like https://gist.github.com You should also read the support forum sticky post. Link to comment Share on other sites More sharing options...
jasonmbrown Posted January 6 Author Share Posted January 6 (edited) I cant find the Imports based on all the guides I am reading. Im not new to programming, I just don't usually use java. Usually I code in C# or Python. Again the issue isnt with the code itself, its the seemingly missing imports. Also that's basically the entire Class for my custom Entity. (I haven't started coding it yet as Im encountering Issues with the Imports as I previously stated. It seems like the Default Forge Installation for IntelliJ using genIntellijRuns is Either missing Mappings for some classes, or I messed up the install of the IDE. If Its the Latter I will go and fix it on my own, if its the former then I have an issue that needs to be addressed) import net.minecraft.entity.player.PlayerEntity; import net.minecraft.world.World; public class FakePlayerEntity extends PlayerEntity { // Constructor public FakePlayerEntity(World worldIn) { super(worldIn, worldIn.getGameRules().getBoolean(GameRules.NATURAL_REGENERATION)); } Both of those imports don't exist. Im posting here specifically because in the Forge tutorials and documentation I can't find anything relating to Entity classes. Hence yes, it is an IDE error but given that I can't find any information on making a custom Entity (Using the latest version of forge), Where exactly should I ask this? Am I Supposed to have those two Imports? EG: Are those imports normally accessible or am I missing something? (The ExampleMod works and launches fine). Edited January 6 by jasonmbrown Tweaked Information Quote Link to comment Share on other sites More sharing options...
warjort Posted January 6 Share Posted January 6 (edited) Those are the old forge names from minecraft/forge 1.16 and before. You want mojang official names for those classes which Forge switched to by default in 1.17 PlayerEntity -> ServerPlayer World -> Level If you are going to use tutorials you need to make sure they are for the version you are developing with. Mojang tend to have lots in "churn" in their codebase. I believe there used to be a bot on Forge's discord that let you look up the changed name to help people migrate from 1.16 to 1.17 If it still exists (I don't use discord so don't know) it is probably out of date by now but might still have some use? Edited January 6 by warjort Quote Boilerplate: If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one. If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install Large files should be posted to a file sharing site like https://gist.github.com You should also read the support forum sticky post. Link to comment Share on other sites More sharing options...
jasonmbrown Posted January 6 Author Share Posted January 6 (edited) 31 minutes ago, warjort said: Those are the old forge names from minecraft/forge 1.16 and before. You want mojang official names for those classes which Forge switched to by default in 1.17 PlayerEntity -> ServerPlayer World -> Level If you are going to use tutorials you need to make sure they are for the version you are developing with. Mojang tend to have lots in "churn" in their codebase. I believe there used to be a bot on Forge's discord that let you look up the changed name to help people migrate from 1.16 to 1.17 If it still exists (I don't use discord so don't know) it is probably out of date by now but might still have some use? Ah thank you very much for that information. I haven't done any Minecraft modding since back in 1.12, things have changed quite a bit in a good way. I just wish more guides had the version number they were written for. On a side note, it seems like what I thought was Obfuscation was actually just IntelliJ's weird way of generating variable names. So in essence part of my issue was due to my stupidity, and part of it was due to the confusion over the imports. Edited January 6 by jasonmbrown Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.