Combat
In Ultima Online, Combat is one of the main action any Character will do! Fighting versus Animals, Monsters, NPCs or other Players!In order to start performing combat! It require to Flag a Mobile! By pressing the ALT+C on the keyboard or clicking on the button PEACE in the Character Paperdoll, will make your In-Game Cursor change to Red and your Character will change his Peace Animation for a Combat Animation! (only when on foot, not while mounted)
With the Red Cursor, Double Left Click on a Mobile to Flag them and your Character Swing Speed will start! Depending on your current handing weapon, the delay between each Swing vary!
Magic combat are not the same, it require to Cast the Spell and when the Spell Incantation is finish, a cursor will appear and if you target any mobile, the Spell will launch hes animation and will do damage!
Swing Speed
The Swing Speed determine the delay between each hit in seconds for a weapon! The lowest swing speed is 1.25 seconds! Swing Speed is determined by the Weapon Speed, Character Current Stamina and the Character Item Mods Swing Speed Increase!Hit Chance
Character Stat | |
Weapon Skill | |
Hit Chance Increase | |
Opponent Stat | |
Weapon Skill | |
Defense Chance Increase | |
Hit Chance | |
Chance | - |
Under some Effect | |
Attacker: Under Hit Lower Attack Hit Chance Increase: Defense Chance Increase: | - |
Defender: Under Hit Lower Defense Defense Chance Increase: Hit Chance Increase: | - |
Damage
Character Stat | |
Weapon Base Damage | Min: - Max: |
Strength | |
Tactics | |
Anatomy | |
Lumberjacking Is Weapon an Axe? | |
Item Mods | |
Damage Increase | |
Damage | |
Minimum | - |
Maximum | - |
Parry Chance
Character Stat | |
Dexterity | |
Parrying | |
Bushido | |
Character Parry Chance | |
With Shield | - |
1-Handed Weapon | - |
2-Handed Weapon | - |
Calculator Mana Cost
Here's a calculator for the amount of Mana it will Cost for using a Weapon Ability!Weapon Ability | |
Weapon Ability Mana Cost | |
Character Stat | |
Lower Mana Cost | |
Character Skills | |
Archery | |
Bushido | |
Fencing | |
Lumberjacking | |
Mace Fighting | |
Ninjitsu | |
Parrying | |
Poisoning | |
Stealth | |
Swordsmanship | |
Skill Total | |
For Character with Race Human: Click the checkbox to auto-fill at 20 each Skills - Jack of all Trade Racial Ability and edit the Skills to match your Character! | |
Base Mana Cost | |
Base Mana | |
Base Mana (With Skill Total Bonus) | |
Mana Cost | |
Note: Skill Total greater or equal to 300 remove -10 to Base Mana and Skill Total greater or equal to 200 remove -5 to Base Mana!
If a Weapon Ability is used within 3 Seconds after another Weapon Ability, the Requirement Mana Cost will Double!
Combat Order
1 = Hit or Miss (Attacker WeaponSkill+HCI VS Defender WeaponSkill+DCI)2 = Check Parry (Defender Parrying Skill or Bushido & Parrying Skills)
3 = Take the Hit (Defender Lose HP)
- OnSwing
Can Swing (IF Paralyzed or Frozen)
OK, but is the attacker use a Spell? (IF Spell: Is the Spell is Casting and BlocksMovement)
OK, but is the attacker is a PlayerMobile? (IF PlayerMobile: Not Peaced)
IF ALL OK: CheckHit
- CheckHit
atkValue = Attacker.WeaponSkill
defValue = Defender.WeaponSkill
ourValue, theirValue
atkValue & defValue Cannot be lower then -20, it cap at -19.9 (Using a Mage Weapon -29 with 0 Magery...)
//Attacker
bonus = Get Hit Chance Increase
Chivalry.DivineFury give: bonus += 10
Ninjitsu.AnimalForm.GreyWolf or BakeKitsune give: bonus += 20
Under HitLowerAttack give: bonus -= 25
Check Weapon Ability Accuracy Bonus (like Moving Shot remove -25)
Check Special Move Accuracy Bonus (like Ninjitsu Lightning Strike give +50)
IF(bonus > 45)
bonus = 45
ourValue = (atkValue + 20.0) * (100 + bonus)
//Defender
bonus = Get Defense Chance Increase
Chivalry.DivineFury give: bonus -= 20
Under HitLowerDefense give: bonus -= 25
Check Weapon Ability Block when Active have a DefenseBonus of (int)(10 * ((Math.Max( Bushido, Ninjitsu ) - 50) / 70 + 5)) +50/+60
Check Special Move Ninjitsu Surprise Attack when Active have a DefenseBonus of -16/-40 TrackingBonus = Min(TrackingDistance, 10 + (Tracking / 10)) TrackingBonus Min/Max = 0/20 Damage ncrease = 1 + (Ninjitsu / 360) + (TrackingBonus / 100)
Check Discordance Effect -0/-28%
IF(bonus > 45)
bonus = 45
theirValue = (defValue + 20.0) * (100 + bonus)
Chance = ourValue / (theirValue * 2.0)
Chance *= 1.0 + ((double)bonus / 100)
IF(Core.AOS && Chance < 0.02)
Chance = 0.02;
Roll a 100 Face Dice and Check for Chance to Hit! (OnHit or OnMiss)
- OnHit
MirrorImage.HasClone(defender) && Defender.Skill.Ninjitsu / 150 > RandomDouble
MirrorImage Take the Hit (It remove the MirrorImage and it's FINISH)
Damage
ComputeDamage
percentageBonus = 0
//The following damage bonuses multiply damage by a factor. Capped at x3 (300%).
Weapon Ability Damage Scalar
Special Move Damage Scalar
Slayer
Enemy of One
Pack Instinct
In Double Strike
Necro Form Horrific Beast
Honor
Perfection Damage Bonus
Talisman Killer
percentageBonus = Math.Min( percentageBonus, 300 )
Damage = AOS.Scale( Damage, 100 + percentageBonus )
Damage = AbsorbDamage()
IF(Defender.Player || Defender.Body.IsHuman)
blocked = CheckParry(defender)
- CheckParry: All the Formula to check if we Parry the Attack or Not!
IF(blocked == true)
Damage = 0
Remove Honorable Execution Penalty
Check CounterAttack
Check Confidence
... ... ... Take Damage!