Jump to content

Recommended Posts

Posted
1 hour ago, Cloudy said:

This argument is just cluttering up the forum with nonsense. I don't have anything else to say, but there's already an answer in this thread on how to track clicks per second, assuming that the MouseInputEvent exists on 1.8.9.

He doesn't even know what the MouseInputEvent is because he doesn't know Java!

This thread should be locked, period.

Posted (edited)
1 hour ago, diesieben07 said:

Stop being a backseat moderator. Consider this a final warning, you already had one via PM.

Backseat moderator? I'm saying the truth. I thought that the rules say that "if you don't have knowledge of basic Java, you won't get help..."

Am I wrong?

Edited by Differentiation
Posted
On 11.11.2017 at 2:04 PM, Differentiation said:

If you "don't know crap about Java" then how are you even going to write the "complicated code?" 

"Complicated code" requires basic knowledge of Java.

THATS WHAT IM THALING ABOUT YOU LITERALLY QUOTED "YES" AND SAID IT SAYS "NO"

because im asking how do i learn easy stuff if you only wanna help me with the complicated things

Posted
On 11.11.2017 at 2:07 PM, Differentiation said:

 

Those two statements supplement the idea. You are doing this for PvP...

 

And I got Gold Division last season, almost Diamond, so I know how people play the game. All they do is clean and play like scumbags and hack, and finally brag when they get their rewards. And you call them skilled??? I mean c'mon............. I just hope you're not one of those...

Those two statements DOESNT EVEN HAVE ANYTHING WITH the idea. I AM NOT TELLING YOU THAT IM doing this for PvP...

"oh and one more thing... who said i wanted to do pvp... maybe i just want to make a clicker minigame for minecraft... "

maybe i just really wanna do a gui clicker or something...

"lol ppl for example on hypixel get diamond division on ranked skywars and they are not the best at pvp... im not saying that cps matters more than aim "

this is just an answer for your "YEA BC CPS DOESNT MATTER MORE THAN AIM AND YOU THINK THE OTHER WAY BC IM GOD AND I CAN LOOK INTO YOUR MIND"

im just answering to you... no i dont think cps matters more (you dont even need to have god aim) its just tactic

Posted
On 11.11.2017 at 2:30 PM, Cloudy said:

Jesus. This argument is pointless. What does it matter what they want to do?

Yea i told him the same...

" ok accually... what are we talking about? we spammed this thread with posts about cps and pvp... i just wanted to count clicks... thats it..."

Posted
On 11.11.2017 at 3:33 PM, Differentiation said:

He doesn't even know what the MouseInputEvent is because he doesn't know Java!

This thread should be locked, period.

So thats what im asking... how am i going to learn simple stuff if you will only help with the complicated stuff

Posted
27 minutes ago, ejer said:

So thats what im asking... how am i going to learn simple stuff if you will only help with the complicated stuff

We don't only want to help with 'complicated' stuff, but before we help you have to at least know the basics of Java to understand what we're saying.

  • Like 1

Classes: 94

Lines of code: 12173

Other files: 206

Github repo: https://github.com/KokkieBeer/DeGeweldigeMod

  • 2 weeks later...
Posted
On 13.11.2017 at 7:00 PM, Kokkie said:

We don't only want to help with 'complicated' stuff, but before we help you have to at least know the basics of Java to understand what we're saying.

you are not answering my question.

 

On 13.11.2017 at 7:00 PM, Kokkie said:

how am i going to learn simple stuff

 

Posted
1 hour ago, ejer said:

these guys didnt understand

We assumed you had basic Java knowledge, which you should have before modding Minecraft...

  • Like 1

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Posted

The Thing with modding is is that you will be completely bad at it even if you know java. Understanding Minecraft is at least as important. Everyone started at some point, Forum Moderators like diesieben or Choonster learnt it just as we do now. So where is the point in complaining whether somebody can code or not?

You learn while you practise, at

 least that is how I do it.

Posted
13 minutes ago, ArmamentHaki said:

The Thing with modding is is that you will be completely bad at it even if you know java. Understanding Minecraft is at least as important. Everyone started at some point, Forum Moderators like diesieben or Choonster learnt it just as we do now. So where is the point in complaining whether somebody can code or not?

You learn while you practise, at

 least that is how I do it.

I understand... but we're talking BASICS! He doesn't even know what a METHOD is...............

 

"You start modding with making your main class, then proxies, and then the most crucial part... the methods that need to be run within" ~Diesieben July 24th, 2013.

 

Do you see where I'm comin' from??

 

Posted

For the record, I'm not a moderator; I've just spent a lot of time on here. 

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted (edited)
6 minutes ago, Differentiation said:

In regards to...?

 

ArmamentHaki's post. I'll edit in a quote.

 

Edit: I don't think I can on mobile.

Edited by Choonster

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted (edited)

@DifferentiationIt is good that you understand the rules of the forum, and also nice that you're actively particpating and interested in modding. However, the only people that should enforce the rules are official moderators. It is even okay to suggest someone should spend time learning more Java, but some of your posts are literally telling people to "go away" or "we're not going to support that". 

 

No one except official moderators should ever tell someone to go away or try to draw a line over support. 

 

Now I often see people who post and I can tell that they're likely going to need a LOT of help, or want to do something they probably shouldn't. In those cases I simply don't respond. Sometimes other people will, sometimes not, but it is up to them if they want to spend the time supporting someone.

 

One other thing to note is you never really know who the person posting is. Perhaps it is a younger kid. Perhaps it is someone with some special needs. So it is best to always err on the side of compassion and tolerance even if they seem a bit misguided.

 

Anyway, please leave the rules to the moderators -- our moderators do a good job. If someone posting annoys you then just don't respond to their thread.

 

 

Edited by jabelar
  • Like 5

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted (edited)
4 hours ago, diesieben07 said:

This. And this is the 3rd or 4th time I tell you this. This is your final warning.

I'm not enforcing any rules... I'm barely even familiar with less than half of them... but if a person comes to your Forum expecting you to give them all the answers without knowing what the **** Java is................. you know what I mean? Then I try to help out by telling them not to "leave the Forums," but to hold their horses and move back a step to the very first one which is to be familiar with the language. 

Edited by Differentiation
Posted
3 hours ago, Differentiation said:

Then I try to help out by telling them not to "leave the Forums," but to hold their horses and move back a step to the very first one which is to be familiar with the language. 

Well in this thread you actually used the words:

  • "please stop"
  • "don't ask"
  • "useless questions will not be answered"
  • "not supported on the forum"
  • "this thread should be locked period"
  • "get out of here"

 You also questioned his motives related to PVP. You also insulted him by calling him "lazy" and "unoriginal".

 

All the above might actually be true, but leave it to diesieben07 to respond. And no one needs to attack so aggressively -- I know it can be frustrating to see people come asking for help when they are indeed lazy or incapable of programming Java. But just ignore them instead of getting in an all caps flame war.

 

I don't want to see you banned from the forum because you seem to legitimately care about modding and have a lot of passion and potential. So just stick to threads that don't frustrate you! Cheers!

  • Like 3

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

  • Guest locked this topic
Guest
This topic is now closed to further replies.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • So me and a couple of friends are playing with a shitpost mod pack and one of the mods in the pack is corail tombstone and for some reason there is a problem with it, where on death to fire the player will get kicked out of the server and the tombstone will not spawn basically deleting an entire inventory, it doesn't matter what type of fire it is, whether it's from vanilla fire/lava, or from modded fire like ice&fire/lycanites and it's common enough to where everyone on the server has experienced at least once or twice and it doesn't give any crash log. a solution to this would be much appreciated thank you!
    • It is 1.12.2 - I have no idea if there is a 1.12 pack
    • Okay, but does the modpack works with 1.12 or just with 1.12.2, because I need the Forge client specifically for Minecraft 1.12, not 1.12.2
    • Version 1.19 - Forge 41.0.63 I want to create a wolf entity that I can ride, so far it seems to be working, but the problem is that when I get on the wolf, I can’t control it. I then discovered that the issue is that the server doesn’t detect that I’m riding the wolf, so I’m struggling with synchronization. However, it seems to not be working properly. As I understand it, the server receives the packet but doesn’t register it correctly. I’m a bit new to Java, and I’ll try to provide all the relevant code and prints *The comments and prints are translated by chatgpt since they were originally in Spanish* Thank you very much in advance No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. MountableWolfEntity package com.vals.valscraft.entity; import com.vals.valscraft.network.MountSyncPacket; import com.vals.valscraft.network.NetworkHandler; import net.minecraft.client.Minecraft; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.ai.attributes.AttributeSupplier; import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.animal.Wolf; import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.Entity; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.Level; import net.minecraft.world.phys.Vec3; import net.minecraftforge.event.TickEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.network.PacketDistributor; public class MountableWolfEntity extends Wolf { private boolean hasSaddle; private static final EntityDataAccessor<Byte> DATA_ID_FLAGS = SynchedEntityData.defineId(MountableWolfEntity.class, EntityDataSerializers.BYTE); public MountableWolfEntity(EntityType<? extends Wolf> type, Level level) { super(type, level); this.hasSaddle = false; } @Override protected void defineSynchedData() { super.defineSynchedData(); this.entityData.define(DATA_ID_FLAGS, (byte)0); } public static AttributeSupplier.Builder createAttributes() { return Wolf.createAttributes() .add(Attributes.MAX_HEALTH, 20.0) .add(Attributes.MOVEMENT_SPEED, 0.3); } @Override public InteractionResult mobInteract(Player player, InteractionHand hand) { ItemStack itemstack = player.getItemInHand(hand); if (itemstack.getItem() == Items.SADDLE && !this.hasSaddle()) { if (!player.isCreative()) { itemstack.shrink(1); } this.setSaddle(true); return InteractionResult.SUCCESS; } else if (!level.isClientSide && this.hasSaddle()) { player.startRiding(this); MountSyncPacket packet = new MountSyncPacket(true); // 'true' means the player is mounted NetworkHandler.CHANNEL.sendToServer(packet); // Ensure the server handles the packet return InteractionResult.SUCCESS; } return InteractionResult.PASS; } @Override public void travel(Vec3 travelVector) { if (this.isVehicle() && this.getControllingPassenger() instanceof Player) { System.out.println("The wolf has a passenger."); System.out.println("The passenger is a player."); Player player = (Player) this.getControllingPassenger(); // Ensure the player is the controller this.setYRot(player.getYRot()); this.yRotO = this.getYRot(); this.setXRot(player.getXRot() * 0.5F); this.setRot(this.getYRot(), this.getXRot()); this.yBodyRot = this.getYRot(); this.yHeadRot = this.yBodyRot; float forward = player.zza; float strafe = player.xxa; if (forward <= 0.0F) { forward *= 0.25F; } this.flyingSpeed = this.getSpeed() * 0.1F; this.setSpeed((float) this.getAttributeValue(Attributes.MOVEMENT_SPEED) * 1.5F); this.setDeltaMovement(new Vec3(strafe, travelVector.y, forward).scale(this.getSpeed())); this.calculateEntityAnimation(this, false); } else { // The wolf does not have a passenger or the passenger is not a player System.out.println("No player is mounted, or the passenger is not a player."); super.travel(travelVector); } } public boolean hasSaddle() { return this.hasSaddle; } public void setSaddle(boolean hasSaddle) { this.hasSaddle = hasSaddle; } @Override protected void dropEquipment() { super.dropEquipment(); if (this.hasSaddle()) { this.spawnAtLocation(Items.SADDLE); this.setSaddle(false); } } @SubscribeEvent public static void onServerTick(TickEvent.ServerTickEvent event) { if (event.phase == TickEvent.Phase.START) { MinecraftServer server = net.minecraftforge.server.ServerLifecycleHooks.getCurrentServer(); if (server != null) { for (ServerPlayer player : server.getPlayerList().getPlayers()) { if (player.isPassenger() && player.getVehicle() instanceof MountableWolfEntity) { MountableWolfEntity wolf = (MountableWolfEntity) player.getVehicle(); System.out.println("Tick: " + player.getName().getString() + " is correctly mounted on " + wolf); } } } } } private boolean lastMountedState = false; @Override public void tick() { super.tick(); if (!this.level.isClientSide) { // Only on the server boolean isMounted = this.isVehicle() && this.getControllingPassenger() instanceof Player; // Only print if the state changed if (isMounted != lastMountedState) { if (isMounted) { Player player = (Player) this.getControllingPassenger(); // Verify the passenger is a player System.out.println("Server: Player " + player.getName().getString() + " is now mounted."); } else { System.out.println("Server: The wolf no longer has a passenger."); } lastMountedState = isMounted; } } } @Override public void addPassenger(Entity passenger) { super.addPassenger(passenger); if (passenger instanceof Player) { Player player = (Player) passenger; if (!this.level.isClientSide && player instanceof ServerPlayer) { // Send the packet to the server to indicate the player is mounted NetworkHandler.CHANNEL.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new MountSyncPacket(true)); } } } @Override public void removePassenger(Entity passenger) { super.removePassenger(passenger); if (passenger instanceof Player) { Player player = (Player) passenger; if (!this.level.isClientSide && player instanceof ServerPlayer) { // Send the packet to the server to indicate the player is no longer mounted NetworkHandler.CHANNEL.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new MountSyncPacket(false)); } } } @Override public boolean isControlledByLocalInstance() { Entity entity = this.getControllingPassenger(); return entity instanceof Player; } @Override public void positionRider(Entity passenger) { if (this.hasPassenger(passenger)) { double xOffset = Math.cos(Math.toRadians(this.getYRot() + 90)) * 0.4; double zOffset = Math.sin(Math.toRadians(this.getYRot() + 90)) * 0.4; passenger.setPos(this.getX() + xOffset, this.getY() + this.getPassengersRidingOffset() + passenger.getMyRidingOffset(), this.getZ() + zOffset); } } } MountSyncPacket package com.vals.valscraft.network; import com.vals.valscraft.entity.MountableWolfEntity; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class MountSyncPacket { private final boolean isMounted; public MountSyncPacket(boolean isMounted) { this.isMounted = isMounted; } public void encode(FriendlyByteBuf buffer) { buffer.writeBoolean(isMounted); } public static MountSyncPacket decode(FriendlyByteBuf buffer) { return new MountSyncPacket(buffer.readBoolean()); } public void handle(NetworkEvent.Context context) { context.enqueueWork(() -> { ServerPlayer player = context.getSender(); // Get the player from the context if (player != null) { // Verifies if the player has dismounted if (!isMounted) { Entity vehicle = player.getVehicle(); if (vehicle instanceof MountableWolfEntity wolf) { // Logic to remove the player as a passenger wolf.removePassenger(player); System.out.println("Server: Player " + player.getName().getString() + " is no longer mounted."); } } } }); context.setPacketHandled(true); // Marks the packet as handled } } networkHandler package com.vals.valscraft.network; import com.vals.valscraft.valscraft; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.network.NetworkRegistry; import net.minecraftforge.network.simple.SimpleChannel; import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class NetworkHandler { private static final String PROTOCOL_VERSION = "1"; public static final SimpleChannel CHANNEL = NetworkRegistry.newSimpleChannel( new ResourceLocation(valscraft.MODID, "main"), () -> PROTOCOL_VERSION, PROTOCOL_VERSION::equals, PROTOCOL_VERSION::equals ); public static void init() { int packetId = 0; // Register the mount synchronization packet CHANNEL.registerMessage( packetId++, MountSyncPacket.class, MountSyncPacket::encode, MountSyncPacket::decode, (msg, context) -> msg.handle(context.get()) // Get the context with context.get() ); } }  
  • Topics

×
×
  • Create New...

Important Information

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