iVanilla - no selling, ranged trap det, spell balances etc.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • ewert
    Knight
    • Jul 2009
    • 702

    iVanilla - no selling, ranged trap det, spell balances etc.

    Okay, messing around with github a lot still, but think now have gotten the hang of it for branching etc. enough to work with it somewhat okay. Did delete it a few times to start from clear to figure things out. =P

    GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.


    I'm trying to upload a working .exe there so people can easily test it, but no luck with Win7 / Opera or Win7 / IE. Beats me why not, flash or http version of uploading, no dice.

    Anyways, currently there is no selling option made. It replaces no_stores, takes away d/s option from all but home in stores, and increases gold drops based on vague "I think sort of like this could work"-way and one nosell/nobuy character I played. That char had plenty of gold in the end, so I increased gold drops more at low levels in a non-linear curve...

    I can test this version as I finally got a working branch of the master made, so will move on to spell balances next and then ranged trap detection.
  • Magnate
    Angband Devteam member
    • May 2007
    • 5110

    #2
    Congrats! You beat me to posting the first branch with gameplay changes - serves me right for caving in and getting Civ V!!
    "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

    Comment

    • Therem Harth
      Knight
      • Jan 2008
      • 926

      #3
      I like this. It looks more interesting and much less hacky than my own attempt.

      Suggestions for the future...

      - An "always unusual rooms" feature would be cool. (I just implemented a very primitive version in Strawberry, and it kind of works - generates pits, nests, or lesser vaults on almost every level.)

      - Vanilla seems to lack crowd combat for warriors. Adding that a la O would be nice. Maybe for rangers and paladins too, at a higher level?

      Comment

      • ewert
        Knight
        • Jul 2009
        • 702

        #4
        I think dungeon and room generation will go into more complex code mechanics, I have only a rudimentary straightforward type of coding knowledge in C so out of my depth. Crowd combat will be part of fractional blow systems for melee guys (hits dont expend full 100 energy if monster dies beforehand, I checked it out once and I could hack it, but ... most want fractional blows to also look in the low stat problems where the jump from 1 hit to 2 is too big a jump).

        Also I will streamline pseudo/id axis as well based on classlevel, ending with instant id on pickup in the end ...

        Comment

        • Derakon
          Prophet
          • Dec 2009
          • 9022

          #5
          For fractional blows, just make every melee attack only use one blow and only use as much energy as max (100, 100 / (STR mod + DEX mod) * (weapon weight mod))

          Comment

          • fizzix
            Prophet
            • Aug 2009
            • 3025

            #6
            Originally posted by Derakon
            For fractional blows, just make every melee attack only use one blow and only use as much energy as max (100, 100 / (STR mod + DEX mod) * (weapon weight mod))
            I think there's a slightly better approach which is to 'attack until either you have used a full turn worth of blows or you are disturbed.' You can even change it to attack until disturbed and completely eliminate hack and back / pillar dancing tactics. Having to reattack after each blow is a *ton* of extra keystrokes.

            Comment

            • d_m
              Angband Devteam member
              • Aug 2008
              • 1517

              #7
              Originally posted by fizzix
              I think there's a slightly better approach which is to 'attack until either you have used a full turn worth of blows or you are disturbed.' You can even change it to attack until disturbed and completely eliminate hack and back / pillar dancing tactics. Having to reattack after each blow is a *ton* of extra keystrokes.
              I don't think eliminating hack and back for melee but leaving it for ranged is a good idea.

              I think a simple implementation is best: if you have 4 blows/round, you attack until you've used 4 blows or until your target is dead. Then you lose (# blows used) / 4 of the energy you'd use for a full round of attacks.

              I can imagine fancier approaches, but I think that one would help make melee more interesting without requiring too much revision.
              linux->xterm->screen->pmacs

              Comment

              • Derakon
                Prophet
                • Dec 2009
                • 9022

                #8
                sCthangband had one-move one-blow fractional blows, and I don't remember it being a big problem movement wise. But yeah, that was mainly meant to be a simple "how to calculate energy required for a single blow" expression. What you do with it after than is up to you.

                Do we have any plans to move monsters to fractional blows too? sCthangband had that; IIRC how it worked was that monsters had a movement speed and an attack speed, and then a selection of possible melee attacks they could use, which were selected at random. So a nine-headed hydra would have an attack speed of 9x base and a movement speed of 2x base, and its bites would randomly burn or poison.

                d_m: the issue I have with your approach is that it leaves in the massive jump in power between 1 blow/round and 2 blows/round. Ideally you should be able to use any amount of energy per blow from e.g. 150 (for a level-1 mage trying to use Grond) to 12 (for the warrior with ridiculously lucky randarts).

                Comment

                • d_m
                  Angband Devteam member
                  • Aug 2008
                  • 1517

                  #9
                  Originally posted by Derakon
                  d_m: the issue I have with your approach is that it leaves in the massive jump in power between 1 blow/round and 2 blows/round. Ideally you should be able to use any amount of energy per blow from e.g. 150 (for a level-1 mage trying to use Grond) to 12 (for the warrior with ridiculously lucky randarts).
                  Yeah, I guess I had forgotten that eliminating the break points was the thing people wanted. You're right that my plan doesn't help that at all. The thing I was trying to do was make melee a little more flexible (a la archery) at dealing with many small targets.
                  linux->xterm->screen->pmacs

                  Comment

                  • PowerDiver
                    Prophet
                    • Mar 2008
                    • 2820

                    #10
                    Originally posted by d_m
                    I don't think eliminating hack and back for melee but leaving it for ranged is a good idea.

                    I think a simple implementation is best: if you have 4 blows/round, you attack until you've used 4 blows or until your target is dead. Then you lose (# blows used) / 4 of the energy you'd use for a full round of attacks.
                    IMO when you attack, you should continue attacking until disturbed. The same for archery [with the same ammo]. If you do not have enough energy left, that counts as a disturb.

                    You need to have both energy over 100 and energy >= max {all monsters' energies} for it to be your turn.

                    So suppose you have 4 blows, which means 25 energy per blow. If you somehow start at 130 energy, you get a blow and are down to 105 energy. Then, if 105 is high enough you get another blow immediately, else some monster gets its turn. Repeat until everyone is below 100, and then increment the game turn counter and add energy and continue.

                    This means that with 4 blows against a double speed opponent, you generally alternate two blows in between its turns rather than getting 4 blows and then it getting two moves.

                    There are obviously lots of approaches with different plusses and minuses. I'm not saying this is necessarily best, but it is my favorite.

                    Comment

                    • Magnate
                      Angband Devteam member
                      • May 2007
                      • 5110

                      #11
                      Originally posted by PowerDiver
                      IMO when you attack, you should continue attacking until disturbed. The same for archery [with the same ammo]. If you do not have enough energy left, that counts as a disturb.

                      You need to have both energy over 100 and energy >= max {all monsters' energies} for it to be your turn.

                      So suppose you have 4 blows, which means 25 energy per blow. If you somehow start at 130 energy, you get a blow and are down to 105 energy. Then, if 105 is high enough you get another blow immediately, else some monster gets its turn. Repeat until everyone is below 100, and then increment the game turn counter and add energy and continue.

                      This means that with 4 blows against a double speed opponent, you generally alternate two blows in between its turns rather than getting 4 blows and then it getting two moves.

                      There are obviously lots of approaches with different plusses and minuses. I'm not saying this is necessarily best, but it is my favorite.
                      That's rather lucky for me, since this is how I've started on it ...
                      "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                      Comment

                      • Derakon
                        Prophet
                        • Dec 2009
                        • 9022

                        #12
                        How would that scheme handle this situation?

                        Monster @ 110 energy
                        Player @ 120 energy with 25 energy cost/blow

                        Player attacks once. Now has 95 energy. Therefore disturb player; now monster's turn.
                        Monster casts a spell. Now has 10 energy. Game adds energy to everyone until someone can take a turn => player @ 100 energy, monster @ 15 energy.
                        Player attacks once. Now has 75 energy. 75 < 100; therefore disturb player. Game adds energy to everyone until someone can take a turn => player @ 100 energy, monster @ 40 energy.
                        Player attacks once...

                        In other words, this seems like it would lead to a lot of single blows. I agree that you should need at least 100 energy before you get a turn (otherwise you could do something other than attack and end up with negative energy), but I think you should continue attacking until you have less energy than at least one monster, or attacking again would give you negative energy. The way Eddie wrote it, it sounds like this wasn't what he was thinking of. Or did I misinterpret?

                        Comment

                        • PowerDiver
                          Prophet
                          • Mar 2008
                          • 2820

                          #13
                          Originally posted by Derakon
                          How would that scheme handle this situation?

                          Monster @ 110 energy
                          Player @ 120 energy with 25 energy cost/blow

                          Player attacks once. Now has 95 energy. Therefore disturb player; now monster's turn.
                          Monster casts a spell. Now has 10 energy. Game adds energy to everyone until someone can take a turn => player @ 100 energy, monster @ 15 energy.
                          Player attacks once. Now has 75 energy. 75 < 100; therefore disturb player. Game adds energy to everyone until someone can take a turn => player @ 100 energy, monster @ 40 energy.
                          Player attacks once...

                          In other words, this seems like it would lead to a lot of single blows. I agree that you should need at least 100 energy before you get a turn (otherwise you could do something other than attack and end up with negative energy), but I think you should continue attacking until you have less energy than at least one monster, or attacking again would give you negative energy. The way Eddie wrote it, it sounds like this wasn't what he was thinking of. Or did I misinterpret?
                          When energy is less than 100, the player doesn't move yet, but isn't disturbed either. He just keeps on acting, the way you keep on acting turn after turn as you run.

                          I guess I screwed up my explanation. I was thinking of multiple ways to describe it and got them confused together. Sorry about that.

                          Comment

                          • Magnate
                            Angband Devteam member
                            • May 2007
                            • 5110

                            #14
                            Originally posted by PowerDiver
                            When energy is less than 100, the player doesn't move yet, but isn't disturbed either. He just keeps on acting, the way you keep on acting turn after turn as you run.

                            I guess I screwed up my explanation. I was thinking of multiple ways to describe it and got them confused together. Sorry about that.
                            So when does @ stop acting? If not disturbed by external events (e.g. monster dying), is it when his energy is less than his energy required for another blow? That's the only way this approach makes sense to me, otherwise you dramatically weaken the first attack against a sleeping monster ...
                            "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                            Comment

                            • PowerDiver
                              Prophet
                              • Mar 2008
                              • 2820

                              #15
                              Originally posted by Magnate
                              So when does @ stop acting? If not disturbed by external events (e.g. monster dying), is it when his energy is less than his energy required for another blow? That's the only way this approach makes sense to me, otherwise you dramatically weaken the first attack against a sleeping monster ...
                              You are right that this approach does dramatically weaken against a sleeping monster at the moment. In the long term, I think the fix to that is to make monsters awaken with -100 energy. The current method to hack so they do not attack the first move when they wake needs to be redone, unless I am confused how it works which is a possibility.

                              More generally, this system favors the defending monster. On average, against equal speed, if a monster steps next to you and you attack you will get half your blows before you start alternating its turn then your attacks. I think this seems fair.

                              One way I think this should be improved is that when waiting, with '5' or rest or search, you should stay at 99 energy. If you do that, then when the monster steps next to you you will generally start with a full set of blows.

                              Comment

                              Working...
                              😀
                              😂
                              🥰
                              😘
                              🤢
                              😎
                              😞
                              😡
                              👍
                              👎