• Hello Guest! Did you know that ProjectKorra has an official Discord server? A lot of discussion about the official server, development process, and community discussion happens over there. Feel free to join now by clicking the link below.

    Join the Discord Server

Suggestion A Customizable Item System

Coolade

Staff member
Plugin Developer
Verified Member
As many of us are waiting with excitement and anticipation of the upcoming ProjectKorra RPG plugin, I have a few concerns about the limitations from the previously proposed ideas. A common theme with the proposals relate to the creation of new Bending items, similar to the grappling hook, that benders would be able to use in-game. Although it would be completely possible for the developing team to go through and pick and choose which items they feel would be great additions to the plugin, I worry that the item aspect of the RPG plugin will be too linear and allow low variety between servers. Finally, I'm proposing a system that would grant server owners the ability to create their own items that modify current abilities and grant new effects, using a simple file-based structure.

Using this proposed PKRPG item file, the owner could create a new item and specify the item's: Name, Lore, Recipe, Display ID, and most importantly Attributes and Uses.

Name:
A user can specify the name of the item that the they are creating, and also provide text color by appending the text with color codes such as <green>, <blue>, <black>, etc.

Lore:
The server owner can easily add lore to their items, providing detailed descriptions regarding the usage, benefits, and drawbacks of using each item. Similarly, color codes can be utilized in lore specifications, and lore lines can be separated by using <n>.

Recipe:
The recipe could be easily stated by just providing a line of 9 comma separated values representing the top left, working it's way down to the bottom right. For example, a recipe for Stone Boots would be "0,0,0,1,0,1,1,0,1" where 0 is Air and 1 is Stone. Furthermore, a recipe for an AirGlider that consists of feathers and sticks could be something like "288,288,288,0,280,0,0,280,0", where 288 are feathers and 280 are sticks. Perhaps somewhere down the line it would be possible to include data values by appending it with a dash, such as "5-2"

DisplayID:
The display ID is just the minecraft ID of the item that you are trying to represent. For example, if you were creating an AirGlider and you wanted it to look like a stick the ID would be 280.

Attributes:
Attributes are a means of specifying the bending modifications caused by wielding or wearing a specific custom item. As a basis, the simpler attributes would be able to directly modify a variable in the Core plugin. By just glancing at the PK Core source I see numerous possibilities. Using OctopusForm as an example, I see 4 modifiable variables: Attack Range, Attack Damage, Radius, and the Forming Speed. To keep variable adjustments easy and clean, the user would just specify a positive or negative percentage that increases or decreases according to the standard value for the variable.

If my idea was to be implemented, as far as attributes are concerned, attributes that change the variables of currently existing abilities would probably be first on the TODO list. Eventually more advanced attributes can be created to allow for more unique opportunities. A possible attribute could be something like "AirGlide:True" and "AirGlideSpeed:0.5", allowing the user to hold shift while falling to minimize the falling velocity to a set speed. Since AirGliding is not inherently provided by Core, this attribute would be considered advanced.

Uses:
The user can specify the quantity that the item can be used before it gets destroyed.

I have provided some examples below to fully illustrate my idea.

Item - Just an identification name.
Name - The name that will be displayed to the user.
Lore - The lore that will appear on the item, notice lines can be split with <n>
Recipe - The item ID's used to create the recipe, starting from top left ending at the bottom right.
ItemID - The ID of the item, for example 301 would be leather boots.
Attributes - The attributes are used to modify specific variables of abilities.
Uses - The amount of times that the attributes an be used before the item breaks, -1 means unlimited uses.

Code:
Item:EarthNationBoots
    Name:<green>Earth Boots
    Lore:<green>EarthBlast<gray> - 10% damage increase<n><green>Catapult<gray> - 20% height increase.
    Recipe:0,0,0,1,0,1,1,0,1
    ItemID:301
    Attributes:
        EarthBlastDamage:10.0
        CatapultHeight:20.0
    Uses:-1

Item:Glider
    Name:<gray>Air Glider
    Lore:<gray>Gliding<white> - Allows the user to glide by holding shift<n><gray>AirSwipe<white> - 10% damage increase<n><gray>AirBlast<white> - 20% Increase to Knockback.
    Recipe:288,288,288,0,280,0,0,280,0
    ItemID:280
    Attributes:
        AirGlide:True
        AirGlideSpeed:0.5
        AirSwipeDamage:10.0
        AirBlastForce:20.0
    Uses:100
  
Item:WaterGrips
    Name:<aqua>Water Grips
    Lore:<gray>An item that greatly enhances OctopusForm. <n><aqua>OctopusForm<gray> - 30% Increase to formation speed<n><aqua>OctopusForm<gray> - -50% Decrease to KnockBack<n><aqua>OctopusForm<gray> - 10% Increase to punch range.
    Recipe:0,264,0,264,373,264,0,264,0
    ItemID:373
    Attributes:
        OctopusFormFormationSpeed:30.0
        OctopusFormKnockback:-50.0
        OctopusFormRange:10.0
    Uses:-1
  
Item:OasisWater
    Name:<darkblue>Oasis Water
    Lore:<gray>After pressing shift healing waters becomes more effective for 6 seconds. <n><darkblue>HealingWaters<gray> - 20% Healing Speed<n><darkblue>HealingWaters<gray> - 30% range for healing others.
    Recipe:0,264,0,264,373,264,0,264,0
    ItemID:373
    Attributes:
        HealingWatersSpeed:20.0
        HealingWatersRange:30.0
        Time:6.0
    Uses:15
 
Last edited:

TheOneAndOnlyApple

Verified Member
Amazing work as always!
I love the concept in the items and the process and variety of choices available to make them. I always appreciate how you are very descriptive and provide examples for the owners. The variety in server items, hopefully, will be very diverse and give each and every player something to strive for and enjoy. Love the work, and I am sure if this were to be made many servers, role play or not, would enjoy making their own customizable items and recipes!

However, would the items contain a permission line, to limit what element or what group is allowed access to them or their uses?
Edited

~Apple<3
 
Last edited:

OmniCypher

Staff member
Lead Developer
Administrator
Plugin Developer
Let me elaborate a little on my previous post. This is a beautiful idea. Not only could people make their own moves for Project Korra but also the items that go in it?! Amazing... Truly Amazing. I 100% back this idea and feel it should be developed even further. Id suggest possible potion effect and particle effect support~
 

owlcool

Verified Member
They do.
If I remember correctly, only Toph does not
Actually you remember wrong. A good portion of earth benders walk barefoot. If you want evidence look at that rumble brawl thing. Almost every earth bender to every earthbender was barefoot in it. I also read on the wiki that it is traditional or somthing to be barefoot as a earth bender. Now Bolin? He should not even count.
 

kingbirdy

Verified Member
I like this a lot. The only thing is, numerical IDs are being phased out in 1.8, so we would use string IDs instead (e.g. minecraft:stone).
 

cookiem42

Verified Member
I like this idea. It gives me the RPGItem plugins feel, which would be great for this plugin. I can see systems of roleplay if this was added.
 

ashe36

Verified Member
Actually you remember wrong. A good portion of earth benders walk barefoot. If you want evidence look at that rumble brawl thing. Almost every earth bender to every earthbender was barefoot in it. I also read on the wiki that it is traditional or somthing to be barefoot as a earth bender. Now Bolin? He should not even count.
Someone's feeling feisty.
 
Top