This is the mail archive of the xconq7@sources.redhat.com mailing list for the Xconq project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Cow patties, and keeping them asleep


I'm trying to implement my "scarce material" concept as token units that
can't be destroyed but can be captured and carried around by other
units.  I want them to be as near as possible to totally inactive markers
- all they can do is be carried and transferred by other units.  The
design manual (s. 3.20.1) refers to units like this as "cow patties" and
suggests that they can be created with acp and acp-min of 0.

Well, that doesn't seem to work, because I don't see a way to load and
unload them without giving them some ACP.  Loading and unloading appears
to count as an action and cost ACP, requiring the object to be loaded or
unloaded to have some ACP.

So I gave them some ACP.  But that's a problem, too, because then it means
they are "awake" and demand player attention during the turn.  I can give
the cow patties a "sleep indefinitely" command, but they appear to
automatically wake up whenever the transport wakes up, and the transport
wakes up whenever an enemy unit comes in sight.  The end result is that
it destroys playability because the player has to spend most of the time
putting cow patties back to sleep.

I tried setting the vision range to -1 and the occupant-vision table to 0
in order to make cow patties completely blind, especially when inside
transports, but that didn't help because they aren't seeing the enemy
themselves; they are waking up because the transport woke up when it saw
the enemy.

It is possible to make a unit require a material in order to be able to
act, with the material-to-act table.  I tried creating a fictitious
"movement ability" material, giving some to all my units except the cow
patties, and making the cow patties require the material in order to act.  
My thinking was that then if you want to load or unload a cow patty, you
give it some material, then it can act, then you take the material away
when you want to forget about it.  That's an annoying kludge, but it would
be less annoying than having to manually put the cow patties to sleep
every time their transports see the enemy - the latter happens at a rate
of about ten per turn, whereas you only want to move the patties a few
times in the entire game.

First it didn't work because the default supply rules allow units in
transports to automatically resupply themselves from the transport without
player intervention; but I changed the in-length table to prevent cow
patties from doing that, and it's good to know that it's possible because
I have another material for which I *want* that to happen.  But even with
cow patties unable to get the needed-for-action material except by
explicit transfer, it still doesn't work.  When the cow patties
have ACP but none of the required material, they still don't stay asleep -
they wake up, and then are unable to do anything.  I want them to go into
a completely catatonic state so that the player doesn't have to think
about them, until explicitly activated in some way.

Is there anything I can do that will allow players to load and unload cow
patties when they want to, but not have to deal with them at all on turns
where they just remain in the transports, regardless of enemy
action?

I've got a crazy idea that maybe the "part transfer" action could be
used for this.  Instead of having cow patties be separate units all the
time, maybe they could be "parts" that are attached and detached from
other units.  I'm not sure how well that would work because I think
detached parts have to be the same type as the thing they're detached
from, but it's an idea, anyway.

Another thought I have is that maybe all my cow patties should come with
standing orders putting them to sleep every turn.  That might work,
and be relatively good from a playability perspective; I'll see if I can
do it.

Yet another thought: is it, in fact, possible to load things on and off
transports without the things having any ACP of their own?  The manual
seems to suggest that that should be possible, but I can't figure out how
to do it.  The file cave.g seems to include something like this behavour
in its "items" unit types - I can wander around the cave, capturing items,
and when I move the adventurer on top of the item, the item becomes an
occupant of the adventurer.  The "disembark" option for the item becomes
ungrayed, too, but I can't get it to actually do anything.

I don't think any of these issues are caused by bugs as such, but I'm
trying to think of easy changes that could be made to the way Xconq does
things that would solve these issues.  Generally, if Xconq were less eager
to wake up sleeping units, I'd be able to do what I'm trying to do.  For
instance, if it didn't do the "occupant wakes up whenever transport wakes
up" thing, that would help a lot.  (Actually, it's worse than that - the
occupant wakes up whenever the transport encounters a situation that
*would* wake it up... even if the transport is actually already awake,
itself.)  Similarly, if it didn't wake up when it had no material to act,
that would at least enable my kludge solution.  I don't think there's any
reason it needs to wake up in that case; note that this isn't just "no
material to move", but "no material to act at all", so we can't say that
it needs to have the chance to spend its ACP to get more material; it is
not allowed to spend any ACP, and can do *nothing*.
-- 
Matthew Skala
mskala@ansuz.sooke.bc.ca                    Embrace and defend.
http://ansuz.sooke.bc.ca/



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]