Prevent Spell-casting by Certain Monsters
Moderator: Zyx
Forum rules
Please read the Forum rules and policies before posting. You may
to help finance the hosting costs of this forum.
Please read the Forum rules and policies before posting. You may

- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
Look at this trace:
Also, if I change the disable time of a spell, it only works if I set the action to anything but value 1(no action). Logical. But then I need a working action with no message. Because a nonsense spell, if working will say "... mumbles a meaningless spell".
By the way, here's a list of the current possible values for the action (parameter 0):
L0: normal action, normal message
L1: no action, no message
L2: this spell is too difficult. study it
L3: the spell fizzles
L4: the spell fizzles and dies
L5: this spell is too difficult.
L6: %caster% needs more practice with this spell.
L7: this spell requires a component.
Code: Select all
LOAD Parameter A = 6508 (6508)
LOAD INTEGER 0 (6508 0)
LOAD INTEGER 5 (6508 0 5)
&Cell@ { 4 19 5 0 1} () &¶meter 2 is 5(=bashed)
LOAD INTEGER 2 (2)
&Fetch (5) &¶meter 2 is 5(=bashed)
LOAD INTEGER 0 (5 0)
LOAD INTEGER 2 (5 0 2)
&Store (5) &&change parameter 2 to 0 (=opened)
LOAD Parameter A = 6508 (5 6508)
LOAD INTEGER 0 (5 6508 0)
LOAD INTEGER 5 (5 6508 0 5)
&Cell! (5) &&implement the changes
MESSAGE CLEAR delay=0, 6(11,12)0
000034 timer create 049 06 DLY=0000 0a 00 0b 0c 00 01 92feff7f
(5)
LOAD INTEGER 2 (5 2)
&Fetch (5 0) &¶meter 2 is 0(=opened)
LOAD Parameter A = 6508 (5 0 6508)
LOAD INTEGER 0 (5 0 6508 0)
LOAD INTEGER 5 (5 0 6508 0 5)
&Cell@ { 4 19 5 0 1} (5 0) &¶meter 2 WAS NOT CHANGED!
(0)RETURN (5 0)
By the way, here's a list of the current possible values for the action (parameter 0):
L0: normal action, normal message
L1: no action, no message
L2: this spell is too difficult. study it
L3: the spell fizzles
L4: the spell fizzles and dies
L5: this spell is too difficult.
L6: %caster% needs more practice with this spell.
L7: this spell requires a component.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
As a Grand Master you get to wear an unfeasably large flat cap, so no.
Someone better get this thread back on topic - Ecky Thump has no connection with Dungeon Master, although it could be an interesting alternative Ninja attack mode, and there was a Black Pudding monster in D&D which I seem to remember divides into two smaller puddings if you lightning bolt it.
Someone better get this thread back on topic - Ecky Thump has no connection with Dungeon Master, although it could be an interesting alternative Ninja attack mode, and there was a Black Pudding monster in D&D which I seem to remember divides into two smaller puddings if you lightning bolt it.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
There really are no new features in my deck of cards.
There are things that might be nice but seem unessential or not
worth too much effort right now. Like provide a program icon for
the PocketPC version.
The things I have done recently are mostly responses to your
urgent requests. I think i will keep it that way for a while.
There are things that might be nice but seem unessential or not
worth too much effort right now. Like provide a program icon for
the PocketPC version.
The things I have done recently are mostly responses to your
urgent requests. I think i will keep it that way for a while.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
You may. And you probably should.may I recall you two requests
I think I can do some things along these lines. The first should
be easy. The second I will have to decide how to approach.
Right now I am thinking that a &THROW command might be in order.
It could be used anywhere, not just in the Monster Attack Filter.
It would create a missile and put into the missile an object found
in the dungeon.
Something like: &THROW
with parameters
launch site
direction
object location (perhas negative could be spells like fireball)
speed
energy
delta speed
delta energy
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
The "Launch Site" contains the location and position.
Remember.....all of this has not been decided. These are
my preliminary ideas and are subject to discussion and
modification. That will help me get it right the first time and
not have to fiddle with it later (with backward compatibility problems).
I have not yet written any code or even decided where it will go.
*** EDIT ***
One thing you have to watch out for is to throw from the
front of the monster tile (closest to the direction the missile
will fly) or it will hit any monster in the front position of the
tile on that side. The FTL code takes great pains to do
this so that a monster in the rear does not attack his
companion in the front.
Remember.....all of this has not been decided. These are
my preliminary ideas and are subject to discussion and
modification. That will help me get it right the first time and
not have to fiddle with it later (with backward compatibility problems).
I have not yet written any code or even decided where it will go.
*** EDIT ***
One thing you have to watch out for is to throw from the
front of the monster tile (closest to the direction the missile
will fly) or it will hit any monster in the front position of the
tile on that side. The FTL code takes great pains to do
this so that a monster in the rear does not attack his
companion in the front.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
Weird! I managed to have monsters throwing themselves! They could break free from a caging teleporter this way, very funny. (except CSBwin crashed right after that: it seems that the monsters have no sprite when in missile form....).
I think you should replace the "objectLocation" parameter by an "objectID" in the &throw operation, so we can filter precisely which object we want to throw.
I think you should replace the "objectLocation" parameter by an "objectID" in the &throw operation, so we can filter precisely which object we want to throw.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
http://www.dianneandpaul.net/CSBwin/doc ... guage.htmlThe DSA documentation tells how to use the commands.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
Your plan makes it harder for the beginner to use. Using the locationso we can filter precisely which object we want to throw.
makes it easy as in my demo. Simply throw the object at A from location
B. It works like the standard missile launcheers.
My plan was that the advanced user (like yourself) would be able to
either move the correct object to an empty location (or create a copy
if you wanted there to be an infinite number) and then launch it from
that location.
The biggest problem is that knowning the object ID does not tell me
the location. And without knowing the location I cannot delete it from
the cell it is currently in. In fact, it may be in a player's backpack or
in a chest or in a monster's possessions or in the cursor or in another
missile or ............??????
Having said all of this, we could add an optional ID so that you would
provide the location and the ID. (-1 means not used). Would you like
me to do that?
Sorry, I left out the line that differentiates between 'throwable' objects
and doors, teleporters, monsters, etc.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
Will you implement a &MONSTER! ? (Is is possible to change the type of monster, the hitpoints?)
Will you implement a &GLOBAL! ? (I'd like to teleport the party this way.)
Another thing, it seems RNMonsterDeath is not a missile but a cloud.
Here's what I found in Code11f52.cpp:
Will you implement a &GLOBAL! ? (I'd like to teleport the party this way.)
Another thing, it seems RNMonsterDeath is not a missile but a cloud.
Here's what I found in Code11f52.cpp:
Code: Select all
CreateCloud(RN(RNMonsterDeath), D5W, D7W, D6W, w_20);
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
Teleporting the party is not a simple matter of changing
a couple of numbers. I'll figure some way for you to move the
party but I don't know exactly how yet.
Changing Monster hitpoints is easy. Changing monster
type (or even the number on the group) might be a bit touchy.
What if there are four in the group and you change them to Worms?
Thinking of four Worms frightens me. What if a levitating monster
is over a pit and you change it to a non-levitating monster? It is
easy to sy what should happen but I am not sure how to incorporate
such things into the code. Maybe we could use existing techniques to
kill them, trigger a monster generator, and arrange to teleport the
new monsters to the proper location. If you want three distinct groups
of monsters maybe we could arrange to teleport the three groups
in a cycle. A->B->C->A. Teleporting a monster is not as simple as it
sounds but code exists that I can copy with some assurance that it
will work (Just like the party problem in the first paragraph above).
a couple of numbers. I'll figure some way for you to move the
party but I don't know exactly how yet.
Changing Monster hitpoints is easy. Changing monster
type (or even the number on the group) might be a bit touchy.
What if there are four in the group and you change them to Worms?
Thinking of four Worms frightens me. What if a levitating monster
is over a pit and you change it to a non-levitating monster? It is
easy to sy what should happen but I am not sure how to incorporate
such things into the code. Maybe we could use existing techniques to
kill them, trigger a monster generator, and arrange to teleport the
new monsters to the proper location. If you want three distinct groups
of monsters maybe we could arrange to teleport the three groups
in a cycle. A->B->C->A. Teleporting a monster is not as simple as it
sounds but code exists that I can copy with some assurance that it
will work (Just like the party problem in the first paragraph above).
Teleporting the party, changing monster hitpoints, and monsters casting deathclouds are the only features I would really want.
I was curious about the possibilty of changing the monster type, but since it is too complex and since I don't have specific plans with it, we can happily forget it, unless some other designers state their opinion.
I was curious about the possibilty of changing the monster type, but since it is too complex and since I don't have specific plans with it, we can happily forget it, unless some other designers state their opinion.
- Paul Stevens
- CSBwin Guru
- Posts: 4322
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA