Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rename map:: get_global->get_abs, bub_from_abs->get_bub, omt_from_abs->get_omt #79167

Merged
merged 2 commits into from
Jan 16, 2025

Conversation

PatrikLundell
Copy link
Contributor

@PatrikLundell PatrikLundell commented Jan 15, 2025

Summary

None

Purpose of change

Fix #79118, i.e. rename operations.
This is really the first PR in a series, but there's no need to keep the suggestion open.

Describe the solution

Use the "rename" VS functionality to refactor the names of:

  • map::getglobal ->map::get_abs
  • map::bub_from_abs -> map::get_bub (two instances)
  • map::omt_from_abs -> map::get_omt

Note that this shouldn't result in any functional changes.

Describe alternatives you've considered

Testing

Load save, walk up ramp, jump into car, drive through hay bales, run over zombie corpse with inventory, run over turkey, smash into stationary vehicle. Nothing odd seen.

Additional context

As indicated, this is intended as the first in a string or PRs. The others will deal with variously named position getting operations.

This PR has a high risk of causing merge conflicts given that it affects a lot of spread out places, and thus shouldn't be merged as part of a batch. That's also the reason follow up PRs won't be produced until the previous one has been merged, as resolving merge conflicts between them seems like unnecessary work.

@github-actions github-actions bot added NPC / Factions NPCs, AI, Speech, Factions, Ownership Info / User Interface Game - player communication, menus, etc. Bionics CBM (Compact Bionic Modules) Map / Mapgen Overmap, Mapgen, Map extras, Map display Vehicles Vehicles, parts, mechanics & interactions Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Code: Tests Measurement, self-control, statistics, balancing. [C++] Changes (can be) made in C++. Previously named `Code` Monsters Monsters both friendly and unfriendly. Fields / Furniture / Terrain / Traps Objects that are part of the map or its features. Scenarios New Scenarios, balancing, bugs with scenarios Player Faction Base / Camp All about the player faction base/camp/site Mechanics: Weather Rain, snow, portal storms and non-temperature environment Items: Containers Things that hold other things Mechanics: Enchantments / Spells Enchantments and spells Appliance/Power Grid Anything to do with appliances and power grid EOC: Effects On Condition Anything concerning Effects On Condition labels Jan 15, 2025
@github-actions github-actions bot requested a review from KorGgenT January 15, 2025 08:22
Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Auto-requesting reviews from non-collaborators: @andrei8l

@github-actions github-actions bot added json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions labels Jan 15, 2025
@Procyonae
Copy link
Contributor

I'd prefer if omt_from_abs and getglobal( const tripoint_omt_ms &p ) were removed altogether bc they're misleading, not preserving where the coordinate was pointing to at all unless I'm misunderstanding.
I also feel like bub_from_abs is a conveniently intuitive name and keeping it and doing getglobal -> abs_from_bub would be better but I don't have that strong an opinion on it.

@PatrikLundell
Copy link
Contributor Author

omt_from_abs and getglobal(omt) (the names changed in this PR) are direct analogs to their corresponding operations on bub positions. The difference is that they're working on tinymaps whose native coordinate system is the omt one, but they transform a local position to an absolute one and vice versa. Internally omt/bub are both the local coordinates of the position relative to the top left of their map object, with the only difference being where that position is located, and thus what range the positions can take and still lie within the map (C++ doesn't have the capability to define sub range types, so that can't be enforced without a lot of hoops, so there's no inherent range restriction: the ob/ib stuff is an attempt to sort of emulate this). That's why the implementation of the omt versions can just cast to bub coordinates. Thus, the point of having two types for the local coordinates is to remind users which coordinate ranges they're operating in.

The reason I went for get_abs/get_bub over abs_from_bub/bub_from_abs is my perception that C(++) people are adverse to long names (probably harking back to the single finger typing of old). I'm personally happy with either, as long as we're consistent. I guess we need to have some kind of a vote.
I propose:

  • laughing face for get_bub/get_abs/get_omt; and
  • frowning face for bub_from_abs/abs_from_bub/omt_from_abs/abs_from_omt
  • Thumps up: Holding a vote is a good idea
  • Thumbs down: Holding a vote is a stupid idea
  • The rest: It's fun to be a non conformist and spread confusion and obstructing things.

@Procyonae
Copy link
Contributor

Why does them being tinymap make the bub_ms directly treated as a omt_ms without projection make sense?

        tripoint_omt_ms omt_from_abs( const tripoint_abs_ms &p ) const {
            return rebase_omt( map::bub_from_abs( p ) );
        };
tripoint_omt_ms rebase_omt( tripoint_bub_ms p )
{
    return tripoint_omt_ms( p.raw() );
}

@PatrikLundell
Copy link
Contributor Author

PatrikLundell commented Jan 15, 2025

The "anchor point" of a map is the top left corner of the map, and that's what stored in abs_ms in the map object. The absolute position of a local position is the top left corner position (i.e. abs_ms) plus the relative position of the point within the map (using bub or omt coordinates as applicable), and it doesn't matter what we call our coordinate system when performing this operation.

A crucial thing about the map class hierarchy construction is that the map class has no inherent concept of its size: all that is defined on its definition (the available constructor calls the protected one, which sets up the dimensions, while the dependent classes have access to the protected operation, and thus are able to set up their dimensions differently), but the dimensions are part of the object. This means that a tinymap (and smallmap) IS a map, just defined with different dimensions. This is also why we can cast a tinymap/smallmap and things continue to work correctly (it's done in a few places where it's essentially needed unless you want to go through gymnastics with selection of function pointers in a rather messy way).

All of this means that bub and omt coordinates are identical when referring to the same map object, but they tell the user what kind of ranges to use. It would have been possible to only use bub coordinates throughout and leave it to the user to keep track of which kind of map they're operating on. Personally I think defining separate types was a good idea (it was done before my time, so I have had nothing to do with that), but I guess people with more of a C mentality might find it annoying.

If this doesn't make sense, I can try a new approach given a few hints of where the problems lie (It's always tricky to judge whether explanations make sense when you're not sure if your starting point makes sense to the receiver).

I assume it feels like a bub coordinate should push the corner away from a local location and an omt one should pull it closer, but that's not how it works. Instead, the corner location is fixed and the difference is how the coordinates are used, but these usages are all within the same context.

Edit:
Direct answer to the question:
The position is relative to the top left corner of the same map, and the map's absolute top left corner position remains unchanged as the map doesn't change size in the process.

@GuardianDll
Copy link
Member

i didn't read the pr very closely, but doesn't old name bub_from_abs imply conversion? as a layman programmer, i would find a set of functions of type x_to_y or x_from_y much easier to ghasp than get_bub

@PatrikLundell
Copy link
Contributor Author

To me both imply conversion, with the from version being explicit (and thus very clear) and the other implicit in that you feed in data in one coordinate system and receive a result in another.
I assume this means you would vote for the second option...

@GuardianDll
Copy link
Member

I'm all for any sort of standartization, i think people get used to any naming scheme as long as it would be consistent; i do not have strong opinion for specific name

@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Jan 15, 2025
@GuardianDll GuardianDll merged commit f14346c into CleverRaven:master Jan 16, 2025
29 of 30 checks passed
@PatrikLundell PatrikLundell deleted the position branch January 16, 2025 08:49
b3brodie added a commit to b3brodie/Cataclysm-DDA that referenced this pull request Jan 18, 2025
* Make storage unit pallete and array of objects

All of the other JSON in data/json is.

* Gun variants: Better common token & dupe checking

Require at least 3 letters for common tokens, with some explicit
exceptions. It might be worth going to 4 letters, but going to 3 cleaned
up some issues.

Also make the dupe check an actual error (resulting in test failure)
than just a silent one.

The guns caught by the dupe check are allowed as separate by the variant
criteria, but it may be being too lenient there and they should instead
be combined.

Fix the errors that surfaced.
- two guns had 16" and 20" barrels, name the longer one long-barreled
- Two revolvers (chiappa_rhino and colt_python) were named the same,
  name the python to indicate it looks like a old west revolver
- Name the BLR magazine with a common identifier to the the gun
- Give the FN57 an identifier (FN)
- Add pistol to BAD_IDENTIFIERS, so the USP identifier is detected

Both the FN57 and USP pistol were using "pistol" as the identifier.
The BLR was using "ing".

* Sort gun variant script valid identifier list

So it's stable and looks nicer.

* Remove some unused CBM snippets

* Reuse built clang-tidy plugin across the shards

* makes lit candle more distinct

* Update NPC.md

* Initial commit

* Fire action accounts for all kinds of shoulder straps

I've noticed only "adjustable strap" works with the fire action to drawn
weapon, and only with default format (hanging like backpack). Happens
that code checks for that specific item. Solution is to check for a flag
instead, and so works with all kinds of attachments

* initial commit

* A couple small C++20 fixes

* Add versioning to vcpkg setup

* make xedra translocators examinable in faction territory

* Set SDL_HINT_APP_NAME for tiles

See https://wiki.libsdl.org/SDL2/SDL_HINT_APP_NAME

* [Xedra Evolved] Add `fey_magick` magic type (CleverRaven#79113)

* Initial commit

* Add NO_SPELLCASTING to flags too

* Focus the default selection in popups

* [Magiclysm] Biomancy is disturbing (CleverRaven#79117)

* Initial commit

* Add pain effects to some spells

* Reduce amount of pain caused

* Fix scroll name

* Fix ClangBuildAnalyzer workflow

* [MoM] Fix Mind-sight goggles special vision sprite (CleverRaven#79119)

* Extended description window shows potential deconstruction and bash yields (CleverRaven#79107)

* Basic addition of deconstruction yields to extended description

* Deduplicate and add skill info

* Add bash yields replacing the Smashable tag

* Add the extended description keybind text to the look around window

* Less lazy formatting

* [Xedra Evolved] Increase mana cost on Arvore mana-using traits (CleverRaven#79096)

* Remove ghc/filesystem polyfill now that we are on C++17 (CleverRaven#79092)

* Remove ghc/filesystem shim now that we are on C++17

* fixies

* astyle

* teach clang-tidy about <filesystem>

* Battery compartment mod can use medium storage batteries (CleverRaven#79091)

* Update toolmod.json

* Lint

---------

Co-authored-by: Anton Simakov <[email protected]>

* [MoM] Fix Leukocyte Accumulation class (CleverRaven#79123)

* Initial commit

* Add magic class

* remove const from distance_limit

* [Xedra Evolved] Fix treesung baselard recipe (CleverRaven#79131)

* Extract special vision descriptions for translation (CleverRaven#79108)

* Extract special vision descriptions for translation

* Add includes

* Add origin arguments

* Attempt to appease flake8

* Missed iterating an array

* Fix typo

* Our flake8 makes me want to commit war crimes

* Fix various flake8 errors

* Weekly Changelog 2025-01-06 to 2025-01-13 (CleverRaven#79127)

* Weekly Changelog 2025-01-06 to 2025-01-13

* Apply suggestions from code review

---------

Co-authored-by: David Seguin <[email protected]>
Co-authored-by: Maleclypse <[email protected]>

* {CR} Adds three new lore log snippets! (CleverRaven#79058)

* new lore log snippets (draft)

the lore log snippets are one of my favorite things to be featured in cataclysm, and I wanted to write some of my own!

* Update e_logs.json

* Add three new lore log snippets

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* lint changes

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

* replace 3 spaces with 2 spaces

---------

Co-authored-by: Procyonae <[email protected]>
Co-authored-by: Anton Simakov <[email protected]>
Co-authored-by: Maleclypse <[email protected]>

* Weekly Changelog 2024-12-30 to 2025-01-06 (CleverRaven#78977)

* Weekly Changelog 2024-12-30 to 2025-01-06

* Apply suggestions from code review

---------

Co-authored-by: David Seguin <[email protected]>
Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: Anton Simakov <[email protected]>

* Fix Irradiant weapon attack

* Move refugee center start from isolationist to its own scenario (CleverRaven#79140)

* Change to start outside refugee center entrance

* Move refugee center start to its own option

* Starting on path by entrance

* use test monsters in shotgun tests (CleverRaven#79141)

* use test monsters

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Don't try to GENERATE typed coordinates (CleverRaven#79137)

* Don't try to GENERATE typed coordinates

* Adjusted according to comments

* [MoM] Add null grenades (CleverRaven#79147)

* Initial commit

* Add expended grenades

* Add snippet

* Change id to avoid confusion with _null terrain etc

* Create user mods dir automatically. (CleverRaven#79057)

* mod manager

* Update src/mod_manager.cpp

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* [Magiclysm] Fix werewolf aura (CleverRaven#79151)

* Initial commit

* Fixes

* typified a-f

* [Magiclysm] Rename 'Introduction to the Divine' to 'The Limits of Magical Recovery' (CleverRaven#79153)

* Initial commit

* Itemgroup changes

* Update data/mods/Magiclysm/items/spellbooks.json

---------

Co-authored-by: Anton Simakov <[email protected]>

* Aftershock: Genetech Mutation system or Genetically engineered Catgirls. (CleverRaven#79128)

* Aftershock Genetech

* Apply suggestions from code review

Co-authored-by: Marc <[email protected]>

---------

Co-authored-by: Anton Simakov <[email protected]>
Co-authored-by: Marc <[email protected]>

* [Aftershock] Add human++ genemods (CleverRaven#79149)

* Add genemods

* Add hobbies

* Add Genemod: Beauty

* Fix errors

* Spelling

* [Aftershock] UICA Shuttle Bases (CleverRaven#79144)

* Add UICA Shuttlebases to the Exo-Planet

* Lint

* Add a Quartermaster NPC. They can be bribed to sell you UICA gear and supplies.

* Lint

* Add Lynx Explorer Vehicle, Quartermaster has less stuff to sell, Shuttlebase spawns ground vehicles

* Add Vehicle Repair group stub

* Bump up Bribe to $3000

* Rewrite some Quartermaster dialog

* Please test gods

* Test gods please, I beg

* Correct Shuttlebase to Shuttle Base

* [ Xedrea Evolved ] Gracken Legs first tier (CleverRaven#79122)

* Legs first tier

Update harvest_monster_hunter_gracken.json

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update data/mods/Xedra_Evolved/items/gracken_trait_improvements.json

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Anton Simakov <[email protected]>

* Sort docs into subfolders

* update paths to moved docs

* better name for LORE_FAQ doc, as suggested by Kevin (thanks!)

* [MoM] Concentrating on powers at higher Nether Attunement has a chance of backlash (CleverRaven#79163)

* Initial commit

* Check for backlash on concentration breaking too.

* Change backlash messages to not reference unleashing powers

* Nether Attunement vitamin at 15 or higher, not powers maintained at 15 or higher

* Spelling

* Temporary script to automate this

* Remove meaningless weight fields

* Fix compile error, remove unneeded string initialisation, correct translation, don't write required mutation string if we're about to overwrite it with incompatible bionics

* Update skyscraper_lab_modular.json

* monstergroups "name" -> "id" in /data/json

* Commit the script so out of repo + personal mods can use it

* monstergroups "name" -> "id" in /data/mods

* Update deserialisation

* Get annoyed at flake8

* Put the script in the wrong folder like a numpty

* Fix MSVC build with lld linker

* Add an ignorable error and legacy load

* flake8 is rood

* Change C++ ids called "name" to something better too

* Rename doc/COMPILING/ -> doc/c++/

* Remove string spawn item overloads (CleverRaven#79173)

* Remove evil overloads

* Deal with fallout

* Rename map:: get_global->get_abs, bub_from_abs->get_bub, omt_from_abs->get_omt (CleverRaven#79167)

* Renamed map:: getglobal->get_abs, bub_from_abs->get_bub, omt_from_abs->get_omt

* astyle

* [Magiclysm] Remove duplicate religious professions (CleverRaven#79162)

* Update professions.json

* Redirect Lost Faith to vanilla professions, add books

* Reformat item field?

* Update data/mods/Magiclysm/scenarios.json

* Add scenario EoC

* Remove debug message

* Kick tests

---------

Co-authored-by: Anton Simakov <[email protected]>

* [ Xedra Evolved ] Fix Renfield Drops (CleverRaven#79166)

* typify game.h/cpp

* use typed point in android code

* Use sub_bodypart_str_id::NULL_ID() where appropriate

* Add attack_vector_id::NULL_ID()

* typify g - lightmap

* [MoM] Update and simplify Nether Attunement backlash EoC (CleverRaven#79175)

* More updates

* More edits

* Updating remaining effects

* Initial commit

* Initial commit

* Expand bodypart_str_id::NULL_ID() usage where appropriate

* Deal with /tests fallout

* Initial commit

* please clang

* Add CMake function do debug targets

* Add targets with dynamic linking

* Use VCPKG dynamic linking triplet

* Obey linter

* Apply review suggestions

* Fix Debug configuration linking with MSVS + LLD

* Fix zlib linking

* Prevent initialising an activity actor's type every turn it's active

* [MoM] Fix Research Facility having an oldlab underneath (CleverRaven#79191)

* Initial commit

* Implement suggestions from code review

* fix not being able to move items with charges with AIM (CleverRaven#79183)

* fix can move items with charges

* astyle

---------

Co-authored-by: marilynias <[email protected]>

* [Aftershock] Gene Clinics (CleverRaven#79197)

* Implement Gene Clinic variant 1

* Renovate Clinic to Add service room. Add Murder Bots and Moxies. Implement powered down gene editor

* Add most of the item spawn groups

* Add item groups, Monster Spawns, and Mapgen Nests

* Add trash to the ground in looted variant. Adjust spawn rates of looted vrs unlooted to 60-40 in the players favor

* Geneclinics also spawn without the Exo-Planet

* Remove redudant spawn of the larger genetech disposable group, low tier already spawns worker and combat rarely

* Mapgen now correctly murders plants when power is out

* String fixes for test gods

* Slime body can't hold cbms (CleverRaven#79086)

* [MoM] Switch mi-go psions to copy-from, giver the mindrender a power-based telepathic attack (CleverRaven#79199)

* Initial commit

* Kick tests

* [Aftershock] Ensure Outfitter always has at least one full EVA suit (CleverRaven#79218)

* Outfitter always has at least one full suit.

* Lint

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update fema_evacuee_1.json (CleverRaven#79203)

---------

Co-authored-by: anothersimulacrum <[email protected]>
Co-authored-by: Sab Pyrope <[email protected]>
Co-authored-by: moxian <[email protected]>
Co-authored-by: gettingusedto <[email protected]>
Co-authored-by: EliadOArias <[email protected]>
Co-authored-by: Standing-StormStanding-Storm git config --global user.name Standing-Storm git config --global user.name Standing-Storm <[email protected]>
Co-authored-by: Andrew Rosa <[email protected]>
Co-authored-by: GuardianDll <[email protected]>
Co-authored-by: Dee Anzorge <[email protected]>
Co-authored-by: Standing-Storm <[email protected]>
Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: Anton Simakov <[email protected]>
Co-authored-by: Procyonae <[email protected]>
Co-authored-by: gisaku33 <[email protected]>
Co-authored-by: Kevin Granade <[email protected]>
Co-authored-by: David Seguin <[email protected]>
Co-authored-by: 7erracotta <[email protected]>
Co-authored-by: John Candlebury <[email protected]>
Co-authored-by: Further Reading <[email protected]>
Co-authored-by: osuphobia <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: PatrikLundell <[email protected]>
Co-authored-by: EArias <[email protected]>
Co-authored-by: Marc <[email protected]>
Co-authored-by: akrieger <[email protected]>
Co-authored-by: mqrause <[email protected]>
Co-authored-by: alef <[email protected]>
Co-authored-by: marilynias <[email protected]>
Co-authored-by: marilynias <[email protected]>
Co-authored-by: Risuga <[email protected]>
Maleclypse added a commit that referenced this pull request Jan 18, 2025
* adjust dreaming spell xp requirements

* remove old xp eoc

* Add max book learn value and use for dream magic type

* method definition fix

* add casting_xp_formula_id which calculates how much xp is gained per cast and add a simple use for dream magic

* add failure cost percent field

* dream spells use 10% mana on failure

* add failure_eocs field to magic_type

* add failure_exp_percent and make dream magic give full xp on failure

* astyle

* documentation

* Fix Conflict (#2)

* Make storage unit pallete and array of objects

All of the other JSON in data/json is.

* Gun variants: Better common token & dupe checking

Require at least 3 letters for common tokens, with some explicit
exceptions. It might be worth going to 4 letters, but going to 3 cleaned
up some issues.

Also make the dupe check an actual error (resulting in test failure)
than just a silent one.

The guns caught by the dupe check are allowed as separate by the variant
criteria, but it may be being too lenient there and they should instead
be combined.

Fix the errors that surfaced.
- two guns had 16" and 20" barrels, name the longer one long-barreled
- Two revolvers (chiappa_rhino and colt_python) were named the same,
  name the python to indicate it looks like a old west revolver
- Name the BLR magazine with a common identifier to the the gun
- Give the FN57 an identifier (FN)
- Add pistol to BAD_IDENTIFIERS, so the USP identifier is detected

Both the FN57 and USP pistol were using "pistol" as the identifier.
The BLR was using "ing".

* Sort gun variant script valid identifier list

So it's stable and looks nicer.

* Remove some unused CBM snippets

* Reuse built clang-tidy plugin across the shards

* makes lit candle more distinct

* Update NPC.md

* Initial commit

* Fire action accounts for all kinds of shoulder straps

I've noticed only "adjustable strap" works with the fire action to drawn
weapon, and only with default format (hanging like backpack). Happens
that code checks for that specific item. Solution is to check for a flag
instead, and so works with all kinds of attachments

* initial commit

* A couple small C++20 fixes

* Add versioning to vcpkg setup

* make xedra translocators examinable in faction territory

* Set SDL_HINT_APP_NAME for tiles

See https://wiki.libsdl.org/SDL2/SDL_HINT_APP_NAME

* [Xedra Evolved] Add `fey_magick` magic type (#79113)

* Initial commit

* Add NO_SPELLCASTING to flags too

* Focus the default selection in popups

* [Magiclysm] Biomancy is disturbing (#79117)

* Initial commit

* Add pain effects to some spells

* Reduce amount of pain caused

* Fix scroll name

* Fix ClangBuildAnalyzer workflow

* [MoM] Fix Mind-sight goggles special vision sprite (#79119)

* Extended description window shows potential deconstruction and bash yields (#79107)

* Basic addition of deconstruction yields to extended description

* Deduplicate and add skill info

* Add bash yields replacing the Smashable tag

* Add the extended description keybind text to the look around window

* Less lazy formatting

* [Xedra Evolved] Increase mana cost on Arvore mana-using traits (#79096)

* Remove ghc/filesystem polyfill now that we are on C++17 (#79092)

* Remove ghc/filesystem shim now that we are on C++17

* fixies

* astyle

* teach clang-tidy about <filesystem>

* Battery compartment mod can use medium storage batteries (#79091)

* Update toolmod.json

* Lint

---------

Co-authored-by: Anton Simakov <[email protected]>

* [MoM] Fix Leukocyte Accumulation class (#79123)

* Initial commit

* Add magic class

* remove const from distance_limit

* [Xedra Evolved] Fix treesung baselard recipe (#79131)

* Extract special vision descriptions for translation (#79108)

* Extract special vision descriptions for translation

* Add includes

* Add origin arguments

* Attempt to appease flake8

* Missed iterating an array

* Fix typo

* Our flake8 makes me want to commit war crimes

* Fix various flake8 errors

* Weekly Changelog 2025-01-06 to 2025-01-13 (#79127)

* Weekly Changelog 2025-01-06 to 2025-01-13

* Apply suggestions from code review

---------

Co-authored-by: David Seguin <[email protected]>
Co-authored-by: Maleclypse <[email protected]>

* {CR} Adds three new lore log snippets! (#79058)

* new lore log snippets (draft)

the lore log snippets are one of my favorite things to be featured in cataclysm, and I wanted to write some of my own!

* Update e_logs.json

* Add three new lore log snippets

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* lint changes

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

Co-authored-by: Procyonae <[email protected]>

* Update data/json/snippets/e_logs.json

* replace 3 spaces with 2 spaces

---------

Co-authored-by: Procyonae <[email protected]>
Co-authored-by: Anton Simakov <[email protected]>
Co-authored-by: Maleclypse <[email protected]>

* Weekly Changelog 2024-12-30 to 2025-01-06 (#78977)

* Weekly Changelog 2024-12-30 to 2025-01-06

* Apply suggestions from code review

---------

Co-authored-by: David Seguin <[email protected]>
Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: Anton Simakov <[email protected]>

* Fix Irradiant weapon attack

* Move refugee center start from isolationist to its own scenario (#79140)

* Change to start outside refugee center entrance

* Move refugee center start to its own option

* Starting on path by entrance

* use test monsters in shotgun tests (#79141)

* use test monsters

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Don't try to GENERATE typed coordinates (#79137)

* Don't try to GENERATE typed coordinates

* Adjusted according to comments

* [MoM] Add null grenades (#79147)

* Initial commit

* Add expended grenades

* Add snippet

* Change id to avoid confusion with _null terrain etc

* Create user mods dir automatically. (#79057)

* mod manager

* Update src/mod_manager.cpp

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* [Magiclysm] Fix werewolf aura (#79151)

* Initial commit

* Fixes

* typified a-f

* [Magiclysm] Rename 'Introduction to the Divine' to 'The Limits of Magical Recovery' (#79153)

* Initial commit

* Itemgroup changes

* Update data/mods/Magiclysm/items/spellbooks.json

---------

Co-authored-by: Anton Simakov <[email protected]>

* Aftershock: Genetech Mutation system or Genetically engineered Catgirls. (#79128)

* Aftershock Genetech

* Apply suggestions from code review

Co-authored-by: Marc <[email protected]>

---------

Co-authored-by: Anton Simakov <[email protected]>
Co-authored-by: Marc <[email protected]>

* [Aftershock] Add human++ genemods (#79149)

* Add genemods

* Add hobbies

* Add Genemod: Beauty

* Fix errors

* Spelling

* [Aftershock] UICA Shuttle Bases (#79144)

* Add UICA Shuttlebases to the Exo-Planet

* Lint

* Add a Quartermaster NPC. They can be bribed to sell you UICA gear and supplies.

* Lint

* Add Lynx Explorer Vehicle, Quartermaster has less stuff to sell, Shuttlebase spawns ground vehicles

* Add Vehicle Repair group stub

* Bump up Bribe to $3000

* Rewrite some Quartermaster dialog

* Please test gods

* Test gods please, I beg

* Correct Shuttlebase to Shuttle Base

* [ Xedrea Evolved ] Gracken Legs first tier (#79122)

* Legs first tier

Update harvest_monster_hunter_gracken.json

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update data/mods/Xedra_Evolved/items/gracken_trait_improvements.json

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Anton Simakov <[email protected]>

* Sort docs into subfolders

* update paths to moved docs

* better name for LORE_FAQ doc, as suggested by Kevin (thanks!)

* [MoM] Concentrating on powers at higher Nether Attunement has a chance of backlash (#79163)

* Initial commit

* Check for backlash on concentration breaking too.

* Change backlash messages to not reference unleashing powers

* Nether Attunement vitamin at 15 or higher, not powers maintained at 15 or higher

* Spelling

* Temporary script to automate this

* Remove meaningless weight fields

* Fix compile error, remove unneeded string initialisation, correct translation, don't write required mutation string if we're about to overwrite it with incompatible bionics

* Update skyscraper_lab_modular.json

* monstergroups "name" -> "id" in /data/json

* Commit the script so out of repo + personal mods can use it

* monstergroups "name" -> "id" in /data/mods

* Update deserialisation

* Get annoyed at flake8

* Put the script in the wrong folder like a numpty

* Fix MSVC build with lld linker

* Add an ignorable error and legacy load

* flake8 is rood

* Change C++ ids called "name" to something better too

* Rename doc/COMPILING/ -> doc/c++/

* Remove string spawn item overloads (#79173)

* Remove evil overloads

* Deal with fallout

* Rename map:: get_global->get_abs, bub_from_abs->get_bub, omt_from_abs->get_omt (#79167)

* Renamed map:: getglobal->get_abs, bub_from_abs->get_bub, omt_from_abs->get_omt

* astyle

* [Magiclysm] Remove duplicate religious professions (#79162)

* Update professions.json

* Redirect Lost Faith to vanilla professions, add books

* Reformat item field?

* Update data/mods/Magiclysm/scenarios.json

* Add scenario EoC

* Remove debug message

* Kick tests

---------

Co-authored-by: Anton Simakov <[email protected]>

* [ Xedra Evolved ] Fix Renfield Drops (#79166)

* typify game.h/cpp

* use typed point in android code

* Use sub_bodypart_str_id::NULL_ID() where appropriate

* Add attack_vector_id::NULL_ID()

* typify g - lightmap

* [MoM] Update and simplify Nether Attunement backlash EoC (#79175)

* More updates

* More edits

* Updating remaining effects

* Initial commit

* Initial commit

* Expand bodypart_str_id::NULL_ID() usage where appropriate

* Deal with /tests fallout

* Initial commit

* please clang

* Add CMake function do debug targets

* Add targets with dynamic linking

* Use VCPKG dynamic linking triplet

* Obey linter

* Apply review suggestions

* Fix Debug configuration linking with MSVS + LLD

* Fix zlib linking

* Prevent initialising an activity actor's type every turn it's active

* [MoM] Fix Research Facility having an oldlab underneath (#79191)

* Initial commit

* Implement suggestions from code review

* fix not being able to move items with charges with AIM (#79183)

* fix can move items with charges

* astyle

---------

Co-authored-by: marilynias <[email protected]>

* [Aftershock] Gene Clinics (#79197)

* Implement Gene Clinic variant 1

* Renovate Clinic to Add service room. Add Murder Bots and Moxies. Implement powered down gene editor

* Add most of the item spawn groups

* Add item groups, Monster Spawns, and Mapgen Nests

* Add trash to the ground in looted variant. Adjust spawn rates of looted vrs unlooted to 60-40 in the players favor

* Geneclinics also spawn without the Exo-Planet

* Remove redudant spawn of the larger genetech disposable group, low tier already spawns worker and combat rarely

* Mapgen now correctly murders plants when power is out

* String fixes for test gods

* Slime body can't hold cbms (#79086)

* [MoM] Switch mi-go psions to copy-from, giver the mindrender a power-based telepathic attack (#79199)

* Initial commit

* Kick tests

* [Aftershock] Ensure Outfitter always has at least one full EVA suit (#79218)

* Outfitter always has at least one full suit.

* Lint

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update fema_evacuee_1.json (#79203)

---------

Co-authored-by: anothersimulacrum <[email protected]>
Co-authored-by: Sab Pyrope <[email protected]>
Co-authored-by: moxian <[email protected]>
Co-authored-by: gettingusedto <[email protected]>
Co-authored-by: EliadOArias <[email protected]>
Co-authored-by: Standing-StormStanding-Storm git config --global user.name Standing-Storm git config --global user.name Standing-Storm <[email protected]>
Co-authored-by: Andrew Rosa <[email protected]>
Co-authored-by: GuardianDll <[email protected]>
Co-authored-by: Dee Anzorge <[email protected]>
Co-authored-by: Standing-Storm <[email protected]>
Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: Anton Simakov <[email protected]>
Co-authored-by: Procyonae <[email protected]>
Co-authored-by: gisaku33 <[email protected]>
Co-authored-by: Kevin Granade <[email protected]>
Co-authored-by: David Seguin <[email protected]>
Co-authored-by: 7erracotta <[email protected]>
Co-authored-by: John Candlebury <[email protected]>
Co-authored-by: Further Reading <[email protected]>
Co-authored-by: osuphobia <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: PatrikLundell <[email protected]>
Co-authored-by: EArias <[email protected]>
Co-authored-by: Marc <[email protected]>
Co-authored-by: akrieger <[email protected]>
Co-authored-by: mqrause <[email protected]>
Co-authored-by: alef <[email protected]>
Co-authored-by: marilynias <[email protected]>
Co-authored-by: marilynias <[email protected]>
Co-authored-by: Risuga <[email protected]>

* clang stuff

---------

Co-authored-by: anothersimulacrum <[email protected]>
Co-authored-by: Sab Pyrope <[email protected]>
Co-authored-by: moxian <[email protected]>
Co-authored-by: gettingusedto <[email protected]>
Co-authored-by: EliadOArias <[email protected]>
Co-authored-by: Standing-StormStanding-Storm git config --global user.name Standing-Storm git config --global user.name Standing-Storm <[email protected]>
Co-authored-by: Andrew Rosa <[email protected]>
Co-authored-by: GuardianDll <[email protected]>
Co-authored-by: Dee Anzorge <[email protected]>
Co-authored-by: Standing-Storm <[email protected]>
Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: Anton Simakov <[email protected]>
Co-authored-by: Procyonae <[email protected]>
Co-authored-by: gisaku33 <[email protected]>
Co-authored-by: Kevin Granade <[email protected]>
Co-authored-by: David Seguin <[email protected]>
Co-authored-by: 7erracotta <[email protected]>
Co-authored-by: John Candlebury <[email protected]>
Co-authored-by: Further Reading <[email protected]>
Co-authored-by: osuphobia <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: PatrikLundell <[email protected]>
Co-authored-by: EArias <[email protected]>
Co-authored-by: Marc <[email protected]>
Co-authored-by: akrieger <[email protected]>
Co-authored-by: mqrause <[email protected]>
Co-authored-by: alef <[email protected]>
Co-authored-by: marilynias <[email protected]>
Co-authored-by: marilynias <[email protected]>
Co-authored-by: Risuga <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Appliance/Power Grid Anything to do with appliances and power grid astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions Bionics CBM (Compact Bionic Modules) [C++] Changes (can be) made in C++. Previously named `Code` Code: Tests Measurement, self-control, statistics, balancing. Crafting / Construction / Recipes Includes: Uncrafting / Disassembling EOC: Effects On Condition Anything concerning Effects On Condition Fields / Furniture / Terrain / Traps Objects that are part of the map or its features. Info / User Interface Game - player communication, menus, etc. Items: Containers Things that hold other things json-styled JSON lint passed, label assigned by github actions Map / Mapgen Overmap, Mapgen, Map extras, Map display Mechanics: Enchantments / Spells Enchantments and spells Mechanics: Weather Rain, snow, portal storms and non-temperature environment Monsters Monsters both friendly and unfriendly. NPC / Factions NPCs, AI, Speech, Factions, Ownership Player Faction Base / Camp All about the player faction base/camp/site Scenarios New Scenarios, balancing, bugs with scenarios Vehicles Vehicles, parts, mechanics & interactions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rename map::getglobal() to map::get_abs()
3 participants