Call for mappers

All development conversation and discussion takes place here

Moderator: Moderator

Message
Author
darkgod
Master of Eyal
Posts: 10751
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Call for mappers

#31 Post by darkgod »

Xorns & xarens (and every actor) follow the same rules as the player :/
[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 ;)

Burb Lulls
Spiderkin
Posts: 480
Joined: Mon Jul 26, 2004 5:20 am
Location: Blighty

Re: Call for mappers

#32 Post by Burb Lulls »

A few ruined buildings for the Trollshaws; more about flavour than challenge, although each has a surprise for a starting adventurer. :wink:

Code: Select all

defineTile('.', "FLOOR")
defineTile(',', "GRASS")
defineTile('#', "WALL")
defineTile('X', "TREE")
defineTile('+', "DOOR")
defineTile('x', "DOOR_VAULT")

defineTile('T', "FLOOR", {random_filter={type="scroll"}}, {random_filter={name="forest troll"}})

return {
[[,,,,,,,,,,,,,]],
[[,#####,,,X,,,]],
[[,#...#,,X,,X,]],
[[,#T..#,,,,X,,]],
[[,###x#X#X.,#,]],
[[,#.....XX,.#,]],
[[,X,.,...,..+,]],
[[,X,,.X.,...+,]],
[[,,,X..,....#,]],
[[,##XX,##X#X#,]],
[[,,,,,,,,,,,,,]],
}

Code: Select all

defineTile('.', "FLOOR")
defineTile(',', "GRASS")
defineTile('#', "WALL")
defineTile('X', "TREE")
defineTile('+', "DOOR")

defineTile('T', "GRASS", nil, {random_filter={name="honey tree"}})

return {
[[,,,,,,,,,,,,,,,,,,,,,]],
[[,#################X,,]],
[[,#....#.,..,..#.X.,X,]],
[[,#....+..,,,..+..,.#,]],
[[,######..,T,,.######,]],
[[,#....+.,,,,..+....#,]],
[[,#....#....,,.#....#,]],
[[,########+#+########,]],
[[,,,,,,,,,,,,,,,,,,,,,]],
}

Code: Select all

defineTile('.', "FLOOR")
defineTile(',', "GRASS")
defineTile(';', "FLOWER")
defineTile('~', "SHALLOW_WATER")
defineTile('#', "WALL")
defineTile('X', "TREE")
defineTile('+', "DOOR")
defineTile('x', "DOOR_VAULT")

defineTile('s', "FLOOR", nil, {random_filter={name="degenerated skeleton warrior"}})

return {
[[,,,,,,,,,,,,,,,,]],
[[,#X#########X,,,]],
[[,,.+....+..,..X,]],
[[,###....#.###.,,]],
[[,#.+....#.....#,]],
[[,###....###+###,]],
[[,#sx....#,,,,,,,]],
[[,###...X#,;;;;;,]],
[[,#.+..,.,,;~~~;,]],
[[,#####X,,,;;;;;,]],
[[,,,,,,,,,,,,,,,,]],
}

darkgod
Master of Eyal
Posts: 10751
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Call for mappers

#33 Post by darkgod »

Very nice! thanks
[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 ;)

marvalis
Uruivellas
Posts: 683
Joined: Sun Sep 05, 2010 5:11 am

Re: Call for mappers

#34 Post by marvalis »

considering rattle snakes are the number one killers in the game, here is a tribute to them:
A snake pit! Filled with potions for those that survive it, that should be a nice boon for the early game. For trollshaws.

Code: Select all

defineTile(',', "GRASS")
defineTile(';', "FLOWER")
defineTile('#', "WALL")
defineTile('X', "TREE")
defineTile('x', "DOOR_VAULT")

defineTile('s', "FLOOR", {random_filter={type="potion"}}, {random_filter={name="rattlesnake"}})

return {
[[,,,,,,,,,]],
[[,#####,,,]],
[[;#sss#,X,]],
[[,#sssx,,,]],
[[,#sss#,,,]],
[[,#####;,,]],
[[,,,,,,,,,]],
}
A troll hideout! With a 6 potion reward.

Code: Select all

defineTile('.', "FLOOR")
defineTile(',', "GRASS")
defineTile('~', "SHALLOW_WATER")
defineTile('#', "WALL")
defineTile('X', "TREE")
defineTile('+', "DOOR")

defineTile('T', "FLOOR", {random_filter={type="potion"}}, {random_filter={name="forest troll"}})
defineTile('t', "FLOOR", nil, {random_filter={name="forest troll"}})
defineTile('$', "FLOOR", {random_filter={type="potion"}}, nil)

return {
[[,,,,,,,,,,,,,,,,,,,,,,]],
[[,,,XX,,X,,,,,,,,,,X,,,]],
[[,,X~~~~~~~,,~~~~~XXX,,]],
[[,XX~#####~,,~#####~,,,]],
[[,XX~#...#~~~~#...#~,X,]],
[[,XX~#.t.######.t.#~,,,]],
[[,,X~#...#.t..#...#~,X,]],
[[,XX~####+..t.+####~,,,]],
[[,XX~~~#....#####~~~,,,]],
[[,,,..t+....#$$$#~,,,X,]],
[[,,,..t+....+$$T#~,,,x,]],
[[,XX~~~#....#####~~~,X,]],
[[,,X~####+....+####~,X,]],
[[,,X~#...#....#...#~,X,]],
[[,,X~#.t.######.t.#~,,,]],
[[,XX~#...#~~~~#...#~,,,]],
[[,,X~#####~,,~#####~,,,]],
[[,,X~~~~~~~,,~~~~~~~,,,]],
[[,,XXX,X,,XXX,X,,XXX,,,]],
[[,,,,,,,,,,,,,,,,,,,,,,]],
}
Slightly different:

Code: Select all

return {
[[,,,,,,,,,,,,,,,,,,,,,,]],
[[,,,XX,,X,,,,,,,,,,X,,,]],
[[,,X,~~~~~,,,,~~~~XXX,,]],
[[,XX~~###~~,,~~###~~,,,]],
[[,XX~##.##~~~~##.##~,X,]],
[[,XX~#.t.######.t.#~,,,]],
[[,,X~##..#.t..#..##~,X,]],
[[,XX~~###+..t.+###~~,,,]],
[[,XX,~~#....#####~~,,,,]],
[[,,,..t+....#$$$#~,,,X,]],
[[,,,..t+....+$$T#~,,,x,]],
[[,XX,~~#....#####~~,,X,]],
[[,,X~~###+....+###~~,X,]],
[[,,X~##..#....#..##~,X,]],
[[,,X~#.t.######.t.#~,,,]],
[[,XX~##.##~~~~##.##~,,,]],
[[,,X~~###~~,,~~###~~,,,]],
[[,,XX~~~~~,,,,~~~~~,,,,]],
[[,,,XX,X,,XXX,X,,XXX,,,]],
[[,,,,,,,,,,,,,,,,,,,,,,]],
}
A mage hideout in the forest. Reward is 4 scrolls. It has to be connected at the bottom left, but I have no idea how to code that (since I have no vault doors).

Code: Select all

defineTile(',', "GRASS")
defineTile('#', "WALL")
defineTile('X', "TREE")
defineTile('+', "DOOR")
defineTile('t', "FLOOR", nil, {random_filter={name="skeleton mage"}})
defineTile('$', "FLOOR", {random_filter={type="scroll"}}, nil)
return {
[[XXXXXXXXXXX]],
[[X,,X,,,X,X,]],
[[X,X,,,,,,XX]],
[[X,X,,s####X]],
[[X,X,,,#$$#X]],
[[X,XX,,+$$#X]],
[[X,,XX,####X]],
[[X,,,XXXXXXX]],
}
One more, a simple S-shape

Code: Select all

defineTile(',', "FLOOR")
defineTile('#', "WALL")
defineTile('x', "VAULT_DOOR")
defineTile('+', "DOOR")
defineTile('m', "FLOOR", {random_filter={add_levels=15}}, {random_filter={add_levels=20}})
return {
[[,,,,,,,,,,,,,,,,,]],
[[,#############x#,]],
[[,#m+m#m+m#m+m#m#,]],
[[,#+#+#+#+#+#+#+#,]],
[[,#m#m#m#m#m#m#m#,]],
[[,#+#+#+#+#+#+#+#,]],
[[,#m#m#m#m#m#m#m#,]],
[[,#+#+#+#+#+#+#+#,]],
[[,#m#m+m#m+m#m+m#,]],
[[,#x#############,]],
[[,,,,,,,,,,,,,,,,,]],
}
Image

darkgod
Master of Eyal
Posts: 10751
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Call for mappers

#35 Post by darkgod »

Added!
[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 ;)

marvalis
Uruivellas
Posts: 683
Joined: Sun Sep 05, 2010 5:11 am

Re: Call for mappers

#36 Post by marvalis »

A small troll town, just make sure it is connected somehow.

Code: Select all

defineTile('.', "FLOOR")
defineTile(',', "GRASS")
defineTile('~', "SHALLOW_WATER")
defineTile('#', "WALL")
defineTile('X', "TREE")
defineTile('+', "DOOR")
defineTile('T', "FLOOR", {random_filter={type="potion"}}, {random_filter={name="forest troll"}})
defineTile('t', "FLOOR", nil, {random_filter={name="forest troll"}})

return {
[[XXX,XXXXX,XX]],
[[,X,,###,###X]],
[[,~~,#T#,#T#,]],
[[,X~,#+#,+.#,]],
[[,,,,,,,,###X]],
[[,,##+##,,,,X]],
[[X,#T..#,###X]],
[[,X#####,+T#,]],
[[XX,,,,,,###X]],
[[X,,##+#,,,,X]],
[[XX,#T.#,XXtX]],
[[,Xt####,XXXX]],
[[XXXX,,,,,XX,]],
}

Some imps and dragons guarding loot in an area with lava.

Code: Select all

defineTile('.', "FLOOR")
defineTile('~', "LAVA")
defineTile('#', "WALL")
defineTile('+', "DOOR")
defineTile('X', "VAULT_DOOR")
defineTile('I', "FLOOR", nil, {random_filter={name="Fire imp"}})
defineTile('t', "FLOOR", {random_filter={add_levels=15}}, {random_filter={name="Fire-dragon"}})
return {

[[#######X#######]],
[[###D+D+.#...###]],
[[#######.##..D##]],
[[###~~~...###+##]],
[[#.##~..#..~#..#]],
[[#.D#~.###.~#D.#]],
[[#..+...#..~#+##]],
[[##+#~~...~~~.~#]],
[[#..###I~~###+##]],
[[#....#####...~#]],
[[#~##.+..+...~~#]],
[[#~~~~#..####~~#]],
[[##~I~##D#~~~I##]],
[[###############]],
}

Repton
Archmage
Posts: 371
Joined: Wed Aug 05, 2009 2:17 am

Re: Call for mappers

#37 Post by Repton »

JRRT logo :-)

Code: Select all

defineTile(' ', "FLOOR")
defineTile('+', "DOOR")
defineTile('#', "HARDWALL")
defineTile('X', "WALL")
defineTile('c', "FLOOR", {random_filter={add_levels=10}})
defineTile('$', "FLOOR", {random_filter={add_levels=25}})
defineTile('~', "FLOOR", {random_filter={add_levels=10}}, nil, {random_filter={add_levels=10}})
defineTile('^', "FLOOR", nil, nil, {random_filter={add_levels=5}})

defineTile('u', "FLOOR", nil, {random_filter={add_levels=10, name='fire imp'}})
defineTile('D', "FLOOR", {random_filter={add_levels=20}}, {random_filter={add_levels=20, type='dragon'}})
defineTile('d', "FLOOR", {random_filter={add_levels=10}}, {random_filter={add_levels=10, type='dragon'}})
defineTile('o', "FLOOR", {random_filter={add_levels=5}}, {random_filter={add_levels=5, subtype='orc'}})
defineTile('O', "FLOOR", {random_filter={add_levels=10}}, {random_filter={add_levels=10, subtype='orc'}})
defineTile('P', "FLOOR", {random_filter={add_levels=20}}, {random_filter={add_levels=20, subtype='orc'}})

return {
[[         ####+###         ]],
[[      ####### ######      ]],
[[    ######## #########    ]],
[[   #######  ###########   ]],
[[  #########^####$#######  ]],
[[  ##########^##$#$######  ]],
[[ ##########  ###$######## ]],
[[ #########   ###X######## ]],
[[ ##d######   ###X######## ]],
[[##ddddu  c   c     ud#####]],
[[#dd#######   ######dd#####]],
[[#D####u  c  c  u####dd####]],
[[#####  ###  ###  #####d###]],
[[####ooo###  ###ooo#####dD#]],
[[####oo####  ####oo########]],
[[####oo####  ####oo########]],
[[####ooo###  ###ooo########]],
[[######OOO    OOO##########]],
[[########    # ############]],
[[######## #  #  ###########]],
[[#######u #  ## u##########]],
[[######dd##  ### d#########]],
[[####ddd###  ####dd########]],
[[#Dddd#####  #####ddd######]],
[[###d######  #######dddD###]],
[[##########  ############# ]],
[[##########   ############ ]],
[[######$###   ############ ]],
[[#####$#$XX   d########### ]],
[[######$###   dddD#######  ]],
[[########## u############  ]],
[[########## #############  ]],
[[########## ############   ]],
[[##########u############   ]],
[[ #####PP#~############    ]],
[[  ####PP~###########      ]],
[[     ############         ]],
}

Repton
Archmage
Posts: 371
Joined: Wed Aug 05, 2009 2:17 am

Re: Call for mappers

#38 Post by Repton »

Repton wrote:One for the Trollshaws:

Code: Select all

return {
[[XXXXXXXXXX]],
[[XXX   XXXX]],
[[XX #q# XXX]],
[[XX qQq XXX]],
[[XX #q# XXX]],
[[XXX   XXXX]],
[[XXXX XXXXX]],
[[XXXX   XXX]],
[[XXXXXX XXX]],
[[XX^^^^ XXX]],
[[XX^XXXXXXX]],
}
Ok, I just met one of these. Four honey trees is some serious summoning power. I got through it in the end, because (apart from the initial five bears) with shield wall, literally nothing could hurt me. So I leaned on the direction keys and killed bees and bears by the score until I finally made it to the honey trees. God knows how berserkers and rogues will cope.

Feanor.81
Wyrmic
Posts: 239
Joined: Mon Aug 23, 2010 12:52 pm
Location: Poggibonsi (Siena), Italy

Re: Call for mappers

#39 Post by Feanor.81 »

I think vaults are meant to be hard. As a general rule, if you can barely withstand the monsters wandering the area the vault is in, you should really not open that door. Come back later when you will feel powerful enough.
Don't fear the eyes of the Dark Lord / Morgoth I cry
All hope is gone, but I swear revenge / Hear my oath
I will take part in your damned fate

Hedrachi
Uruivellas
Posts: 606
Joined: Tue May 11, 2010 8:58 pm
Location: Ore uh gun, USA

Re: Call for mappers

#40 Post by Hedrachi »

My archer could deal with the bears there somewhat easily, though it did cost him all but 2 of his health potions. The bees... even with piercing arrow there were simply too many of them. Poor archer died in Amon Sul to a vault. He mistakenly believed it was a mold vault, haha. Turns out, door #2 had a maulotaur with a propensity to cast Flame.

Was kind of irritating to find that everything in there was level 24-26 while I was only level 6 tho, and this was Amon Sul 1 or 2.
Having satellite internet 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?

Feanor.81
Wyrmic
Posts: 239
Joined: Mon Aug 23, 2010 12:52 pm
Location: Poggibonsi (Siena), Italy

Re: Call for mappers

#41 Post by Feanor.81 »

Happened to me too, lost my archer to a lvl 25 skeleton master archer in a vault in amon sul (1). The damned guy was even avoiding LoS tactics, by not following me luring him behind a corner; instead, he was waiting for me to blow my head away when I finally got tired to wait for him and showed up again. There is where I was taught the aforementioned lesson.
Don't fear the eyes of the Dark Lord / Morgoth I cry
All hope is gone, but I swear revenge / Hear my oath
I will take part in your damned fate

Hedrachi
Uruivellas
Posts: 606
Joined: Tue May 11, 2010 8:58 pm
Location: Ore uh gun, USA

Re: Call for mappers

#42 Post by Hedrachi »

Maybe it would be better if the level of vault creatures were scaled down some? Like, they'd be 3 or 4 levels bigger than the player tops. Point of vaults is to have better than average gear at the cost of numerous enemies, isn't it? Fighting something 18 levels bigger than you is almost always suicide... fighting multiple things 18 levels bigger than you... you'd need lots of mana and health potions, and inferno/phase door leveled to a point of actually being able to kill them. If the vault design has creatures whose base level is higher than that, exclude it from the list of possible vaults for the level?
Having satellite internet 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?

Burb Lulls
Spiderkin
Posts: 480
Joined: Mon Jul 26, 2004 5:20 am
Location: Blighty

Re: Call for mappers

#43 Post by Burb Lulls »

VAULTS.

Demons in Eruan, with a small but desirable reward. Would how I've put it result in a plain mithril ring?

Code: Select all

setStatusAll{no_teleport=true}

rotates = {"default", "90", "180", "270", "flipx", "flipy"}

defineTile('.', "SAND")
defineTile('~', "LAVA_FLOOR")
defineTile('#', "SANDWALL_STABLE")
defineTile('T', "PALMTREE")

defineTile('1', "SAND", nil, {random_filter={name="fire imp", add_levels=4}})
defineTile('2', "SAND", nil, {random_filter={name="quasit", add_levels=4}})
defineTile('U', "SAND", nil, {random_filter={name="uruivellas", add_levels=12}})
defineTile('$', "SAND", {random_filter={name="mithril ring"}})

return {
[[..T............T.TT.]],
[[T..T..~.........~.TT]],
[[T.~....~~..1...~....]],
[[....~.2..~.~.~~.2..T]],
[[..1..~~~~.~.~~~.....]],
[[..~~...~~~~~~~..~~..]],
[[....~..~~####~~~.1..]],
[[...2.~~~##$U##~~~~..]],
[[...~~..~~####~~~....]],
[[.....~~~~~~~~~..1...]],
[[..2....~..~..~~....T]],
[[T...~~~.~...2.~.....]],
[[...~......~....~..1T]],
[[T.T...1..........~TT]],
[[TT.TT...........TTTT]],
}
It's quiet... too quiet.

Code: Select all

setStatusAll{no_teleport=true}

startx = 9
starty = 12

rotates = {"default", "90", "180", "270", "flipx", "flipy"}

defineTile('.', "FLOOR")
defineTile('X', "HARDWALL")
defineTile('+', "DOOR")

defineTile('^', "FLOOR", nil, nil, {random_filter={name="summoning alarm"}})
defineTile('$', "FLOOR", {random_filter={add_levels=5, ego_chance=40}})

return {
[[XXXXXXXXXXXXXXXXXXX]],
[[X.....^.$$$.^.....X]],
[[X.....^.....^.....X]],
[[X....XX^^^^^XX....X]],
[[X....XX.....XX....X]],
[[X....XX.....XX....X]],
[[X....$X.....X$....X]],
[[X....XX.....XX....X]],
[[X....XX.....XX....X]],
[[X....XX.....XX....X]],
[[X....^.......^....X]],
[[X....^.......^....X]],
[[XXXXXXXXX+XXXXXXXXX]],
}
A spider nest for Ardhungol. Watch your step...

Code: Select all

setStatusAll{no_teleport=true}

startx = 27
starty = 15

rotates = {"default", "90", "180", "270", "flipx", "flipy"}

defineTile('.', "FLOOR")
defineTile('X', "HARDWALL")
defineTile('!', "ROCK_VAULT", nil, nil, nil, {room_map={special=false, room=false, can_open=true}})

defineTile('^', "FLOOR", nil, nil, {random_filter={name="sticky web"}})
defineTile('s', "FLOOR", nil, {random_filter={name="faerlhing", add_levels=5}})
defineTile('S', "FLOOR", nil, {random_filter={name="ungolmor", add_levels=5}})
defineTile('$', "FLOOR", {random_filter={add_levels=15, ego_chance=25}})
defineTile('?', "FLOOR", {random_filter={add_levels=20, ego_chance=100}})

return {
[[XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX]],
[[XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX]],
[[XX$.....XXXXX............XXXXXXXX]],
[[X$s............^^^^^^^^....XXXXXX]],
[[X$s.........^^S^^^^^^^^^^....XXXX]],
[[XX$..XXX..^^^^^^^^^^^^^^^^^...XXX]],
[[XXXXXXXX..^^^^^^^^^^^^...^^^...XX]],
[[XXXXXXX...^^^^^^^^^^^..........XX]],
[[XXXXX......^^^^^^^^^...XXXX.....X]],
[[XXX....XX....^^^^^^...XXXXXX....X]],
[[XX....XXXX.....^^^^^..XXXXXX$ss$X]],
[[X.....XXXXXXX....^^^^..XXXXXX$$XX]],
[[X........?XXXXXX....^^...XXXXXXXX]],
[[XX......S.?XXXXXXXX.......sXXXXXX]],
[[XXXX.....?XXXXXXXXXXXXX..s..XXXXX]],
[[XXXXXXXXXXXXXXXXXXXXXXXXXXX!XXXXX]],
}

Final Master
Sher'Tul
Posts: 1022
Joined: Fri May 21, 2010 8:16 pm
Location: Inside the minds of all
Contact:

Re: Call for mappers

#44 Post by Final Master »

Maybe sticky this one too please?
Final Master's Character Guides
Final Master's Guide to the Arena
Edge: Final Master... official Tome 4 (thread) necromancer.
Zonk: I'd rather be sick than on fire! :D

Quatl
Yeek
Posts: 10
Joined: Mon Apr 14, 2003 4:25 pm

Re: Call for mappers

#45 Post by Quatl »

Burb Lulls wrote:Ideally, I'd want the chambers to be randomised each time, but I have no idea how to do that, and also to be immune to sensing, but I'm not even sure that's possible. I made sure every chamber had at least a monster in it, to stop any sneaky phase doors.
Can't you randomize by returning a function result? The function has the code to generate the randomized vault map?

you could even pass in the vault map you have, but put something like numerals in the spots for random stuff, your function would then just need to search and replace with the values you want. like: "return randomizejunk({MAPINESS})"

Unless I'm wrong about how these get loaded in, naked Lua would certainly allow these sorts of shenanigans.

Post Reply