Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

(1.10.2) How would I go about sending more updates to vanilla projectiles?


gurujive
 Share

Recommended Posts

All vanilla projectiles don't fly right, its just something that happens in vanilla.

 

I would like to fix that by adjusting the amount of updates sent to the vanilla arrow, fire charges, snowballs and etc, since mojang doesn't feel like doing so...

 

Also is it possible to unload all creatures in the game and put your own in overriding the vanilla mob with the one with the more update packages? The super charge up crap, where the entity bugs out, is untargetable then runs at you. (client lag) I'd like to see about fixing that too.

 

I don't have the intent of a coremod, figured I'd ask though since this has been a vanilla problem since forever.

Link to comment
Share on other sites

The jumpyness you are talking about is actuallly because there is a syncing problem between server and client one is running faster than the other. Sending more updates would make this worse sending less updates would make it not as accurate as it is. This is the problem tou are facing i think the only way to do this would to be overriding all entities you want with the EntityConstructingEvent or sad to say a coremod. All the update stuff is hardcoded so no Reflection is possible.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • Hello, I came to ask you to help me how to fix the crash at the beginning of the launch I tried to check the modpack via curseforge, I reinstalled java, I reinstalled the modpack and also I erased the cache folder of Minecraft launcher. No resolution of the problem.   The error is showing this:  "The game crashed whilst initializing game Error: java.lang.NullPointerException: Initializing game Exit code: -1" I made a pastebin link for you to see, here is the pastebin link: https://pastebin.com/dpEnzy01  
    • hi guys, i need help  with tileentitys. i have a button in my tileentity and i want if i press the butten, a function should be called up in the in the tileentityclass.  my Init in the Screen: @Override protected void init() { this.addButton(new ImageButton(this.guiLeft + 10, this.height + 30, 20, 18, 0, 0, 19, CONTINUE_BUTTON, (button) -> { ((ImageButton)button).setPosition(this.guiLeft + 20, this.height / 2 - 49); })); } and my tileentity package net.the_goldbeards.lootdebugs.tileentity; import net.minecraft.block.BlockState; import net.minecraft.item.ItemStack; import net.minecraft.item.Items; import net.minecraft.nbt.CompoundNBT; import net.minecraft.tileentity.*; import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.ItemStackHandler; import net.the_goldbeards.lootdebugs.init.ModBlocks; import net.the_goldbeards.lootdebugs.init.ModItems; import net.the_goldbeards.lootdebugs.init.ModTileEntities; import javax.annotation.Nonnull; public class PubTile extends TileEntity implements ITickableTileEntity { private final ItemStackHandler itemHandler = createHandler(); private final LazyOptional<IItemHandler> handler = LazyOptional.of(() -> itemHandler); public PubTile(TileEntityType<?> tileEntityTypeIn) { super(tileEntityTypeIn); } public PubTile() { this(ModTileEntities.PUB_TILE.get()); } @Override public void read(BlockState state, CompoundNBT nbt) { itemHandler.deserializeNBT(nbt.getCompound("pub")); super.read(state, nbt); } @Override public CompoundNBT write(CompoundNBT compound) { compound.put("pub", itemHandler.serializeNBT()); return super.write(compound); } private ItemStackHandler createHandler() { return new ItemStackHandler(6) { @Override protected void onContentsChanged(int slot) { brewBlackout(); markDirty(); } @Override public boolean isItemValid(int slot, @Nonnull ItemStack stack) { switch (slot) { case 0: return stack.getItem() == Items.WATER_BUCKET || stack.getItem() == Items.BUCKET;//Water Insert case 1: return stack.getItem() == Items.REDSTONE;//Barley Bulb case 2: return stack.getItem() == Items.WARPED_DOOR;// Yeast Cone case 3: return stack.getItem() == Items.MAGENTA_BANNER;//Malz Stars case 4: return stack.getItem() == ModItems.BARLEY_BULB.get();//Starch Nut case 5: return stack.getItem() == ModItems.MUG.get() || stack.getItem() == ModItems.OILY_OAF.get() || stack.getItem() == ModItems.SKULL_CRUSHER.get() || stack.getItem() == ModItems.OILY_OAF.get();//Output -> Mug or Mug with Liquid default: return false; } } @Override protected int getStackLimit(int slot, @Nonnull ItemStack stack) { if (slot == 5) { return 1; } if (slot == 0) { return 5; } else { return 64; } } @Nonnull @Override public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) { if (!isItemValid(slot, stack)) { return stack; } return super.insertItem(slot, stack, simulate); } }; } @Nonnull @Override public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap) { if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { return handler.cast(); } return super.getCapability(cap); } public void brewBlackout() { boolean isWaterInSlot = this.itemHandler.getStackInSlot(0).getCount() == 1 && this.itemHandler.getStackInSlot(0).getItem() == Items.WATER_BUCKET; boolean isMugInSlot = this.itemHandler.getStackInSlot(5).getCount() == 1 && this.itemHandler.getStackInSlot(5).getItem() == ModItems.MUG.get(); boolean isIngredients = this.itemHandler.getStackInSlot(4).getCount() >= 3 && this.itemHandler.getStackInSlot(4).getItem() == ModItems.BARLEY_BULB.get(); if (isMugInSlot && isIngredients && isWaterInSlot) { this.itemHandler.getStackInSlot(0).shrink(1); this.itemHandler.insertItem(0, new ItemStack(Items.BUCKET, 1), false); this.itemHandler.getStackInSlot(4).shrink(3); this.itemHandler.getStackInSlot(5).shrink(1); this.itemHandler.insertItem(5, new ItemStack(ModBlocks.OILY_OAF.get(), 1), false); } } /* private void craft() { Inventory inv = new Inventory(itemHandler.getSlots()); for (int i = 0; i < itemHandler.getSlots(); i++) { inv.setInventorySlotContents(i, itemHandler.getStackInSlot(i)); } Optional<PubRecipe> recipe = world.getRecipeManager() .getRecipe(ModRecipeTypes.PUB_RECIPE, inv, world); recipe.ifPresent(iRecipe -> { ItemStack output = iRecipe.getRecipeOutput(); craftTheItem(output); markDirty(); }); } private void craftTheItem(ItemStack output) { itemHandler.extractItem(0, 1,false); itemHandler.insertItem(0, new ItemStack(Items.BUCKET,1),false); } */ @Override public void tick() { // if(world.isRemote) // {return;} // craft(); }  
    • Check your entity renderer. Did you make a custom model? Did you properly place your textures in the resources?
    • Okay, thanks, I did it, but now are spawning pings instead my mobs       
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.