StendhalRPProposal: Difference between revisions

Content deleted Content added
imported>Oslsachem
m typo
imported>Hendrik Brummermann
added navigation
 
(63 intermediate revisions by 5 users not shown)
Line 1:
{{Navigation for Stendhal Top|Developing}}
This document explain what it is going to be our new RP system for Stendhal 0.60
{{Navigation for Stendhal Developers}}
 
We have a small timeframe to develop this system but we need to make sure it works and we need to make sure that problems that had arose from older versions are now not present.
 
{{Likely Outdated}}
I have placed a cleaned irc log on the discussion page for this article, so the things that was said wont be lost in all irc logs:<br>
 
{{Future Concept}}
 
{{Ideas for Stendhal}}
 
This document explain what could be the new RP system for Stendhal's future.
 
I have placed a cleaned irc log on the discussion page for this article, so the things that was said won't be lost in all irc logs:<br>
[[Talk:StendhalRPProposal|Stendhal RP proposal discussion]]<br>
<br>
We have a small timeframe to develop this system but we need to make sure it works and we need to make sure that problems that had arose from older versions are now not present.
 
=Attributes=
The first thing that our RP needs to define are Attributes.
 
Previous version lackslacked of any kind of character personalization which leadled to a poor RP experience.
Our new RP will be based on the following set of attributes:
 
Line 16 ⟶ 25:
Strengh is used to determine:
* Attack and damage done.
* Weight that can be carried.
* Damage that can be absorbabsorbed with the shield.
 
==DEX==
Dexterity is used to determine:
* Attack rate
* HandleHandling of the weapons
 
==AGI==
Agility is used to determine:
* How fast we can move.
* How good are we are at dodging.
 
==CON==
Constitution is used to determine:
* Amount of HP points.
* How fast youwe can restore HP points
* How fast we can restore MP points.
 
==WIS==
Wisdom definedefines how in joinedunited you are with your deity.
* DefineDefines how much faith you have.
* How strong your prayers are.
 
Line 47 ⟶ 56:
 
==KAR==
Karma determinedetermines most of the RP.
Good actions give positive karma and bad actions give negative karma.
Karma is initially 0 except if modified by race.
Line 76 ⟶ 85:
 
= Minor attributes =
There are also other attributes that are important but that don't decide to such extreme our player's *look*.
 
== Race ==
Line 86 ⟶ 95:
 
This will decide the base outfit and the place where you enter world.
Also of course, Dwarves are not hostile againsagainst dwarves, and so on.
 
== Gender ==
Line 113 ⟶ 122:
Human race will have 1 at every race factor.
 
{|border="1" cellpadding="5" cellspacing="0" style="text-align:center"
Table with factors:
|+'''Race Factors'''
! !!Race_STR !!Race_DEX !!Race_AGI !!Race_CON !!Race_INT !!Race_WIS
|-
!Human
|1 ||1 ||1 ||1 ||1 ||1
|-
!Orc
|1.4 ||0.8 ||1.1 ||1.2 ||0.3 ||0.8
|-
!Elf
|0.7 ||1.3 ||1.3 ||0.7 ||1.2 ||0.9
|-
!Dwarf
|1.5 ||0.7 ||0.7 ||1.4 ||0.7 ||0.9
|}
 
<pre>
|STR |DEX |AGI |CON |INT |WIS
Human |1 |1 |1 |1 |1 |1
Orc |1.4 |0.8 |1.1 |1.2 |0.3 |0.8
Elf |0.7 |1.3 |1.3 |0.7 |1.2 |0.9
Dwarf |1.5 |0.7 |0.7 |1.4 |0.7 |0.9
</pre>
 
===Class factor===
Each player can choose one and only one class at creation time ( or later ), but just once.
That class will affect how attributes are considered:
* Warriors hashave better CON and STR.
* Rangers hashave better CON and AGI
* Archers hashave better AGI and DEX
* ...
 
{|border="1" cellpadding="5" cellspacing="0" style="text-align:center"
Table with factors:
|+'''Class Factors'''
 
! !!Class_STR !!Class_DEX !!Class_AGI !!Class_CON !!Class_INT !!Class_WIS
<pre>
|-
|STR |DEX |AGI |CON |INT |WIS
!None
None |1 |1 |1 |1 |1 |1
Berseker|2.21 |0.7 |0.51 ||1 |0.5|1 ||1. ||1
|-
Warrior |1.5 |1.2 |1.2 |1.1 |0.4 |0.6
!Berseker
Ranger |0.8 |1.4 |1.4 |0.9 |0.6 |0.9
Archer |02.62 |1|0.87 |1|0.5 |0.8|1 ||0.75 |0,6|1.1
|-
Mage |0.5 |1.6 |0.5 |0.7 |2 |0.7
!Warrior
Priest |0.7 |1.3 |0.5 |0.8 |0.7 |2
|1.5 ||1.2 ||1.2 ||1.1 ||0.4 ||0.6
</pre>
|-
!Ranger
|0.8 ||1.4 ||1.4 ||0.9 ||0.6 ||0.9
|-
!Archer
|0.6 ||1.8 ||1.5 ||0.8 ||0.7 ||0,6
|-
!Mage
|0.5 ||1.6 ||0.5 ||0.7 ||2 ||0.7
|-
!Priest
|0.7 ||1.3 ||0.5 ||0.8 ||0.7 ||2
|}
 
==HP==
It is the amount of health points we have.
 
HP=m ·( CON Race· Race_CON factor)·(Class factor)Class_CON ·(Level/k+1)·CON
Where m=k=10
Line 154 ⟶ 184:
It is the amount of magic points we have.
 
MP=m · (INT Race· Race_INT · Class_INT factor+ WIS Race· Race_WIS · factorClass_WIS)/2·(Class factor)· (Level/k+1)·((INT + WIS)/2)
Where m=3, k=10
Line 161 ⟶ 191:
It is the maximum amount of weight (in whatever unit) a player can carry without having a penalty at AGI and DEX.
 
Weight=m·(STR · RaceRace_STR factor)·(Class factorClass_STR) · (Level/k+1) · ((STR + CON + AGI)/3)
Where k=10 and m is used to adjust the units to something that makes sense.
Line 169 ⟶ 199:
It is how fast this player moves, in tiles per second.
 
speed=m ·(Race factor)Race_AGI ·(Class factor)Class_AGI · (Level/k+1) · AGI
Where k=10 and m is again used to adjust the value.
Line 192 ⟶ 222:
** Poison
 
Resistence factor to damage:
 
 
<pre>
{|border="1" cellpadding="5" cellspacing="0" style="text-align:center"
|Slash |Bash |Stab |Magic |Fire |Cold |Acid |Dis |Poison
|+'''Resistence factor to damage'''
Human |0 |0 |0 |0 |0 |0 |0 |0 |0
! !!Slash !!Bash !!Stab !!Magic !!Fire !!Cold !!Acid !!Dis !!Poison
Orc |0.1 |0 |0 |0 |0 |0 |0 |0.1 |0.1
|-
Elf |0 |0 |0 |0.1 |0 |0 |0 |0.1 |0
!Human
Dwarf |0 |0.1 |0 |0.4 |0 |0 |0 |0 |0
|0 ||0 ||0 ||0 ||0 ||0 ||0 ||0 ||0
</pre>
|-
!Orc
|0.1 ||0 ||0 ||0 ||0 ||0 ||0 ||0.1 ||0.1
|-
!Elf
|0 ||0 ||0 ||0.1 ||0 ||0 ||0 ||0.1 ||0
|-
!Dwarf
|0 ||0.1 ||0 ||0.4 ||0 ||0 ||0 ||0 ||0
|}
 
This represent how much damage is absorbed.
Line 285 ⟶ 324:
This will determine how often we can attack.
 
Attack rate= k · 1 / ( DEX · STR / Weapon weightWeapon_weight )
 
The lower the better.
Line 294 ⟶ 333:
Hit = a ( Attacker.DEX )
b ( Weapon Skill )
c ( STR/Weapon weightWeapon_weight )
d ( facing )
Profile
Line 308 ⟶ 347:
The more armor weight the less you can move.
Dodge rate= k · 1 / ( AGI · STR/Armor weightArmor_weight )
The lower the better.
Line 315 ⟶ 354:
Dodge = a ( Defender.AGI )
b ( STR/Armor weightArmor_weight )
c ( facing )
( 1 - Profile )
Line 325 ⟶ 364:
Weapons can do several types of damage, some of them are exclusive and some other are additive.
 
Damage = a · STR · Skill usedSkill_used · Weapon Damage typeWeapon_Damage_type · Hit
 
We will have several damage values, one for each of the damages that the weapon does.
Line 333 ⟶ 372:
If the hit can't be dodged, then it's time to decide if the shield blocks it.
 
Shield rateShield_rate = k · 1 / ( DEX · STR / Shield weightShield_weight )
If we can use the shield, then:
 
Shield absorptionShield_absorption = STR · Shield skillShield_skill · DEX · Shield type of damage protectionShield_type_of_damage_protection · ( 1 - Profile )
The more agressive, the less useful the shield is.
Line 344 ⟶ 383:
As armor is a passive entity, you can't apply really any attribute to it.
 
Armor_absorption = Armor_skill · Armor_type_of_damage_protection
Armor absorbs = Armor skill · Armor type of damage protection
===Apply damage===
Finally
HP = HP - damage · ( 1 - race resistence to type of damageRace_resistence_to_type_of_damage )
if HP == 0 then defender is dead.
Line 415 ⟶ 454:
[[StendhalRefactoring| Back to Stendhal refactoring page]] <br>
[[Stendhal | Back to Stendhal main wiki page]] <br>
 
[[Category:Development]]