![]() |
#1 |
Knight
Join Date: May 2008
Location: Saratoga, California (in the midst of Silicon Valley)
Posts: 515
![]() |
Feature request: generalize "drop chosen"
A feature I would like to see added to the game is a generalization of the "drop chosen" attribute. Right now (3.0.9b; I haven't see top-of-trunk) only Morgoth has this attribute, and there is a lot of special code in the source to deal with it. But it has the potential to add a lot of chrome if it could be applied to other monsters. Say, have Fundin Bluecloak always drop a high level prayer book. Or a dark elven mage always have a wand or rod (or other magical device). I don't know that you'd want to have monsters (other than Morgoth) always drop specific artifacts in Vanilla as that might affect play balance in unexpected ways, but other sorts of drops would seem to add nice chrome without really changing the game significantly. It also seems like it would be a boon for crafting variants, where there might be "side quests" where you need to go defeat some specific villain in order to gain the special magic sword, etc.
|
![]() |
![]() |
![]() |
#2 |
Angband Devteam member
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 42
Posts: 1,516
![]() |
I think you'd have to do rejigger the monster.txt (or some other file) to allow this. Currently flags can't really be parameterized, so unless you want a new DROP_CHOSEN_* flag for every different "chosen item" you'd need a way of specifying which chosen item(s) got dropped.
That said I think the general idea is interesting. For V, it seems like you could solve it with (new) flags like DROP_HI_PRAYER or something. As far as having some uniques drop other specific items, it might be harder. |
![]() |
![]() |
![]() |
#3 | |
Prophet
Join Date: Mar 2008
Posts: 2,755
![]() |
Quote:
It wouldn't work for artifact drops, but it gets about halfway to the request. OTOH, perhaps it *is* time to redo the txt files. Do we have any yacc experts with too much free time? |
|
![]() |
![]() |
![]() |
#4 | |
Angband Devteam member
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 42
Posts: 1,516
![]() |
Quote:
In particular, having the first S: line mean "how often does the monster cast" and every other line mean "which spells does the monster cast" seems like a horrible hack (albeit a very very old horrible hack). |
|
![]() |
![]() |
![]() |
#5 | |
Veteran
Join Date: Apr 2007
Posts: 1,951
Donated: $40
![]() |
Quote:
![]() Note that it isn't necessary that the first S: line means that. You can do 1_IN_x anywhere and it works. What exactly do you mean by "normalise and update"? And Eddie, what do you mean by "redo"? I've had syntax for a new kind of text file around for ages, and Shanoah Alkire wrote a parser and outputter to write that new format a while ago. |
|
![]() |
![]() |
![]() |
#6 |
Angband Devteam member
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 42
Posts: 1,516
![]() |
I said "normalize and update."
![]() What I meant was at least the following: 1. Filter the current files according to a deterministic set of rules so that "editor/creator" programs have a deterministically correct way outputting records, that is guaranteed to jive with the file and not cause unnecessary SVN diffs. 2. Move all important info out of comments and into fields (the HD and FORCE_MAXHP fields are good examples of this in the monster.txt file). And possibly including: 3. Use a less opaque format, either something like XML, or a custom format that has labels. For instance: monster { id 2 name "Scrawny Cat" ... } 4. Include one or more parsing libraries in the distro so that people who write tools can link against (or use) these rather than writing their own. |
![]() |
![]() |
![]() |
#7 |
Vanilla maintainer
Join Date: Apr 2007
Location: Canberra, Australia
Age: 57
Posts: 9,481
Donated: $60
![]() ![]() |
Could I suggest a custom format, rather than something tied to a current fad^H^H^H programming paradigm? One of the big reasons for Angband's survival (apart from general awesomeness) is that "agility" has mostly been restricted to platform-specific code.
__________________
One for the Dark Lord on his dark throne In the Land of Mordor where the Shadows lie. |
![]() |
![]() |
![]() |
#8 | |
Veteran
Join Date: Apr 2007
Posts: 1,951
Donated: $40
![]() |
Quote:
I mooted it a while ago, but for this kind of thing to be useful, multiple people have to be interested in adopting it, not just V. If there was interest, that'd be nice, but I believe UnAndrew isn't a massive fan of adopting a new format and I didn't hear anyone say "yes, this would be really good" rather than just "sounds alright" at the time. OTOH, if people were interested, I'd be very happy to write a parser, since I find writing parsers quite fun. ![]() |
|
![]() |
![]() |
![]() |
#9 | ||
Vanilla maintainer
Join Date: Apr 2007
Location: Canberra, Australia
Age: 57
Posts: 9,481
Donated: $60
![]() ![]() |
Quote:
![]() I wouldn't be averse to adopting it, actually - especially since FA has a few numbers (resist percentages, spell power) which are a bit hackishly read in from flags. Quote:
And make sure you get enough sleep ![]()
__________________
One for the Dark Lord on his dark throne In the Land of Mordor where the Shadows lie. |
||
![]() |
![]() |
![]() |
#10 | |
Veteran
Join Date: Apr 2007
Posts: 1,951
Donated: $40
![]() |
Quote:
|
|
![]() |
![]() |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
I finally understand how diving quicker can be "safer" | Wraitheist | Vanilla | 13 | September 19, 2008 17:25 |
Blast! Killed by a "summon monster" trap | Wraitheist | Vanilla | 10 | April 27, 2008 18:36 |
[Norseband] Help needed with "silly" time messages | ISNorden | Variants | 2 | April 4, 2008 21:06 |
Got to love this "feature" | rawuest | Vanilla | 3 | November 16, 2007 14:06 |
Roguelike idea from "Lost Magic" DS game - Mr. @ teaches typing! | ekolis | Idle chatter | 10 | October 19, 2007 03:25 |