Melee Rebalancing

This commit is contained in:
Fox-McCloud
2014-12-18 10:22:02 -05:00
parent f849c4fc46
commit 53d15682ce
17 changed files with 117 additions and 90 deletions
+5 -5
View File
@@ -27,7 +27,7 @@
icon_power_button = "spell_missile"
/obj/effect/proc_holder/spell/wizard/targeted/inflict_handler/magic_missile
amt_weakened = 5
amt_weakened = 3
amt_dam_fire = 10
/obj/effect/proc_holder/spell/wizard/noclothes
@@ -119,7 +119,7 @@
smoke_spread = 1
smoke_amt = 10
smoke_amt = 1
inner_tele_radius = 0
outer_tele_radius = 6
@@ -268,7 +268,7 @@
icon_power_button = "spell_fireball"
/obj/effect/proc_holder/spell/wizard/turf/fireball/cast(var/turf/T)
explosion(T, -1, 0, 2, 0)
explosion(T, -1, 0, 2, 3, 0)
/obj/effect/proc_holder/spell/wizard/targeted/inflict_handler/fireball
@@ -277,5 +277,5 @@
/obj/effect/proc_holder/spell/wizard/targeted/explosion/fireball
ex_severe = -1
ex_heavy = 0
ex_light = 2
ex_heavy = -1
ex_light = 2
+2 -1
View File
@@ -550,7 +550,7 @@
throwforce = 5.0
sharp = 1
edge = 1
throw_speed = 1
throw_speed = 2
throw_range = 3
w_class = 4.0
flags = FPRINT | TABLEPASS | NOSHIELD
@@ -594,6 +594,7 @@
desc = "Special mechanical module made to store, sort, and apply standard machine parts."
icon_state = "RPED"
item_state = "RPED"
icon_override = 'icons/mob/in-hand/tools.dmi'
w_class = 5
can_hold = list("/obj/item/weapon/stock_parts","/obj/item/weapon/cell")
storage_slots = 50
+1 -1
View File
@@ -373,7 +373,7 @@
/obj/item/weapon/spellbook/oneuse/fireball/recoil(mob/user as mob)
..()
explosion(user.loc, -1, 0, 2, 3, 0, flame_range = 2)
explosion(user.loc, -1, 0, 2, 3, 0)
del(src)
/obj/item/weapon/spellbook/oneuse/smoke
+1 -1
View File
@@ -20,7 +20,7 @@
flag = CYBORG
department_flag = ENGSEC
total_positions = 0
spawn_positions = 2
spawn_positions = 1
supervisors = "your laws and the AI" //Nodrak
selection_color = "#ddffdd"
minimal_player_age = 21
+13 -1
View File
@@ -56,8 +56,20 @@
slime
process(loc, what)
var/mob/living/carbon/slime/S = what
var/C = S.cores
if(S.stat != DEAD)
S.loc = loc
S.visible_message("<span class='notice'>[C] crawls free of the processor!</span>")
return
for(var/i = 1, i <= C, i++)
new S.coretype(loc)
feedback_add_details("slime_core_harvested","[replacetext(S.colour," ","_")]")
..()
input = /mob/living/carbon/slime
output = /obj/item/weapon/reagent_containers/glass/beaker/slime
output = null
monkey
process(loc, what)
+14 -14
View File
@@ -6,7 +6,7 @@ RCD
*/
/obj/item/weapon/rcd
name = "rapid-construction-device (RCD)"
desc = "A device used to rapidly build walls/floor."
desc = "A device used to rapidly build and deconstruct walls and floors."
icon = 'icons/obj/items.dmi'
icon_state = "rcd"
opacity = 0
@@ -18,7 +18,7 @@ RCD
throw_speed = 3
throw_range = 5
w_class = 3.0
m_amt = 30000
m_amt = 100000
origin_tech = "engineering=4;materials=2"
var/datum/effect/effect/system/spark_spread/spark_system
var/matter = 0
@@ -29,7 +29,7 @@ RCD
New()
desc = "A RCD. It currently holds [matter]/30 matter-units."
desc = "A RCD. It currently holds [matter]/100 matter-units."
src.spark_system = new /datum/effect/effect/system/spark_spread
spark_system.set_up(5, 0, src)
spark_system.attach(src)
@@ -39,15 +39,15 @@ RCD
attackby(obj/item/weapon/W, mob/user)
..()
if(istype(W, /obj/item/weapon/rcd_ammo))
if((matter + 10) > 30)
if((matter + 20) > 100)
user << "<span class='notice'>The RCD cant hold any more matter-units.</span>"
return
user.drop_item()
del(W)
matter += 10
matter += 20
playsound(src.loc, 'sound/machines/click.ogg', 50, 1)
user << "<span class='notice'>The RCD now holds [matter]/30 matter-units.</span>"
desc = "A RCD. It currently holds [matter]/30 matter-units."
user << "<span class='notice'>The RCD now holds [matter]/100 matter-units.</span>"
desc = "A RCD. It currently holds [matter]/100 matter-units."
return
@@ -148,11 +148,11 @@ RCD
return 0
if(istype(A, /obj/machinery/door/airlock))
if(checkResource(10, user))
if(checkResource(20, user))
user << "Deconstructing Airlock..."
playsound(src.loc, 'sound/machines/click.ogg', 50, 1)
if(do_after(user, 50))
if(!useResource(10, user)) return 0
if(!useResource(20, user)) return 0
activate()
del(A)
return 1
@@ -166,7 +166,7 @@ RCD
if(matter < amount)
return 0
matter -= amount
desc = "A RCD. It currently holds [matter]/30 matter-units."
desc = "A RCD. It currently holds [matter]/100 matter-units."
return 1
/obj/item/weapon/rcd/proc/checkResource(var/amount, var/mob/user)
@@ -174,17 +174,17 @@ RCD
/obj/item/weapon/rcd/borg/useResource(var/amount, var/mob/user)
if(!isrobot(user))
return 0
return user:cell:use(amount * 30)
return user:cell:use(amount * 160)
/obj/item/weapon/rcd/borg/checkResource(var/amount, var/mob/user)
if(!isrobot(user))
return 0
return user:cell:charge >= (amount * 30)
return user:cell:charge >= (amount * 160)
/obj/item/weapon/rcd/borg/New()
..()
desc = "A device used to rapidly build walls/floor."
canRwall = 0
desc = "A device used to rapidly build and deconstruct walls and floors."
canRwall = 1
/obj/item/weapon/rcd_ammo
name = "compressed matter cartridge"
@@ -50,8 +50,8 @@
edge = 1
/obj/item/weapon/melee/energy/sword/cyborg
var/hitcost = 500
var/hitcost = 500
/obj/item/weapon/melee/energy/sword/cyborg/attack(mob/M, var/mob/living/silicon/robot/R)
if(R.cell)
var/obj/item/weapon/cell/C = R.cell
@@ -62,7 +62,7 @@
//C.use(hitcost)
..()
return
/obj/item/weapon/melee/energy/sword/pirate
name = "energy cutlass"
desc = "Arrrr matey."
@@ -72,7 +72,7 @@
name = "energy blade"
desc = "A concentrated beam of energy in the shape of a blade. Very stylish... and lethal."
icon_state = "blade"
force = 70.0//Normal attacks deal very high damage.
force = 30.0 //Normal attacks deal esword damage
sharp = 1
edge = 1
throwforce = 1//Throwing or dropping the item deletes it.
@@ -33,22 +33,24 @@
active = !active
if (active)
force = 30
throwforce = 20
if(istype(src,/obj/item/weapon/melee/energy/sword/pirate))
icon_state = "cutlass1"
else
icon_state = "sword[blade_color]"
w_class = 4
playsound(user, 'sound/weapons/saberon.ogg', 50, 1)
playsound(user, 'sound/weapons/saberon.ogg', 35, 1)
hitsound = 'sound/weapons/blade1.ogg'
user << "\blue [src] is now active."
else
force = 3
throwforce = 5.0
if(istype(src,/obj/item/weapon/melee/energy/sword/pirate))
icon_state = "cutlass0"
else
icon_state = "sword0"
w_class = 2
playsound(user, 'sound/weapons/saberoff.ogg', 50, 1)
playsound(user, 'sound/weapons/saberoff.ogg', 35, 1)
hitsound = "swing_hit"
user << "\blue [src] can now be concealed."
if(istype(user,/mob/living/carbon/human))
+12 -2
View File
@@ -443,8 +443,8 @@
*/
/obj/item/weapon/crowbar
name = "crowbar"
desc = "Used to hit floors"
name = "pocket crowbar"
desc = "A small crowbar. This handy tool is useful for lots of things, such as prying floor tiles or opening unpowered doors."
icon = 'icons/obj/items.dmi'
icon_state = "crowbar"
flags = FPRINT | TABLEPASS| CONDUCT
@@ -462,6 +462,16 @@
icon_state = "red_crowbar"
item_state = "crowbar_red"
/obj/item/weapon/crowbar/large
name = "crowbar"
desc = "It's a big crowbar. It doesn't fit in your pockets, because it's big."
force = 12
w_class = 3
throw_speed = 3
throw_range = 3
m_amt = 66
icon_state = "crowbar_large"
/obj/item/weapon/weldingtool/attack(mob/M as mob, mob/user as mob)
if(hasorgans(M))
+7 -5
View File
@@ -158,12 +158,13 @@ obj/item/weapon/twohanded/
name = "fire axe"
desc = "Truly, the weapon of a madman. Who would think to fight fire with an axe?"
force = 5
throwforce = 15
sharp = 1
edge = 1
w_class = 4.0
slot_flags = SLOT_BACK
force_unwielded = 10
force_wielded = 40
force_unwielded = 5
force_wielded = 24
attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
@@ -203,7 +204,7 @@ obj/item/weapon/twohanded/
throw_range = 5
w_class = 2.0
force_unwielded = 3
force_wielded = 30
force_wielded = 34
wieldsound = 'sound/weapons/saberon.ogg'
unwieldsound = 'sound/weapons/saberoff.ogg'
flags = FPRINT | TABLEPASS | NOSHIELD
@@ -287,8 +288,9 @@ obj/item/weapon/twohanded/
w_class = 4.0
slot_flags = SLOT_BACK
force_unwielded = 10
force_wielded = 13
throwforce = 15
force_wielded = 18 // Was 13, Buffed - RR
throwforce = 20
throw_speed = 3
flags = FPRINT | TABLEPASS | NOSHIELD
attack_verb = list("attacked", "poked", "jabbed", "torn", "gored")
@@ -139,13 +139,16 @@
playsound(loc, attack.attack_sound, 25, 1, -1)
visible_message("\red <B>[M] [pick(attack.attack_verb)]ed [src]!</B>")
//Rearranged, so claws don't increase weaken chance.
if(damage >= 5 && prob(50))
visible_message("\red <B>[M] has weakened [src]!</B>")
apply_effect(2, WEAKEN, armor_block)
damage += attack.damage
apply_damage(damage, BRUTE, affecting, armor_block, sharp=attack.sharp, edge=attack.edge)
apply_damage(damage, BRUTE, affecting, armor_block, sharp=attack.sharp, edge=attack.edge) //moving this back here means Armalis are going to knock you down 70% of the time, but they're pure adminbus anyway.
if((stat != DEAD) && damage >= 9)
visible_message("<span class='danger'>[M] has weakened [src]!</span>", \
"<span class='userdanger'>[M] has weakened [src]!</span>")
apply_effect(4, WEAKEN, armor_block)
forcesay(hit_appends)
else if(lying)
forcesay(hit_appends)
if("disarm")
+2 -4
View File
@@ -42,7 +42,7 @@
var/burn_mod = null // Burn damage reduction/malus.
// For grays
var/max_hurt_damage = 5 // Max melee damage dealt + 5 if hulk
var/max_hurt_damage = 9 // Max melee damage dealt + 5 if hulk
var/list/default_mutations = list()
var/list/default_blocks = list() // Don't touch.
var/list/default_block_names = list() // Use this instead, using the names from setupgame.dm
@@ -636,16 +636,14 @@
/datum/unarmed_attack/diona
attack_verb = list("lash", "bludgeon")
damage = 5
/datum/unarmed_attack/claws
attack_verb = list("scratch", "claw")
attack_sound = 'sound/weapons/slice.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
damage = 5
sharp = 1
edge = 1
/datum/unarmed_attack/claws/armalis
attack_verb = list("slash", "claw")
damage = 10 //they're huge! they should do a little more damage, i'd even go for 15-20 maybe...
damage = 6 //they're huge! they should do a little more damage, i'd even go for 15-20 maybe...
+1 -1
View File
@@ -131,6 +131,6 @@
/obj/item/weapon/gun/magic/wand/fireball/zap_self(mob/living/user as mob)
if(alert(user, "Zapping yourself with a wand of fireball is probably a bad idea, do it anyway?",, "Yes", "No") == "Yes" && charges && user.get_active_hand() == src && isliving(user))
explosion(user.loc, -1, 0, 2, 3, 0, flame_range = 2)
explosion(user.loc, -1, 0, 2, 3, 0)
charges--
..()
+1 -1
View File
@@ -24,7 +24,7 @@
/obj/item/projectile/magic/fireball/on_hit(var/target)
var/turf/T = get_turf(target)
explosion(T, -1, 0, 2, 3, 0, flame_range = 2)
explosion(T, -1, 0, 2, 3, 0)
/obj/item/projectile/magic/resurrection
name = "bolt of resurrection"