• ALERT

    We are currently undergoing a minor database conversion which may have caused the email management system and registration and other minor issues, our team is working on getting our new database system up and running as soon as possible, thank you for your understanding!

    If you have any other questions, feel free to open a ticket on our discord server https://dc.gleaks.pro/

[1.13-1.20] Races of Thana・Custom GUI, Attributes, Day & Night Effects and more!

VIP Plugins [1.13-1.20] Races of Thana・Custom GUI, Attributes, Day & Night Effects and more! 3.1.24

Register to download this resource

Original resource URL: https://www.spigotmc.org/resources/1-13-1-19-races-of-thana%E3%83%BBcustom-gui-attributes-day-night-effects-and-more.59110/



Native Minecraft Version:1.13Tested Minecraft Versions:
  • 1.13
  • 1.14
  • 1.15
  • 1.16
  • 1.17
  • 1.18
  • 1.19
Languages Supported:plugin comes with a configuration & language fileDonation Link:https://ko-fi.com/thana
[IMG]


Add a MMORPG feel to your server by adding races to your server with endless customization!

[IMG]


Races of Thana was created to bring a more realistic RPG-feel to Minecraft in the form of truly custom races as opposed to just the addition of potion effects as a permanent passive, and a set of permissions.

Some of the core features include but are not limited to:
  • Custom Races
    • Truly custom races. Give every race their own set of attributes (& custom attributes!), passive effects, day & night effects, permissions, sounds, and much more!
    • By being able to trigger things on time (day / night events), it has never before become easier to change the skin of people from a certain race.
  • Your own Race Selection GUI
    • By being in full control of what the Race Selection GUI looks like, you can make it fit to your server's style.
    • You can limit who's able to see certain races, effectively limiting the races they can choose from. Great for progression-based servers, but also as a perk!
    • You can even set up an NPC which will take in a token and allow you to change your race.
  • Extremely easy to use & understand
    • With a single drag & drop, you'd already be good to go. To customize your races, simply modify the configuration file(s) as you'd like, and type /races reload. That's it, literally.
    • Extensive explanations are down below. It has all the information you need.
    • In need of support? I'd love to help you out via the Discord server or discussion thread.
Hard Dependencies: Vault
Soft Dependencies: Citizens* (Race Tokens / Race-Changer NPC), PlaceholderAPI (Placeholders), LuckPerms, LoreAttributesRecoded (v5.0.2)
*Without Citizens, you'll be unable to create a race-changer NPC. May you still want to use the race token without Citizens will you have to implement that manually.

[IMG]


MythicMobs support: Able to check race within MM's configuration by using a custom condition
Exclusive Armor-specific Addon: Will address item restrictions / limitations per race.
Race experience: Upgrade-able races, gain experience by doing various things per race.

[IMG]


<> = mandatory arguments || [] = optional arguments
upload_2021-10-20_16-48-50.png

Aliases: [traces, thanar, thanaraces, racesofthana, rot, races, race]

[IMG]


May there be lack of clarity in 1 of the configuration files, please let me know here!
Click here to view the default configuration file (config.yml).
The files for the default races are created when starting up the plugin for the first time.

Language Config (lang.yml):
Code (YAML):
prefix: "&9Races of Thana&c:"
refund-token: "&cYou were given back your token!"
give-wrong-item: "&cThat is not a race-token!"
teleport-race-spawn: "&cYou have been teleported!"
PvP Config (pvpconfig.yml):
Code (YAML):
pvp-module-enabled: true

races:
elf:
enabled: true
allies: human
human:
enabled: true
allies: elf
dummy:
enabled: true
allies: elf,human
[IMG]


Code (YAML):
permissions:
racesofthana.gui:
default: op
racesofthana.gui.others:
default: op
racesofthana.racechat:
default: true
racesofthana.reload:
default: op
racesofthana.setrace:
default: op
racesofthana.unsetrace:
default: op
racesofthana.setspawn:
default: op
racesofthana.spawn:
default: true
racesofthana.spawn.override:
default: op
racesofthana.token:
default: op
racesofthana.token.use:
default: op
racesofthana.inspect:
default: true
racesofthana.inspect.others:
default: op
racesofthana.count:
default: true
racesofthana.preview:
default: true
racesofthana.about:
default: true
The permission-node per race is racesofthana.race.<racename>
For example, a kitsune would need: racesofthana.race.kitsune

While this value is set to true, players will not see the races they don't have permissions to within the GUI.
(Operators and users with * permissions will see it at all times)

Did everything work the way you wanted? Do you perhaps have a problem with the config, or do you need help with making a race?
Join my Discord Community to get help and get all the latest information about the Races of Thana!

[IMG]


Placeholders (PlaceholderAPI Support):
Player's race: %racesofthana_player_race%
Displayname of the player's race: %racesofthana_player_race_displayname%
Total count of a certain race: %racesofthana_totalcount_racename%
Online count of a certain race: %racesofthana_onlinecount_racename%
(replace racename with the name of an existing race)

Config command placeholders:
- %player_name%
- %player_displayname%
- %player_race%
- %player_race_displayname%
- %totalcount_racename%
- %onlinecount_racename%
(replace racename with the name of an existing race)

Race GUI Menu
Supports NBT Data, Custom Flags, and Durability Values for those of you wishing to make custom Resource packs for your Race GUI Menus.

Per-race Permissions
Permission Handler that is compatible with LuckPerms, supporting negated permission nodes.
You have the possibility to restrict players from selecting (and seeing) certain races within the race-selection GUI (Toggleable).

Code (YAML):
permissions:
- race.permission # the player will have this permission node
- -negated.permission # the player will have this negated permission node if your permission plugin supports that


Passive, Day & Night Effects
Races can have specific potion effects during the day, night, or at all times. You can give your custom race Night Vision ONLY during the night, and Strength ONLY during the day if you'd like. This removes the pesky problem of having Night Vision during the day. This'll give you even more flexibility to the race you'd like to make! (Toggleable).
All available potion effects can be found here.
Code (YAML):
potions:
enabled: true # whether or not to active this module
potion-bubbles: false # whether or not to show the potion bubbles around the player for these potion effects
potioneffects: # these are always active
- DAMAGE_RESISTANCE:0
day-effects: # these are only active during the day
- MOVEMENT_SPEED:0
night-effects: # these are active during the night
- DAMAGE_RESISTANCE:1
- NIGHT_VISION:0
Language File
Able to change the messages as you wish, very self-explanatory.
Code (YAML):
prefix: '&9Races of Thana&c:'
refund-token: '&cYou were given back your token!'
give-wrong-item: '&cThat is not a race-token!'
teleport-race-spawn: '&cYou have been teleported!'
Attributes
You can give each race their own set of attributes. All attributes can be found here.
Adding an attribute is as simple as adding it to a list along with a value:
Code (YAML):
attributes:
- GENERIC_MAX_HEALTH: 18
- GENERIC_ATTACK_SPEED: 8
Races of Thana also offers unique and custom attributes! These go beyond vanilla's limitations and can be used in the same way as vanilla attributes.

Current available custom attributes:
- SOFT_LANDING
Percentage-based feather falling without needing an enchantment. If you set it to 50, 50% of the fall damage will be negated. Set it to 100 and 100% of the fall damage will be negated. Make it a negative value to increase the damage instead.
Example usage for negating 80% of fall damage:
Code (YAML):
attributes:
- SOFT_LANDING: 80
- VAMPIRE
Ignite (damage) when being outside in the sunlight. The value is the amount of damage per second.
Example usage:
Code (YAML):
attributes:
- VAMPIRE: 2
- NYCTO
Nyctophobia is an extreme fear of night or darkness. This attribute is the opposite of vampire: When the player's area has a light level lower than 4, it'll deal damage to the player. The value is the amount of damage per second.
Example usage:
Code (YAML):
attributes:
- NYCTO: 2
Force Race
If you'd like your players to select a race upon joining, you can make that happen by simply setting force-race-on-join to true in the config.yml.
If you don't, that's fine too. Set it to false, I won't judge you.
Code (YAML):
force-race-on-join: true
Hurt Sounds*
Custom race sounds! Are you a catlike creature and meow when being hit? Set it to ENTITY_CAT_HURT. Want your Werewolf to sound like a Wolf instead? Use ENTITY_WOLF_HURT instead!
The hurting sound can be changed per race to give you the feeling of actually being that race as specified in the config according to the sound you chose.
Default value is set to the default player hurt sound.
A list of all compatible Entity Sounds can be found here.
Code (YAML):
death-sound: ENTITY_CAT_DEATH
Death Sounds*
Depending on which race you are, you can have your own death-sound as well! Catlike creatures could play the ocelot's death sound, while others have the death sound of a dragon. Cool, right?
Default value is set to the default player death sound.
A list of all compatible Entity Sounds can be found here.
Code (YAML):
hurt-sound: ENTITY_CAT_HURT
* You can modify the volume of both these sounds by changing the sound-volume value (defaults to 0.5) in the config.yml.
Values not in the range of 0.0 (0%) to 1.0 (100%) will be ignored.

Commands Executed Upon Changing / Choosing your Race and Day- / Night-time
Upon race selection, you can execute self-defined commands depending on which race they've become.
You can use commands from any plugin and execute them here too. Everything from starter kits to just helpful information. (Toggleable)

For example, do you have a plugin like LibsDisguises? Or another plugin that compliments a Race you've specifically made in your config file? Use this to your advantage. A wonderful example would be changing a Werewolf Race's skin, to that of an actual Werewolf at nighttime, instead of just keeping your basic skin on all the time.
Change back into your original skin once daylight has come to give the feel that you're actually changing into a Werewolf. (Toggleable)

This is just a small example of what you COULD do with the day- and night-based commands. There are so many possibilities. From giving Bonus Effects for a specific amount of time to disabling a Race's ability to fight in the dark with a PvP plugin.

Code (YAML):
commands:
enabled: true # enable/disable this module
race-change-commands: # commands executed when the player becomes this race
- bc %player_name% became a(n) %player_race_displayname%!
race-commands-day: # commands executed when it turns day in the world this player is in
- tellraw %player_name% {"text":"The sun has risen","color":"red"}
race-commands-night: # commands executed when it turns night in the world this player is in
- tellraw %player_name% {"text":"The night has fallen","color":"red"}
Damage / Immunity
You can change the way each race interacts with water (or out of water) and lava (+ fire, optionally).
Code (YAML):
damage:
enabled: true # enable this module
water-damage: false
out-of-water-damage: false
lava-damage: true # do we want to alter the way this race interacts with lava?
affect-fire: true # do we want the race to react to fire (and fire ticks) the same way as lava
water-damage-amount: 2
out-of-water-damage-amount: 2
lava-damage-amount: -1 # Setting damage to -1 makes this race immune to it
Race Tokens
These are items that can be used to change your Race. You can have a predetermined amount of these items be required to change your race. You could have 1 Token, or you could require 5 tokens to change your race. These "tokens" are physical items which you can modify to your own likings in the config.

Tokens also support Durability & Item-Flags to further customize the look and feel of your token.

This also supports Citizens 2 with a custom race trait that allows you to specifically make an NPC take your race-token from you, to grant you a race-change without the need of a plugin to assign the NPC a command. Making the RPG-experience so much better, instead of using a command to redeem your race token if you dislike doing so.

You can do this by making an NPC and assigning it the racechanger trait. (/trait racechanger) This will take the token from the player and open the race-selection GUI for the player to change their race.

You can enable / disable the race tokens inside the config by setting race-token-enabled to either true (enable) or false (disable).

Code (YAML):
race-token:
display-name: '&6Race Token' # display name of the item
material: GLOWSTONE_DUST # item's material
durability: 11 # durability (for texture packs)
lore: # item's lore
- '&eGive this to the race npc'
- '&eto change your race!'
item-flags: # item flags
- HIDE_ATTRIBUTES
All available material types can be found here and all item flags can be found here. More about GUI customization can be found below (GUI customization & Word of Knowledge)

PvP Module
Player combat can go the way you want when it comes to races facing other races.
With the simple but powerful config stated above, you can now make allies!

We'll go through the config step by step:
Code (YAML):
pvp-module-enabled: true/false
Do you want to enable this module / feature? If disabled, it'll ignore everything else.

Code (YAML):
races:
werewolf: // The race you're modifying
enabled: false // Whether or not this particular section (per race) should be enabled or not (false by default)
allies: "example1,example2" // The race(s) it'll be unable to hit divided by a comma
If race 1 has race 2 as ally, but race 2 doesn't have race 1 as ally, race 1 won't be able to attack race 2, but race 2 will still be able to attack race 1!

GUI customization & Word of Knowledge
The GUI is a really detailed part of this plugin. It makes creating races as simple as it can possibly be, or as detailed as you possibly can imagine.

TIP: Don't want a race to show up in the GUI? Set the slot to 99!

Spoiler: Here is a general look on how GUI-specific features work

Hooks
A lot of plugins will sooner or later become exclusively compatible with Races of Thana. To hook Races of Thana with another plugin, simply add the plugin's name to the hooks list in the config.yml.
・ This section is NOT automatically added to the configuration file.
This is a full list of all compatible plugins so far. Feel free to remove any plugin-names you do not need:
Code (YAML):
hooks:
- LoreAttributesRecoded
Do you like Races of Thana? Then you should try out these other suggested plugins that would work in function with races, to make your server feel even more unique!

ConditionalEvents - Make anything happen when a certain race triggers an event!
Here's a great example to get you started, thanks a lot to @Venion.

elMakers Magic - Per-Race Magic Spells, as well as Classes unique to each Race.

RPGInventory - Races, Classes and levels are not enough for you? Custom Inventory System as well!

JobsReborn - So much you can do with this, you should really check it out for yourself.

Heroes - Has permission-based skills. Give your Races the ability to change to specific classes, while restricting others. Gain more, or less EXP based on what Race you are, based on what monster you are killing. Unique leveling system and more!

QuestCreator- Require the player to have a certain race. Amazing for race-based quests.

My other projects that compliment RacesOfThana:

LoreAttributesRecoded

Another one of my plugins, and best of all it's free! Make your own custom armor, weapons, and items all based on lore! It compliments Races of Thana exponentially!

Uploader


Downloads
1
Views
127
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from ArteffKods

Latest updates

  1. Update v3.1.24

    - Added race death commands & race respawn commands. For example: commands...
  2. Update v3.1.23

    - Added hex color support within the configuration files. For example: Code (YAML): prefix...

Similar resources

1.13 - 1.19.4 ⭕ MiniaturePets - Custom Companions ⭕ Your Own Custom 3D Pets ✅ 30% SALE ArteffKods
Create Your Personal 3D Pet Companion⭐ 10+ Pets ⭐ Unique Animations ⭐ Ride and Disguise
0.00 star(s) 0 ratings
Updated
1.13 - 1.20.4 ⭕ AdvancedEnchantments ⭐ 450+ Custom Enchants ⭐Create Custom Enchantments ✅ ArteffKods
Create Custom Enchants ⭐ Villager Trading⭐ Enchant Table Integrated ⭐ Supports 1.13 - 1.20.4
0.00 star(s) 0 ratings
Updated
1.8-1.19 ✅ AdvancedSpawners ✅ 11x CUSTOM MOBS ⭕ CREATE CUSTOM MOBS IN-GAME ⚡ 25% SALE ⚡ ArteffKods
0.00 star(s) 0 ratings
Updated
AdvancedMobArena - Create custom dungeons & Slay mobs with fun! ArteffKods
The most powerful mob arena! With rewards, progression and custom mobs! [1.17 - 1.20]
0.00 star(s) 0 ratings
Updated
AFK Rewards⚡Custom Reward Items ✅ 1.16+⚙️ Modular ⭕ Custom BossBar + Messages ⭐ ArteffKods
0.00 star(s) 0 ratings
Updated
BeastToken - Custom currency ArteffKods
MultiShop, MySql , MobCoins, Supports: TokenEnchantand & MythicMobs
0.00 star(s) 0 ratings
Updated
Boss - Unbelievable Custom Monsters ArteffKods
Easily add new mobs & AI to Minecraft (without datapacks or scripts).
0.00 star(s) 0 ratings
Updated
Back
Top Bottom