Friday, November 27, 2009
Developoment tools
For starters there will be one main window which will be the whole workspace for the development program, under this there is not really any need for menus so the next part will be folders; kind of like the new Word 2007 where you have folders for each set of tools you can use in the program. The folders are the different types of files I need to manipulate, namely; characters, weapons, shields, armors and enemies. The window you get will have some similarities; the main one is the file list where you get all the files that are included in the set you are currently watching, for this there will also be an add and remove button. Another similarity will be that there attributes and that you can change these attributes and add new attributes.
Attributes themselves will come in a tree structure, where branches are usually a true or false and leaves usually have a value, this is to narrow down the size of each file and remove the need to have all values in all files. Attributes can furthermore be shown as radio buttons (for limited string or integer options), tick boxes (for Booleans) or fields that accept either strings (for example names) or normally only integers (for values). When a new attribute is added a popup window will show to ask if it is a branch or a leaf; branches will generally be true or false with default value false, leaves will generally be integers with suggested default value 1 (0 can be dangerous to use as it might result in divisions by 0 by mistake). After something is added the program will go through all files that are included in the list for that type and add the new attribute, one special file will save all default values. When a file changes a branch from false to true the attributes and their default values under that branch will be fetched from the save file.
Example structure for a weapon:
•Item_type : (fixed)
•Name : (String field)
•Type : (radio buttons)
•Damage_type* : (radio buttons)
oDamage_subtype : (radio buttons)
•Hands : (radio buttons)
•Min_damage : (integer)
•Max_damage : (integer)
•Range : (integer)
•Speed : (integer)
•Primary_attributes : (box)
oAttribute* : (box)
*Attribute** : (integer)
•Secondary_attributes : (box)
oAttribute*** : (box)
*Attribute : (integer)
* Damage_type will be devided into: Physical, Magical and Elemental, with sub types being for Physical: Slashing, Piercing and Blunt, for Magical: Dark (Black), Light (White), Arcane and Gravity, and for Elemental: Fire, Earth, Water and Wind.
** Primary attributes are: Strength, Agility, Intelligence, Endurance and Vitality (I might not include these attributes in items at all).
*** Secondary attributes are: Block, Parry, Dodge, Accuracy, Critical_strike, Armor, Resistance and Power.
Actions
Since beneficial skills works pretty much the same way as damaging skills this apply for those too, I will still call it attacks here though.
For all types of attacks there will be a set of target area, each attack will mainly have one target area; in rare cases an attack can have two target areas. These target areas are as follows:
· Single hit – the intuitively normal area, one hit on one target.
· Multiple hits – also very intuitive but it comes in flavors. Basically it is a single attack done multiple, but a finite number of, times and will roll attacks several times.
o Multiple hits/single target – all hits are directed at the same target, efficiently doing lots of damage to one target.
o Multiple hits/multiple targets – hits several targets, randomly or by choice.
· Slashing hit – one single attack that hits multiple, but a finite number of, targets. This also comes in flavors.
o Slashing hit/multiplying – a slash that rolls one attack and does the same damage to all targets it hits, e.g. the total damage done will be the attack multiplied by the amount of targets.
o Slashing hit/dividing – a slash that rolls one attack and divides it equally among all targets it hits, e.g. the total damage will be like one attack and the individual target damage will be the attack divided by the amount of targets.
· Area of effect (AoE) – one single attack that damages all targets within an area, this can hit an infinite amount of targets.
o AoE dividing – one roll divided on all targets it hits.
o AoE re-rolling – one roll for each target it hits.
· All targets – much like the AoE attack but with the area being the whole map. All target attacks can have specifics such as of target group: all hostiles, all friendly, or a unit type: all humanoids, all beasts, or a combination: all hostile beasts.
Attacks will also have effects, one attack can have more than one effect but rarely more than a few:
· Instant damage – the most obvious way to hurt an enemy target (or heal a friend), the damage will be instantly deducted from the targets health.
· Damage over time (DoT) – damage that ticks each turn for a certain amount of turns.
· Damage over actions (DoA) – damage that only occurs when the unit does something, the amount of damage taken will depend on the action.
· Damage after time (DaT) – damage that lies dormant until a certain amount of time has passed. E.g. there is time to remove the DaT before the damage actually happens, but because of the easy to save you completely from it this damage is often massive.
· Damage after action (DaA) – damage that lies dormant until the target does an action, by not doing anything a target can avoid damage until it can be removed. Because of the easy to save you completely from it this damage is often massive.
· Slow (or other speed effects) – increases the period between actions and the time it takes to do timed actions, but not cooldowns.
· Interrupt – break any action that takes time and set time until next action to full.
· Attribute effects – decrease (or increase) any secondary attribute of the target.
Wednesday, September 2, 2009
Tanking 3
Barbarian
Too low armor to survive for long against frequent physical attacks Barbarians can’t handle multiple physical targets or fast hitting enemies. They can also get rather healer dependant.
Barbarians are still as tanks high in damage and will build threat mostly through keeping this damage up, they have skills for area of effect with their dual wielding weapons or can strike out on multiple or single targets with heavy hits. They have no specifically defensive skills.
Swashbuckler
Swashbucklers’ largest weakness is against magic users as they have low resistance when upgraded to chain. Too many targets will also be a problem as the mitigation is too low but since avoidance is very high at least more than a few can be managed.
The shield is the Swashbucklers’ main mean of building threat and avoiding damage, they have skills to do hard shield attacks (and as smaller shield do more damage but has less armor and block this damage will generate high threat, and as a skill they can also make their shield be a full avoidance instead of a mitigation which makes the Swashbucklers get the highest effective avoidance available, for multiple targets they multiple target attacks with both weapon and shield.
Pirate, Privateer and Corsair
Fencing classes with different level of armor these three are with armor upgrades (through talents) suitable for different tanking situations but in the same general style. They all use fencing weapons and are high on parry and dodge together with a gun through which combination they can keep up threat on both nearby and distant enemies.
As a range of armor level Pirates are weakest against physical and strongest against magical, Privateers are well balanced and Corsairs do best against physical.
Dodge, shoot, parry, strike and fence is the general style and even though most active skills are offensive these jobs can with correct talent build handle themselves as tanks.