Implementing the restructure changes

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • Nick
    replied
    Originally posted by PowerWyrm
    inven_carry() and (possibly in the future for V, currently in my variant which has a limit on monster inventory size) monster_carry() can fail, leaving an allocated object unfreed. So some tests should be added:
    - if (!inven_carry(object)) delete object
    - if (!monster_carry(object) delete object
    - be sure object is not referenced afterwards (set object to NULL and check vs NULL)
    Currently inven_carry() can only fail if the pack is already overfull, which should not happen. So my solution is to replace the failure by an assert in the function itself, and change it to void.

    For monster_carry(), I suggest you handle it how you see fit in your variant; if V then decides to introduce limited monster inventories, we can copy PWMangband

    Leave a comment:


  • Nick
    replied
    Originally posted by PowerWyrm
    Fix for #1872 should also be amended.

    After the fix, you get effects IDed even when blind. I don't think you should learn an effect if you cannot see it. Also effect projection is partly shown when blind (at least it's the case for ball wands/rods).
    I think the correct thing to do here is bring back the requirement that project() return true for ID, but make project_f() return true for elemental attacks that are seen.

    EDIT: With just the status quo plus a blindness check for bolts and beams, as they don't affect grids so project_f() doesn't help.
    Last edited by Nick; October 10, 2015, 05:37.

    Leave a comment:


  • takkaria
    replied
    Originally posted by PowerWyrm
    Everything ported up to Jun 28, 2015. This means up to the 4.0.0 release, with only two pages of changes left... I've got a large list of things to fix though, hoping some (or most) of them will be fixed by the latest changes.
    I'm really impressed! I'll be sad when you stop posting to this thread, it's been fun watching your progress...

    Leave a comment:


  • PowerWyrm
    replied
    Everything ported up to Jun 28, 2015. This means up to the 4.0.0 release, with only two pages of changes left... I've got a large list of things to fix though, hoping some (or most) of them will be fixed by the latest changes.

    Leave a comment:


  • PowerWyrm
    replied
    Typos in dungeon.txt:
    - reference to jammed doors (obsolete)
    - "a warm of half drunk warriors" (swarm)
    - reference to General Store selling scrolls (obsolete)
    - "not all weapon types will be tocked here" (stocked)
    - "taves" (staves)
    - "afe" (safe)
    - "how dungerous that level is" (dangerous -- although this one is very funny)
    - "ince" (since)
    - "ave" (save)

    Leave a comment:


  • PowerWyrm
    replied
    Typos in customize.txt:
    - "comamnds"

    Leave a comment:


  • PowerWyrm
    replied
    Typos in attack.txt:
    - "bonuses to hit and/or do damage" (to damage)
    - "care or paralyze the target" (scare)
    - "canresist"
    - "plasma and force" (force is already described on the previous line)
    - "Velocity" (Power)
    - "all other lays" (slays)

    Leave a comment:


  • PowerWyrm
    replied
    Online help and manual seem to be out of sync now.

    - help.hlp

    .. menu:: [a] general.txt

    .. menu:: [b] birth.txt

    .. menu:: [c] dungeon.txt

    .. menu:: [d] attack.txt

    .. menu:: [e] playing.txt

    .. menu:: [f] command.txt

    .. menu:: [g] option.txt

    .. menu:: [h] customize.txt

    .. menu:: [i] modifying.txt

    .. menu:: [j] version.txt

    .. menu:: [k] copying.txt
    - index.txt

    .. include:: general.txt

    .. include:: birth.txt

    .. include:: dungeon.txt

    .. include:: attack.txt

    .. include:: playing.txt

    .. include:: command.txt

    .. include:: option.txt

    .. include:: customize.txt

    .. include:: version.txt

    Leave a comment:


  • PowerWyrm
    replied
    Typos in the same file:
    - "selesction"
    - "dungein"
    - "ned"

    Leave a comment:


  • PowerWyrm
    replied
    Modifying.txt:

    names.txt
    `````````
    This file contains lists of words which are used to generate names for random
    character names, random artifacts and scrolls. Again, in the case of a change
    of theme, this is a good way of
    A good way of... what?

    Leave a comment:


  • PowerWyrm
    replied
    Originally posted by PowerWyrm
    Looking at the code, savefiles and high scores are placed into /save and /scores if USE_PRIVATE_PATHS is not defined, and in /user/save and /user/scores if defined.

    When you download the game and play it without the source code, files are placed in the /user subdirectory, which means that the game has been compiled with USE_PRIVATE_PATHS on. This is not the case in the source code.
    Nevermind, it's in the makefile...

    Leave a comment:


  • PowerWyrm
    replied
    Looking at the code, savefiles and high scores are placed into /save and /scores if USE_PRIVATE_PATHS is not defined, and in /user/save and /user/scores if defined.

    When you download the game and play it without the source code, files are placed in the /user subdirectory, which means that the game has been compiled with USE_PRIVATE_PATHS on. This is not the case in the source code.

    Leave a comment:


  • PowerWyrm
    replied
    Commit 9e8acf:

    Help has been updated for the removal of sexes... but still states there are six stats. :/

    Leave a comment:


  • hjklyubn
    replied
    Originally posted by PowerWyrm
    Commit b30e09:

    Code:
    memset(&list->total_entries, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    memset(&list->total_objects, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    I think the "&" shouldn't be there, since total_entries and total_objects are arrays.

    Code:
    memset(list->total_entries, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    memset(list->total_objects, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    Looking at the monster list, it seems the same error is there too.
    I think this makes no difference, precisely because total_entries and total_objects are arrays. If they were pointers, the first version would indeed be wrong, and the second version is probably clearer in any case.

    That said, this made me wonder whether anyone has run the angband source through a static analyzer like Coverity Scan? (Free for open-source projects.)

    Leave a comment:


  • PowerWyrm
    replied
    Commit b30e09:

    Code:
    memset(&list->total_entries, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    memset(&list->total_objects, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    I think the "&" shouldn't be there, since total_entries and total_objects are arrays.

    Code:
    memset(list->total_entries, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    memset(list->total_objects, 0, OBJECT_LIST_SECTION_MAX * sizeof(u16b));
    Looking at the monster list, it seems the same error is there too.

    Leave a comment:

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