Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
d037a38
Test dependency fix
GregHib Jan 24, 2026
7ed104d
Fix combat impacts
GregHib Jan 24, 2026
e3c997f
Fix, poison immunity, anti-poison not wearing out and emerald bolts (e)
GregHib Jan 24, 2026
466e9b7
Fix cave crawler anims
GregHib Jan 24, 2026
bb87a5d
Add fremennik slayer dungeon entrance
GregHib Jan 24, 2026
ae0ba68
Include poison messages in tests
GregHib Jan 24, 2026
b826bb5
Include poison messages in tests
GregHib Jan 24, 2026
624de05
Limit poison damage on death immune npcs
GregHib Jan 24, 2026
f5cfc3f
Fix poison ammo
GregHib Jan 24, 2026
ddb0d03
Add rockslugs
GregHib Jan 24, 2026
0752f52
Add rockslugs
GregHib Jan 24, 2026
6739be3
World test fix
GregHib Jan 24, 2026
f6b94d7
Rename dragonfire accuracy roll to success
GregHib Jan 24, 2026
b940be8
Fix combat distance check for large npcs
GregHib Jan 24, 2026
0023095
Add accuracy_roll to combat definition hits
GregHib Jan 24, 2026
f841b71
Add cockatrice
GregHib Jan 24, 2026
0b2133c
Fix unequipping items on equipment bonuses interface
GregHib Jan 24, 2026
8bb465c
Fix emerald bolt (e) special
GregHib Jan 24, 2026
aaaf3d0
Add pyrefiends
GregHib Jan 24, 2026
13657c7
Add basilisks
GregHib Jan 24, 2026
652f28d
Add jelly and turoth
GregHib Jan 24, 2026
19c5488
Add kurask
GregHib Jan 24, 2026
1b55ad4
Add combat projectile support for arbitrary origin offsets
GregHib Jan 24, 2026
46b6ba5
Add aquanites
GregHib Jan 24, 2026
4412ae1
Add slayer dungeon shortcuts
GregHib Jan 24, 2026
5943acf
Add ring of slaying
GregHib Jan 24, 2026
1db7d98
Formatting
GregHib Jan 24, 2026
f267d02
Fix guthix rest
GregHib Jan 24, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[aquanite_death]
id = 12039

[aquanite_defend]
id = 12040

[aquanite_attack]
id = 12041

[aquanite_special]
id = 12042
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[aquanite]
attack_speed = 5
retreat_range = 8
death_anim = "aquanite_death"
defend_anim = "aquanite_defend"
# Unknown sounds

[aquanite.magic]
chance = 10
range = 8
anim = "aquanite_attack"
gfx = "aquanite_cast"
projectile = "aquanite_travel"
projectile_origin_y = 1
target_hit = { offense = "magic", max = 134 }
impact_gfx = "aquanite_splash"
miss_gfx = "giant_splash"
miss_sound = "spell_splash"

[aquanite.special]
chance = 1 # Unknown rate
condition = "target_protect_magic"
range = 8
anim = "aquanite_special"
gfx = "aquanite_cast_special"
projectile = { id = "aquanite_travel", delay = 55 }
projectile_origin_y = 1
target_hit = { offense = "magic", max = 250 }
impact_gfx = "aquanite_splash"
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
[aquanite_drop_table]
type = "all"
drops = [
{ id = "big_bones" },
{ table = "aquanite_secondary" },
{ table = "aquanite_tertiary" },
]

[aquanite_secondary]
roll = 512
drops = [
{ id = "water_rune", min = 30, max = 100, chance = 32 },
{ id = "air_rune", amount = 40, chance = 8 },
{ id = "nature_rune", amount = 4, chance = 8 },
{ id = "death_rune", amount = 3, chance = 8 },
{ id = "blood_rune", amount = 3, chance = 8 },
{ id = "soul_rune", min = 3, max = 6, chance = 8 },
{ id = "water_battlestaff", chance = 8 },
{ id = "air_battlestaff", chance = 2 },
{ id = "amulet_of_ranging" },
{ id = "adamant_bolts", amount = 10, chance = 32 },
{ id = "runite_bolts", amount = 5, chance = 32 },
{ id = "rune_dart", amount = 10, chance = 32 },
{ id = "poison_ivy_seed", chance = 8 },
{ id = "cactus_seed", chance = 8 },
{ id = "belladonna_seed", chance = 8 },
{ id = "avantoe_seed", chance = 8 },
{ id = "toadflax_seed", chance = 8 },
{ id = "cadantine_seed", chance = 8 },
{ id = "irit_seed", chance = 8 },
{ id = "kwuarm_seed", chance = 8 },
{ id = "ranarr_seed", chance = 2 },
{ id = "snapdragon_seed", chance = 2 },
{ id = "lantadyme_seed", chance = 2 },
{ id = "dwarf_weed_seed", chance = 2 },
{ id = "torstol_seed", chance = 2 },
{ id = "grimy_guam", chance = 8 },
{ id = "grimy_marrentill", chance = 8 },
{ id = "grimy_harralander", chance = 8 },
{ id = "grimy_ranarr", chance = 8 },
{ id = "grimy_irit", chance = 8 },
{ id = "grimy_avantoe", chance = 8 },
{ id = "grimy_kwuarm", chance = 8 },
{ id = "grimy_cadantine", chance = 8 },
{ id = "grimy_lantadyme", chance = 8 },
{ id = "grimy_dwarf_weed", chance = 8 },
{ id = "raw_lobster", min = 1, max = 3, chance = 32 },
{ id = "raw_swordfish", min = 1, max = 2, chance = 32 },
{ id = "raw_shark", chance = 32 },
{ id = "coins", amount = 500, chance = 32 },
{ id = "seaweed_noted", min = 3, max = 6, chance = 32 },
{ id = "snape_grass_noted", amount = 3, chance = 32 },
{ id = "pelvis_bone", chance = 32, variable = "rag_and_bone_man_wish_list", equals = "started", default = "unstarted" },
]

[aquanite_tertiary]
roll = 512
drops = [
{ table = "hard_clue_scroll", chance = 8 },
{ id = "clue_scroll_hard", chance = 8 },
{ id = "long_bone", chance = 2 },
{ id = "curved_bone", chance = 2 },
{ id = "starved_ancient_effigy" },
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
[aquanite_travel]
id = 2119
# Made up
height = 5
curve = 12
delay = 35
time_offset = 10
multiplier = 8

[aquanite_cast]
id = 2120

[aquanite_cast_special]
id = 2121

[aquanite_splash]
id = 2122
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[aquanite]
id = 9172
hitpoints = 1250
# Stats are unknown
def = 70
mage = 170
height = 40
combat_def = "aquanite"
categories = ["aquanites"]
slayer_level = 78
slayer_xp = 125.0
drop_table = "aquanite"
examine = "It has a light on its forehead. What a pretty light... So shiny!"
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[basilisk_attack]
id = 260

[basilisk_defend]
id = 261

[basilisk_death]
id = 264

[basilisk_special]
id = 9533
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[basilisk]
attack_speed = 4
retreat_range = 8
defend_anim = "basilisk_defend"
defend_sound = "basilisk_defend"
death_anim = "basilisk_death"
death_sound = "basilisk_death"

[basilisk.attack]
condition = "mirror_shield"
anim = "basilisk_attack"
target_sound = "basilisk_attack"
target_hit = { offense = "slash", max = 50 }

[basilisk.piercing_gaze]
condition = "no_mirror_shield"
anim = "basilisk_special"
target_sound = { id = "basilisk_attack", delay = 25 }
projectile = "basilisk_zap"
target_hit = { offense = "damage", min = 100, max = 100, accuracy_roll = false }
impact_drains = [
{ skill = "attack", multiplier = 0.6 },
{ skill = "strength", multiplier = 0.4 },
{ skill = "defence", multiplier = 0.3 },
{ skill = "ranged", multiplier = 0.6 },
{ skill = "prayer", multiplier = 0.3 },
{ skill = "magic", multiplier = 0.6 },
{ skill = "agility", multiplier = 0.3 },
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
[basilisk_drop_table]
type = "all"
drops = [
{ id = "bones" },
{ table = "basilisk_secondary" },
{ table = "basilisk_tertiary" },
]

[basilisk_secondary]
roll = 512
drops = [
{ id = "mithril_hatchet", chance = 12 },
{ id = "mithril_spear", chance = 8 },
{ id = "steel_battleaxe", chance = 12 },
{ id = "adamant_full_helm", chance = 4 },
{ id = "mithril_kiteshield", chance = 4 },
{ id = "rune_dagger", chance = 4 },
{ id = "light_mystic_hat" },
{ id = "water_rune", amount = 75, chance = 32 },
{ id = "nature_rune", amount = 15, chance = 20 },
{ id = "law_rune", amount = 3, chance = 12 },
{ id = "nature_rune", amount = 37, chance = 4 },
{ table = "herb_drop_table", chance = 140 },
{ id = "adamantite_ore", chance = 12 },
{ id = "coins", amount = 44, chance = 116 },
{ id = "coins", amount = 200, chance = 68 },
{ id = "coins", amount = 132, chance = 20 },
{ id = "coins", amount = 11, chance = 20 },
{ id = "coins", amount = 440, chance = 4 },
{ table = "gem_drop_table", chance = 20 },
]

[basilisk_tertiary]
roll = 2000
drops = [
{ table = "elite_clue_scroll", roll = 2000 },
{ id = "basilisk_bone", chance = 500, variable = "rag_and_bone_man_wish_list", equals = "started", default = "unstarted" },
{ id = "basilisk_head", variable = "rag_and_bone_man_wish_list", equals = "started", default = "unstarted" },
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[basilisk_zap]
id = 324
height = 84# 124
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[basilisk]
id = 1616
hitpoints = 750
att = 30
str = 45
def = 75
combat_def = "basilisk"
slayer_xp = 75.0
slayer_level = 40
height = 20
categories = ["basilisks"]
respawn_delay = 15
drop_table = "basilisk"
examine = "The eyes of evil."
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[basilisk_death]
id = 289

[basilisk_attack]
id = 288

[basilisk_defend]
id = 290
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[cockatrice_defend]
id = 7761

[cockatrice_death]
id = 7763

[cockatrice_attack]
id = 7762

[cockatrice_gaze]
id = 7766
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[cockatrice]
attack_speed = 6
retreat_range = 8
defend_anim = "cockatrice_defend"
defend_sound = "cockatrice_defend"
death_anim = "cockatrice_death"
death_sound = "cockatrice_death"

[cockatrice.attack]
condition = "mirror_shield"
anim = "cockatrice_attack"
target_sound = "cockatrice_attack"
target_hit = { offense = "stab", max = 50 }

[cockatrice.piercing_gaze]
condition = "no_mirror_shield"
anim = "cockatrice_gaze"
target_sound = "cockatrice_attack"
projectile = "cockatrice_zap"
target_hit = { offense = "damage", min = 90, max = 90, accuracy_roll = false }
impact_drains = [
{ skill = "attack", multiplier = 0.4 },
{ skill = "strength", multiplier = 0.4 },
{ skill = "defence", multiplier = 0.2 },
{ skill = "ranged", multiplier = 0.4 },
{ skill = "prayer", multiplier = 0.2 },
{ skill = "magic", multiplier = 0.4 },
{ skill = "agility", multiplier = 0.2 },
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
[cockatrice_drop_table]
type = "all"
drops = [
{ id = "bones" },
{ table = "cockatrice_secondary" },
{ table = "cockatrice_tertiary" },
]

[cockatrice_secondary]
roll = 512
drops = [
{ id = "iron_sword", chance = 12 },
{ id = "steel_dagger", chance = 12 },
{ id = "iron_boots", chance = 4 },
{ id = "iron_javelin", amount = 5, chance = 4 },
{ id = "steel_longsword", chance = 4 },
{ id = "light_mystic_boots" },
{ id = "nature_rune", amount = 2, chance = 24 },
{ id = "nature_rune", amount = 4, chance = 16 },
{ id = "nature_rune", amount = 6, chance = 8 },
{ id = "law_rune", amount = 2, chance = 12 },
{ id = "water_rune", amount = 2, chance = 8 },
{ id = "fire_rune", amount = 7, chance = 8 },
{ table = "herb_drop_table", chance = 40 },
{ id = "coins", amount = 15, chance = 64 },
{ id = "coins", amount = 5, chance = 48 },
{ id = "coins", amount = 28, chance = 48 },
{ id = "coins", amount = 62, chance = 16 },
{ id = "coins", amount = 42, chance = 12 },
{ id = "coins", chance = 4 },
{ id = "limpwurt_root", chance = 84 },
{ id = "nothing", amount = 0, chance = 4 },
{ table = "gem_drop_table", chance = 8 },
]

[cockatrice_tertiary]
roll = 1000
drops = [
{ table = "medium_clue_scroll", chance = 7 },
{ id = "cockatrice_head" },
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[cockatrice_zap]
id = 75
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[cockatrice]
id = 1620
hitpoints = 370
att = 22
str = 37
def = 37
height = 50
combat_def = "cockatrice"
slayer_xp = 37.0
slayer_level = 25
categories = ["cockatrice"]
respawn_delay = 15
drop_table = "cockatrice"
examine = "The winged reptile."
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[cockatrice_attack]
id = 363

[cockatrice_defend]
id = 365

[cockatrice_death]
id = 364
Original file line number Diff line number Diff line change
@@ -1,2 +1,11 @@
[cockatrice_attack]
id = 1562
[agility_shortcut_crack_enter]
id = 2594

[agility_shortcut_crack_leave]
id = 2595

[agilty_shortcut_tunnel_walk]
id = 2590

[agilty_shortcut_jump]
id = 10738
Loading
Loading