Login Form



Who's Online

We have 15 guests online

Statistics

OS : Linux t
PHP : 5.3.29
MySQL : 5.6.36
Time : 08:58
Caching : Disabled
GZIP : Enabled
Members : 3138
Content : 171
Web Links : 6
Content View Hits : 220810

 
State Machines


Pyramids PDF Print E-mail
Written by Mithrandir   
Wednesday, 10 February 2010 08:48

Taken from Pilgrim's post:

The pyramid machines are a bit rigid in structure. The big pyramid opens and gives the Crystal of Compassion (or a crystal that looks like it) while the little pyramid has an orange flower placed in it and closes afterwards. Not a whole lot of versatility here! Included in the zip is two CDF files that house the pyramids in level 3d.

STATE_MACHINE {
KEY {PyramidCrytsalMVO}
COMMENT [Pyramid (with 5 collision radius) that opens, when approached, by message or virtual object and dispenses Crystal of Compassion when pedestal is clicked.]

PARAM {
KEY {1}
TYPE {FRAME}
COMMENT [Quest Editor display:]
DISPLAY {}}

PARAM {
KEY {2}
TYPE {INT}
DEFAULT {1}
COMMENT [Message to open pyramid:]}

PARAM {
KEY {3}
TYPE {OBJECT}
COMMENT [Virtual object to open pyramid:]}

PARAM {
KEY {4}
TYPE {OBJECT}
DEFAULT {ITEM_CRISTAL5}
COMMENT [Crystal dispensed:]}

PARAM {
KEY {5}
TYPE {SOUND}
COMMENT [Sound made when pyramid opens:]}

PARAM {
KEY {6}
TYPE {ALPHA}
COMMENT [Effect made when pyramid opens:]}

PARAM {
KEY {7}
TYPE {TEXT}
COMMENT [Pyramid's name:]}

CODE [
TRAP {
KEY {%0}
FLAG {ACTIVE|HANDLE|SIDEDETECT|NEEDPOS|LIGHT|LIGHTBUFFER|NOSHADOW|TRANSMIT}
SKELFILE {PYRA}
NAME {%7}

STATE {
KEY {CLOSED}
SETCOLLID {5}
SKELNAME {PCRISTAL}
SKELANIM {STATIC}
MULTI {
CONDITION {
MSG {%2}
GOTO {COLLIDCHECK}}
CONDITION {
OBJECT {%3}
GOTO {COLLIDCHECK}}}}

STATE {
KEY {COLLIDCHECK}
SETCOLLID {5}
SKELNAME {PCRISTAL}
SKELANIM {STATIC}
MULTI {
CONDITION {
COLLIDEX {1,6,1}
GOTO {OPENING}}}}

STATE {
KEY {OPENING}
SKELNAME {PCRISTAL}
SKELANIM {OPEN}
SETCOLLID {5}
ACTION {
SOUND {%5}
EFFECT {%6}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {OPEN}}}}

STATE {
KEY {OPEN}
SKELNAME {PCRISTAL}
SKELANIM {STATIC1}
CLEARCOLLID {5}
JUMP {WAIT}}

STATE {
KEY {WAIT}
SKELNAME {PCRISTAL}
SKELANIM {STATIC1}
SETCOLLID {1}
MULTI {
CONDITION {
CLICK {}
GOTO {CRYSTAL}}}}

STATE {
KEY {CRYSTAL}
SKELNAME {PVIDE}
SKELANIM {STATIC}
SETCOLLID {1}
ACTION {
SOUND {CRISTAL}
EFFECT {CRYSTAL}
OBJECTMOUSE {%4}}}}]}

 

STATE_MACHINE {
KEY {PyramidCrytsalSenseWear}
COMMENT [Pyramid (with 5 collision radius) that opens when approached whilst wearing oject and dispenses Crystal of Compassion when pedestal is clicked.]

PARAM {
KEY {1}
TYPE {FRAME}
COMMENT [Quest Editor display:]
DISPLAY {}}

PARAM {
KEY {2}
TYPE {OBJECT}
COMMENT [Object worn to open pyramid:]}

PARAM {
KEY {3}
TYPE {INT}
DEFAULT {6}
COMMENT [Detection radius (minimum is 6):]}

PARAM {
KEY {4}
TYPE {OBJECT}
DEFAULT {ITEM_CRISTAL5}
COMMENT [Crystal dispensed:]}

PARAM {
KEY {5}
TYPE {SOUND}
COMMENT [Sound made when pyramid opens:]}

PARAM {
KEY {6}
TYPE {ALPHA}
COMMENT [Effect made when pyramid opens:]}

PARAM {
KEY {7}
TYPE {TEXT}
COMMENT [Pyramid's name:]}

CODE [
TRAP {
KEY {%0}
FLAG {ACTIVE|HANDLE|SIDEDETECT|NEEDPOS|LIGHT|LIGHTBUFFER|NOSHADOW}
SKELFILE {PYRA}
NAME {%7}

STATE {
KEY {CLOSED}
SETCOLLID {5}
SKELNAME {PCRISTAL}
SKELANIM {STATIC}
MULTI {
CONDITION {
SENSEWEAR {%2,%3}
GOTO {OPENING}}}}

STATE {
KEY {OPENING}
SKELNAME {PCRISTAL}
SKELANIM {OPEN}
SETCOLLID {5}
ACTION {
SOUND {%5}
EFFECT {%6}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {OPEN}}}}

STATE {
KEY {OPEN}
SKELNAME {PCRISTAL}
SKELANIM {STATIC1}
CLEARCOLLID {5}
JUMP {WAIT}}

STATE {
KEY {WAIT}
SKELNAME {PCRISTAL}
SKELANIM {STATIC1}
SETCOLLID {1}
MULTI {
CONDITION {
CLICK {}
GOTO {CRYSTAL}}}}

STATE {
KEY {CRYSTAL}
SKELNAME {PVIDE}
SKELANIM {STATIC}
SETCOLLID {1}
ACTION {
SOUND {CRISTAL}
EFFECT {CRYSTAL}
OBJECTMOUSE {%4}}}}]}

 

STATE_MACHINE {
KEY {PyramidFlowerMVO}
COMMENT [Pyramid that closes when an orange flower is placed inside and sends a message and drops a virtual object.]

PARAM {
KEY {1}
TYPE {FRAME}
DEFAULT {FLEUR2VIE}
COMMENT [Quest Editor display:]
DISPLAY {}}

PARAM {
KEY {2}
TYPE {OBJECT}
DEFAULT {ITFLEUR}
COMMENT [Flower to give:]}

PARAM {
KEY {3}
TYPE {SOUND}
DEFAULT {STONEDRAG}
COMMENT [Closing sound:]}

PARAM {
KEY {4}
TYPE {INT}
DEFAULT {1}
COMMENT [Message sent when closed:]}

PARAM {
KEY {5}
TYPE {OBJECT}
COMMENT [Virtual object dropped when closed:]}

CODE [
TRAP {
KEY {%0}
FLAG {HANDLE|ACTIVE|SIDEDETECT|NEEDPOS|LIGHT|LIGHTBUFFER|CLEARMOUSE|NOSHADOW|TRANSMIT}
SKELFILE {PYRA}

STATE {
KEY {OPEN}
SETCOLLID {1}
SKELNAME {SERRE1}
SKELANIM {STATIC}
MULTI {
CONDITION {
OBJECT {%2}
GOTO {CLOSING}}}}

STATE {
KEY {CLOSING}
SETCOLLID {1}
SKELNAME {SERRE2}
SKELANIM {CLOSE}
ACTION {
SOUND {%3}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {CLOSED}}}}

STATE {
KEY {CLOSED}
SETCOLLID {1}
SKELNAME {SERRE2}
SKELANIM {STATIC}
ACTION {
MSG {%4}
OBJECT {%5}}}}]}

 

 
DoorSenseWear PDF Print E-mail
Written by Mithrandir   
Wednesday, 10 February 2010 08:46

Taken from Pilgrim's post:

It's like those automatic doors you get in supermarkets, you approach and they open... but only if you're wearing a specific object.

STATE_MACHINE {
KEY {DoorSenseWear}
COMMENT [Door that opens if the Player has an object in their worn equipment (weapons, torch, shield, armour, helmet, amulet or rings but not backpack) and is within a certain radius.]

PARAM {
KEY {1}
TYPE {FRAME}
DEFAULT {PORTES_C}
DISPLAY {}
COMMENT [Closed frame:]}

PARAM {
KEY {2}
TYPE {FRAME}
DEFAULT {PORTES_O}
COMMENT [Open frame:]}

PARAM {
KEY {3}
TYPE {ALPHA}
COMMENT [Object to sense:]}

PARAM {
KEY {4}
TYPE {INT}
DEFAULT {3}
COMMENT [Sense radius (minimum of 2):]}

PARAM {
KEY {5}
TYPE {SOUND}
COMMENT [Sound when door opens:]
DEFAULT {DOOROPEN}}

PARAM {
KEY {6}
TYPE {ALPHA}
COMMENT [Effect when door opens (e.g.: TOWNPORTALA):]}

PARAM {
KEY {7}
TYPE {LIST}
LIST [Low (e.g.: portcullis)=SETLOWCOLLID]
LIST [High (e.g.: door)=SETCOLLID]
DEFAULT [High (e.g.: door)]
COMMENT [High or low collision?]}

CODE [
TRAP {
KEY {%0}
FLAG {LIGHT|LIGHTBUFFER|NEEDPOS|SIDEDETECT}

STATE {
KEY {CLOSED}
%7 {1}
FRAME {%1}
MULTI {
CONDITION {
SENSEWEAR {%3,%4}
GOTO {OPEN}}}}

STATE {
KEY {OPEN}
CLEARCOLLID {1}
FRAME {%2}
ACTION {
SOUND {%5}
EFFECT {%6}}}}]}

 

 
DoorObject PDF Print E-mail
Written by Mithrandir   
Wednesday, 10 February 2010 08:44

Taken from Pilgrim's post:

This is an alternative to putting a key object in the mouse and clicking on the door. The machine checks for the location of a specific object when you click on it. If you fail it activates a trap but if you don't want this feature then just set the damage to zero, don't enter an effect and change the sound to DOORCLOSE for a failed rattle. The key object is an ALPHA input so if you're using a custom object remember to prefix with _CUST_ otherwise it won't open.

STATE_MACHINE {
KEY {DoorObject}
COMMENT [Door that opens when clicked if an object is either carried (weapons, torch, shield, armour, helmet, amulet, rings or backpack) or worn (weapons, torch, shield, armour, helmet, amulet or rings but not backpack) or held in the right hand (weapon or torch)]

PARAM {
KEY {1}
TYPE {TEXT}
COMMENT [Door's name:]}

PARAM {
KEY {2}
TYPE {FRAME}
DEFAULT {PORTES_C}
DISPLAY {}
COMMENT [Closed frame:]}

PARAM {
KEY {3}
TYPE {FRAME}
DEFAULT {PORTES_O}
COMMENT [Open frame:]}

PARAM {
KEY {4}
TYPE {ALPHA}
COMMENT [Key object:]}

PARAM {
KEY {5}
TYPE {LIST}
LIST [Object held in right hand=OBJECTHAND]
LIST [Object carried=OBJECTINVENT]
LIST [Object worn=OBJECTWEAR]
DEFAULT [Object worn]
COMMENT [Object's condition]}

PARAM {
KEY {6}
TYPE {SOUND}
COMMENT [Sound when door opens:]
DEFAULT {DOOROPEN}}

PARAM {
KEY {7}
TYPE {ALPHA}
COMMENT [Effect when door opens (e.g.: FARINE):]}

PARAM {
KEY {8}
TYPE {LIST}
LIST [Low (e.g.: portcullis)=SETLOWCOLLID]
LIST [High (e.g.: door)=SETCOLLID]
DEFAULT [High (e.g.: door)]
COMMENT [High or low collision?]}

PARAM {
KEY {9}
TYPE {TEXT}
COMMENT [Fail text:]}

PARAM {
KEY {10}
TYPE {SOUND}
DEFAULT {THUNDER}
COMMENT [Failure sound:]}

PARAM {
KEY {11}
TYPE {ALPHA}
COMMENT [Failure effect (e.g.: FLASH1):]}

PARAM {
KEY {12}
TYPE {INT}
DEFAULT {50}
COMMENT [Failure damage:]}

CODE [
TRAP {
KEY {%0}
FLAG {ACTIVE|LIGHT|LIGHTBUFFER|NEEDPOS|SIDEDETECT}
NAME {%1}

STATE {
KEY {CLOSED}
%8 {1}
FRAME {%2}
MULTI {
CONDITION {
%5 {%4}
GOTO {OPEN}}
CONDITION {
CLICK {}
GOTO {FAIL}}}}

STATE {
KEY {FAIL}
%8 {1}
FRAME {%2}
ACTION {
SOUND {%10}
EFFECT {%11}
HITEX {2,%12}}
TEXT {%9}
JUMP {CLOSED}}

STATE {
KEY {OPEN}
CLEARCOLLID {1}
FRAME {%3}
ACTION {
SOUND {%6}
EFFECT {%7}}}}]}

 

 
Tree PDF Print E-mail
Written by Mithrandir   
Wednesday, 10 February 2010 08:44

Taken from Pilgrim's post:

Remember that tree you chop down in the stolen baby quest? Here is a machine that allows you to duplicate it. It can either be toggled to click (if you are on the bank by the tree) or projetile hit (if it is on an island and you have to hit it with a projectile such as a bow or magic missile). The TREE machine stands on the SOLTREE block (a tree stump on a river bank). The felled tree spans five squares so you must delete a path of five collisions across the water and replace them with five TREECOLLID machines. To make your land room have editable collisions you must generate and save the quest then import the land room's CDF file back into itself (go into hierarchy mode, click on the room's properties, press import and browse to the darkstone/data/customquest/"my quest" folder where the CDF files are kept). Now edit the water path and place your machines, linking the TREE with the five TREECOLLID machines. Included in the zip is a TREE custom mesh for Quest Editor display purposes plus a CDF file with 4 SOLTREE blocks (that the tree stands on) facing each compass point (to resolve the problem of blocks not being able to be rotated on land level).

STATE_MACHINE {
KEY {Tree}
COMMENT [Tree that is chopped down by click or (if on an island) projectile hit. Transmits message when felled to clear a path across the water.]

PARAM {
KEY {1}
TYPE {FRAME}
DISPLAY {}
COMMENT [Quest Editor display (e.g.: TREE):]}

PARAM {
KEY {2}
TYPE {LIST}
LIST [Click=CLICK]
LIST [Projectile hit=PROJECTILEHIT]
DEFAULT [Click]
COMMENT [How is tree felled?]}

PARAM {
KEY {3}
TYPE {INT}
DEFAULT {0}
COMMENT [Message sent when felled:]}

CODE [
TRAP {
KEY {%0}
FLAG {ACTIVE|LIGHT|LIGHTBUFFER|NEEDPOS|POSEND|TRANSMIT|SIDEDETECT|ATTACK}
SKELFILE {TREE}

STATE {
KEY {STATIC1}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {STATIC1}
MULTI {
CONDITION {
%2 {}
GOTO {COUPE1}}}}

STATE {
KEY {COUPE1}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {COUPE1}
ACTION {
SOUND {CAISSEOPEN}
EFFECT {NOSTONE}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {STATIC2}}}}

STATE {
KEY {STATIC2}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {STATIC2}
MULTI {
CONDITION {
%2 {}
GOTO {COUPE2}}}}

STATE {
KEY {COUPE2}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {COUPE2}
ACTION {
SOUND {CAISSEOPEN}
EFFECT {NOSTONE}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {STATIC3}}}}

STATE {
KEY {STATIC3}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {STATIC3}
MULTI {
CONDITION {
%2 {}
GOTO {COUPE3}}}}

STATE {
KEY {COUPE3}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {COUPE3}
ACTION {
SOUND {CAISSEOPEN}
EFFECT {NOSTONE}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {STATIC4}}}}

STATE {
KEY {STATIC4}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {STATIC4}
MULTI {
CONDITION {
%2 {}
GOTO {COUPE4}}}}

STATE {
KEY {COUPE4}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {COUPE4}
ACTION {
SOUND {CAISSEOPEN}
EFFECT {NOSTONE}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {STATIC5}}}}

STATE {
KEY {STATIC5}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {STATIC5}
MULTI {
CONDITION {
%2 {}
GOTO {COUPE5}}}}

STATE {
KEY {COUPE5}
SETCOLLID {1}
SKELNAME {TREE}
SKELANIM {COUPE5}
ACTION {
SOUND {CAISSEOPEN}
EFFECT {NOSTONE}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {STATIC6}}}}

STATE {
KEY {STATIC6}
CLEARCOLLID {1}
SKELNAME {TREE}
SKELANIM {STATIC6}
ACTION {
MSG {%3}}}}]}

 

STATE_MACHINE {
KEY {TreeCollid}
COMMENT [Low collision that is cleared by message and displays splash effects. Five to be used in conjunction with the Tree machine.]

PARAM {
KEY {1}
TYPE {FRAME}
DISPLAY {}
COMMENT [Quest Editor display:]}

PARAM {
KEY {2}
TYPE {INT}
DEFAULT {0}
COMMENT [Message to clear collision:]}

CODE [
TRAP {
KEY {%0}
FLAG {TRANSMIT}

STATE {
KEY {INITIAL}
SETLOWCOLLID {1}
MULTI {
CONDITION {
MSG {%2}
GOTO {CLEAR}}}}

STATE {
KEY {CLEAR}
CLEARCOLLID {1}
ACTION {
EFFECT {WATER1}
EFFECT {WATER2}}}}]}

 

 
PNJMelchior PDF Print E-mail
Written by Mithrandir   
Wednesday, 10 February 2010 08:42

Taken from Pilgrim's post:

This is the wounded Melchior. When clicked he speaks and gives the Player an object before dying gracefully with a funny little gulping sound.

STATE_MACHINE {
KEY {PNJMelchior}
COMMENT [Wounded Melchior who speaks and dispenses an object when clicked then dies.]

PARAM {
KEY {1}
TYPE {TEXT}
COMMENT [Name:]}

PARAM {
KEY {2}
TYPE {ALPHA}
COMMENT [Object given:]}

PARAM {
KEY {3}
TYPE {TEXT}
COMMENT [Text:]}

PARAM {
KEY {4}
TYPE {FRAME}
DEFAULT {CADAVRE1}
DISPLAY {}
COMMENT [Quest Editor display:]}

CODE [
TRAP {
KEY {%0}
FLAG {ACTIVE|LIGHT|LIGHTBUFFER|NEEDPOS|SIDEDETECT}
NAME {%1}
SKELFILE {MULTIPNJ}

STATE {
KEY {INITIAL}
SETCOLLID {1}
SKELNAME {ECUYER}
SKELANIM {BLESSE}
MULTI {
CONDITION {
CLICK {}
GOTO {SPEAK}}}}

STATE {
KEY {SPEAK}
SETCOLLID {1}
SKELNAME {ECUYER}
SKELANIM {BLESSE}
TEXTPANEL {%3}
MULTI {
CONDITION {
CLOSEPANEL {}
GOTO {AGONIE}}}}

STATE {
KEY {AGONIE}
SETCOLLID {1}
SKELNAME {ECUYER}
SKELANIM {AGONIE}
ACTION {
SOUND {PL_DIE}
OBJECTMOUSE {%2}}
MULTI {
CONDITION {
ENDANIM {}
GOTO {MORT}}}}

STATE {
KEY {MORT}
SETCOLLID {1}
SKELNAME {ECUYER}
SKELANIM {MORT}}}]}

 

 
<< Start < Prev 1 2 3 4 5 6 7 8 9 10 Next > End >>

Page 10 of 13