Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Development

Reply
 
Thread Tools Display Modes
Old December 26, 2009, 04:40   #51
d_m
Angband Devteam member
 
d_m's Avatar
 
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 39
Posts: 1,516
d_m is on a distinguished road
Quote:
Originally Posted by andrewdoull View Post
The easy answer is either to switch the birth_campaign option off, or use debug commands and jump to Angband (dungeon 72). You'll probably want to see how the layout varies between shallow and deep dungeons as well, so ^a, j is probably your best bet.

Be sure to get the SVN version, because I think - finally - I've started to get this right.
I have done so... I'm still puttering around.

Incidentally, I ported the improved GCU mode to Unangband. If you had interesting features you didn't get from V I may have clobbered them, but this version will get you terminal resizing, xterm colors, and some other stuff. Here is the file:

http://www.bearhome.net/erik/un-main-gcu.c

Hopefully you'll find it useful.

Quote:
Originally Posted by andrewdoull View Post
I just can't see how function callbacks would be useful for dungeon generation.

My limited experience with function call backs is they are absolute essential for user interface design (Thanks Pete Mack for showing me the way), and may be useful in some other circumstances, but not necessarily. Even sorting, which has had a function call back implementation in Angband for the longest time, about half the time, it'll be easier to write an in-line sort rather than set up the comparison and swap functions.
This might be true, I don't know. I am imagining a situation where one can write different "room builder" functions, and then put them in an array of possible rooms with weights. This makes it easy to "plug-in" these things, comment them out, etc. I dunno, maybe I just like reflection and functional programming too much.
__________________
linux->xterm->screen->pmacs

Last edited by d_m; December 26, 2009 at 16:43.
d_m is offline   Reply With Quote
Old December 26, 2009, 05:25   #52
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 8,830
Derakon is on a distinguished road
Function pointers for room building are a very nice design, IMO. I've used them with great success in the past (admittedly in Python and in an OO context). The big thing they promote is a clean design: you set up (for example) a data structure that says "these room types are this likely", where a "room type" is a pointer to a function that creates the room, and then you just use the weightings to pick appropriate rooms. No need for lengthy if/else statements. It's great data-driven design.
Derakon is offline   Reply With Quote
Old December 26, 2009, 23:06   #53
andrewdoull
Unangband maintainer
 
andrewdoull's Avatar
 
Join Date: Apr 2007
Location: Sydney, Australia
Age: 44
Posts: 872
andrewdoull is on a distinguished road
Quote:
Originally Posted by Derakon View Post
Function pointers for room building are a very nice design, IMO. I've used them with great success in the past (admittedly in Python and in an OO context). The big thing they promote is a clean design: you set up (for example) a data structure that says "these room types are this likely", where a "room type" is a pointer to a function that creates the room, and then you just use the weightings to pick appropriate rooms. No need for lengthy if/else statements. It's great data-driven design.
Sangband and Unangband do exactly the same thing, but with a weighting table and a case statement. I don't see how a function callback would especially help here. Especially since the case statement is more efficient and clear as opposed to a table, which gets hard to read once the table width exceeds screen size.

Andrew
__________________
The Roflwtfzomgbbq Quylthulg summons L33t Paladins -more-
In UnAngband, the level dives you.
ASCII Dreams: http://roguelikedeveloper.blogspot.com
Unangband: http://unangband.blogspot.com
andrewdoull is offline   Reply With Quote
Old December 26, 2009, 23:11   #54
andrewdoull
Unangband maintainer
 
andrewdoull's Avatar
 
Join Date: Apr 2007
Location: Sydney, Australia
Age: 44
Posts: 872
andrewdoull is on a distinguished road
Quote:
Originally Posted by d_m View Post
I have done so... I'm still puttering around.

Incidentally, I ported the improved GCU mode to Unangband. If you had interesting features you didn't get from V I may have clobbered them, but this version will get you terminal resizing, xterm colors, and some other stuff. Here is the file:

http://www.bearhome.net/erik/un-main-gcu.c

Hopefully you'll find it useful.
Thanks. Committed. Let me know if you want SVN access (apply for an account at berlios.de and email / PM me the user account).

Andrew
__________________
The Roflwtfzomgbbq Quylthulg summons L33t Paladins -more-
In UnAngband, the level dives you.
ASCII Dreams: http://roguelikedeveloper.blogspot.com
Unangband: http://unangband.blogspot.com
andrewdoull is offline   Reply With Quote
Old December 29, 2009, 14:28   #55
Tobias
Adept
 
Tobias's Avatar
 
Join Date: Dec 2009
Posts: 172
Tobias is on a distinguished road
When we are talking about special levels, how about REALLY huge vaults. As in filling the whole level.
Sort of like nethack's big rooms or castle.
Or a long room from one end of the level to the other upstairs on one end downstairs on the other. Doors leading of the the sides. After each door a Monster pit. Behind each pit is a Treasure room.
Tobias is offline   Reply With Quote
Old December 29, 2009, 17:14   #56
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 8,830
Derakon is on a distinguished road
ToME has some special levels that are basically vaults that take up the entire level. They're...okay, I guess. Part of the problem is probably that they always occur at certain depths (in certain of ToME's many dungeons) and always have the same monsters in them. That's good thematically but does make them rather predictable. As a matter of practice, I tend to skip as much of them as possible, heading straight to the fixed reward items and/or uniques that need killing.

Presumably Vanilla wouldn't have them be anywhere near as fixed. Still, as a vault that takes up the entire level, teleportation would become effectively useless (aside from teleport-level effects), which is a big limiter on the player's options. And of course, you'd need people to make the vaults. I don't think that ToME's special levels would transfer well style-wise to Vanilla, not least because of the inclusion of Void Jumpgates (a.k.a. fixed portals between two locations) in most of them.
Derakon is offline   Reply With Quote
Old December 29, 2009, 18:29   #57
Magnate
Angband Devteam member
 
Join Date: May 2007
Location: London, UK
Posts: 5,057
Magnate is on a distinguished road
Send a message via MSN to Magnate Send a message via Yahoo to Magnate
Quote:
Originally Posted by Derakon View Post
Presumably Vanilla wouldn't have them be anywhere near as fixed. Still, as a vault that takes up the entire level, teleportation would become effectively useless (aside from teleport-level effects), which is a big limiter on the player's options.
I think this is another diver/level-clearer thing. Since I started diving I've come to see tSelf almost as a liability - taking me to a part of the dungeon I don't know, with no guarantee of a move before the monsters. Better to stay where I am if at all possible and creep around or fight my way out.

When I used to clear levels, tSelf was quite likely to take me to an empty bit of level, and was therefore a fairly reliable escape.
Magnate is offline   Reply With Quote
Old December 29, 2009, 23:33   #58
andrewdoull
Unangband maintainer
 
andrewdoull's Avatar
 
Join Date: Apr 2007
Location: Sydney, Australia
Age: 44
Posts: 872
andrewdoull is on a distinguished road
Quote:
Originally Posted by Derakon View Post
Still, as a vault that takes up the entire level, teleportation would become effectively useless (aside from teleport-level effects), which is a big limiter on the player's options.
You'd have to not mark level-sized vaults with the teleport prevention flag, simply because that flag is also checked when placing the player...

Andrew
__________________
The Roflwtfzomgbbq Quylthulg summons L33t Paladins -more-
In UnAngband, the level dives you.
ASCII Dreams: http://roguelikedeveloper.blogspot.com
Unangband: http://unangband.blogspot.com
andrewdoull is offline   Reply With Quote
Old December 30, 2009, 22:48   #59
Hariolor
Swordsman
 
Join Date: Sep 2008
Posts: 289
Hariolor is on a distinguished road
Ok, my $.02 for anyone who needs pennies:

1) Terrain - yes yes yes. There are better and worse ways to do it. I am fond of the approach in Oanband, where terrain types have generally logical relationships with magic, LOS, movement, etc. Additionally, some races could be made more useful if they gained benefits in terrain types, ie: regular ol' elves benefit in trees, gnomes have no penalty to pass over rubble, etc.

2) Themed monsters/monster ecologies - yes on this too. Not only do I personally like the idea of meaningfully populated dungeons, rather than mariliths living with snagas living with dragons living with wolves etc etc, but I also think this would give fodder to creating more intelligent/interesting monster behaviors. Coupled with some of the other suggestions like patrols/preferred areas, this could be a great addition that does not fundamentally change the game into something other than V.

3) Wide corridors - as much as I appreciate the run key, I would make the argument that any dungeon in which you spend much of your time running through empty, narrow corridors is not a very interesting place. I'd rather slowly explore a dungeon in which every level is interesting, than quickly crush through a dungeon with only one or two worthwhile rooms. I further propose that the tactical changes necessary would be fantastic. While effective, it's a bit dull when almost every encounter involves retreating down a corridor, then watching enemies quietly march single-file into my whirling blades of death (or beams of acid, if I'm a mage). Some people might find this fun because it's a predictable and effective strategy. I just personally find that it's dull and disengages me from the game by making monsters behave in thoroughly irrational ways.

4) Detection/ESP > exploration - I've suggested elsewhere that ESP be made more granular (there's a ticket for it now I think). I absolutely agree with the suggestion that this granularity be applied to detection magic as well.

5) Mazes/special traps/locks/levers/etc - I think this is getting into variant territory. The idea of making loot in vaults harder to access is a good one, I think. In fact, it has always bothered me a little bit that there's any loot on the ground at all in a vault. If the monsters are there to guard it, and TO is a known magical ability, then they would probably not leave the loot on the floor. The idea of keys/chests in vaults is not bad - or better still, if it's reasonable to code, make the more powerful enemies hold guaranteed bonus items in their inventory when found within vaults. As for special traps/regions that drain HP or mana, prevent spellcasting, etc - this is awesome in theory, but would have to be pretty rare and implemented judiciously. It's on the edge of variant territory IMO, but especially at lower levels and combined with interesting terrain, it'd potentially make DL 50-99 way more interesting. Mazes sound like great fun in theory, but probably would suck in any implementation.
Hariolor is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Over-engineering dungeon generation RogerN Variants 41 April 8, 2019 06:20
Targetting and LOS discussion wiki page PaulBlay Vanilla 60 June 28, 2009 02:42
Angband (or variant) Feature Suggestion Poll/Feedback thread PaulBlay Vanilla 77 March 9, 2009 02:40
Edit File For Dungeon Generation? Zero Vanilla 3 January 9, 2008 18:17
I need a forum for non-variant specific development discussion CJNyfalt Oook! 6 May 19, 2007 00:16


All times are GMT +1. The time now is 11:19.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.