Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
Expand Up @@ -78,10 +78,10 @@ class ClientScriptDecoder(private val revision667: Boolean = false) : Definition
if (intOperands == null) {
intOperands = IntArray(instructionCount)
}
if (clientOpcode < 150 && clientOpcode != 21 && clientOpcode != 38 && clientOpcode != 39) {
intOperands!![index] = buffer.readInt()
} else {
if (clientOpcode >= (if (revision667) 150 else 100) || clientOpcode == 21 || clientOpcode == 38 || clientOpcode == 39) {
intOperands!![index] = buffer.readUnsignedByte()
} else {
intOperands!![index] = buffer.readInt()
}
}
instructions[index++] = clientOpcode
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[ugthanki_attack]
id = 49
id = 9666

[ugthanki_defend]
id = 50
id = 9667

[ugthanki_death]
id = 52
id = 9674
59 changes: 59 additions & 0 deletions data/area/kharidian_desert/kalphite_hive/kalphite.anims.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
[kalphite_attack]
id = 6223

[kalphite_guardian_attack]
id = 6226

[kalphite_defend]
id = 6227

[kalphite_death]
id = 6228

[kalphite_guardian_death]
id = 6230

[kalphite_queen_defend]
id = 6232

[kalphite_queen_attack_ranged]
id = 6240

[kalphite_queen_lightning]
id = 1172

[kalphite_queen_attack_mandibles]
id = 6241

[kalphite_queen_attack_claws]
id = 6476

[kalphite_queen_death]
id = 6242

[kalphite_queen_airborne_ranged]
id = 6234

[kalphite_queen_airborne_melee]
id = 1170

[kalphite_queen_airborne_claws]
id = 1178

[kalphite_queen_airborne_defend]
id = 6237

[kalphite_queen_airborne_death]
id = 6233

[kalphite_queen_emerging]
id = 6270

[kalphite_cocoon_break]
id = 6272

[kalphite_cocoon_return]
id = 6273

[kalphite_cocoon_idle]
id = 6274
109 changes: 109 additions & 0 deletions data/area/kharidian_desert/kalphite_hive/kalphite.combat.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
[kalphite]
attack_speed = 4
retreat_range = 15
defend_anim = "human_defend"
defend_sound = "kalphite_defend"
death_anim = "human_death"
death_sound = "kalphite_death"

[kalphite.melee]
range = 1
anim = "human_attack"
target_sound = "kalphite_attack"
target_hit = { offense = "crush", max = 80 }

[kalphite_worker]
attack_speed = 4
retreat_range = 8
defend_anim = "kalphite_defend"
defend_sound = "kalphite_defend"
death_anim = "kalphite_death"
death_sound = "kalphite_death"

[kalphite_worker.melee]
range = 1
anim = "kalphite_attack"
target_sound = "kalphite_attack"
target_hit = { offense = "crush", max = 30 }

[kalphite_guardian]
clone = "kalphite_worker"
death_anim = "kalphite_guardian_death"

[kalphite_guardian.melee]
clone = "kalphite_worker.melee"
anim = "kalphite_guardian_attack"
target_hit = { offense = "crush", max = 120 }

[kalphite_guardian.melee_poison] # Unknown chance
clone = "kalphite_guardian.melee"
impact_poison = 60

[kalphite_queen]
attack_speed = 4
retreat_range = 12
defend_anim = "kalphite_queen_defend"
defend_sound = "kalphite_queen_defend"
death_anim = "kalphite_death"
death_sound = "kalphite_queen_death"

[kalphite_queen.melee]
range = 1
anim = "kalphite_queen_attack_mandibles"
target_sound = "kalphite_mandibles"
target_hit = { offense = "stab", max = 310 }

[kalphite_queen.claws]
range = 1
anim = "kalphite_queen_attack_claws"
target_sound = "kalphite_queen_attack"
target_hit = { offense = "stab", max = 310 }

[kalphite_queen.range]
range = 10
anim = "kalphite_queen_attack_ranged"
target_sound = "kalphite_queen_spines"
projectile = "kaplhite_queen_spines"
projectile_origin_x = 2
projectile_origin_y = 2
multi_target_area = "kalphite_queen_lair"
target_hit = { offense = "range", max = 310 }

[kalphite_queen.magic]
range = 10
anim = "kalphite_queen_lightning"
gfx = "kalphite_queen_lightning_cast"
sound = { id = "kalphite_lighting", radius = 16 }
projectile = "kalphite_queen_lightning_travel"
projectile_origin_x = 2
projectile_origin_y = 2
impact_sound = { id = "kalphite_lighting_impact", radius = 10 }
impact_gfx = "kalphite_queen_lightning_impact"
target_hit = { offense = "magic", max = 310 }

[kalphite_queen_airborne]
attack_speed = 4
retreat_range = 12
defend_anim = "kalphite_queen_airborne_defend"
defend_sound = "kalphite_queen_airborne_defend"
death_anim = "kalphite_queen_airborne_death"
death_sound = "kalphite_queen_airborne_death"

[kalphite_queen_airborne.melee]
clone = "kalphite_queen.melee"
anim = "kalphite_queen_airborne_melee"
target_sound = "kalphite_queen_airborne_melee"

[kalphite_queen_airborne.claws]
clone = "kalphite_queen.claws"
anim = "kalphite_queen_airborne_claws"

[kalphite_queen_airborne.range]
clone = "kalphite_queen.range"
anim = "kalphite_queen_airborne_ranged"

[kalphite_queen_airborne.magic]
clone = "kalphite_queen.magic"
anim = "kalphite_queen_airborne_ranged"
gfx = "kalphite_queen_airborne_lightning"
target_sound = "kalphite_queen_lighting_glow"
27 changes: 27 additions & 0 deletions data/area/kharidian_desert/kalphite_hive/kalphite.gfx.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
[kalphite_queen_lightning_cast]
id = 278

[kalphite_queen_airborne_lightning]
id = 279

[kalphite_queen_lightning_travel]
id = 280
curve = 10
delay = 45
# Approx
time_offset = 10
multiplier = 8

[kalphite_queen_emerging]
id = 1055

[kalphite_queen_lightning_impact]
id = 281

[kaplhite_queen_spines]
id = 288
curve = 20
delay = 30

[kaplhite_queen_spines_red]
id = 289
47 changes: 47 additions & 0 deletions data/area/kharidian_desert/kalphite_hive/kalphite.sounds.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
[kalphite_attack]
id = 537

[kalphite_death]
id = 538

[kalphite_defend]
id = 539

[kalphite_queen_attack]
id = 563

[kalphite_lighting]
id = 557

[kalphite_lighting_impact]
id = 559

[kalphite_queen_defend]
id = 565

[kalphite_mandibles]
id = 574

[kalphite_queen_spines]
id = 555

[kalphite_crack_open]
id = 552

[kalphite_queen_death]
id = 564

[kalphite_cocoon_break]
id = 556

[kalphite_queen_airborne_death]
id = 553

[kalphite_queen_airborne_defend]
id = 554

[kalphite_queen_airborne_melee]
id = 551

[kalphite_queen_lighting_glow]
id = 558
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[kalphite_queen_multi_area]
[kalphite_queen_lair]
x = [3456, 3519]
y = [9472, 9535]
tags = ["multi_combat"]
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
spawns = [
# Hive
{ id = "potato_cactus", x = 3460, y = 9484, level = 2, delay = 65, members = true },
{ id = "potato_cactus", x = 3461, y = 9480, level = 2, delay = 65, members = true },
{ id = "potato_cactus", x = 3465, y = 9477, level = 2, delay = 65, members = true },
## Lair
{ id = "potato_cactus", x = 3480, y = 9483, delay = 65, members = true },
{ id = "potato_cactus", x = 3469, y = 9492, delay = 65, members = true },
{ id = "potato_cactus", x = 3469, y = 9498, delay = 65, members = true },
{ id = "potato_cactus", x = 3474, y = 9509, delay = 65, members = true },
{ id = "potato_cactus", x = 3487, y = 9517, delay = 65, members = true },
]
Original file line number Diff line number Diff line change
@@ -1,5 +1,32 @@
spawns = [
{ id = "weird_old_man", x = 3232, y = 3108 },
# Kalphite Lair
{ id = "kalphite_worker", x = 3508, y = 9525, level = 2, members = true },
{ id = "kalphite_worker", x = 3505, y = 9520, level = 2, members = true },
{ id = "kalphite_worker", x = 3503, y = 9527, level = 2, members = true },
{ id = "kalphite_worker", x = 3500, y = 9520, level = 2, members = true },
{ id = "kalphite_worker", x = 3499, y = 9511, level = 2, members = true },
{ id = "kalphite_worker", x = 3497, y = 9476, level = 2, members = true },
{ id = "kalphite_worker", x = 3495, y = 9501, level = 2, members = true },
{ id = "kalphite_worker", x = 3493, y = 9510, level = 2, members = true },
{ id = "kalphite_worker", x = 3488, y = 9490, level = 2, members = true },
{ id = "kalphite_worker", x = 3482, y = 9526, level = 2, members = true },
{ id = "kalphite_worker", x = 3479, y = 9478, level = 2, members = true },
{ id = "kalphite_worker", x = 3472, y = 9516, level = 2, members = true },
{ id = "kalphite_worker", x = 3465, y = 9502, level = 2, members = true },
{ id = "kalphite_soldier", x = 3494, y = 9491, level = 2, members = true },
{ id = "kalphite_soldier", x = 3477, y = 9501, level = 2, members = true },
{ id = "kalphite_soldier", x = 3469, y = 9481, level = 2, members = true },
{ id = "kalphite_soldier", x = 3467, y = 9489, level = 2, members = true },
{ id = "kalphite_soldier", x = 3466, y = 9476, level = 2, members = true },
{ id = "kalphite_soldier", x = 3465, y = 9486, level = 2, members = true },
{ id = "kalphite_soldier", x = 3463, y = 9481, level = 2, members = true },
{ id = "kalphite_guardian", x = 3511, y = 9499, level = 2, members = true },
{ id = "kalphite_guardian", x = 3505, y = 9493, level = 2, members = true },
{ id = "kalphite_guardian_2", x = 3496, y = 9502, members = true },
{ id = "kalphite_guardian_2", x = 3495, y = 9489, members = true },
# Kalphite Hive
{ id = "kalphite_guardian", x = 3545, y = 9507, members = true },
{ id = "kalphite_guardian", x = 3556, y = 9503, members = true },
{ id = "kalphite_soldier", x = 3545, y = 9495 },
{ id = "kalphite_soldier", x = 3546, y = 9503 },
{ id = "kalphite_soldier", x = 3551, y = 9497 },
Expand All @@ -13,6 +40,8 @@ spawns = [
{ id = "kalphite_larva", x = 3491, y = 9498 },
{ id = "kalphite_larva", x = 3493, y = 9492 },
{ id = "kalphite_larva", x = 3495, y = 9508 },
# Entrance
{ id = "weird_old_man", x = 3232, y = 3108 },
{ id = "goat", x = 3205, y = 3109, members = true },
{ id = "goat", x = 3206, y = 3108, members = true },
{ id = "goat", x = 3207, y = 3107, members = true },
Expand Down
Loading
Loading