Announce: DaJAngband v1.0.97 Released

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • buzzkill
    replied
    Originally posted by PowerDiver
    I disagree. If a paladin wants to be able to cast healing *in battle*, he needs to be faster than his opponent.
    Paladins are formidable fighters with god on their side. They are known for their heavy amour, not their speed. They can always heal themselves after bludgeoning their opponent.

    Leave a comment:


  • PowerDiver
    replied
    Originally posted by Pete Mack
    Cave Man nailed it: priest/paladin is about absorbing & delivering damage; mage-casters are about avoiding it in the first place. Haste Self doesn't belong in the realm of stand and deliver. If you need speed as a Priest, you have to get it the hard way, through equipment and devices.
    I disagree. If a paladin wants to be able to cast healing *in battle*, he needs to be faster than his opponent. Speed is vital for the direct approach. If you want to emphasize a phase & heal approach [it would not bother me to remove phase from the game], then <insert invective> give them phase in a town book. Caveman suggested that phase shouldn't even be a healer's spell.

    I'd rather see speed a healer-only spell. Let the mages practice elemental magic, and let the priests emphasize non-elemental buffing. Speed seems to me more to be the latter.

    Leave a comment:


  • Pete Mack
    replied
    Cave Man nailed it: priest/paladin is about absorbing & delivering damage; mage-casters are about avoiding it in the first place. Haste Self doesn't belong in the realm of stand and deliver. If you need speed as a Priest, you have to get it the hard way, through equipment and devices.

    Leave a comment:


  • will_asher
    replied
    Originally posted by PowerDiver
    Your changes need to be obvious at least to anyone who looks for them.
    It could be shown inspecting a weapon, or else on the character screen. At a minimum the +damage on "fght" and "melee" should reflect the weapon weight. Somehow you need to make obvious that "fight" damage gets multiplied by brands etc. I have no idea how to do it, but maybe if you mull on it something will come to you.

    Also you should change the bow descriptions to print the correct multiplier if you nerf them. such as a short bow (x1.75) (+0,+0) etc.
    Seems like it would be just as good and much easier to do this kind of thing in the object descriptions instead of the character screen. I made the 'melee' display on the character screen reflect weapon weight, but that's probably all I'll do on the character screen.
    I'll work on including description of the damage in the object description, like the new vanilla does (except I'll make a note of likeliness of critical hits also, since I'm trying to make them more important).
    With the range weapons, I'll note the true multiplier in the object description and I'll probably just remove the multiplier from the name ..because having a short bow (x1.75) looks kindof silly, especially since (x3) is now (x2.625).

    EDIT: I just found a bug which makes the random resist thing on some egos chose from the completely wrong set of flags. Will be fixed in next release.
    Last edited by will_asher; April 2, 2009, 07:22.

    Leave a comment:


  • PowerDiver
    replied
    Originally posted by will_asher
    Do you mean on the character screen?
    I already did this where it actually adds the strength bonus in cmd1.c.
    Your changes need to be obvious at least to anyone who looks for them. This is a little reminiscent of the [highly annoying IMO] disclosure problems involving rogue sling damage in NPP -- sort of the opposite, with +dam not getting multiplied like all other missile bonuses.

    It could be shown inspecting a weapon, or else on the character screen. At a minimum the +damage on "fght" and "melee" should reflect the weapon weight. Somehow you need to make obvious that "fight" damage gets multiplied by brands etc. I have no idea how to do it, but maybe if you mull on it something will come to you.

    Also you should change the bow descriptions to print the correct multiplier if you nerf them. such as a short bow (x1.75) (+0,+0) etc.

    Leave a comment:


  • will_asher
    replied
    Originally posted by PowerDiver
    You should modify the damage bonus for melee on the 'C' screen to reflect the weapon being wielded.
    Didn't think of that, I'll fix that for 1.0.98.

    Originally posted by PowerDiver
    Also, I guess you need to split out the bonuses that get multiplied from those that do not.
    Do you mean on the character screen?
    I already did this where it actually adds the strength bonus in cmd1.c.

    Leave a comment:


  • PowerDiver
    replied
    Originally posted by will_asher
    - My attempt at weapon balancing melee: Light weapons (4lb or less) get no strength bonus. Heavy weapons (more than 15lb) get double strength bonus.
    You should modify the damage bonus for melee on the 'C' screen to reflect the weapon being wielded.

    Also, I guess you need to split out the bonuses that get multiplied from those that do not.
    Last edited by PowerDiver; April 1, 2009, 23:07.

    Leave a comment:


  • PaulBlay
    replied
    Originally posted by will_asher
    2) Go into the object.txt file in the edit directory, and delete (or comment out) the entry for double chain mail (N:121).
    Don' forget the shops.

    I'm in the middle of hacking around the object list in my coding effort as well.

    Leave a comment:


  • Malak Darkhunter
    replied
    No harm done, I can play and start up normally. I used my wall-fix download for vista, strangely though the wall's are shaped as diamonds, it'll take a little getting used to, I'm currently trying one of your favorites the Half-Troll.

    Leave a comment:


  • will_asher
    replied
    I think I know what the problem is. I removed a few objects, but forgot to take them out everywhere that I needed to. I don't know why it would repeat the error message that many times though. I'll fix it for the next release. I guess for now just know that those are harmless messages. ..I don't want to bother my helpful host with yet another update for the same release.

    EDIT: hmm.. maybe all you need to do is two little things in the text files. It looks like I already took the objects out everywhere I needed to in the code files. Could you do me a favor and make these two changes and see if you still get those messages? (I don't know why I don't get these error messages..)
    1) Go into the p_class.txt file in the edit directory, and go to the tourist entry (N:15) and delete the line which says:
    E:19:1:1:1
    2) Go into the object.txt file in the edit directory, and delete (or comment out) the entry for double chain mail (N:121).
    Last edited by will_asher; March 26, 2009, 01:52.

    Leave a comment:


  • Malak Darkhunter
    replied
    As soon as you roll up a character and type in a name and hit enter to start the game I get No object (0.1) No object (0.1) No object (o.) -more- No object (o.1) No object (o.2) no object (o.3) Invalid object in store_create_random()! -more-

    It then repeats about three more times from (o.1) through(0.8) it reminds of something to do with the birth auto-wield code, but I'm no expert though.

    Leave a comment:


  • will_asher
    replied
    What error messages come up when you start a character?
    The term window comes up because I always use it to show the monster list, so it's visible by default. You still have to go to the options menu to tell it to show the monster list though. Maybe term window visibility should be connected to savefiles because what the term window shows is connected to savefiles.

    PS Yeah my dumps on the DaJAngband ladder are getting lonely.

    Leave a comment:


  • Malak Darkhunter
    replied
    Hey Will, I noticed several error messages when creating a character for Dajangband, they seemed to be inventory error messages, also when the game loads up there is a blank term 1 window in the background behind the term 0 window, are you using a preset configuration setting? Now I have windows Vista so the walls didn't display but I can fix that with the wall fix I downloaded a while back, had to do that with Sang as well. I noticed your name is the only one on the Dajangband ladder, I might have a chance to get my name on a high score ladder.

    Leave a comment:


  • Pete Mack
    replied
    It's much better. There are still some bugs in xtra1.c, but they don't matter much:
    xtra1.c: In function ‘calc_bonuses’:
    xtra1.c:2821: warning: suggest parentheses around && within ||
    xtra1.c:3032: warning: suggest parentheses around && within ||
    xtra1.c:3037: warning: suggest parentheses around && within ||
    xtra1.c:3042: warning: suggest parentheses around && within ||
    xtra1.c:3047: warning: suggest parentheses around && within ||
    xtra1.c:3057: warning: suggest parentheses around && within ||

    For example,
    Code:
      if ((p_ptr->pclass == 8) || (p_ptr->pclass == 10) && (p_ptr->ammo_tval == TV_SHOT))
        { /* sling kindof is a priestly weapon */
    should be:
    Code:
      if ([COLOR="yellow"]([/COLOR](p_ptr->pclass == 8) || (p_ptr->pclass == 10)[COLOR="Yellow"])[/COLOR] && (p_ptr->ammo_tval == TV_SHOT))
        { /* sling kindof is a priestly weapon */
    Other bugs:
    x-spell.c:1269: warning: suggest parentheses around assignment used as truth value
    use-obj.c:616: warning: suggest parentheses around assignment used as truth value
    You almost certainly don't want to make these assignments. (Should use == not =)

    You need to use 'return FALSE;' rather than just 'return;' in these cases:
    x-spell.c:6099: warning: ‘return’ with no value, in function returning non-void
    x-spell.c:6368: warning: ‘return’ with no value, in function returning non-void

    Finally, an explicit example of how to change x-spell.c to get rid of that spellswitch:
    Code:
           case CHEM_ENCHANT_TO_HIT:
            {
                spellswitch = 18; /* enchant only bow or arrows */
                return enchant_spell(rand_int(3) + plev / 20, 0, 0);
                spellswitch = 0;
    Should be:
    Code:
    /* In defines.h */
    enum enchant_type {
        Ench_archery,
        Ench_armor,
        Ench_weapon,
    };
    enum brand_type {
        Brand_acidcoat,
        Brand_venom,
        Brand_any
    };
    
    /* In spells2.c */
    enchant_spell(int num_hit, num_dam, num_ac, enchant_type ench)
    {
      ...
        if(ench == ENCH_ARCHERY) { /* Bows and arrows only */ }
    }
    ...
    bool brand_ammo(brand_type brand) { ... }
    
    
    /* In x-spells.c */
            case SPELL_ENCHANT_ARMOR: /* enchant armor */
            {
                return enchant_spell(0, 0, rand_int(3) + plev / 20, Ench_armor);
            }
    
            case SPELL_ENCHANT_WEAPON: /* enchant weapon */
            {
                return enchant_spell(rand_int(4) + plev / 20,
                                     rand_int(4) + plev / 20, Ench_weapon);
            }
    
    ...
            case CHEM_ENCHANT_TO_HIT:
            {
                return enchant_spell(rand_int(3) + plev / 20, 0, 0, Ench_archery);
            }
    
    ...

    EDIT: Not that you can use ordinary #defines instead of the enumerated types if you want. Just pass them as arguments explicitly rather than via a global variable (that's just a huge stylistic no-no).
    See for example:

    Leave a comment:


  • will_asher
    replied
    There is now an updated version of 1.0.97 available using the same link with some bigfixes and a little cleaner code.
    I also added the ability to donate magic items to stores for ID and no money when selling to stores is turned off. (only works for unidentified magic items, and not weapons or armor)

    Leave a comment:

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