File size: 3,282 Bytes
36ddefa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
{
	// Applied as multiplier on top of spell.cast.movement_speed. Default value of 1.0 means no change.
	"movement_multiplier_speed_while_casting": 1.0,
	// Allow spells to bypass invulnerability frames. This is required in order for high attack frequency spells (such as beams) to work.
	"bypass_iframes": true,
	// Spell haste reduces the cooldown time of abilities
	"haste_affects_cooldown": true,
	// Spell costs exhausts (hunger) will be multiplied with this value. Set `0` for no exhaust.
	"spell_cost_exhaust_multiplier": 1.0,
	// Spells should cost items. Set `false` to remove rune (or other item) cost from all spells.
	"spell_cost_item_allowed": true,
	// Spells should damage items on use. Set `false` to disable.
	"spell_cost_durability_allowed": true,
	// The time in ticks of global cooldown to apply to all instant cast spells when casted.
	"spell_instant_cast_gcd": 0,
	// If set true, a Fireball doesn't collide with an ally, a healing projectile doesn't collide with an enemy
	"projectiles_pass_thru_irrelevant_targets": true,
	// Spell book creation level requirement
	"spell_book_binding_level_requirement": 3,
	// Spell book creation level cost
	"spell_book_binding_level_cost": 1,
	// Should the player be able to cast spells from the offhand spell book?
	"spell_book_offhand": false,
	// Apply `Spell Casting from Spell Book` capability to anything that subclasses Sword
	"add_spell_casting_to_swords": true,
	// Apply `Spell Casting from Spell Book` capability to any item matching this regex. (Not applied of empty)
	"add_spell_casting_regex": "",
	// Do not apply `Spell Casting from Spell Book` capability to any item matching this regex. (Not applied of empty)
	"blacklist_spell_casting_regex": "",
	/* Relations determine which cases the effect of a player casted spell can effect a target.
	   +----------------+-----------+---------------+----------+----------+--------+
	   |                | FRIENDLY  | SEMI_FRIENDLY | NEUTRAL  | HOSTILE  | MIXED  |
	   +----------------+-----------+---------------+----------+----------+--------+
	   | DIRECT DAMAGE  | 🚫        | βœ…            | βœ…       | βœ…       | βœ…    |
	   | AREA DAMAGE    | 🚫        | 🚫            | 🚫       | βœ…       | βœ…    |
	   | DIRECT HEALING | βœ…        | βœ…            | βœ…       | 🚫       | βœ…    |
	   | AREA HEALING   | βœ…        | βœ…            | 🚫       | 🚫       | βœ…    |
	   +----------------+-----------+---------------+----------+----------+--------+
	   
	   The various relation related configs are being checked in the following order:
	   - `player_relations`
	   - `player_relation_to_passives`
	   - `player_relation_to_hostiles`
	   - `player_relation_to_other`
	   (The first relation to be found for the target will be applied.)
	*/
	"player_relations": {
		"minecraft:player": "SEMI_FRIENDLY",
		"minecraft:villager": "SEMI_FRIENDLY",
		"minecraft:iron_golem": "NEUTRAL",
		"guardvillagers:guard": "SEMI_FRIENDLY"
	},
	// Relation to unspecified entities those are instance of PassiveEntity(Yarn)
	"player_relation_to_passives": "HOSTILE",
	// Relation to unspecified entities those are instance of HostileEntity(Yarn)
	"player_relation_to_hostiles": "HOSTILE",
	// Fallback relation
	"player_relation_to_other": "HOSTILE"
}