Hengband 3.0.0Alpha53 has been released in Japanese and English versions:
"This time around, a lot of refactoring is the main thing" says the Google translation of a tweet ( https://twitter.com/deskull/status/1495401696142319623 ) from developer deskull--aka sikabane-works--and he drew a nifty graphic to go with it:
(Also available in a massive poster-sized version)
Google-translated change list:
Features, fixes, tweaks, etc:
- Lightened blue color for greater legibility
- Blacksmith can extract essence from negative pval items
- Added a special message when Sauron is detected when activating Palantir Stone. Debug command unique detec…
- English: avoid "angband" in startup failure messages. Resolves # 2116.
- Fixed logic inversion based on Habu's point.
- Based on Habu's comment, we made it easier to understand variable names that are difficult to understand.
- Fixed a bug that works even for enemies that do not slow down.
- When I reviewed the code based on Mr. Habu's point, the logic was wrong (simply dead save data can not be read ...
- According to Habu's point, I closed the file when an exception occurred, fixed the logic to start over when the blacksmith's save could not be read, and the old barge ...
- Defined is_fuel () method in ObjectType and solved the problem that it could be activated even with a light source running out of fuel.
- Fixed an easy mistake of substituting x value for y value of open space size processing.
- Delete unused variables.
- Added const and changed ProbabilityTable processing to pick_one_at_random ().
- Fixed a bug that vanish_dungeon () did not work in normal dungeons.
- Reimplement the numeric input of wiz_kill_enemy () with get_value ().
- Removed keymap assignments to unwanted suicide commands
- Fixed GCC compilation error and MSVC compilation warning
- Accelerate lookup_kind ()
- Total number of towns> If the number of shop owners is set, duplicate selection is allowed (substantially for my home and museum)
- captured_monster_speed was unsigned (110 is 0 speed), so I fixed it.
- Fixed a bug that the flags set by the update_object_flags function are not reflected.
- Fixed a bug that old_race_flags_ptr does not reflect the behavior and race flags.
- The BOM is off, so attach it again.
- Added BOM check to Workflow of build test
- Display a list of attributes that can be specified with wiz_kill_target ()
Refactoring:
- Deleted object_type :: xtra1
- The multiple implementation problem that xtra1.c had was solved, so I deleted the todo comment.
- Added comments to VARIANT_NAME and ROOT_VARIANT_NAME
- Changed the length calculation of variant name in info-loader.cpp to compile time constant
- Debugging equipment enhancement routines have been modified to determine first
- Defined equals () method in PlayerClass
- Defined is_soldier () method in PlayerClass
- Defined has_additional_speed () method in PlayerClass
- Defined is_every_magic () method in PlayerClass
- Replaced'player_ptr-> pclass == HOGE' to'Player Clas…
- Defined has_number_of_spells_learned () method in Pla…
- Defined is_tamer () method in PlayerClass
- Defined has_poison_resistance () method in PlayerClass
- Defined can_browse () and has_listed_magics () methods…
- Defined is_tough () method in PlayerClass
- Defined is_martial_arts_pro () method in PlayerClass
- Changed struct object_type to class ObjectType
- Removed inclusion of the header'tval-types.h' from…
- Replace inside_quest with quest_number
- Create inside_quest method
- QUEST_IDX abolished
- floor_type * Replaced the declaration of floor_ptr with auto
- ObjectType * Replaced o_ptr declaration with auto
- ObjectType * Replaced the declaration of q_ptr with auto
- ObjectType * Replaced the declaration of j_ptr with auto
- grid_type * Replaced g_ptr declaration with auto
- monster_type * Replaced m_ptr declaration with auto
- monster_race * Replaced r_ptr declaration with auto
- artifact_type * Replaced the declaration of a_ptr with auto
- feature_type * Replaced the declaration of f_ptr with auto
- object_kind * Replaced the declaration of k_ptr with auto
- QuestId Replaced the declaration of q_idx with auto
- quest_type * Replaced the declaration of q_ptr with auto
- Alignment :: update_alignment () with this added to player_ptr
- Separated apply-magic-lite.cpp/h from apply-magic-ot…
- Moved processes from apply_magic () to give_ego_index…
- Separated add_dark_flag () from give_cursed ()
- Reshaped the constructor of LiteEnchanter
- Renamed enchant () to sval_enchant ()
- Removed unused level argument from LiteEnchanter constructor
- Removed unused power argument from apply_magic_others ()
- For Linux-based main files, change return (hoge); to return hoge; ...
- Replaced return (hoge); in gameterm.cpp with return hoge;
- For folders a to h, replace (hoge); with return hoge; (some machines ...
- Replaced return (hoge); with return hoge; for folders i to l
- For the m folder and main-win.cpp, return (hoge); to return hoge…
- Replaced return (hoge); with return hoge; for the o folder.
- Replaced return (hoge); with return hoge; for folders p to r.
- Replaced return (hoge); with return hoge; for the s folder.
- Replaced return (hoge); with return hoge; for folders from t to z.
- It was main-xaw.cpp that was thought not to die unless it was deleted 10 times, but in reality it will die if it is deleted only once ...
- The remaining three of the four heavenly kings, the comments that mentioned XAW, the pre-production, and the gamma adjustment were all deleted, and Beelzebub's ...
- Defined an exception for Hengband
- ObjectType :: xtra3 chest_level and captured_monster_speed…
- Removed alias for XTRA8 type that is no longer used
- Moved XTRA1 to the old flag because the item flag is too tight.
- Fixed a potential bug that XTRA1 cannot be reused
- Redefine Enum of race and virtue
- Added definition of race / virtue flag
- Match token definitions
- Replaced with new definition
- Match monster-object.cpp
- atoffset () macro abolished
- Save data to ver12
- Conditional expressions with long lines should be received once as variables.
- Shaping
- The room generation process that refers to v_info.txt was completely contrary to the DRY principle, so I will summarize the three types.
- Specify the candidate selection of the fixed room in the Probability Table.
- typedef Replaced all struct declarations with struct declarations
- Vectorize debug_spell_commands_list.
- xtra4 The processing of the calling object-flags.cpp was a round copy, so I summarized it.
- Apply get_value () to the item input of wiz_kill_me ().
- Object :: xtra4 fuel and captured_monster_current_hp and smith…
- Following Habu's comment, the SMITH _ * flags have been combined into SMITH.
- Summarize each store item with a vector.
- Renamed ObjectType :: xtra5 to captured_monster_max_hp
- Removed XTRA16 type alias
- Adjusted the variable type of cap_ * to the actual situation
- The monster HP in the monster ball was causing narrow casting, so I changed it to a static cast (overall ...
- Changed the store type of owners to unordered_map type.
- Changed function macro SPEED_TO_ENERGY () to a normal function
- Changed extract_energy from array to vector
- Removed SPEED type alias
- Integrate wiz_kill_enemy and wiz_kill_me.
- HIT_POINT Alias is aligned with int
- Removed 1 narrow casting warning from MSVC
- Defined the monster information in the monster ball as a structure
- effect-processor :: project () depends on g_cap_mon_ptr from places other than ...
- Change the type of nickname from alias to primitive and change! Nickname to nickname ==…
- Delete unnecessary todo in input-key-processor.cpp and update date
- According to Habu's comment, define the part that is really necessary with std :: optional, and call from other parts ...
- Reshaped player-race.cpp
- Renamed current_player_ptr to player_ptr
- player-> prace == Replaced HOGE with PlayerRace (). Equals (HOGE)
- Term renamed to game_term
- Renamed AngbandWndProc () to angband_window_procedure ()
- Abolished the type alias of STR_OFFSET and unified it to ushort.
- Changed gf_desc from static array to vector
- Renamed gf_desc to gf_descriptions (clearly plural)
- Reshaped interpret_z_token ()
- gf_color [] holds index value (ushort) of quarks instead of TERM_COLOR ...
- Redefining resistance and weaknesses
- Added resistance / weakness mask
- Replace with redefined one
- Match token definition
- Save data version to 14
"This time around, a lot of refactoring is the main thing" says the Google translation of a tweet ( https://twitter.com/deskull/status/1495401696142319623 ) from developer deskull--aka sikabane-works--and he drew a nifty graphic to go with it:
(Also available in a massive poster-sized version)
Google-translated change list:
Features, fixes, tweaks, etc:
- Lightened blue color for greater legibility
- Blacksmith can extract essence from negative pval items
- Added a special message when Sauron is detected when activating Palantir Stone. Debug command unique detec…
- English: avoid "angband" in startup failure messages. Resolves # 2116.
- Fixed logic inversion based on Habu's point.
- Based on Habu's comment, we made it easier to understand variable names that are difficult to understand.
- Fixed a bug that works even for enemies that do not slow down.
- When I reviewed the code based on Mr. Habu's point, the logic was wrong (simply dead save data can not be read ...
- According to Habu's point, I closed the file when an exception occurred, fixed the logic to start over when the blacksmith's save could not be read, and the old barge ...
- Defined is_fuel () method in ObjectType and solved the problem that it could be activated even with a light source running out of fuel.
- Fixed an easy mistake of substituting x value for y value of open space size processing.
- Delete unused variables.
- Added const and changed ProbabilityTable processing to pick_one_at_random ().
- Fixed a bug that vanish_dungeon () did not work in normal dungeons.
- Reimplement the numeric input of wiz_kill_enemy () with get_value ().
- Removed keymap assignments to unwanted suicide commands
- Fixed GCC compilation error and MSVC compilation warning
- Accelerate lookup_kind ()
- Total number of towns> If the number of shop owners is set, duplicate selection is allowed (substantially for my home and museum)
- captured_monster_speed was unsigned (110 is 0 speed), so I fixed it.
- Fixed a bug that the flags set by the update_object_flags function are not reflected.
- Fixed a bug that old_race_flags_ptr does not reflect the behavior and race flags.
- The BOM is off, so attach it again.
- Added BOM check to Workflow of build test
- Display a list of attributes that can be specified with wiz_kill_target ()
Refactoring:
- Deleted object_type :: xtra1
- The multiple implementation problem that xtra1.c had was solved, so I deleted the todo comment.
- Added comments to VARIANT_NAME and ROOT_VARIANT_NAME
- Changed the length calculation of variant name in info-loader.cpp to compile time constant
- Debugging equipment enhancement routines have been modified to determine first
- Defined equals () method in PlayerClass
- Defined is_soldier () method in PlayerClass
- Defined has_additional_speed () method in PlayerClass
- Defined is_every_magic () method in PlayerClass
- Replaced'player_ptr-> pclass == HOGE' to'Player Clas…
- Defined has_number_of_spells_learned () method in Pla…
- Defined is_tamer () method in PlayerClass
- Defined has_poison_resistance () method in PlayerClass
- Defined can_browse () and has_listed_magics () methods…
- Defined is_tough () method in PlayerClass
- Defined is_martial_arts_pro () method in PlayerClass
- Changed struct object_type to class ObjectType
- Removed inclusion of the header'tval-types.h' from…
- Replace inside_quest with quest_number
- Create inside_quest method
- QUEST_IDX abolished
- floor_type * Replaced the declaration of floor_ptr with auto
- ObjectType * Replaced o_ptr declaration with auto
- ObjectType * Replaced the declaration of q_ptr with auto
- ObjectType * Replaced the declaration of j_ptr with auto
- grid_type * Replaced g_ptr declaration with auto
- monster_type * Replaced m_ptr declaration with auto
- monster_race * Replaced r_ptr declaration with auto
- artifact_type * Replaced the declaration of a_ptr with auto
- feature_type * Replaced the declaration of f_ptr with auto
- object_kind * Replaced the declaration of k_ptr with auto
- QuestId Replaced the declaration of q_idx with auto
- quest_type * Replaced the declaration of q_ptr with auto
- Alignment :: update_alignment () with this added to player_ptr
- Separated apply-magic-lite.cpp/h from apply-magic-ot…
- Moved processes from apply_magic () to give_ego_index…
- Separated add_dark_flag () from give_cursed ()
- Reshaped the constructor of LiteEnchanter
- Renamed enchant () to sval_enchant ()
- Removed unused level argument from LiteEnchanter constructor
- Removed unused power argument from apply_magic_others ()
- For Linux-based main files, change return (hoge); to return hoge; ...
- Replaced return (hoge); in gameterm.cpp with return hoge;
- For folders a to h, replace (hoge); with return hoge; (some machines ...
- Replaced return (hoge); with return hoge; for folders i to l
- For the m folder and main-win.cpp, return (hoge); to return hoge…
- Replaced return (hoge); with return hoge; for the o folder.
- Replaced return (hoge); with return hoge; for folders p to r.
- Replaced return (hoge); with return hoge; for the s folder.
- Replaced return (hoge); with return hoge; for folders from t to z.
- It was main-xaw.cpp that was thought not to die unless it was deleted 10 times, but in reality it will die if it is deleted only once ...
- The remaining three of the four heavenly kings, the comments that mentioned XAW, the pre-production, and the gamma adjustment were all deleted, and Beelzebub's ...
- Defined an exception for Hengband
- ObjectType :: xtra3 chest_level and captured_monster_speed…
- Removed alias for XTRA8 type that is no longer used
- Moved XTRA1 to the old flag because the item flag is too tight.
- Fixed a potential bug that XTRA1 cannot be reused
- Redefine Enum of race and virtue
- Added definition of race / virtue flag
- Match token definitions
- Replaced with new definition
- Match monster-object.cpp
- atoffset () macro abolished
- Save data to ver12
- Conditional expressions with long lines should be received once as variables.
- Shaping
- The room generation process that refers to v_info.txt was completely contrary to the DRY principle, so I will summarize the three types.
- Specify the candidate selection of the fixed room in the Probability Table.
- typedef Replaced all struct declarations with struct declarations
- Vectorize debug_spell_commands_list.
- xtra4 The processing of the calling object-flags.cpp was a round copy, so I summarized it.
- Apply get_value () to the item input of wiz_kill_me ().
- Object :: xtra4 fuel and captured_monster_current_hp and smith…
- Following Habu's comment, the SMITH _ * flags have been combined into SMITH.
- Summarize each store item with a vector.
- Renamed ObjectType :: xtra5 to captured_monster_max_hp
- Removed XTRA16 type alias
- Adjusted the variable type of cap_ * to the actual situation
- The monster HP in the monster ball was causing narrow casting, so I changed it to a static cast (overall ...
- Changed the store type of owners to unordered_map type.
- Changed function macro SPEED_TO_ENERGY () to a normal function
- Changed extract_energy from array to vector
- Removed SPEED type alias
- Integrate wiz_kill_enemy and wiz_kill_me.
- HIT_POINT Alias is aligned with int
- Removed 1 narrow casting warning from MSVC
- Defined the monster information in the monster ball as a structure
- effect-processor :: project () depends on g_cap_mon_ptr from places other than ...
- Change the type of nickname from alias to primitive and change! Nickname to nickname ==…
- Delete unnecessary todo in input-key-processor.cpp and update date
- According to Habu's comment, define the part that is really necessary with std :: optional, and call from other parts ...
- Reshaped player-race.cpp
- Renamed current_player_ptr to player_ptr
- player-> prace == Replaced HOGE with PlayerRace (). Equals (HOGE)
- Term renamed to game_term
- Renamed AngbandWndProc () to angband_window_procedure ()
- Abolished the type alias of STR_OFFSET and unified it to ushort.
- Changed gf_desc from static array to vector
- Renamed gf_desc to gf_descriptions (clearly plural)
- Reshaped interpret_z_token ()
- gf_color [] holds index value (ushort) of quarks instead of TERM_COLOR ...
- Redefining resistance and weaknesses
- Added resistance / weakness mask
- Replace with redefined one
- Match token definition
- Save data version to 14
Comment