Still not much free time for me, so a rightful design doc is still out there, but I will try to say a few words to help avoid testing useless builds right now.
As far as the attributes go, only first four are really useful right now; that's because other four are planned mostly for the time when magic system will be in place. They have some use in skill raising, but not much, really; also, most of them will have other, specific uses (there will be gold to farm, talent trees to unlock, magic crystals used for enchanting items and so on - and all that will be depended on one attribute or another). Right now only attributes with actual non-skill-raising uses are Strength (it adds damage bonus, from 0 to it's value; so if you have 25 points of Str, you are going to deal between 0 and 25 additional points of damage with each hit) and Constitution (Hit Points are calculated using Constitution * 5 + Vitality; note that Vitality uses Constitution as one of defining Attributes, along with Willpower and Strength - a little more about skills further down the post). Agility and Dexterity don't give any direct bonuses - but they have a large part in defining skills. That downplays those stats a little now, as they have a large part in not - yet used skills, unfortunately. The problem is, there will be four categories of skills in all (55 of them total), and all comparatively useful; all the balancing calculations are done with that in mind, as I have the full layout already, and implementation only gives you one category of 20 skills, of which about half isn't even used now. This makes some min/maxed builds valid now, but it will make them much, much worse further down the road. Also, enemies on first five level (up the standard goblin) are deliberately under-par, to decrease the lethality for potential new players a bit.
As for the skills; each skill level is calculated from three attributes (some of those may be the same attribute; that is, the piercing weapons value is Dex + Dex + Agi), and it may be further increased by free points on each level. Most importantly, every time you increase the attribute all the skills associated with it increase, too, to reflect the new value of the attribute. With many skills associated with each attribute, attribute levelling is more widespread, while skill levelling is more specialised.
Weapon skills (first ten) make it easier to hit an enemy. Seven of those are in use - archery, crossbowmanship and throwing are not, as corresponding weapons haven't been implemented yet (it will take a while, probably). Right now, you have 50% chance of hitting the enemy that has the same skill value as you; every point higher gives you another 1%. This behaviour was super-easy to implement, as it only requires adding and comparing values, but it is going to change soon. I have a function in mind to place there, but I need to find analytical representation to put in into code. Planned behaviour is: 0 difference - 50% chance; 30 points difference - 75% chance; 100 points difference - 95% chance; and more difference will slowly increase that chance so it never actually hits 100%, this value being the asymptote of the function in question.
Armour skills are not in use now. Those will be mostly required to wear more advanced forms of armour and possibly reduce some penalties; there will be also talent trees with requirements in those (leading to better utilizing armour). I'm not yet sure how to go about requirements, so it also might be a while before those come in use.
Parrying, Blocking and Dodge are defence skills, helping to avoid being hit. They don't differ, as of now, but they will. Most importantly, not every skill can be used against any attack (you cannot parry an arrow, and you cannot dodge an area attack, generally speaking); parrying can also damage your weapon, blocking on the other hand will damage your shield; also, powerful enough attacks may pass through shield (which is why shields have armour scores). Those are all in use now.
Ambidexterity is not in use now, but I'm planning to implement it very soon, as it's intended behaviour is limiting penalties for fighting with items equipped - it will reduce penalties for shield bearing for now, and in future it will reduce penalties for another weapon or accessory in left hand. You can reduce the need for it by using one-handed weapon with other hand free, or by using two-handed weaponry. As soon as it shows up, of course.
Two-weapon fighting will reduce penalties for using two weapons at once. It will be a while before this is implemented - a lot of other things wait for their turn, and this is not a priority.
Vitality finally increases hit point. It's purely passive, it is not tested right now; in the future, it might play a part in thing like poison and disease, but it has not been decided yet. But the hit points part is working right now; you might keep that in mind for the meat-shieldy types.
Is Crazy faster than Quick, but less accurate? Is there a damage modifier?
Well, normal attack bears no bonus; quick is faster, gives you a small penalty to damage and defence, and no penalty or bonus to hit. Crazy attack is actually less accurate, leaves you at a huge disadvantage in defence (wait till the 9-level goblin brute to see the real difference
), is a tiny little bit faster than normal and offers a large bonus to damage. Cautious is slower, less damaging and less accurate, but gives you _bonus_ to defence. Strong is... Well, stronger, but gives minor penalties to attack and defence. It's also slower. If you are interested in exact values, data.xml offers them (tags should be clear enough). Keep in mind that enemy also randomizes his attacks, and it is not rare to see a rat attack you with crazy attack, getting his hit chance below zero (it will get better once I get to some rudimentary AI, but it is also some time ahead; changing the to-hit function should help a little with this, too).
Sounds like you wanted only one party or the other to have a bonus attack? I can confirm that that's not the current case, as using the crazy attack results in both sides getting extra attacks most of the time.
Before, you had to have at least a 1000 milliseconds of advantage to get a bonus attack; right now the game randomizes the number between 0 and 1000 and test if it is smaller than time advantage to see if someone gets the bonus turn. It's not working as well as I would like it to, so the next version will randomize a number between 0 and 1,000,000 and use a square root of this as the dice roll. It will lead to bonus turns being much more rare.
Victory text prints over lines already printed, resulting in difficult to decipher text at times.
I'll add it to the to-do list as take look at this soon. Thanks for the remainder - I've noticed it myself, but like many eye-candy features, I tend to forget this when I start actually tinkering with code. ^^"