Joined: Tue Dec 14, 2010 3:23 amPosts: 163Location: Where I need to be

well here is another entry by me. its not quite a mega vault but it is large. the fun feature about this vault is the crenelations that allow archers on the walls to fire into the courtyard. I may make variants of this fortress with different enemies (like undead)

My submission for contest #2: A dragon farm that's about to get an unpleasant surprise. Basically, xorns, xarens, and whatnot are about to cause a cave-in, so all tiles (including the monster/loot tiles) that aren't already walls have a chance to collapse like in SWL.

Code:

-- setStatusAll{no_teleport=true}-- Uncomment that if the collapse mechanism can't create a safe path for the player to get out.

defineTile('.', "FLOOR")defineTile('~', "CAVEIN")-- Cave-in: Cause at random, 15% of the floor tiles to become hardwalls (or just walls if the player can't move out of a hardwall. Acts as a regular wall for the-- purposes of the xaren.-- Same "uhoh" mentality as SWL: You can't breathe in a wall, and suddenly having the stone ceiling crash on you isn't going to feel good either.-- If all 4 have been dug through, 60% of the floor is now wall. If hardwall, that's not only xp the player missed, but gear the player can't get at either.defineTile('X', "HARDWALL")defineTile('#', "WALL")defineTile('-', "DOOR")-- Maybe to make things interesting, as soon as one of the cave-in tiles is breached, have all doors open. Hee. Lots of fun.defineTile('+', "DOOR_VAULT")defineTile('A', "FLOOR", nil, {random_filter={add_levels=5}, type = "humanoid"})defineTile('B', "FLOOR", nil, {random_filter={add_levels=10}, type = "humanoid"})defineTile('C', "FLOOR", {random_filter={add_levels=10, tome_mod="gvault"}}, {random_filter={add_levels=20, type = "humanoid"}})-- A, B, and C should be related in some fashion, such as "cutpurse/bandit/bandit lord" or "orc fighter/orc berserker/orc elite berserker"defineTile('W', "FLOOR", {random_filter={add_levels=20, tome_mod="gvault"}}, {random_filter={add_levels=15, type = "dragon", subtype = "wyrm"}})defineTile('D', "FLOOR", {random_filter={add_levels=10, tome_mod="vault"}}, {random_filter={add_levels=10, type = "dragon", subtype = "drake"}})defineTile('d', "FLOOR", nil, {random_filter={add_levels=5, type = "dragon", subtype = "hatchling"}})-- W, D and d should be of the same colour: In essence, this place is a "dragon farm" and the mothers are watching over their hatchlings, but are in some way unable-- to defend themselves against the humanoids holding them hostage. Maybe have W perma-pinned?defineTile('x', "FLOOR", nil, {random_filter={add_levels=15, type = "xaren"}})-- They'll start moving towards the player once the player is at the row where the C goons are.

_________________Having satelliteinternet is a lot like relying on the processes described in those RFC's for your internet. Except, instead of needing to worry about statues interrupting your connection, this time you worry about the weather. I have satellite internet. Fun, no?

So how does it work:- when a lever is used it will send a "pulse" of type lever_kind in a radius of "lever_radius" (stopped by any grids with an attribute equal to lever_block) with value "lever"- any grids with a "lever_action_kind" equal to the pulse kind will trigger, its "lever_action_value" will be increased/decreased by the pulse value (if the lever is turned on or off)- "lever_action_custom" will trigger, if any- for GENERIC_LEVER_DOOR the door will open if it received at least "lever_action" combined pulse values- if a grid has "lever_action_only_once" it will only trigger once (if the trigger function returns true)

In the example I gave it means that once all three levers are triggered the door to the south will open and a particle effect will fire of the north east. The northen door will never open because it is "protected" by lever_block (invisible to the player it is all floor to him)

Have fun !

_________________[tome] joylove: You can't just release an expansion like one would release a Kraken XD--[tome] phantomfrettchen: your ability not to tease anyone is simply stunning

Next beta will have improved support for levers.In the example bellow, the HARDWALL (tile 6) is actually a secret passage, when bumped into it will turn into floor.The generic lever door tile 5 is a toggle, every time it receives a signal it will switch from open to close/close to openAlso, not shown in the example, both lever_kind and lever_action_kind can be either strings or tables.If it is a table it will send multiple signals. The syntax is: lever_kind = {fooo=true, bar=true}

Who is online

Users browsing this forum: Baidu [Spider] and 4 guests

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot post attachments in this forum