It's funny, we were discussing recently what might happen to Vanilla given the current focus on Pyrel - Jeff for Maintainer!
Seconded! I may have been the first to publicly express this idea in another thread.
(Well, I'm surely not the first to want Jeff for Angband maintainer. But in my post I included the Pyrel/Angband split as the context. In this ecosystem, Jeff as the Angband maintainer would make perfect sense.)
What I want to do is have all object flags that currently use the pval column to have their own variable (there are 14-15 of them, I think). That way, for example, Ringil can have +2 to dex while still having +10 speed. Then, I can use that array of pvals to handle tracking separate charges for stacks of wands/staffs/rods. How many pvals are there now in Vanilla? Interesting idea about having custom multipliers for the slays/kills. I like that.
As LostTemplar says, FAangband has independent 'pvals' for the stats, other bonuses (infravision, speed, etc), slays, brands and resistances. The critical change to allow this was storing this info with each individual object, rather than storing with the object kind and then looking up flags every time. This last behaviour, IMHO, is a classic example of Angband being hamstrung by an attempt to save a few bytes fifteen years ago which has never been rethought.
FA also has monster groups and group leaders, although it's fairly underdeveloped; and territorial monsters (which I haven't ever noticed making a gameplay difference, but that may just be because I'm a bad player).
One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.
Wow, those look like fun ideas and I'd love to see how they turn out.
Originally posted by nppangband
1) group monsters - they should have a collective group ai, and all follow the same, single decision (charge, flee, hide). Sometimes a group of monster hides and waits for the player to come into a room before attacking. However the player just detects and casts ball spells into the room and kills them. I want the group to figure out they are being killed and attack or run away further.
2) escorts/summons. They should be marked as such, and should take commands from their "leader/summoner", who should stay out of the battle until the escorts are killed. For example, Glarung, faher of the dragons escorts don't factor much in a battle, because Glarung is the fastest dragon. Plus, he just pushes past his escorts to get to you in an anti-summoning corridor.
I have this kind of thing in Sil. It is evident in two different places.
Firstly, I have unwary monsters that are between sleeping and alert and wander the dungeon (they can even arrive and leave via the stairs instead of the standard teleporting model of V. Do have a look at the Sil code for this (and at the manual section too). It is fairly clean and easy to do. It involves adding a 'wandering id' number to each monster when it is created and using the same one for each monster in a group. Then I pick a random place for them to wander to and generate a 'monster flow' for this index, showing how far each square is from the target, so they can just roll downhill to it. When one reaches the target it triggers a mode where they walk as if confused for a while as if they are doing something there, then a new target location is chosen and they head off. I have a larger than random chance of choosing a stair as a target. Also, if they spend too long with no progress, they choose a new location. All in all, it gives quite an illusion of purposefulness.
I also have 'intelligent' monsters like orcs or easterlings use an AI based on the 'pack AI' which cares about whether there are monsters of the same type (i.e. share a letter or race flag) in LOS of that monster. If there are, they lurk at corridor entrances (in a slightly better manner than the old pack AI) and do other things too, such as moving around a player into the room if the player hasn't completely blocked the corridor, and surrounding a player in a room (trying to be adjacent to the player and as few other monsters as possible).
There are also morale effects that depend on visible monsters of the same type. If one is killed or hit with a slaying weapon, there is a temporary morale penalty for all those of the same type who could see the incidence. Visible fleeing monsters of the same type reduce the morale of others, and if non-fleeing ones increase it, leading to realistic routing of groups. Also, monsters with the ESCORT flag have 4 times the usual effect, so they rally their troops if confident and cause them to break if killed or terrified. This leads to realistic and fun situations, as well as adding quite a lot of tactical possibility as you can try to deliberately trigger these routs. There are some tricks to avoiding too much yoyo-ing like in V, but it is quite doable.
I only use the predefined monster group indices for the wandering and find that I can get the other stuff to work based on similar monsters in LOS. You might be able to do even more by using that info though.
3) Multiple, simpler AIs - (exactly like what is described above in Sil). No matter how good a single AI is, if every monster follows it, the players quickly figure out tactics to beat it and use that every time. The monsters need unprediactability
Unpredictability is a bit of it, but I think variety is the main thing. Skilled players can (and should) be able to see which kind of behaviour each monster type will be using (as they should be thematic). That said, in Sil there are also three different wakefulness levels (asleep, unwary, alert) and three different morale levels for alert monsters (fleeing, confident, aggressive). So it is possible for a given monster to change its AI type too.
4) When the player is in a corridor, I think I can get a group of monsters to split in two squads, wait until the second squad is in position to flank the player, and then have the group attack from both sides at the same time.
I wanted to add this to Sil and tried a few tweaks to get it to happen (notably marking the player's square as impassable in the monster flow as Andrew Doull has suggested). However it didn't quite work and I didn't spend the time to work out why. This behaviour might actually be a bit *too* nasty in Sil where you have so few escapes. I'm not sure. Maybe it would be neat for an enemy that isn't all that physically powerful but gets its strength from AI (goblins?).
I changed the version numbering system, as I recently realized that software programs numbered less than 1.0.0 are condsidered experimental or beta code. NPP has been stable and playable for over 8 years, so this version is numbered 6.0.0.
Not 1.6.0? Well, doesn't really matter. By the way, the List of Angband Variants still gives 0.5.4 as the latest version.
Would you say the competition is suitable for first-time players, perhaps with Quick and Vanilla experience? And what is 4GAI?
Would you say the competition is suitable for first-time players, perhaps with Quick and Vanilla experience? And what is 4GAI?
NPP is harder than Vanilla, I would say, but that mostly kicks in later on; the early game is not going to have an excessively steep learning curve. If you've played Vanilla then you can play NPP.
4GAI is "Fourth Generation AI"; basically the monsters are smarter than they are in Vanilla. This includes tweaks to their pathing, smarter spell selection, and a few other things. To counteract the otherwise-immortality of monsters with healing spells (or teleport-player-away spells), monsters now have spellpoints that can be used up...though from what I recall most monsters have an awful lot of SP so draining it takes a long time.
Not 1.6.0? Well, doesn't really matter. By the way, the List of Angband Variants still gives 0.5.4 as the latest version.
Thanks. I will check that. I think on the NPP page at roguebasin it is up-to-date.
Originally posted by caruso
Would you say the competition is suitable for first-time players, perhaps with Quick and Vanilla experience? And what is 4GAI?
It is a fairly powerful character to start. I encourange you to give it a shot. The quests to make things pretty fun and reduces grind (IMHO). Things do get more dangerous later in the game, but the player should have more powerful equipment to balance it out as well.
I am having trouble surviving in the comp, but as a general rule variant maintainers are notoriously bad when playing their own variant.
When you spend all your time coding the game, you don't spend much time playing it. So you're out of practice. Combine that with unwarranted confidence ("I wrote this thing! I know the formulae! Surely I know what I'm doing!") and you get a lot of fatal mistakes.
Comment