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 @@ -100,7 +100,7 @@
- Level 98 - Close Defence: 53
- Level 99 - Close Defence: 54

## Class Swordman
## Class Swordsman
- Level 1 - Close Defence: 5
- Level 2 - Close Defence: 5
- Level 3 - Close Defence: 6
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - Close Defence: 68
- Level 99 - Close Defence: 68

## Class Magician
## Class Mage
- Level 1 - Close Defence: 5
- Level 2 - Close Defence: 5
- Level 3 - Close Defence: 6
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - Damage Min: 107 Damage Max: 107
- Level 99 - Damage Min: 108 Damage Max: 108

## Class Swordman
## Class Swordsman
- Level 1 - Damage Min: 10 Damage Max: 10
- Level 2 - Damage Min: 11 Damage Max: 11
- Level 3 - Damage Min: 13 Damage Max: 13
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - Damage Min: 215 Damage Max: 215
- Level 99 - Damage Min: 216 Damage Max: 216

## Class Magician
## Class Mage
- Level 1 - Damage Min: 10 Damage Max: 10
- Level 2 - Damage Min: 11 Damage Max: 11
- Level 3 - Damage Min: 13 Damage Max: 13
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - Distance Defence: 53
- Level 99 - Distance Defence: 54

## Class Swordman
## Class Swordsman
- Level 1 - Distance Defence: 5
- Level 2 - Distance Defence: 5
- Level 3 - Distance Defence: 6
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - Distance Defence: 82
- Level 99 - Distance Defence: 83

## Class Magician
## Class Mage
- Level 1 - Distance Defence: 25
- Level 2 - Distance Defence: 25
- Level 3 - Distance Defence: 26
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - Distance Dodge: 107
- Level 99 - Distance Dodge: 108

## Class Swordman
## Class Swordsman
- Level 1 - Distance Dodge: 10
- Level 2 - Distance Dodge: 11
- Level 3 - Distance Dodge: 12
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - Distance Dodge: 175
- Level 99 - Distance Dodge: 176

## Class Magician
## Class Mage
- Level 1 - Distance Dodge: 10
- Level 2 - Distance Dodge: 11
- Level 3 - Distance Dodge: 12
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - Hit Dodge: 107
- Level 99 - Hit Dodge: 108

## Class Swordman
## Class Swordsman
- Level 1 - Hit Dodge: 10
- Level 2 - Hit Dodge: 11
- Level 3 - Hit Dodge: 12
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - Hit Dodge: 175
- Level 99 - Hit Dodge: 176

## Class Magician
## Class Mage
- Level 1 - Hit Dodge: 20
- Level 2 - Hit Dodge: 21
- Level 3 - Hit Dodge: 22
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - HitRate: 107
- Level 99 - HitRate: 108

## Class Swordman
## Class Swordsman
- Level 1 - HitRate: 25
- Level 2 - HitRate: 26
- Level 3 - HitRate: 27
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - HitRate: 343
- Level 99 - HitRate: 347

## Class Magician
## Class Mage
- Level 1 - HitRate: 0
- Level 2 - HitRate: 0
- Level 3 - HitRate: 0
Expand Down
4 changes: 2 additions & 2 deletions documentation/DocumentationTest.HpDocumentation.approved.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - HP: 6526
- Level 99 - HP: 6640

## Class Swordman
## Class Swordsman
- Level 1 - HP: 221
- Level 2 - HP: 238
- Level 3 - HP: 275
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - HP: 10238
- Level 99 - HP: 10381

## Class Magician
## Class Mage
- Level 1 - HP: 221
- Level 2 - HP: 238
- Level 3 - HP: 256
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
- Level 19 - XP: 14800
- Level 20 - XP: 15500

## Class Swordman
## Class Swordsman
- Level 1 - XP: 14500
- Level 2 - XP: 19000
- Level 3 - XP: 23500
Expand Down Expand Up @@ -185,7 +185,7 @@
- Level 79 - XP: 775000
- Level 80 - XP: 790000

## Class Magician
## Class Mage
- Level 1 - XP: 14500
- Level 2 - XP: 19000
- Level 3 - XP: 23500
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - Magic Defence: 53
- Level 99 - Magic Defence: 54

## Class Swordman
## Class Swordsman
- Level 1 - Magic Defence: 5
- Level 2 - Magic Defence: 5
- Level 3 - Magic Defence: 6
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - Magic Defence: 58
- Level 99 - Magic Defence: 58

## Class Magician
## Class Mage
- Level 1 - Magic Defence: 5
- Level 2 - Magic Defence: 5
- Level 3 - Magic Defence: 6
Expand Down
4 changes: 2 additions & 2 deletions documentation/DocumentationTest.MpDocumentation.approved.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - MP: 3213
- Level 99 - MP: 3270

## Class Swordman
## Class Swordsman
- Level 1 - MP: 60
- Level 2 - MP: 69
- Level 3 - MP: 78
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - MP: 3744
- Level 99 - MP: 3805

## Class Magician
## Class Mage
- Level 1 - MP: 60
- Level 2 - MP: 69
- Level 3 - MP: 87
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - Secondary Damage Min: 107 Secondary Damage Max: 107
- Level 99 - Secondary Damage Min: 108 Secondary Damage Max: 108

## Class Swordman
## Class Swordsman
- Level 1 - Secondary Damage Min: 10 Secondary Damage Max: 10
- Level 2 - Secondary Damage Min: 11 Secondary Damage Max: 11
- Level 3 - Secondary Damage Min: 12 Secondary Damage Max: 12
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - Secondary Damage Min: 136 Secondary Damage Max: 136
- Level 99 - Secondary Damage Min: 137 Secondary Damage Max: 137

## Class Magician
## Class Mage
- Level 1 - Secondary Damage Min: 10 Secondary Damage Max: 10
- Level 2 - Secondary Damage Min: 11 Secondary Damage Max: 11
- Level 3 - Secondary Damage Min: 12 Secondary Damage Max: 12
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
- Level 98 - HitRate: 214
- Level 99 - HitRate: 216

## Class Swordman
## Class Swordsman
- Level 1 - HitRate: 20
- Level 2 - HitRate: 22
- Level 3 - HitRate: 24
Expand Down Expand Up @@ -302,7 +302,7 @@
- Level 98 - HitRate: 180
- Level 99 - HitRate: 181

## Class Magician
## Class Mage
- Level 1 - HitRate: 20
- Level 2 - HitRate: 22
- Level 3 - HitRate: 24
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Speed Table
- Adventurer : 11
- Swordman : 11
- Swordsman : 11
- Archer : 12
- Magician : 10
- Mage : 10
- MartialArtist : 11
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ public CloseDefenceService()
_closeDefence[(byte)CharacterClassType.Adventurer, i] = adventurerDefence;

swordmanDefence += (i % 2 == 0 || (i - 3) % 10 == 0 || (i - 5) % 10 == 0 || (i - 7) % 10 == 0 || (i - 9) % 10 == 0 || (i - 10) % 10 == 0) ? 1 : 0;
_closeDefence[(byte)CharacterClassType.Swordman, i] = swordmanDefence;
_closeDefence[(byte)CharacterClassType.Swordsman, i] = swordmanDefence;

bool plus = i > 10 && i < 20 || i > 30 && i < 40 || i > 50 && i < 60 || i > 70 && i < 80 || i > 90 && i < 99;

archerDefence += plus ? ((i +1 - 2) % 10 == 0 || (i + 1 - 4) % 10 == 0 || (i + 1 - 5) % 5 == 0 || (i + 1 - 7) % 10 == 0 || (i + 1 - 8) % 10 == 0 ? 1 : 0) : (i - 2) % 10 == 0 || (i - 4) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 8) % 10 == 0 ? 1 : 0;
_closeDefence[(byte)CharacterClassType.Archer, i] = archerDefence;

mageDefence += i % 2 == 0 ? 1 : 0;
_closeDefence[(byte)CharacterClassType.Magician, i] = mageDefence;
_closeDefence[(byte)CharacterClassType.Mage, i] = mageDefence;

fighterDefence += ((i - 2) % 10 == 0 || (i - 3) % 20 == 0 || (i - 4) % 10 == 0 || (i - 6) % 10 == 0 || (i - 7) % 20 == 0 || (i - 8) % 10 == 0 || (i - 10) % 10 == 0 || i > 10 && (i - 11) % 20 == 0 || i > 10 && (i - 15) % 20 == 0 || i > 10 && (i - 19) % 20 == 0) ? 1 : 0;
_closeDefence[(byte)CharacterClassType.MartialArtist, i] = fighterDefence;
Expand Down
8 changes: 4 additions & 4 deletions src/NosCore.Algorithm/DamageService/DamageService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ public class DamageService : IDamageService
public DamageService()
{
_minDamage[(byte)CharacterClassType.Adventurer, 0] = 10;
_minDamage[(byte)CharacterClassType.Swordman, 0] = 10;
_minDamage[(byte)CharacterClassType.Swordsman, 0] = 10;
_minDamage[(byte)CharacterClassType.Archer, 0] = 60;
_minDamage[(byte)CharacterClassType.Magician, 0] = 10;
_minDamage[(byte)CharacterClassType.Mage, 0] = 10;
_minDamage[(byte)CharacterClassType.MartialArtist, 0] = 10;

var swordmanMinUp = 2;
Expand All @@ -40,7 +40,7 @@ public DamageService()
swordmanMinUp--;
}

_minDamage[(byte)CharacterClassType.Swordman, i] = _minDamage[(byte)CharacterClassType.Swordman, i - 1] + swordmanMinUp;
_minDamage[(byte)CharacterClassType.Swordsman, i] = _minDamage[(byte)CharacterClassType.Swordsman, i - 1] + swordmanMinUp;

int archerMinUp;
if ((i - 1) % 10 == 0 || (i - 3) % 10 == 0 || (i - 5) % 10 == 0 || (i - 8) % 10 == 0)
Expand All @@ -64,7 +64,7 @@ public DamageService()
mageMinUp--;
}

_minDamage[(byte)CharacterClassType.Magician, i] = _minDamage[(byte)CharacterClassType.Magician, i - 1] + mageMinUp;
_minDamage[(byte)CharacterClassType.Mage, i] = _minDamage[(byte)CharacterClassType.Mage, i - 1] + mageMinUp;


if ((i - 2) % 10 == 0 || (i - 4) % 10 == 0 || (i - 6) % 10 == 0 || (i - 8) % 10 == 0 || (i - 10) % 10 == 0)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,13 @@ public DistanceDefenceService()
_distanceDefence[(byte)CharacterClassType.Adventurer, i] = adventurerDefence;

swordmanDefence += i == 0 || (i - 2) % 10 == 0 || (i - 4) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 9) % 10 == 0 ? 1 : 0;
_distanceDefence[(byte)CharacterClassType.Swordman, i] = swordmanDefence;
_distanceDefence[(byte)CharacterClassType.Swordsman, i] = swordmanDefence;

archerDefence += i == 0 || (i - 2) % 10 == 0 || (i - 3) % 10 == 0 || (i - 4) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 8) % 10 == 0 || (i - 9) % 10 == 0 ? 1 : 0;
_distanceDefence[(byte)CharacterClassType.Archer, i] = archerDefence;

mageDefence += i == 0 || (i - 2) % 10 == 0 || (i - 4) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 9) % 10 == 0 ? 1 : 0;
_distanceDefence[(byte)CharacterClassType.Magician, i] = mageDefence;
_distanceDefence[(byte)CharacterClassType.Mage, i] = mageDefence;

fighterDefence += i > 0 && ((i - 1) % 20 == 0 || (i - 3) % 20 == 0 || (i - 6) % 20 == 0 || (i - 9) % 20 == 0 || (i - 12) % 20 == 0 || (i - 15) % 20 == 0 || (i - 18) % 20 == 0) ? 0 : 1;
_distanceDefence[(byte)CharacterClassType.MartialArtist, i] = fighterDefence;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@ public DistanceDodgeService()
_distanceDodge[(byte)CharacterClassType.Adventurer, i] = i + 10;

swordmanDodge += (i - 5) % 5 == 0 ? 2 : 1;
_distanceDodge[(byte)CharacterClassType.Swordman, i] = swordmanDodge;
_distanceDodge[(byte)CharacterClassType.Swordsman, i] = swordmanDodge;

archerDodge += ((i - 2) % 10 == 0 || (i - 4) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 9) % 10 == 0 || (i - 10) % 10 == 0) ? 2 : 1;
_distanceDodge[(byte)CharacterClassType.Archer, i] = archerDodge;

mageDodge += (i - 5) % 5 == 0 ? 2 : 1;
_distanceDodge[(byte)CharacterClassType.Magician, i] = mageDodge;
_distanceDodge[(byte)CharacterClassType.Mage, i] = mageDodge;

fighterDodge += ((i - 4) % 10 == 0 || (i - 7) % 10 == 0 || (i - 10) % 10 == 0) ? 2 : 1;
_distanceDodge[(byte)CharacterClassType.MartialArtist, i] = fighterDodge;
Expand Down
4 changes: 2 additions & 2 deletions src/NosCore.Algorithm/DodgeService/HitDodgeService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@ public HitDodgeService()
_hitDodge[(byte)CharacterClassType.Adventurer, i] = i + 10;

swordmanDodge += (i - 5) % 5 == 0 ? 2 : 1;
_hitDodge[(byte)CharacterClassType.Swordman, i] = swordmanDodge;
_hitDodge[(byte)CharacterClassType.Swordsman, i] = swordmanDodge;

archerDodge += ((i - 2) % 10 == 0 || (i - 4) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 9) % 10 == 0 || (i - 10) % 10 == 0) ? 2 : 1;
_hitDodge[(byte)CharacterClassType.Archer, i] = archerDodge;

mageDodge += (i - 5) % 5 == 0 ? 2 : 1;
_hitDodge[(byte)CharacterClassType.Magician, i] = mageDodge;
_hitDodge[(byte)CharacterClassType.Mage, i] = mageDodge;

fighterDodge += ((i - 4) % 10 == 0 || (i - 7) % 10 == 0 || (i - 10) % 10 == 0) ? 2 : 1;
_hitDodge[(byte)CharacterClassType.MartialArtist, i] = fighterDodge;
Expand Down
4 changes: 2 additions & 2 deletions src/NosCore.Algorithm/HitRateService/HitRateService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@ public HitRateService()
_hitRate[(byte)CharacterClassType.Adventurer, i] = i + 10;

swordHitRate += (i - 5) % 5 == 0 ? 2 : 1;
_hitRate[(byte)CharacterClassType.Swordman, i] = swordHitRate;
_hitRate[(byte)CharacterClassType.Swordsman, i] = swordHitRate;

archerHitRate += i != 96 && i % 2 == 0 || i > 0 && i % 5 == 0 ? 4 : 2;
_hitRate[(byte)CharacterClassType.Archer, i] = archerHitRate;

_hitRate[(byte)CharacterClassType.Magician, i] = 0;
_hitRate[(byte)CharacterClassType.Mage, i] = 0;

fighterHitRate += i == 0 || (i - 4) % 10 == 0 || i > 0 && (i - 7) % 10 == 0 || i > 0 && (i - 10) % 10 == 0 ? 2 : 1;
_hitRate[(byte)CharacterClassType.MartialArtist, i] = fighterHitRate;
Expand Down
4 changes: 2 additions & 2 deletions src/NosCore.Algorithm/HpService/HpService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public HpService()
swordHp += swordInc;
}

_hpData[(byte)CharacterClassType.Swordman, i] = swordHp;
_hpData[(byte)CharacterClassType.Swordsman, i] = swordHp;
}

var magecHp = 205;
Expand All @@ -57,7 +57,7 @@ public HpService()
mageInc++;
magecHp += mageInc;

_hpData[(byte)CharacterClassType.Magician, i] = magecHp;
_hpData[(byte)CharacterClassType.Mage, i] = magecHp;
}

var archerHp = 190;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ public JobExperienceService()
{
_jobXpData[(byte)CharacterClassType.Adventurer, 0] = 2200;
_jobXpData[(byte)CharacterClassType.Archer, 0] = 14500;
_jobXpData[(byte)CharacterClassType.Magician, 0] = 14500;
_jobXpData[(byte)CharacterClassType.Mage, 0] = 14500;
_jobXpData[(byte)CharacterClassType.MartialArtist, 0] = 14500;
_jobXpData[(byte)CharacterClassType.Swordman, 0] = 14500;
_jobXpData[(byte)CharacterClassType.Swordsman, 0] = 14500;

for (var i = 1; i < Constants.MaxJobLevel; i++)
{
Expand All @@ -29,9 +29,9 @@ public JobExperienceService()

_jobXpData[(byte)CharacterClassType.Archer, i] = _jobXpData[(byte)CharacterClassType.Archer, i - 1] + (i > 39 ? 15000 : 4500);

_jobXpData[(byte)CharacterClassType.Magician, i] = _jobXpData[(byte)CharacterClassType.Archer, i];
_jobXpData[(byte)CharacterClassType.Mage, i] = _jobXpData[(byte)CharacterClassType.Archer, i];
_jobXpData[(byte)CharacterClassType.MartialArtist, i] = _jobXpData[(byte)CharacterClassType.Archer, i];
_jobXpData[(byte)CharacterClassType.Swordman, i] = _jobXpData[(byte)CharacterClassType.Archer, i];
_jobXpData[(byte)CharacterClassType.Swordsman, i] = _jobXpData[(byte)CharacterClassType.Archer, i];
}
}
public long GetJobExperience(CharacterClassType @class, byte level)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,14 @@ public MagicDefenceService()
_magicDefence[(byte)CharacterClassType.Adventurer, i] = adventurerDefence;

swordmanDefence += (i % 2 == 0) ? 1 : 0;
_magicDefence[(byte)CharacterClassType.Swordman, i] = swordmanDefence;
_magicDefence[(byte)CharacterClassType.Swordsman, i] = swordmanDefence;

bool plus = i > 10 && i < 20 || i > 30 && i < 40 || i > 50 && i < 60 || i > 70 && i < 80 || i > 90 && i < 99;
archerDefence += plus ? ((i + 1) % 2 == 0 ? 1 : 0) : i % 2 == 0 ? 1 : 0;
_magicDefence[(byte)CharacterClassType.Archer, i] = archerDefence;

mageDefence += (i % 2 == 0 || (i - 3) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 9) % 10 == 0) ? 1 : 0;
_magicDefence[(byte)CharacterClassType.Magician, i] = mageDefence;
_magicDefence[(byte)CharacterClassType.Mage, i] = mageDefence;

fighterDefence += ((i - 2) % 10 == 0 || (i - 4) % 10 == 0 || (i - 5) % 5 == 0 || (i - 7) % 10 == 0 || (i - 9) % 10 == 0) ? 1 : 0;
_magicDefence[(byte)CharacterClassType.MartialArtist, i] = fighterDefence;
Expand Down
Loading