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

[MIRROR] Small optimization for Aura Healing #2928

Merged
merged 1 commit into from
Apr 17, 2024
Merged

Conversation

Steals-The-PRs
Copy link
Collaborator

Mirrored on Nova: NovaSector/NovaSector#2026
Original PR: tgstation/tgstation#82674

About The Pull Request

  • Makes use of the byond internal optimization for view to speed up aura healing a tiny bit.
    • In case you didn't know, byond has an optimization for view which speeds up iterating over objects in view if you provide it a type. This use of a ternary (likely) prevented this optimization from kicking in, and since worst-case we're doing view(7) it can add up.

    • Test case: 2 staff of Ascelpius users surrounded by 15 humans and 15 random objects constant being damaged. ~8 minutes of testing.

    • Profile:

/datum/component/aura_healing/proc/heal_old   0.789        6.590        6.596        0.000         4076
/datum/component/aura_healing/proc/heal_new   0.682        6.443        6.442        0.000         4081
  • Generalizes SSaura_healing to SSaura, makes "damage aura" component (which is totally 99% copied from "healing aura" but that's for another pr) use it as well

Changelog

🆑 Melbert
refactor: Staff of Healing should perform slightly better.
/:cl:

* Small optimization for Aura Healing (#82674)

## About The Pull Request

- Makes use of the byond internal optimization for `view` to speed up
aura healing a tiny bit.
- In case you didn't know, byond has an optimization for `view` which
speeds up iterating over objects in view if you provide it a type. This
use of a ternary (likely) prevented this optimization from kicking in,
and since worst-case we're doing view(7) it can add up.
- Test case: 2 staff of Ascelpius users surrounded by 15 humans and 15
random objects constant being damaged. ~8 minutes of testing.

   - Profile:
```
/datum/component/aura_healing/proc/heal_old   0.789        6.590        6.596        0.000         4076
/datum/component/aura_healing/proc/heal_new   0.682        6.443        6.442        0.000         4081
```

- Generalizes `SSaura_healing` to `SSaura`, makes "damage aura"
component (which is totally 99% copied from "healing aura" but that's
for another pr) use it as well

## Changelog

:cl: Melbert
refactor: Staff of Healing should perform slightly better. 
/:cl:

* Small optimization for Aura Healing

---------

Co-authored-by: MrMelbert <[email protected]>
@Iajret Iajret merged commit 080803c into master Apr 17, 2024
27 checks passed
@Iajret Iajret deleted the upstream-mirror-2026 branch April 17, 2024 12:11
AnywayFarus added a commit that referenced this pull request Apr 17, 2024
Iajret pushed a commit that referenced this pull request Jun 9, 2024
* Removes the unpowered door subtype (#83812)

## About The Pull Request

They appear to be giga legacy, only thing using them is one what appears
to be totally unused small template shuttle. I just replaced em with
titanium airlocks, since I think that's what these were replaced with
going off asthetic.

(I do not want to deal with this for wallening)

* Removes the unpowered door subtype

---------

Co-authored-by: LemonInTheDark <[email protected]>
Co-authored-by: NovaBot13 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants