Item abilities/uses, organizing and updating
Message 1491
From: Nahl_Shadore
Date: 2002-05-11 23:31:06
we are already planning on having an item tree
(item->weapon->bladed->sword->gnomish->gnomish sword of bloody vengeance)
and we'll use it for things like blacksmith proficiency and fighting proficiency, correct?
what about if we make one more use of this heirarchy? this time for item abilities and uses?
eg
_level_ _abilities_
item throw
weapon pry, hit (yes, you can hit
someone with a bow)
bladed slash, stab, thrust, etc.
sword parry, deflect
Gnomish maybe all gnomish swords (being
small) have the ability to be
concealed or something. that's
something to be discussed
later, just an example.
Gnomish sword of every hit damages you slightly
bloody vengeance as well
etc.
all weapons would call their functions recursively (right word?) up the tree, just like making swords as a blacksmith updates recursively, making you better at all bladed weapons
this would make updating easier, too, since you wouldn't have to change every item with the ability, just the groups where the ability first occurs. say we want to make the "thrust" attack cause both cutting (from the blade) and bludgeoning (from your own weight) damage, we'd just go to "bladed" and change that one, instead of all of them
and if we wish to make the "stab" attack different for daggers and swords, we could remove it from "bladed" and make 2 copies, one in each subcategory. the computer shouldn't know the difference, it would just recognize the function, same as always
phew...long post
Message 1759
From: yorkaturr
Date: 2002-07-29 13:34:14
In-Reply-To: 1491
I think this was already clear to everybody? In any case, this is exactly how it will be done.
Message 1534
From: ReSpawner
Date: 2002-05-22 18:18:07
In-Reply-To: 1491
I actualy think you shoudl be able to trow anything on your oponent =D liek its posible to trow a 2 handed sword on someone and if you are lucky then it can deal alot damage... just wanted to say that =D
Message 1494
From: Yendor
Date: 2002-05-12 16:14:35
In-Reply-To: 1491
This message is generally more for developers than for Nahl.
That seems like a good solution all right.
We could just drop the 'bladed' item from the tree and maybe even the 'sword' item making the tree look like this : item->weapon->gnomish->gnomish sword of bloody vengeance
When developing the longer tree the bladed and sword will serve pretty much as some catalog items with no code that would have to be used in that class and not the weapon class.
In weapon class, for instance we should calculate all damage. And in bloodybigrace->enormousaxe we would set values for all the damage types. Some of them would be of course 0, but this frees us from having so strictly categorized weapons like IIF in AD&D. Also if you have a weapon called asswhacker you won't have to search for its weapon class.
Also if we want to have different "stab" attack for some some weapon it will work like this.
weapon->stab(int power)
{
target->do_damage(power);
}
IF we want a weapon to have different stab behaviour from the default stab we can just write a new stab function.
dagger->stab(int power)
{
emote("Dagger makes evilly when swung around")
target->do_damage(power * 3.14);
}
And by the way. The tree will prolly go arother way around : ie gnomish weapons are descended from weapons. I hope it won't go the way : weapons includes gnomish weapons.
The result : item
Message 1492
From: Nahl_Shadore
Date: 2002-05-11 23:35:36
In-Reply-To: 1491
here's the spacing cleaner
_level_
-_abilities_
item
-throw
weapon
-pry, hit (yes, you can hit someone with a bow)
bladed
-slash
-stab
-thrust, etc.
sword
-parry
-deflect
Gnomish
-maybe all gnomish swords (being small) have the ability
to be concealed or something. that's something to be
discussed later, just an example.
Gnomish sword of bloody vengeance
-every hit damages you slightly as well
Message 1493
From: darshan
Date: 2002-05-12 13:46:22
In-Reply-To: 1492
So you're suggesting the inheritance of abilities in the item tree?
A theoretic "sword" item has ability X, therefore every item type derived from "sword" has it?
I like that concept. We should probably think more about its implications.
Message 1595
From: namhas
Date: 2002-05-28 10:19:24
In-Reply-To: 1492
Sounds doable. Perhaps we should invent a list of all generic items and make the tree already? :)
Message 1511
From: raeky
Date: 2002-05-19 17:34:55
In-Reply-To: 1493
but you should most defintly have the ability to have your item NOT inherit an ability. Say you have a gnomish sword but its been modified to be longer then normal, but retains all the same other features, (shape, ornimates, markings, etc) but its to long to be hidden easly.
Or say you had a pike that was huge and impossible to hide, but it was a unique pike weilded by a demi god and has been permenetly imbuned with the ability to be hidden, or made invisiable to anyone but a "true owner" or something, (gains such magical power by always drawing the tiny amount of magical energy difused in the air over a long period of time from the magical nodes.)
So items shouldn't EXPLICITLY gain the tree's inheritances.
Message 1531
From: Yendor
Date: 2002-05-22 12:46:05
In-Reply-To: 1511
If the tree parent has an attribute 'easeofhiding' with a value of X it will be a default value, not mandatory.
Message 1535
From: raeky
Date: 2002-05-22 19:10:30
In-Reply-To: 1531
my point exactly. but with far less words. :)
Message 1536
From: raeky
Date: 2002-05-22 19:12:14
In-Reply-To: 1534
it should be a skill to throw weapons accruately, knives for example, and swords can be thrown. Some things like say a bow wouldn't do you to much good but if you ran out of arrows it wouldn't hurt to toss at your oponents head anyway.
Message 1548
From: Nahl_Shadore
Date: 2002-05-23 03:52:41
In-Reply-To: 1535
of course every item is different, and abilities/stats and such would completely depend on the item, but for those base stats that don't change, we can organize them for ease of tracking, updating
all staffe give blunt damage, but a staff with a blade (scythe-like) would give stabbing/cutting too
this is just something to build off of
Message 1547
From: Nahl_Shadore
Date: 2002-05-23 03:49:38
In-Reply-To: 1536
exactly
damage could be based on weight, sharpness (if applicable), skill, etc
if you picked up a rabbit you just killed, you could throw it
you could also swing it at your opponent's head to whack him
that's why I had throw as default under "item". hit/strike could be as well
Message 1596
From: ReSpawner
Date: 2002-05-28 16:48:30
In-Reply-To: 1547
so then it whould actualy be much easier as a newbie couse you can like cut a tree and then start to use it as a weapon =D hmm... will items be able to brake? like if you buy a "super mega expensive new fire sword" and then it brakes... it whould be more real but maybe more boring to... or atlest i think that =D
Message 1732
From: raeky
Date: 2002-07-26 01:22:34
In-Reply-To: 1596
yes items should be able to break. Substances should include a "fracture" point, and the engine should calculate how much "stress" was put onto the item with a blow to another object, then if its greater then its "fracture" point, the item will break.
This would be how arrows could penetrate a suit of steel, if the arrow carried enough "force" and the arrows head was strong enough, it would penetrate the armor and kill the wearer, or greatly hurt him. :P