Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

nyzra

Members
  • Joined

  • Last visited

  1. Hello everyone , I am trying to develop an AI controlled player with the help of dl4j using reinforcement learning. Unfortunatly when i try to add it to my gradle as shown in this link My Build won't work with this error: A problem occurred starting process 'command 'C:\Program Files\Java\jdk-17\bin\java.exe'' > Could not start 'C:\Program Files\Java\jdk-17\bin\java.exe' > Cannot run program "C:\Program Files\Java\jdk-17\bin\java.exe" (in directory "E:\minecraft_mod\build\reobfJar"): CreateProcess error=206,The filename or extension is too long > CreateProcess error=206, The filename or extension is too long I litteraly just spent 4 hours searching for solutions but none of them would work. The command size limitation made by windows is creating this error , there is a workaround in intelliJ , name "Shorten command lines" but it is only for application lauching. I found this solution for gradle but it also doesn't work. Most of the solution that i found were used for spring application using gradle so i am afraid it need more configuration for forge or it just won't work.
  2. Thank you for your answer ! Unfortunatly i have the same problem when i use setPos() public static int movingfunction(CommandContext<CommandSourceStack> context){ CommandSourceStack source = context.getSource(); if (!(source.getEntity() instanceof ServerPlayer)) { return 0; } ServerPlayer player = (ServerPlayer ) source.getEntity(); double moveSpeed = 0.5; for (int i =0; i<10000;i++) { LOGGER.info("running for the {} time", i); double x = player.getX() + player.getViewVector(1.0f).x * moveSpeed; double y = player.getY(); double z = player.getZ() + player.getViewVector(1.0f).z * moveSpeed ; Vec3 movementVec = new Vec3(x, y, z); LOGGER.info("x ={} y ={} z ={}", x, y, z); player.setPos( movementVec); } return 1; } With the logs i can see that x and z are increasing but once again my player is not moving. is there a function to use to sync the server and the client ? I also tried to use LocalPlayer instead of ServerPlayer but my code would stop when i got the object. Also i will change a bit the main topic but is there a way to similate key press ? i found KeyBinding.setKeyBindState on others post but it look like there is no more KeyBinding in 1.20 I found this code : KeyMapping.click(Minecraft.getInstance().options.keyUp.getKey()); But it doesn't seems to work And i found this one : Minecraft.getInstance().options.keyUp.setDown(true); wich works but doesn't exactly do what i want , it doesn't release the key so for exemple i can't make him run. Minecraft.getInstance().options.keyUp.setDown(true); Minecraft.getInstance().options.keyUp.setDown(false); Minecraft.getInstance().options.keyUp.setDown(true); doesn't make him run
  3. Hello everyone. I just started creating mod with forge and i am new to it. I saw some other post about my question but none resolved my problem. I tried this code but also with all the other method (move , moveto , lerpMotion) but none would work: public static int movingfunction(CommandContext<CommandSourceStack> context){ CommandSourceStack source = context.getSource(); if (!(source.getEntity() instanceof ServerPlayer)) { return 0; } ServerPlayer player = (ServerPlayer ) source.getEntity(); double moveSpeed = 0.5; for (int i =0; i<10000;i++) { LOGGER.info("running for the {} time", i); double x = player.getViewVector(1.0f).x * moveSpeed; double y = player.getViewVector(1.0f).y * moveSpeed; double z = 0; Vec3 movementVec = new Vec3(x, y, z); LOGGER.info("x ={} y ={} z ={}", x, y, z); player.moveRelative(0.0F, movementVec); ; } player.jumpFromGround(); return 1; // Code de retour de la commande } when i tried the code with move function my x and y were calculated this way : double x = player.getX() + player.getViewVector(1.0f).x * moveSpeed; double y = player.getY() + player.getViewVector(1.0f).y * moveSpeed; and when i would log them i could see they were increasing , but my player was still standing firmly on his spot. I feel like the position was updated on the server but not on the client side maybe ? thanks for your help.

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.