Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Vanilla

Reply
 
Thread Tools Display Modes
Old January 9, 2009, 00:21   #1
PowerDiver
Prophet
 
Join Date: Mar 2008
Posts: 2,712
PowerDiver is on a distinguished road
general squelch issues

I've been messing around with improved squelching for a while, and keep
changing how I do things. It's time to come up with some specifics, and then
incorporate them into V hopefully in a way that can be then grabbed into
variants without too much pain.

However, first there are issues to be resolved.

The first question is whether there should be a separate pseudo level I have
referred to as {splendid}, which refers to items that are obviously excellent
the moment you wield them, even without pseudo, e.g. boots of speed. The
reason is so that you could specify quality squelch of excellent but not
splendid, squelching boots of stability but not speed and squelching armor of
resistance but not of elvenkind [assuming stealth boosts are obvious].

There definitely needs to be a new pseudo level {tainted} for items
simultaneously excellent and worthless, such as nazgul launchers, since the
plan is to have more of those in the future. So in any event there will have
to be at least 1 additional pseudo level.


The second question, much bigger, is whether there should even be quality
squelch at all. I believe in the model that the player should be provided
with the definitions of all of the egos, but that seems to be a minority
opinion. If you do not know all of the egos, how can it ever be safe to
squelch an excellent dagger when possibly there might be an unknown ego that
provides damage of {base damage * 20 vs evil} ?

It would be feasible to only allow squelching of particular seen egos. A bit
more generally, one could specify sets of object flags (and weight, damage
dice, etc) and squelch items whose flags are a subset of one of the given sets.


It may not seem related, but I need to know whether branded weapons should be
obvious upon wield. The upcoming 3.1 will make brands obvious at least upon a
successful hit. Is there any strong opposition to making them obvious on wield?


Somewhat related, I added pseudo levels on jewelry to my patch. I thought it
was necessary for the way I dealt with artifacts, but I was mistaken. I have
found it necessary to recognize artifacts when they are wielded. This brings
up a couple more questions.

Should artifacts be recognized immediately when wielded?

Should jewelry pseudo?


Also, squelching is about ignoring, not object destruction. Is there any
reason that artifacts should not be squelchable, assuming they are no better
than other items that would be squelched?


Finally, one goal of my squelch interface is to avoid menus, and there is no
separate squelch command. When you 'k'ill an object, it first asks if you
wish to squelch it, and if so tries to guess larger classes of objects you may
wish to squelch and interrogates you about them. Only if you say no to
squelching are you asked if you want to destroy the object. Does anyone have
a problem with this approach?
PowerDiver is offline   Reply With Quote
Old January 9, 2009, 00:35   #2
chem
Adept
 
Join Date: Sep 2007
Posts: 150
chem is on a distinguished road
Quote:
Originally Posted by PowerDiver View Post
The second question, much bigger, is whether there should even be quality
squelch at all. I believe in the model that the player should be provided
with the definitions of all of the egos, but that seems to be a minority
opinion. If you do not know all of the egos, how can it ever be safe to
squelch an excellent dagger when possibly there might be an unknown ego that
provides damage of {base damage * 20 vs evil} ?

It would be feasible to only allow squelching of particular seen egos. A bit
more generally, one could specify sets of object flags (and weight, damage
dice, etc) and squelch items whose flags are a subset of one of the given sets.
IMO, Squelching should be a meta-activity, dictated by the player, not the game. Therefore, it should only be required to depend upon things the player observes: item descriptions, changes in speed/stealth, etc. It should not be required to depend on specific ego items being identified, and only then being able to squelch those. If the player wishes to take a risk squelching all excellents and missing out on that x20 versus evil dagger, that's their risk to run. That being said, a more selective squelching system, which allowed you to squelch "all excellents-except-these-types" would be welcome. It's still based on player, not character, knowledge.

I found that after the learning curve, the hengband/entroband squelch (and pickup/inventory management) system was really quite awesome. Have a look if you've never tried it? It's more text than menu based, but something like its functionality could be adapted towards menus.
chem is offline   Reply With Quote
Old January 9, 2009, 01:05   #3
d_m
Angband Devteam member
 
d_m's Avatar
 
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 40
Posts: 1,516
d_m is on a distinguished road
You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:

# boots of speed +4 kept
# boots of stability [6,+10] squelched
# boots of stability [6, +15] kept
squelch non-artifact armor
keep excellent boots
squelch boots of stability if ac < 20

or even

# if wearing resist cold shield [2, +5], would squelch
# resist fire shield [2, +1] but not resist fire shield [2, +10]
squelch non-artifact armor
keep excellent armor if ac > slot.ac

Like I said, I'm not sure there is a nice GUI way to do it, but for players who don't mind writing the equivalent of firewall rules, this interface could be very powerful. I would be interested in writing a squelching engine capable of these sorts of rules if there is at least a moderate chance it could be incorporated.

What do people think? Obviously the syntax is kind of stream of consciousness.
d_m is offline   Reply With Quote
Old January 9, 2009, 01:11   #4
takkaria
Veteran
 
takkaria's Avatar
 
Join Date: Apr 2007
Posts: 1,947
Donated: $40
takkaria is on a distinguished road
Quote:
Originally Posted by d_m View Post
You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:

# boots of speed +4 kept
# boots of stability [6,+10] squelched
# boots of stability [6, +15] kept
squelch non-artifact armor
keep excellent boots
squelch boots of stability if ac < 20

or even

# if wearing resist cold shield [2, +5], would squelch
# resist fire shield [2, +1] but not resist fire shield [2, +10]
squelch non-artifact armor
keep excellent armor if ac > slot.ac

Like I said, I'm not sure there is a nice GUI way to do it, but for players who don't mind writing the equivalent of firewall rules, this interface could be very powerful. I would be interested in writing a squelching engine capable of these sorts of rules if there is at least a moderate chance it could be incorporated.

What do people think? Obviously the syntax is kind of stream of consciousness.
I wouldn't be interested in anything that made people write config files. You can get 80% of the effect with 20% of the complexity, and that's the point I like to hit.
takkaria is offline   Reply With Quote
Old January 9, 2009, 01:21   #5
d_m
Angband Devteam member
 
d_m's Avatar
 
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 40
Posts: 1,516
d_m is on a distinguished road
Quote:
Originally Posted by takkaria View Post
I wouldn't be interested in anything that made people write config files. You can get 80% of the effect with 20% of the complexity, and that's the point I like to hit.
I figured as much. I'm not sure that this situation is 80/20 though. Right now the engine squelches if it matches any of the criteria you set out (e.g. if you squelch all good weapons, you can't "opt out" of that). I'm not sure how you get "destroy all cursed items except for the cursed items i like" without having to create new "value classes" for all the different stuff, or letting the player create a list.

Anyway, I will wait and see what you folks come up with.

One easy feature I'd like to see is a "blade of chaos" type similar to the "DSM" type, to avoid squelching those. Sometimes they're the only way I can get rchaos. I might try to whip up a patch for that.
d_m is offline   Reply With Quote
Old January 9, 2009, 01:40   #6
Donald Jonker
Knight
 
Join Date: Jun 2008
Posts: 593
Donald Jonker is on a distinguished road
Eddie, I really think it's time to release your works more widely so people can see your ideas in action rather than on paper. Even if it's a bit buggy (and it really isn't), I believe the lack of consensus you receive in the forums and newsgroups will evaporate once people have a chance to try it out. It's just too difficult to weigh in on things like {splendid} or {tainted} unless you've experienced them and seen how they've affected the game. But it's your work and I'm sorry to be pushy, but everyone would benefit from this - even if the code isn't ready to be adopted, the very ideas should be disseminated.

The fact that there was even a debate started here over whether automatizer/config files should be brought in shows how much we need Mr. Grove's Incredible Squelching Machine.

Edit: I think the maxim that it's easier to apologize than to ask permission should be the guiding principle here.
Donald Jonker is offline   Reply With Quote
Old January 9, 2009, 01:59   #7
PowerDiver
Prophet
 
Join Date: Mar 2008
Posts: 2,712
PowerDiver is on a distinguished road
Quote:
Originally Posted by d_m View Post
You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:

# boots of speed +4 kept
# boots of stability [6,+10] squelched
# boots of stability [6, +15] kept
squelch non-artifact armor
keep excellent boots
squelch boots of stability if ac < 20
This is already accomplished without any config files, well nearly done anyway. You would be quality squelching good boots, and specifically squelching some particular metal shod boots of stability [6,+10] weighing whatever they weigh.

Future work would be to allow the player to override the weight, accomplishing the last squelch if ac < 16 [or 20 you inscribe the better boots !d!k and squelch them], but I don't have a UI for that yet.

I don't much believe in the artificial distinction between artifacts and other items, so it would only be squelch non-splendid [i.e. all but elvenkind] armor at the moment.

Work remains to be done, but before I do it I need to figure out the framework.
PowerDiver is offline   Reply With Quote
Old January 9, 2009, 02:58   #8
Zikke
Veteran
 
Join Date: Jun 2008
Location: Los Angeles
Posts: 1,068
Zikke is on a distinguished road
It has always been my opinion that the act of IDing items shouldn't detract from the main fun of the game, which is exploring the dungeon, finding items, and combat. I love the pseudo-ID of warriors (and mages with ID spell) because it puts out of mind the overhead of finding out what I found and gives me more time for the fun parts of the game.
Zikke is offline   Reply With Quote
Old January 9, 2009, 03:25   #9
chem
Adept
 
Join Date: Sep 2007
Posts: 150
chem is on a distinguished road
Quote:
Originally Posted by d_m View Post
You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:
As I alluded to in my first reply, hengband/entroband basically lets the players do this sort of thing. It's all written rules. It works very well.
chem is offline   Reply With Quote
Old January 9, 2009, 16:13   #10
Donald Jonker
Knight
 
Join Date: Jun 2008
Posts: 593
Donald Jonker is on a distinguished road
Quote:
Originally Posted by chem View Post
As I alluded to in my first reply, hengband/entroband basically lets the players do this sort of thing. It's all written rules. It works very well.
It does indeed work very well. The problem is the "written" part. Whenever you want to modify your rules you have to suspend play and engage in something which is a lot like coding, and isn't very fun. I suppose once you've sunk enough hours into heng/entro and have garnered enough expertise and your squelch config becomes more sophisticated you don't need to spend as much time on it, but until then, it's really a chore.

Moreover, there's always the anxiety that you're inadvertently squelching something that could be helpful. I remember agonizing over how to squelch things that would poison me but not things that would cure it, or things that would poison others.

Ideally, I think that squelching should happen as much as possible without leaving the main game screen, and require as little diversion from main gameplay as possible.

*****

So as not to derail the thread:

RE: new levels of pseudo: {splendid} is splendid. Haven't run into {tainted}.

RE: should inspection provide the definition of egos: This is a real problem for new players, with the potential of taking a lot of the magic out of the game. Then again, it's a huge convenience for veterans. Could something like monster memory work here?

RE: should elemental brands id on wield : They might as well ID upon wield, but I can see how revealing the brand through hitting ("you corrode the orc!") provides some nice flavor - already experienced this some in 3.1 (although it doesn't id the brand yet, which it should). This can go either way as far as I'm concerned.

RE: should artifacts ID on wield: Absolutely. I can't think of a more awesome flavor-wise moment than when the hero wields/dons the legendary artifact and recognizes its powers. This would be so classic.

RE: should jewelry pseudo: I don't see why not, but having tried it out, I don't see that it helps a whole lot. But it doesn't hurt any either. Just makes things more a little more convenient.

RE: squelching artifacts: I don't think there'd be any reason you'd want to do this... sounds like it'd cause more heartache through mistakes than any help it would afford. But I've never been one swimming in artifacts, so I don't know..
Donald Jonker 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
Compiling Issues Gregian Vanilla 13 July 2, 2008 15:35
Shopkeeper issues in V3.09a Vanadis Vanilla 3 March 29, 2008 01:07
Have lanterns been removed from the general store? rawuest Vanilla 5 February 25, 2008 11:05
[all] Some general questions quaxocal Variants 17 July 29, 2007 22:02
Compilation issues: can't find -lSM Daven_26d1 Vanilla 10 July 22, 2007 08:52


All times are GMT +1. The time now is 05:41.


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