RE: [pcgen-xml] "Removers"
I think I follow what your saying. Let me paraphrase and see if I have
For multiple Effects that add that same non-additive Entity, you still
have multiple Entities (and/or increment an internal counter, I'm not
picky). So that when you remove a single Effect you still have an
accurate count if other Effects have given that Entity so there is no
need to recalculate other Effects to see if the Entity should still be
Ok, sounds good.
The removal of Entities by other effects is where it gets a little foggy
to me, because you need to be able to handle the number of cases. A
dwarven speaking character with an item that allows them to speak
dwarven would have two Dwarven Language Entities (DLEs), or perhaps one
DLE with a count of 2. A curse might disallow the character from
speaking Dwarven, and as such "lock" Dwarven at false, regardless of the
fact that a normal remove would decrease to a single DLE and still allow
But then again, this could just be handled by adding a "negative Entity"
of "Don't Speak Dwarven" with a sufficient negative magnitude that the
total "Speak dwarven" less "Don't speak dwarven" has a total count of
zero or less (hereby declared "false"). So either of the "speak
dwarven" Entity would still have complete freedom and correctness in
removing (or adding another Entity), and separate from the "don't speak
dwarven" entity, which could be removed completely separately.
Am I far in left field?
From: Steven Bethard [mailto:bediviere@...]
Sent: Wednesday, February 11, 2004 1:49 PM
Subject: RE: [pcgen-xml] "Removers"
Sorry I've been gone for a while. The prelim's over now, though so
things should be better.
So most of what we had talked about before was what Effects that
modified Variables would look like. Jim's comments suggest to me that we
should probably start talking about what the Effects that add Entities
to other Entities look like. I haven't thought about this too deeply
yet, but I thought I'd throw out some ideas to get us started.
So let's say we have an Effect 'Add Dwarven Language Entity' and an
(Belt) that applies this Effect to another Entity (Character). The way
I had envisioned it, we would also have an Effect 'Add Dwarven Language
Entity' that was applied by increasing the 'Speak Languages' Variable.
So if we followed this line of Effects, the character would, at the end,
have two 'Dwarven Language Entity's. If you then removed the Effect
from the belt, it would remove only one of the Entities.
The advantage of this approach is that it is simple from the perspective
of Effects. An Add-Entity-Effect always adds the Entity when applied
and always removes the Entity when removed. There may be disadvantages
to storing multiple identical Entities though...
Another scenario: We have an Effect 'Remove Dwarven Language Entity',
say, some belt that removes the ability to speak Dwarven if the
character can speak Dwarven. If the belt is removed, any lost language
My thoughts on this one: When you apply the Effect to a character
without Dwarven, the Effect is inactive. When an Entity (like the
Entity) is added to the character, we activate any appropriate inactive
Effects. So if the character learned Dwarven, the Effect would become
active and remove it. If the Effect was removed and it was inactive, it
would not attempt to remove anything from the character. If the Effect
was removed and it was active, it would remove the Dwarven Language
Entity from the character.
This is somewhat more complicated than the original situation. Is it
too complicated? As far as the data is concerned, we won't ever have to
encode 'active' or 'inactive' for an effect, just the conditions under
which it applies. I'm only bringing these things up because I want to
make sure that any encoding we decide on is actually implementable. =)
From: CC Noram Carstensen James [mailto:james.carstensen@...]
Sent: Wednesday, February 11, 2004 9:50 AM
Subject: [pcgen-xml] "Removers"
I think this is mostly for Frugal and Steven.
A bit back you were discussing having an "add" and "remove" effect for
each entity. (Darn, hope I'm getting the terminology correct.) Reading
the main PCGen group brought to mind a few examples where it isn't a
progression but rather boolean ability.
For example, say a magic item that allows you to speak Dwarven. (Belt
of Dwarvenkind.) When removing it, it should only remove the ability to
speak dwarven IFF nothing else grants dwarven. A character who chose it
with the Speak Languages skill should still have it.
Weapon proficiencies for classes are another example. The Fighter 5
who's user mistakenly added a level of sorcerer (granting simple
weapons) and then removed it should still have simple weapon proficiency
as granted by the fighter.
Is this a problem in what you are suggesting, or not an issue at all?
It seems part of the issue you were trying to remove was the need to
recalculate /everything/ each time something was changed.
Or I might just be misunderstanding.
Yahoo! Groups Links