Page 1 of 1

"Filter Modifying Dungeon"

Posted: Tue Nov 14, 2006 3:57 am
by ADDF_Toxic
While trying to figure out more DSA, I came across an error when I activated my DSA...it said "Filter Modifying Dungeon"...it then said the location of my DSA actuator in the dungeon (0(0,31)) and then it said "Row=0;Column=3"...I activated my DSA with a party attack filter...what does this mean?
My DSA code (just in case you're wondering):

Code: Select all

Description = MyName
State = 0
StateLocation = 0
GroupID = 0
Number of States = 1
First Displayed State = 0
Number of non-empty states = 1
State Number = 0
Number of Actions = 3
S0 = L22 L0 &PARAM@ L43 L1 &@ &!= ?JC1 L5 &@ L23 &= ?JS1
C1 = N
S1 = L1 L1 &! L22 L0 &PARAM! L396 L0 L2 &MONSTER!
signature = 8CFF7B60D60BE4DF39E872875D75831B
I turned on the trace also and found the Filter Modifying Dungeon in there(it's underlined)...here is the DSA part of it:

Code: Select all

DSA MyName State 0 MSG 0
(0)Execute DSA at 0(0,31) master at 0(0,31) state=0,msg=0
  LOAD INTEGER 22  (22)
  LOAD INTEGER 0  (22 0)
  &PARAM@ { 3 43 1 2 396 23 3 3 1 2 4 0 0 0 0 0 0 0 0 0 0 0} ()
  LOAD INTEGER 43  (43)
  LOAD INTEGER 1  (43 1)
  &Fetch  (43 43)
  &!= (0)
  QUESTION (false) Do Nothing ()
  LOAD INTEGER 5  (5)
  &Fetch  (23)
  LOAD INTEGER 23  (23 23)
  &=  (1)
  QUESTION (true) Jump 0S1 ()
  LOAD INTEGER 1  (1)
  LOAD INTEGER 1  (1 1)
  &Store  ()
  LOAD INTEGER 22  (22)
  LOAD INTEGER 0  (22 0)
  &PARAM!  3 1 1 2 396 23 3 3 1 2 4 0 0 0 0 0 0 0 0 0 0 0} ()
  LOAD INTEGER 396  (396)
  LOAD INTEGER 0  (396 0)
  LOAD INTEGER 2  (396 0 2)
  [u]&Filter Modifying Dungeon[/u]
DSA at 0(0,31)
Row=0;Col=3Monster! { 3 1} ()
(0)RETURN ()[23]
DSA MyName State 0 MSG 1
(0)Execute DSA at 0(0,31) master at 0(0,31) state=0,msg=1
(0)RETURN ()[0]
DSA MyName State 0 MSG 2
(0)Execute DSA at 0(0,31) master at 0(0,31) state=0,msg=2
(0)RETURN ()[0]
just in case that extra information might help you help me...[/code][/quote]

Posted: Tue Nov 14, 2006 4:10 am
by Paul Stevens
Quotes form the documentation:

Code: Select all

Certain operations are not allowed in DSA filters.  Generally, these are operations that could result in objects being added or deleted from the dungeon.  An example is &MOVE which causes an object to be deleted from one location in the dungeon and added to another.  These operations are listed in the Help page which can be accessed from the DSA editor Dialog.

Code: Select all

The following stack oerations cannot be used in filters
 Each has an 'Indirect' form with a '%'. Example: '&%THROW'.
 The indirect form is consumated with '&%INDIRECT'.
 The indirect forms can use:
  &%DELAY ( time . . . )
 which has the effect of delaying the next executed 'Indirect' Action.

  &THROW (type objectLocation launchLocation direction range damage delta ...)
  &CELL! (location index num ...); Set info about dungeon location
  &COPY ( idSrc idDst ... ) ; Copy an object (eg: Change Actuator target.)
  &DEL   (obj <location> ...) ;Delete from dungeon
  &ADD   (posMsk <location> obj ...) ;Add item to dungeon
  &MOVE  ( <source> <destination> ... ); Move item within game.
             <source> and <destination> are identical. Each with 5 parameters.
             ( locationType objMask positionMask location depth )
  &CAST(...) ; Cast spell using previously stored parameters
  &MONSTER! (id index num ...) ;Set monster information

Posted: Tue Nov 14, 2006 4:34 am
by ADDF_Toxic
Ah, first tried &MOVE, then tried to figure out how to set a monster HP to 0 (using &MONSTER!)...so I guess those would both give that error...what luck to use them both...I totally forgot about that help window in the DSA dialog...thx for the reply, I'll get it eventually (I'm sure soon)

Posted: Tue Nov 14, 2006 7:22 pm
by beowuuf
You crearte an indirect filte,r which is simply a filter with '&%indirect' in it, then put an instance in the dungeon. In the global settings, you can them point the engine to the location for your 'indirect filter'

Then, what you do is use &%monster!, and &%move in the filters

Note, normal DSAs are fine, only filters need these versions, and only the ones altering something to do with the dungeon - so you can &Monster@ ok

There is a section on indirect filters in the documantation

Posted: Wed Nov 15, 2006 3:20 am
by ADDF_Toxic
I expected you to have posted here, beowuuf :). Sophia told me about that, who got that information from you, it did work to get a rid of the error, and you just gave me a bit more information, so thank you...and looking at my first post, I guess I can't underline in code, woops, lol. :)

Posted: Wed Nov 15, 2006 7:58 am
by beowuuf
I expect sophia had read the docs - anyway, hope it works

Posted: Wed Nov 15, 2006 3:07 pm
by ADDF_Toxic
It did work to get rid of the error, which I think is all that I was asking for in this topic...:)