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.

Featured Replies

Posted

Hello I have an error in my mod I made a sword with a better range
Here is the error and code.

Error

error: cannot find symbol this.addAttributeModifier(Attributes.ATTACK_DAMAGE, attackRangeModifier, EquipmentSlot.MAINHAND); ^ symbol: method addAttributeModifier(Attribute,AttributeModifier,EquipmentSlot)

The code

 

package net.mod.mod.item;

import net.minecraft.world.item.Tier;
import net.minecraft.world.item.SwordItem;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.Item.Properties;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.entity.ai.attributes.AttributeModifier;
import net.minecraft.world.entity.ai.attributes.AttributeModifier.Operation;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.entity.EquipmentSlot;

import java.util.UUID;

public class Test1Item extends SwordItem {
    private static final UUID ATTACK_RANGE_MODIFIER_ID = UUID.fromString("6069a356-4c32-418c-afe1-c15d5c37c01a");

    public Test1Item() {
        super(new Tier() {
            public int getUses() {
                return 100;
            }

            public float getSpeed() {
                return 0f;
            }

            public float getAttackDamageBonus() {
                return -2f;
            }

            public int getLevel() {
                return 0;
            }

            public int getEnchantmentValue() {
                return 2;
            }

            public Ingredient getRepairIngredient() {
                return Ingredient.of();
            }
        }, 3, -3f, new Properties());

        // Ajout du modificateur d'attribut pour augmenter la portée d'attaque
        AttributeModifier attackRangeModifier = new AttributeModifier(
            ATTACK_RANGE_MODIFIER_ID,
            "Attack Range Modifier",
            8.0, // Ajustez cette valeur pour changer la portée d'attaque
            Operation.ADDITION
        );

        this.addAttributeModifier(Attributes.ATTACK_DAMAGE, attackRangeModifier, EquipmentSlot.MAINHAND);
    }
}

 

If you are posting compiler errors you are in the wrong forum.

You want a learning java forum.

 

addAttributeModifier() is method on the ItemStack class, not the Item class

 

Forge already has an attack "reach" attribute supplied by its internal mod.

https://github.com/MinecraftForge/MinecraftForge/blob/ab70bde1d648125acee073a93a25d4b8f08985c9/src/main/java/net/minecraftforge/common/ForgeMod.java#L169

 

e.g. here it is used by the twilight forest mod for its "Giant sword"

https://github.com/TeamTwilight/twilightforest/blob/409423ce243f8900c12549af9c061f9fd298e9c5/src/main/java/twilightforest/item/GiantSwordItem.java#L25

found using a search on github:

https://github.com/search?q=ENTITY_REACH+language%3AJava&type=code&l=Java

Edited by warjort

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.

  • Author

Thank you for your help on which forum should I post then?
Do you know how to increase the recoil inflicted on the opponent

This is a support forum for mod developers.

i.e. we help fix problems on mods you have already developed and can't figure out what is wrong with it yourself.

 

It is not a human search engine for those who are too lazy to do their own research.

It is also not a minecraft modding or java teaching forum.

 

That being said, maybe this is what you are looking for?

net.minecraft.world.entity.ai.attributes.Attributes.ATTACK_KNOCKBACK

 

Edited by warjort

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.

  • Author

Ok thank you I have to go where to ask for help to create what I want?

I don't know. Maybe reddit or similar?

I don't think you will find many people that are willing to spend their time writing your mod for you.

Those people with the skills are too busy with their own mods.

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.

  • Author

THANK YOU Really thanks to you I managed to do what I want

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

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.