-
Notifications
You must be signed in to change notification settings - Fork 13
Home
Welcome to the UncomplicatedCustomRoles or UCR official wiki!
Here you'll find tutorials to configure our plugin for a perfect experience!
Note
This documentation is for the v3.5.0
of UncomplicatedCustomRoles
UncomplicatedCustomRole is really easy to install: download the .dll
file from the latest realese and put it inside the EXILED/Plugins
folder.
You should use the latest version of EXILED.
At this time (13/07/2024
) this plugin is supporting EXILED >= v8.11.0
You can put the custom role in any file inside the UncomplicatedCustomRoles
folder, it will be loaded anyway.
This is the actual code of the configuration of a custom role of UCR.
No, you won't have to understand this one.
We put the YAML
one underneath :D
public abstract int Id { get; set; }
public abstract string Name { get; set; }
public abstract string? Nickname { get; set; }
public abstract string CustomInfo { get; set; }
public abstract string BadgeName { get; set; }
public abstract string BadgeColor { get; set; }
public abstract RoleTypeId Role { get; set; }
public abstract RoleTypeId RoleAppearance { get; set; }
public abstract List<Team> IsFriendOf { get; set; }
public abstract HealthBehaviour Health { get; set; }
public abstract AhpBehaviour Ahp { get; set; }
public abstract List<Effect>? Effects { get; set; }
public abstract StaminaBehaviour Stamina { get; set; }
public abstract int MaxScp330Candies { get; set; }
public abstract bool CanEscape { get; set; }
public abstract Dictionary<string, string> RoleAfterEscape { get; set; }
public abstract Vector3 Scale { get; set; }
public abstract string SpawnBroadcast { get; set; }
public abstract ushort SpawnBroadcastDuration { get; set; }
public abstract string SpawnHint { get; set; }
public abstract float SpawnHintDuration { get; set; }
public abstract Dictionary<ItemCategory, sbyte> CustomInventoryLimits { get; set; }
public abstract List<ItemType> Inventory { get; set; }
public abstract List<uint> CustomItemsInventory { get; set; }
public abstract Dictionary<AmmoType, ushort> Ammo { get; set; }
public abstract float DamageMultiplier { get; set; }
public abstract SpawnBehaviour? SpawnSettings { get; set; }
public abstract bool IgnoreSpawnSystem { get; set; }
Ok you should understand this
id: 1
name: 'Janitor'
nickname: ""
custom_info: 'Janitor'
badge_name: 'Janitor'
badge_color: 'pumpkin'
role: ClassD
role_appearance: ClassD
is_friend_of: []
health:
amount: 100
maximum: 100
hume_shield: 0
ahp:
amount: 0
limit: 75
decay: 1.20000005
efficacy: 0.699999988
sustain: 0
persistant: false
effects:
- effect_type: MovementBoost
duration: -1
intensity: 1
removable: false
stamina:
regen_multiplier: 1
usage_multiplier: 1
infinite: false
max_scp330_candies: 2
can_escape: true
role_after_escape:
default: InternalRole Spectator
cuffed by InternalTeam ChaosInsurgency: InternalRole ClassD
scale:
x: 0
y: 0
z: 0
spawn_broadcast: |-
You are a <color=orange><b>Janitor</b></color>!
Clean the Light Containment Zone!
spawn_broadcast_duration: 5
spawn_hint: 'This is an hint shown when you spawn as a Janitor!'
spawn_hint_duration: 3
custom_inventory_limits:
Medical: 2
inventory:
- Flashlight
- KeycardJanitor
custom_items_inventory: []
ammo:
Nato9: 5
damage_multiplier: 1
spawn_settings:
can_replace_roles:
- ClassD
max_players: 5
min_players: 1
spawn_chance: 60
spawn: RoomsSpawn
spawn_zones: []
spawn_rooms:
- LczToilets
spawn_point: ""
required_permission: ""
ignore_spawn_system: false
Tip
If you read [enum]
and is not in this docs you probably should go see here!
Let's analyze together every single option here:
The Id to indentify the role, the plugin will refer to the custom role with this Id so it must be unique.
The name of the custom role, it won't appear anywhere on the player as it's just a way for server owners to distinguish a custom role.
The nickname(s) that will be given to the custom role, divided by a comma (,
).
See more in the specifics at this link
Custom info, will be shown under the role name
The name that will appear on the badge, leave it empty to disable the badge function.
See more in the specifics at this link
The color of the badge, leave it empty to disable the badge function
Defines the role that this custom role will be spawned as
You will be visible as this role to others but for the game you will be the first role defined.
Set equal to the role
to disable
With this value you can decide which teams can't damage (and be damaged) by this custom role.
Read more in the specifics at this link!
The health settings contained inside a specific class.
Read more in the specifics at this link!
The ahp (artificial health) settings contained inside a specific class.
Read more in the specifics at this link!
Add effects to a role, read more here
The stamina settings contained inside a specific class.
Read more in the specifics at this link!
Choose if the role can escape or not.
Choose the role that this player should get after escaped.
->
Set it to {}
if you want the game to choose, otherwise see this page for more examples.
Set the player scale. y is the height - [Note]
This broadcast will be showed to the player when spawn as this custom role
Defines for how long the broadcast will be shown
This hint will be showed to the player when spawn as this custom role
Defines for how long the hint will be shown
Change the inventory limits for this custom role for each ItemCategory
.
Important
You can only REDUCE inventory limits and not increase them!
A list of all of the items that will be given to the player when spawn as this custom class
A list of all CustomItems IDs that will be given to the player when spawn as this custom class
A list of all ammos that will be given to the player when spawn as this custom class
This value will be multiplied to the damage when this role hurts something.
If it's 1
then nothing will change.
If for example the damage_miltiplier
is 2
and the damage is 20
the real damage will be 40
.
The spawn options contained in a specific class.
Read more in the specifics at this link
If true
the internal spawn system of UCR won't consider this role.
In fact you can create configurations of independent custom roles in as many files as you want, as long as they are in the UncomplicatedCustomRoles
folder will be loaded.
The files will have to have this format:
id: 1
name: ...
...
Instead, if the role is put in a folder inside the UncomplicatedCustomRoles
folder then will be loaded only when the current server port will be equal to the folder name.
So, if you put a janitor.yaml
inside the UncomplicatedCustomRoles/1234
folder the role will be loaded only when the port will be 1234
.\
Note
Every single file can contain only and only one CustomRole!
Then we can help you!
Join our Discord
So open a new issue here!
@foxworn
/ @dr.agenda
on discord!
UncomplicatedCustomRoles is a free plugin developed by FoxWorn3365 and DrAgenda.
Please consider Donatig 1$ if you found this plugin helpful