Difference between revisions of "User:Xudojnik"

From The Battle for Wesnoth Wiki
Line 175: Line 175:
 
:All characters have same movement cost and base defence at any type of terrain.
 
:All characters have same movement cost and base defence at any type of terrain.
 
:Any character is able to wear any item he gets.
 
:Any character is able to wear any item he gets.
:Mechanichal resistances divided to physical and magical. An they are exists on items.
 
  
 
;Stat system
 
;Stat system
Line 204: Line 203:
 
:1) Class multiplier. ''Multipliers for damage is not a good idea.
 
:1) Class multiplier. ''Multipliers for damage is not a good idea.
 
:2) Gear hacking. ''This way is rather hard, but possible.
 
:2) Gear hacking. ''This way is rather hard, but possible.
 +
:3) Weapon blocking. ''Easy as pie.
  
 
How much classes I can create?
 
How much classes I can create?
Line 216: Line 216:
 
B: Pierce + fire (Arcane - blade) [arcane + blade]
 
B: Pierce + fire (Arcane - blade) [arcane + blade]
 
C: Arcane + cold (Blow - pierce) [blow + pierce]
 
C: Arcane + cold (Blow - pierce) [blow + pierce]
 +
 +
Class cannot wield weapons, what deal 'worst' type of damage. Race "who deal first attack" is result of this. And there should not be any other limits. Players should decide what to do next without my help.
 +
 +
Damage and number of strikes completely influenced by weapon. That means, what weapons of same tier, will have same damage output.
 +
Blade-based melee weapons are fast. Ex: 2-6
 +
Blow-based melee weapons are true average. 3-4 or 4-3
 +
Only arcane melee weapon allowed. it's speed and damage is not good, but it is not influenced by common physical miss chance.
 +
Pierce weapons are usually ranged and rather fast. 3-4 or 2-6.
 +
Fire magic is one-shottable. 12-1 and cannot miss, of cource.
 +
Cold magic is a pain. 1-12.

Revision as of 21:21, 14 February 2011

I know Wesnoth from version 1.1.2a. This is really perspective game not only as strategy, but as RPG too. Large world, filled by history, epic battles, heroes and factions, is perfect for creating RPG. It's not so hard because Wesnoth have simple language, what support wide variety of events, easy way to define dialogs, items, forum and Wiki, where always can be found answer for any question.

WesMMO

To play it (now only in theory):

    • Download WesMMO era.
    • Download any map, designed for WesMMO.
    • Create game in lobby.
    • WesMMO era will automatically use your account.
    • Now choose any three units from your account or create new and play.
    • Persistent data will be stored at the end of each turn

Character is a "team" of three units. Each unit have own stats, small inventory and spellbook.

Stats
Stamina - increases your hitpoints. Each point of stamina should increase survivalalibity of unit for an average amount of damage, given by 1 strength or agility, multiplied by team size
Strength - increases your melee damage and armor contribution from items.
Speed - increases your movement points.
Agility - increase your ranged damage and defense on each type of terrain.
100 * A / (A + 30) 60% Defence at 45 agility
100 * A / (A + 20) 60% Defence at 30 agility
100 * A / (A + 10) 60% Defence at 15 agility
Intellect - increase magical potence of unit in some ways
Inventory
Melee Weapon - affects melee combat: multiplies damage from strength and number of strikes.
Ranged Weapon - affects ranged combat: multiplies damage from agility and number of strikes.
Amulet - affects base stats, magical resistances and magical potency of unit
Body Armor - affects base stats, all resistances and defenses.
Boots - affects base stats and multiplies speed of unit.
Helm - affects melee resistances and magical potence of unit.

Free slots are shared between all units on the gamefield. Each side had it own free slot inventory. I don't like this but I have no way to do it personal. Virtual data about them should be stored in structure "character[<side>]..."

free_slot item_id
item_type

Virtual data about units will be stored in structure "character[<side>].unit[<unit id>]..." Each item have it's own stats. Stats are directly named.

Content of "unit" structure.

inv body_item_id
boots_item_id
head_item_id
amulet_item_id
melee_item_id
ranged_item_id
body_user_name
boots_user_name
head_user_name
amulet_user_name
melee_user_name
ranged_user_name
body 0 - stamina
1 - strength
2 - agility
3 - pierce
4 - blade
5 - blow
6 - arcane
7 - fire
8 - cold
boots 0 - stamina
1 - strength
2 - agility
3 - speed
4 - speed_multiplier
head 0 - intellect
1 - pierce
2 - blade
3 - blow
amulet 0 - intellect
1 - stamina
2 - arcane
3 - fire
4 - cold
melee 0 - strength_multiplier
1 - base damage
2 - speed
3 - type
4 - defense
ranged 0 - agility_multiplier
1 - base damage
2 - speed
3 - type

Class should not determine defenses and resistances

class 0 - stamina
1 - strength
2 - agility
3 - speed
4 -intellect
buffed 0 - strength
1 - agility
2 - speed
3 - pierce
4 - blade
5 - blow
6 - arcane
7 - fire
8 - cold
9 - hitpoints_multiplier
10 - damage_multiplier
11 - speed_multiplier
12 - defense
Spell system
Each class have some predefined spells. In most cases they are not simple "damage unit X for Y hp". That's why they are the greatest headache for me.
Each unit can use it's spell once per turn.
There are no limit of uses through whole scenario.

Each item has it own's id. This ID is the key to macro what will apply effect of item stats to unit structure. Data about it will be stored inside WesMMO era. That allows me to implement 'inventory slots'. Players will carry unused items in them.

Persistent data
amulet_item_id_<unit index>
body_item_id_<unit index>
boots_item_id_<unit index>
class_name_<unit index>
head_item_id_<unit index>
level_<unit index>
melee_item_id_<unit index>
ranged_item_id_<unit index>
total_characters
total_free_slots
free_slot_item_type_<slot number>
free_slot_item_id_<slot number>

I will add to the Era thread sample feedback:

1) What version of Wesnoth, WesMMO and which scenario have you played?
2) How difficult did you find the scenario? (1-10)
3) How clear did you find the scenario objectives?
4) How clear and interesting did you find the dialog and storyline of the scenario?
5) What were your major challenges in meeting the objectives of the scenario?
6) How fun do you think the scenario is? (1-10)
7) What, if any, are changes you would have made to the scenario to make it more fun?
8) Was there any event that caused you to lose the game and forced you to restart the game?
9) WesMMO needs new title. Propose your opinion about it. (optional)
10) How convenient do you think the UI is (inventory, trade, creation dialogs)? (1-10)
11) What, if any, are changes you would made to the UI to make it more convenient?
12) How balansed did you find the units? (1-10)
13) Name the most owerpowered unit. Why does you name it?
14) What is your favorite unit? Why?
15) What, if any, are changes you would made to units to make game more fun?
Thoughts:

Ideas:

  1. situation: players A,B,C,D starts the game. player B leaves game before it ends. spectator E (player A) takes control of units B. players A,E,C,D ends the game and information about their units is stored to persistent. player E gets units of player B.
  2. suggestion: Best items should kill much time before player get them, but players should get something each time they play this game. Ways to reach this objective:
    • 1) Add "random stats" to items. Then item drops, RNG choose stats on them between predefined sets. 1/4 of randem stat set (RaSS) should be awesome and 1/4 should be real crap.
    • 2) Add "crafted items". Players should collect some resourses and get to place where they can craft this item.
  3. Itemisation(1). WesMMO will be published by patches. In each patch I will add some new items and functions to players. Items added in new patch should be better than items added in previous patch. But difference should not be enormous.
  4. levelling(1). I would not change standart mechanic of XP colection of BfW. Each player have 3 unit, what allows them to prapare and perform last-hit for any unit. Levelling shouldn't make items of this patch worster.
  5. Levelling(2). Data, stored in unit.class[], should contain multipliers of stats. Later this will be used to recalculate stats of unit.
  6. Itemisation(2). There are three items: A(require 1-3 of X), B(require 2-5 of X), C(require 4-8 of X). While player have 3 X, he can't share A and B to others if he get them and can not use C. But when he collect 4 X, he can share A, can't share B and can use C.
  7. Crafted items++. If craft of new items will require resourses from old patch, old maps will become outdated only if I will want this.
  8. Itemisation(3). Items should have requirments by level.
  9. Levelling(3). There should be a level cap in each patch.
  10. Itemisation(4). Items can have no requirements by level, but stats on item can be influensed by level.
  11. Itemisation(5). Add "mantle". It will have +int, +stam and magical resistances. Body no longer affect magical resistences and stam.
  12. Development(1). Add various "count" functions to collect statistical data about each option in dialogs. This data should be stored in special namespace. Then this will be done, I should add to feedback thread request to put file with this data to the forum.
  13. UI(1). Frankensteining. Each equipped item will have it's own overlay on unit. During the fights overlays aren't shown. Thats why I should create attack and defend animations what will look like cloud with "Ouch" messages jumped out of it.
  14. UI(2). Fast backpack browser
+-----------------------------+
|  Backpack browser
| +-------------------------+ |
| | Back
| +-------------------------+ |
| +-------------------------+ |
| | Next 10(5?)
| +-------------------------+ |
| +-------------------------+ |
| | Previous 10(5?)
| +-------------------------+ |
| +-------------------------+ |
| | item_slot) item_name id | |
| +-------------------------+ |
| +-------------------------+ |
| | 2) Cracked Bow <id>
| +-------------------------+ |
+-----------------------------+
  1. UI(3). Resourse browser

WesMMO. Theorycraft

Main questions
1) I have some 'slots' of equipped items. Why player should fill all this slots?
2) I have some 'stats' on items. Why player should concentrate on some stats and ignore other?
3) There are some 'classes' of characters. How to make real difference between any two classes?
4) How to make class system where anticlasses will exists.
Base statements
Player control 3 units.
Units have around 5 equipment 'slots' and few stats.
Any damage dealing should be based on stadart battle system.
There are around 5-10 different classes.
Each class have at least 2 good, 2 worst and 2 average attack types and defenses.
Item can not affect 2 good or 2 worst stats for any class at once.
Bonuses from items should not break class balance.
Items are not able to affect all stats.
All characters have same movement cost and base defence at any type of terrain.
Any character is able to wear any item he gets.
Stat system

Handling good/average/worst stats for any class. Each class will have set of modifiers, what will affect resistances. It can be equal to 1 (good), 2 (average), 4 (worst). Formula to calculate real value (y) of defence: y = x / (a * x + 20) * 100%, where x - value from gear, a - class modifier. According to this formula, there are 3 tier of armor exists: 1 tier: gear give 1-20 value (5-50;5-33;5-20) 2 tier: gear give 20-40 value (50-66;33-40;20-22) 3 tier: gear give 40-80 value (66-80;40-45;22-23) The following stats are good for any class:

hitpoint amount. Even mages with ranged combat should stand face-to-face to it's current opponent. Noone can one-shot any other class with full hp. Thats why mage surely will get some amount of damage from counterattack.
movepoints amount. Difference in 1 point of movement make one unit unreachable by other.

There are 5 equippable slots:

1 - affects magical combat
2 - affects defences
3 - affects melee combat
4 - affects ranged combat
5 - affects movement

If item affects combat, it always says how many strikes you have and how much damage you will deal with this item. This should also be influenced by class, in some way, to make sure, what character A can not be owerpowered just because enemy have wrong and this class - right weapon.

How can I make difference for class A between weapon a and b?

1) Class multiplier. Multipliers for damage is not a good idea.
2) Gear hacking. This way is rather hard, but possible.
3) Weapon blocking. Easy as pie.

How much classes I can create? There are 6 types of resistance. Let's imagine what all stats have counterstats. One cannot be good if other is not worst. There is absolutely no difference about deciding how to divide them, this also can be changed later via name-swapping. There is my division:

blade - fire
pierce - arcane
blow - cold

There are 11 combination of stats after this rule. Thats should be enough, I think. At this moment, i'll take 3 of them. Class: good (worst) [average] A: Blade + blow (Fire - cold) [arcane + pierce] B: Pierce + fire (Arcane - blade) [arcane + blade] C: Arcane + cold (Blow - pierce) [blow + pierce]

Class cannot wield weapons, what deal 'worst' type of damage. Race "who deal first attack" is result of this. And there should not be any other limits. Players should decide what to do next without my help.

Damage and number of strikes completely influenced by weapon. That means, what weapons of same tier, will have same damage output. Blade-based melee weapons are fast. Ex: 2-6 Blow-based melee weapons are true average. 3-4 or 4-3 Only arcane melee weapon allowed. it's speed and damage is not good, but it is not influenced by common physical miss chance. Pierce weapons are usually ranged and rather fast. 3-4 or 2-6. Fire magic is one-shottable. 12-1 and cannot miss, of cource. Cold magic is a pain. 1-12.