Skip to content

Mining Hotfixes + Balance Pass #8569

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
fb4dba0
Update deep_drill.dm
Jan 21, 2025
1382752
Update deep_drill.dm
Jan 21, 2025
a30e47d
kill waves now that the drill is debloated
Jan 21, 2025
ee39afb
purge more references to the drill and controller
Jan 21, 2025
4375936
FIX ANSIBLE GOLEMS
Jan 22, 2025
47c9f91
uranium golems also heal burn damage
Jan 22, 2025
a3c1b0c
adjust drill turf checks
Jan 22, 2025
f22cf40
replace floor turfs under the drill with asteroid, instead of just da…
Jan 22, 2025
189a414
adjust the drill's checks
Jan 22, 2025
cf3f6ad
fix uranium regen
Jan 22, 2025
baa5bf4
weighted golem spawning
Feb 5, 2025
5c0adf2
finish reworking spawns
Feb 6, 2025
92ab120
golem adjustments + remove debug prints
Feb 7, 2025
77dbfba
Merge remote-tracking branch 'upstream/master' into golem-enhancements
Feb 7, 2025
ccb72bc
finally get platinum charges working. mostly.
Feb 8, 2025
8e31aa2
get gold working
Feb 10, 2025
d7d9536
grab functionality
Feb 10, 2025
45d0ecb
slight adjustments
Feb 10, 2025
49406ba
adjust golem AI
Feb 11, 2025
5c93bb0
Merge remote-tracking branch 'upstream/master' into golem-enhancements
Feb 11, 2025
5b8447d
Update golem.dm
Feb 11, 2025
d35467c
tweaks + re-add uranium healing
Feb 11, 2025
7f86edd
typo
Feb 11, 2025
f4e3b2f
adjust how retreating golems update pathfinding
Feb 11, 2025
7c0e076
activate allies' AI when sharing targets
Feb 11, 2025
d4ba604
Update golem.dm
Feb 11, 2025
a5f7498
remove a debug print
Feb 11, 2025
8249ed9
reduce silver bolt pain, increase burn
Feb 12, 2025
545f645
tweak some stuff
Feb 12, 2025
bb817c8
slightly increase platinum's stats
Feb 12, 2025
b00e9bc
suggested change
Feb 14, 2025
4fc7aca
Merge remote-tracking branch 'upstream/master' into golem-enhancements
Mar 9, 2025
cc5445e
completely rewrite golem spawns
Mar 9, 2025
a24a7d8
rewrite ore drops + add difficulty scaling
Mar 10, 2025
ef09106
qol changes
Mar 10, 2025
678b658
commit spaghetti
Mar 10, 2025
b4b4ac9
karl can no longer be toggled by ghosts, and fixes for charge from us…
Mar 13, 2025
5c3c827
move miner spawns to the mining dock
Mar 13, 2025
179c631
a bundle of changes
Mar 13, 2025
2fd1943
kill a stray apostrophe
Mar 13, 2025
59ed865
Apply suggestions from code review
VmpOS2NHSkhkejA9 Mar 14, 2025
90a22ff
Update code/modules/mob/living/carbon/superior_animal/golem/types/pla…
VmpOS2NHSkhkejA9 Mar 14, 2025
b7f2b52
swap ceil() and floor() for CEIL() and FLOOR()
Mar 14, 2025
7cf82e3
requested changes
Mar 14, 2025
4652440
oh so THAT'S why they're failing
Mar 14, 2025
33ccdf7
Update code/modules/mob/living/carbon/superior_animal/golem/types/pla…
VmpOS2NHSkhkejA9 Mar 14, 2025
8a38ef2
Update code/modules/mob/living/carbon/superior_animal/golem/types/pla…
VmpOS2NHSkhkejA9 Mar 14, 2025
e16d00e
optimizations + fixes for plasma golems
Mar 14, 2025
76e7dd4
swap over to `getMobsInRangeChunked()`
Mar 15, 2025
bfb2c21
Update cave_generator.dm
Mar 16, 2025
4b6f9bd
Update code/modules/mob/living/carbon/superior_animal/superior_animal.dm
VmpOS2NHSkhkejA9 Mar 16, 2025
d1a6a8d
Update code/modules/mob/living/carbon/resist.dm
VmpOS2NHSkhkejA9 Mar 16, 2025
356ea77
remove the 1s
Mar 16, 2025
a626ef5
Merge branch 'golem-enhancements' of https://github.com/VmpOS2NHSkhke…
Mar 16, 2025
a8f517f
Update golem.dm
Mar 16, 2025
cb46bbe
balance pass
Mar 21, 2025
576d28f
Merge remote-tracking branch 'upstream/master' into golem-enhancements
Mar 22, 2025
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
26 changes: 13 additions & 13 deletions code/modules/mining/drilling/difficulties.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,16 @@
/datum/cave_difficulty_level/proc/get_golem_spawns()
var/list/golems_to_spawn = list() //list of golem types to spawn
if(golem_count_melee)
for(var/c in 0 to golem_count_melee)
for(var/c = 1 to golem_count_melee)
golems_to_spawn += pickweight(golem_weights_melee)

if(golem_count_ranged)
for(var/c in 0 to golem_count_ranged)
for(var/c = 1 to golem_count_ranged)
golems_to_spawn += pickweight(golem_weights_ranged)

if(golem_count_mixed)
var/list/golem_weights_mixed = golem_weights_melee + golem_weights_ranged
for(var/c in 0 to golem_count_mixed)
for(var/c = 1 to golem_count_mixed)
golems_to_spawn += pickweight(golem_weights_mixed)

return golems_to_spawn
Expand Down Expand Up @@ -71,12 +71,12 @@

golem_count_melee = 1
golem_count_ranged = 1
golem_count_mixed = 3
golem_count_mixed = 2

golem_weights_melee = list(
/mob/living/carbon/superior_animal/golem/iron = 4,
/mob/living/carbon/superior_animal/golem/iron = 5,
/mob/living/carbon/superior_animal/golem/coal = 2,
/mob/living/carbon/superior_animal/golem/platinum = 3)
/mob/living/carbon/superior_animal/golem/platinum = 2)

golem_weights_ranged = list(
/mob/living/carbon/superior_animal/golem/silver = 3,
Expand All @@ -92,11 +92,11 @@

golem_count_melee = 1
golem_count_ranged = 1
golem_count_mixed = 3
golem_count_mixed = 2

golem_weights_melee = list(
/mob/living/carbon/superior_animal/golem/iron = 4,
/mob/living/carbon/superior_animal/golem/coal/enhanced = 2,
/mob/living/carbon/superior_animal/golem/iron = 8,
/mob/living/carbon/superior_animal/golem/coal/enhanced = 4,
/mob/living/carbon/superior_animal/golem/platinum = 3,
/mob/living/carbon/superior_animal/golem/plasma = 2)

Expand All @@ -117,8 +117,8 @@
golem_count_mixed = 1

golem_weights_melee = list(
/mob/living/carbon/superior_animal/golem/iron = 3,
/mob/living/carbon/superior_animal/golem/coal/enhanced = 2,
/mob/living/carbon/superior_animal/golem/iron = 6,
/mob/living/carbon/superior_animal/golem/coal/enhanced = 4,
/mob/living/carbon/superior_animal/golem/platinum = 3,
/mob/living/carbon/superior_animal/golem/plasma = 2)
golem_weights_ranged = list(
Expand All @@ -139,8 +139,8 @@
golem_count_mixed = 1

golem_weights_melee = list(
/mob/living/carbon/superior_animal/golem/iron = 3,
/mob/living/carbon/superior_animal/golem/coal/enhanced = 2,
/mob/living/carbon/superior_animal/golem/iron = 8,
/mob/living/carbon/superior_animal/golem/coal/enhanced = 6,
/mob/living/carbon/superior_animal/golem/platinum = 3,
/mob/living/carbon/superior_animal/golem/plasma = 2,
/mob/living/carbon/superior_animal/golem/diamond = 2)
Expand Down
1 change: 1 addition & 0 deletions code/modules/mining/satchel_ore_boxdm.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
density = TRUE
rarity_value = 10
spawn_tags = SPAWN_TAG_STRUCTURE_COMMON
climbable = TRUE
var/last_update = 0
var/list/stored_ore = list()

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#define GOLD_SPIKE_COOLDOWN 50 // 5 seconds
#define GOLD_SPIKE_WINDUP 20
#define GOLD_SPIKE_DAMAGE 40 //equivalent to GOLEM_DMG_HIGH
#define GOLD_SPIKE_COOLDOWN 5 SECONDS
#define GOLD_SPIKE_WINDUP 2 SECONDS
#define GOLD_SPIKE_DAMAGE 25

/mob/living/carbon/superior_animal/golem/gold
name = "gold golem"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#define PLATINUM_CHARGE_DAMAGE_OBSTACLES 50
#define PLATINUM_CHARGE_DAMAGE_TARGET 50
#define PLATINUM_CHARGE_DAMAGE_OBSTACLES 25
#define PLATINUM_CHARGE_DAMAGE_TARGET 35
#define PLATINUM_CHARGE_CD 30 SECONDS
#define PLATINUM_CHARGE_WINDUP 1.5 SECONDS
#define PLATINUM_CHARGE_RANGE 5
Expand Down Expand Up @@ -70,15 +70,16 @@
charge_effect.icon = icon
charge_effect.icon_state = icon_state // copy over the icon and direction
charge_effect.dir = dir
charge_effect.alpha = 250 - (vfxfalloff * vfxindex) // todo: linear interpolation math so that this looks consistent at all distances
charge_effect.alpha = 250 - (vfxfalloff * vfxindex)
animate(charge_effect, time = 25 - ((vfxfalloff * vfxindex) / 10), alpha = 0)

for(var/mob/living/victim in targetturf.contents)
if(victim != src)
victim.adjustBruteLoss(PLATINUM_CHARGE_DAMAGE_OBSTACLES)
victim.attack_generic(src, PLATINUM_CHARGE_DAMAGE_OBSTACLES, pick(charge_hit_verbs), FALSE, FALSE, FALSE, 1)
else
for(var/atom/victim in targetturf.contents)
victim.explosion_act(PLATINUM_CHARGE_DAMAGE_OBSTACLES * 4) //TEAR THROUGH ALL THAT IMPEDES YOU
if(victim.density)
victim.attack_generic(src, PLATINUM_CHARGE_DAMAGE_OBSTACLES, pick(charge_hit_verbs), FALSE, FALSE, FALSE, 1)
break // if the turf is blocked (ie a wall/door/window), stop charging here

visible_message(SPAN_DANGER("<b>[src]</b> [pick(charge_verbs)] at [target_mob]!"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
health = GOLEM_HEALTH_LOW

// Movement related variables
move_to_delay = GOLEM_SPEED_HIGH
move_to_delay = GOLEM_SPEED_MED
turns_per_move = 5

// Damage related variables
Expand Down Expand Up @@ -44,7 +44,7 @@
/obj/item/projectile/plasma/stun/golem //special projectile that passes straight through golems
name = "stun plasma bolt"
taser_effect = 1
damage_types = list(HALLOSS = 20, BURN = 10)
damage_types = list(HALLOSS = 15, BURN = 5)
impact_type = /obj/effect/projectile/stun/impact

/obj/item/projectile/plasma/stun/golem/Bump(atom/A as mob|obj|turf|area, forced = FALSE)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
armor = list(
melee = 0,
bullet = GOLEM_ARMOR_MED,
energy = GOLEM_ARMOR_ULTRA,
energy = GOLEM_ARMOR_HIGH,
bomb = 0,
bio = 0,
rad = 0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -396,6 +396,7 @@
stance = HOSTILE_STANCE_ATTACK
else
return TRUE

/mob/living/carbon/superior_animal/death()
breakgrab()
. = ..()
Expand Down
Loading