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

Magic Infrastructure: Split NON_MAGICAL into ALWAYS_CASTABLE and IGNORES_SPELL_RESISTANCE #79205

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

b3brodie
Copy link
Contributor

@b3brodie b3brodie commented Jan 17, 2025

Summary

Infrastructure "Split NON_MAGICAL into ALWAYS_CASTABLE and IGNORES_SPELL_RESISTANCE"

Purpose of change

Initially Brought up in discord
NON_MAGICAL has two separate functions, ignoring spell resistance and preventing various status that prevent spellcasting from touching the spell. There's times when a spell may want only one of the statuses. Also, I don't think NON_MAGICAL describes either of these two functions very well either, so the new names would make it more specific.

Describe the solution

Split NON_MAGICAL into ALWAYS CASTABLE and IGNORES_SPELL_RESISTANCE flags to better clarify their function and allow using one without the other.
Move the existing uses to ALWAYS CASTABLE or IGNORES_SPELL_RESISTANCE based on what the spell is supposed to do.

Describe alternatives you've considered

N/A

Testing

Did a quick check by adding NON_MAGICAL to a spell with cannot_cast_flags and confirmed that it was blocked

Additional context

@github-actions github-actions bot added the [C++] Changes (can be) made in C++. Previously named `Code` label Jan 17, 2025
@github-actions github-actions bot requested a review from KorGgenT January 17, 2025 09:33
@github-actions github-actions bot added Code: Infrastructure / Style / Static Analysis Code internal infrastructure and style json-styled JSON lint passed, label assigned by github actions labels Jan 17, 2025
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@github-actions github-actions bot added the astyled astyled PR, label is assigned by github actions label Jan 17, 2025
@Standing-Storm
Copy link
Contributor

Standing-Storm commented Jan 17, 2025

This will break Astral Projection (which relies on none of your powers being usable except the one to stop projecting) and also break the ability to stop concentrating on something if you're unable to use your powers but still concentrate.

Edit: for example, if you're too tired you can't channel anything but you can still end concentration.

@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Jan 17, 2025
@b3brodie b3brodie marked this pull request as draft January 17, 2025 20:35
@github-actions github-actions bot added <Documentation> Design documents, internal info, guides and help. [JSON] Changes (can be) made in JSON Mutations / Traits / Professions/ Hobbies Mutations / Traits / Professions/ Hobbies [Markdown] Markdown issues and PRs Mods: Magiclysm Anything to do with the Magiclysm mod Mechanics: Enchantments / Spells Enchantments and spells Mods: Xedra Evolved Anything to do with Xedra Evolved Mods: Mind Over Matter and removed json-styled JSON lint passed, label assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions labels Jan 18, 2025
@github-actions github-actions bot added json-styled JSON lint passed, label assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions labels Jan 18, 2025
@b3brodie
Copy link
Contributor Author

This will break Astral Projection (which relies on none of your powers being usable except the one to stop projecting) and also break the ability to stop concentrating on something if you're unable to use your powers but still concentrate.

Edit: for example, if you're too tired you can't channel anything but you can still end concentration.

Adjusted the PR to split the flag into two

@b3brodie b3brodie changed the title Magic Infrastructure: Magic Type CANNOT_CAST flag has precendence over NON_MAGICAL flag for casting chance probability Magic Infrastructure: Split NON_MAGICAL into ALWAYS_CASTABLE and IGNORES_SPELL_RESISTANCE Jan 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions [C++] Changes (can be) made in C++. Previously named `Code` Code: Infrastructure / Style / Static Analysis Code internal infrastructure and style <Documentation> Design documents, internal info, guides and help. [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions [Markdown] Markdown issues and PRs Mechanics: Enchantments / Spells Enchantments and spells Mods: Magiclysm Anything to do with the Magiclysm mod Mods: Mind Over Matter Mods: Xedra Evolved Anything to do with Xedra Evolved Mutations / Traits / Professions/ Hobbies Mutations / Traits / Professions/ Hobbies
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants