some more questions about coding

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Malak Darkhunter
    Knight
    • May 2007
    • 730

    some more questions about coding

    So i've done some extensive work to my V variant, mainly in object.txt and monster list.txt, It seems easy to modify and tweak values as well as removing spell effects and damage values of monsters. My question though is if I add a spell to a monster such as | Missle | or | BO_COLD | will it work in the game just by modifying the creature list.txt without having to do extensive coding that I'm unfamiliar with doing.
  • Zyphyr
    Adept
    • Jan 2008
    • 135

    #2
    So long as you are using an existing spell that is already set up to be used by monsters, no changes beyond the edit file will be needed. If you want a spell that isn't already available to monsters (though I can't think of any that aren't which you would really want to give them) then you would need to do some programming.

    Comment

    • Malak Darkhunter
      Knight
      • May 2007
      • 730

      #3
      That's awsome! This coding thing is starting to turn into a hobby

      Comment

      • Derakon
        Prophet
        • Dec 2009
        • 9022

        #4
        I would tend to think of changing the edit files as "modding" instead of "coding" -- coding would require changing the source code and then recompiling. But that's just me being pedantic.

        One thing to keep in mind with spells is that if you want to give spells to a monster that doesn't currently have any, you also have to specify the casting frequency (e.g. S:1_IN_5). I think if you don't do that then the frequency is presumed to be "never", though I haven't tried.

        Comment

        • Malak Darkhunter
          Knight
          • May 2007
          • 730

          #5
          Originally posted by Derakon
          I would tend to think of changing the edit files as "modding" instead of "coding" -- coding would require changing the source code and then recompiling. But that's just me being pedantic.

          One thing to keep in mind with spells is that if you want to give spells to a monster that doesn't currently have any, you also have to specify the casting frequency (e.g. S:1_IN_5). I think if you don't do that then the frequency is presumed to be "never", though I haven't tried.
          I considered that, but wasn't for sure if it needed changed, have seen where there is 1_in 2, 1_in_6 , but there being more spells than that frequency, Possibly counts blows per round in that frequency as well?

          Comment

          • Derakon
            Prophet
            • Dec 2009
            • 9022

            #6
            The frequency is just how likely the monster is to choose to cast a spell on their turn. If they do decide to cast a spell, they then decide which spell to cast separately. So a monster with 1_IN_1 might as well have NEVER_MOVE because it will try to cast a spell every turn (well, unless it's confused). A monster with 1_IN_2 will cast spells 50% of the time, and the other 50% attempt to move towards the player (or attack if they're already in melee range). And so on.

            Comment

            • ekolis
              Knight
              • Apr 2007
              • 921

              #7
              A monster with 1_IN_2 will cast spells 50% of the time, and the other 50% attempt to move towards the player (or attack if they're already in melee range). And so on.
              Huh, so monsters that are not casting spells ALWAYS move toward the player and attempt to melee? Odd that I never noticed that before... well, OK, I did think it was a bit strange that novice mages didn't run away when I attempt to melee them, but I didn't realize they actively pursued the player too!
              You read the scroll labeled NOBIMUS UPSCOTI...
              You are surrounded by a stasis field!
              The tengu tries to teleport, but fails!

              Comment

              • Malak Darkhunter
                Knight
                • May 2007
                • 730

                #8
                Originally posted by Derakon
                The frequency is just how likely the monster is to choose to cast a spell on their turn. If they do decide to cast a spell, they then decide which spell to cast separately. So a monster with 1_IN_1 might as well have NEVER_MOVE because it will try to cast a spell every turn (well, unless it's confused). A monster with 1_IN_2 will cast spells 50% of the time, and the other 50% attempt to move towards the player (or attack if they're already in melee range). And so on.
                Hmmm, definetly noted will have to remember the frequency when I modify the spell tables for monsters and movement, thanks for clearing that up. I'm experimenting with making a variant more D@D based, So weapons Damage Dice will be completly changed as well as artifacts to reflect basic weapon damage Die. Note this is an experiment, so not sure how this will work end game but I'm envisioning something like this:

                1. Daggers-1d4 no change really
                2. Short swords, maces, spears, quarterstaffs-1d6
                3. Longswords, broadswords, Axes, morningstars, warhammers, light flails-1d8
                4. Halberds, tridents, Lucerne Hammers, Katanas, Bastard Swords-1d10
                5. Great Axes, Two-handed Swords, Two-handed Flails, Scythes-1d12
                6. Giant Weapons-Mace Of disruptions, Blades of Chaos, Executioner Swords-1d20.

                This won't hurt the begining game to much but late game it will definetly do a little less damage per blow. Weapon weight will be adjusted some to reflect the less damage die of the weapons.

                Blindness and Confusion will be much more rare an effect and individualized to certain monsters that make more sense for them to be able to cause those effects, in ex. Bronze dragons and the like, eyes, drujs, Angels, umber hulks, beholders, Light casting monsters.

                Some monsters like liches, will have access to more spells, such as frost bolts, fire bolts, lightning bolts, Greater undead like Master liches will cast fire balls, Cold balls, nether bolts. Mages and Sorcerers will have more to. Priests have summon undead abilities. Some Scare spells removed from monsters such as novice paladins, novice mages, their not powerful enough to scare anybody.

                Life Draining will also be a little more rare in general, more specialized to vampiers and ghosts, wights, wraiths. Specters, phantoms, shades, will have a weakness affect such as lose_Str touch attack, or lose_dex, Lose_Con. Hoping to not have to modify monster HP to reflect less damage Die of weapons, and artifacts. I like the idea of modifying the artifacts damage die to the same as base weapon damage die, in order to bring them closer together in competition with one another. in example: Longsword-1d8 and ringil also being 1d8, longsword anduril-1d8 and so on so forth.

                This is my idea behind it, input is greatly appreciated, but note it is an experiment to see how well it works.

                Comment

                • buzzkill
                  Prophet
                  • May 2008
                  • 2939

                  #9
                  I was wondering when someone was going to attempt an AD&Dangband. Best of luck!
                  www.mediafire.com/buzzkill - Get your 32x32 tiles here. UT32 now compatible Ironband and Quickband 9/6/2012.
                  My banding life on Buzzkill's ladder.

                  Comment

                  • LostTemplar
                    Knight
                    • Aug 2009
                    • 670

                    #10
                    1. Daggers-1d4 no change really
                    2. Short swords, maces, spears, quarterstaffs-1d6
                    3. Longswords, broadswords, Axes, morningstars, warhammers, light flails-1d8
                    4. Halberds, tridents, Lucerne Hammers, Katanas, Bastard Swords-1d10
                    5. Great Axes, Two-handed Swords, Two-handed Flails, Scythes-1d12
                    6. Giant Weapons-Mace Of disruptions, Blades of Chaos, Executioner Swords-1d20.
                    Dont forget to limit magical pluses to +6 or something like this, otherwise nothing will change.

                    Comment

                    • Malak Darkhunter
                      Knight
                      • May 2007
                      • 730

                      #11
                      Originally posted by LostTemplar
                      Dont forget to limit magical pluses to +6 or something like this, otherwise nothing will change.
                      That's good info as a matter of fact I think in the D@D world +5 was the max and that was considered "godlike" weapons.

                      Comment

                      • Malak Darkhunter
                        Knight
                        • May 2007
                        • 730

                        #12
                        If I wanted to limit dungeon levels, say max depth would be level 50, how would I go about changing that?

                        Comment

                        • Magnate
                          Angband Devteam member
                          • May 2007
                          • 5110

                          #13
                          Originally posted by Malak Darkhunter
                          If I wanted to limit dungeon levels, say max depth would be level 50, how would I go about changing that?
                          Simplest way is to change MAX_DEPTH in src/defines.h to 51. But note that you will then need to edit monster.txt otherwise half the monsters won't appear. There are also hard-coded references to Sauron and Morgoth (look for RF_QUESTOR).

                          EDIT: as with monster.txt, you should check objects, egos, artifacts, pits and vaults for native depths beyond 50.
                          "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                          Comment

                          • Malak Darkhunter
                            Knight
                            • May 2007
                            • 730

                            #14
                            Thanks Magnate!

                            Comment

                            • nppangband
                              NPPAngband Maintainer
                              • Dec 2008
                              • 926

                              #15
                              Originally posted by Magnate
                              Simplest way is to change MAX_DEPTH in src/defines.h to 51. But note that you will then need to edit monster.txt otherwise half the monsters won't appear. There are also hard-coded references to Sauron and Morgoth (look for RF_QUESTOR).

                              EDIT: as with monster.txt, you should check objects, egos, artifacts, pits and vaults for native depths beyond 50.
                              You would also need to change the depths for artifacts.txt, ego-item.txt, and objects.txt, or half the objects won't appear either.

                              Also, you need to change quest.txt. Standard Angband has 2 "quests" specified in that file: kill Sauron at level 99, and kill Morgoth at level 100. You would need to change that as well.
                              NPPAngband current home page: http://nppangband.bitshepherd.net/
                              Source code repository:
                              https://github.com/nppangband/NPPAngband_QT
                              Downloads:
                              https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

                              Comment

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