Implementing the restructure changes

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • PowerWyrm
    replied
    In make_attack_spell(), the code makes a special case for RSF_HASTE, making effect_handler_MON_TIMED_INC() useless because it's never called.

    Leave a comment:


  • PowerWyrm
    replied
    Effects for monster/player spells implemented. Now it's time to do the same for spells in PvP and MvM modes...

    And 4.0.0 has been released, I'm still 10 months and 29 pages of changesets behind. It's gonna be hard to catch up...

    Leave a comment:


  • PowerWyrm
    replied
    Change 32aaf38:

    In process_monster_grab_objects(), the loop on objects on the floor was checking vs non-gold items to update lore. Since the check has been moved outside of the loop, the flags are now set if there is only a pile of gold on the floor, while they shouldn't.

    Leave a comment:


  • PowerWyrm
    replied
    Change 94b1c24:

    In list-spell-effects.h, duration for RSF_BLIND was given by RV(11,1,4,0).
    In monster_spell.txt, it became dice:11+1d8.

    Leave a comment:


  • Nick
    replied
    Originally posted by PowerWyrm
    Just found a very entertaining bug in my variant: the place_monster() routine checks if there is no monster on the spot where the new monster is to be placed with a call to square_monster()... but doesn't check if there is no player character. This leads to amusing situations where the monster is placed on top of a player character, making that character unseen and unable to move until the corresponding player leaves the game.

    This problem may arise if the place_monster() routine is called without a proper check for empty space. In most cases, the caller will make a check (see place_new_monster_group -- check vs square_isempty)... but I'm not sure it's the case everywhere. A double check on the 4.0 source code would be useful...
    I think it's all good, but I'm putting an explicit check in place_new_monster_one() to cut off future problems.

    Leave a comment:


  • PowerWyrm
    replied
    Just found a very entertaining bug in my variant: the place_monster() routine checks if there is no monster on the spot where the new monster is to be placed with a call to square_monster()... but doesn't check if there is no player character. This leads to amusing situations where the monster is placed on top of a player character, making that character unseen and unable to move until the corresponding player leaves the game.

    This problem may arise if the place_monster() routine is called without a proper check for empty space. In most cases, the caller will make a check (see place_new_monster_group -- check vs square_isempty)... but I'm not sure it's the case everywhere. A double check on the 4.0 source code would be useful...

    Leave a comment:


  • PowerWyrm
    replied
    The BOLT_AWARE and BOLT_STATUS effects apply on "debilitating" effects like confusion, slow, sleep, fear and such. For these the "value" passed as parameter is a duration or a power, but not damage. In 3.5 and before, there was no spell tip displayed, but now you get "dam 50" which is illogical.

    This is also true for "Bedlam" which is a ball of confusion which doesn't deal player level damage, but uses player level as power for the confusion effect. This means adding a BALL_STATUS or BALL_AWARE effect to deal with it.
    Last edited by PowerWyrm; June 19, 2015, 13:42.

    Leave a comment:


  • PowerWyrm
    replied
    Here are some spell errors:
    - the turn & dispel spells should be PROJECT_LOS_AWARE
    - there's a copy/paste error for Dispel Undead, it uses TURN_UNDEAD flag instead of DISP_UNDEAD

    More as they come...

    Leave a comment:


  • PowerWyrm
    replied
    The cure wounds spells now cure blindness and confusion... but how can you cast them if you're blind or confused?

    Note that this is perfectly valid for my variant, because Priests and Paladins can project spells on others, so they can cure other party members' status ailments with their healing spells.

    Leave a comment:


  • Derakon
    replied
    Originally posted by PowerWyrm
    You just interverted haste monster (100) and heal monster (4d6)
    I like it better that way, actually. Make it basically a full-heal, but also make the hasting not last all that long.

    Leave a comment:


  • PowerWyrm
    replied
    Originally posted by Nick
    man, that code was rubbish. I think they're all done now.
    You just interverted haste monster (100) and heal monster (4d6)

    Leave a comment:


  • Nick
    replied
    Originally posted by PowerWyrm
    Looking for more Wonder errors:
    - "speed monster" effect was using a parameter (dice) of 100
    - "heal_monster" effect was using a parameter (dice) of 4d6
    - "poly_monster" effect was using a parameter (dice) of player->lev
    man, that code was rubbish. I think they're all done now.

    Leave a comment:


  • PowerWyrm
    replied
    Originally posted by Nick
    Yes, it was sad to see that one go

    Those wonder things were all just errors, and also led me to notice that I had missed the dice for the Wonder spell in two of three classes... I also just set the sleep part in the rare effect to 40 - very slight gameplay change, and certainly not worth the effort to make it exact.
    Looking for more Wonder errors:
    - "speed monster" effect was using a parameter (dice) of 100
    - "heal_monster" effect was using a parameter (dice) of 4d6
    - "poly_monster" effect was using a parameter (dice) of player->lev

    Leave a comment:


  • Nick
    replied
    Originally posted by PowerWyrm
    Code:
    static bool effect_handler_ATOMIC_DESTRUCTION(effect_handler_context_t *context)
    ROFLMAO
    I wonder what could be handled here...
    Yes, it was sad to see that one go

    Those wonder things were all just errors, and also led me to notice that I had missed the dice for the Wonder spell in two of three classes... I also just set the sleep part in the rare effect to 40 - very slight gameplay change, and certainly not worth the effort to make it exact.

    Leave a comment:


  • PowerWyrm
    replied
    Code:
    static bool effect_handler_ATOMIC_DESTRUCTION(effect_handler_context_t *context)
    ROFLMAO
    I wonder what could be handled here...

    Leave a comment:

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