adonthell-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Adonthell-devel] Re: Re: Creature IDs


From: Kai Sterker
Subject: [Adonthell-devel] Re: Re: Creature IDs
Date: Tue, 11 Jul 2006 23:13:30 +0200

On 7/11/06, Andrew Phillips <address@hidden> wrote:

Hope you don't mind if I cc this to the devel list as well, so that
others might join the discussion. Also, it's safer there than in a
mailbox on my local machine ;-).

On 7/11/06, Kai Sterker <address@hidden> wrote:
> So this would be some of the information required by a creature
> template. Some sort of weight that tells an auto-level-mechanism which
> attributes to level how much. We could possibly combine this with a
> random component, so that for example 2/3 AP will be distributed
> according to the predefined weights, while the rest will be
> distributed randomly.

That's an interesting idea. What if the creature is assigned a
character level that breaks the assigned to random ratio? If the
creatures get 3 AP per level, they would all need odd levels above 1
to make a 2/3 split work. Should advancement cost less for creatures?
2 AP, for example?

I shouldn't think so. First of all, creatures would probably also get
the initial 12AP
(http://adonthell.berlios.de/doc/index.php/Rules:Creation), plus 3
more for each level. We could then calculate the number of
advancements possible and from there the 2/3 with rounding to the next
integer. So we had something like

 Level    Fixed        Random
    1       3 (9AP)     1 (3AP)
    2       3 (9AP)     2 (6AP)
    3       4 (12AP)   2 (6AP)
    ...

> Which brings me to a topic I had in mind for quite some time, but
> hadn't really mentioned before. I think, all
> attributes/properties/skills etc. should not be stored as plain data
> types, but we should have a class that encapsulates one attribute/...
> with all the information that belongs to that attribute. Information
> to store would include:
>
> * name of the attribute
> * current (base) value of the attribute
> * caps for the attribute (min, max values)
> * modifiers to the current value (from spell effects, damage, potions,
> diseases, ...)
> * weight (as described above)
> * AP cost for level-up
> * ... (possibly even more)
>
> A little problem I see with that approach is that the information
> above has different scopes. Some is valid for all attributes of same
> type, other is valid for all creatures of same type and the rest is
> valid only for individual creatures/characters. This is mainly a
> problem of editing these values, so we'd need some logic for this in
> charedit.

I agree that we need at least one attribute/property class and one
skill/ability class.  Since properties are dependent variables based
on the value of the attributes, the two can be rolled up and
calculated together.

I've also been thinking about how to implement these kinds of classes,
since my chargen code increasingly begs to be refactored toward OOD.
It gets a little more tricky with skills and abilities

> Also, there might be slight differences between attributes,
> properties, abilities and skills that need to be taken care of.

The biggest variable that I can think of is the race of the character,
as it directly impacts the upper bounds on Abilities and the lower
bound on skills.

True, although these bounds are well-known and fix, so charedit (or
the character creation code) could read them from a predefined table
and initialize the abilities accordingly.

Kai




reply via email to

[Prev in Thread] Current Thread [Next in Thread]