if( attackhook ) call hook if hook returned 1, exit endif if( weapon is projectile ) try to comsume projectile if none, exit exit repsys effects if( weapon is projected ) play sound and animations else play attack anim endif if( combat advancement hook exists ) call it else THE CORE DOESN'T ADVANCE ANY SKILLS endif hit_chance = (weapon_attribute + 50.0) / (2.0 * opponent_weapon_attribute + 50.0) if( random_float(1.0) < hitchance ) play hit sounds and anims damage weapon (1 in 100 chance to lose 1 hp) damage = random_weapon_die_damage damage_multiplier = tactics + 50 damage_multiplier += strength * 0.2 damage_multiplier *= 0.01 damage *= damage_multiplier if( opponent has shield ) call parry advancement hook parry_chance = opponent_parry_skill / 200.0 if( random_float(1.0) < parry_chance ) display parry success damage -= opponent_shield_ar endif endif if( weapon has no hit script ) choose armor piece hit based on zone coverage percentage blocked = armor piece ar + character ar_mod absorbed = blocked / 2 blocked -= absorbed absorbed += random_int(blocked+1) damage -= absorbed if( damage >= 2.0 ) damage *= 0.5 endif 1 in 100 chance for armor piece to lose 1 hp play hit animation applydamage(damage) else choose armor piece hit based on zone coverage percentage calc base & raw damage (exactly like above if no hit script) run hit script (Core doesn't damage armor if hitscript, do it in the script) endif else play weapon miss sound endif
If you know if any information is incorrect on these pages, mail your corrections to shinigami@gmx.net
Copyright ©2003-2011 David Carpman and Shinigami, all rights reserved. DO NOT REPRODUCE, MIRROR, ALTER, SPINDLE, MUTILATE, OR SIT ON.