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

Mapchecker #810

Merged
merged 29 commits into from
Jan 7, 2024
Merged

Mapchecker #810

merged 29 commits into from
Jan 7, 2024

Conversation

TsjipTsjip
Copy link
Contributor

@TsjipTsjip TsjipTsjip commented Jan 1, 2024

About the PR

This is a map checker! @dvir001 @Cheackraze

Essentially this allows us to automatically check shuttle/POI/... PR's for prototypes which are "suspicious" for that map, automatically as a github workflow.

Additionally, the following was the output on script creation, after some heavy cleanup:

[ERROR - 2024-01-01 21:05:28] Found 13 maps with illegal prototypes.
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/sprinter.yml' has 2 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - WallPlastitanium
[ERROR - 2024-01-01 21:05:28]  - IntercomSecurity
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/courser.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - HighSecDoor
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/metastable.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - SignSec
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/dartx.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - HighSecDoor
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/decadedove.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - SignSec
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/gourd.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - HoloprojectorSecurity
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/bison.yml' has 4 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - WallPlastitanium
[ERROR - 2024-01-01 21:05:28]  - WallPlastitaniumDiagonal
[ERROR - 2024-01-01 21:05:28]  - SignSec
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/esquire.yml' has 3 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - ToyFigurineSecurity
[ERROR - 2024-01-01 21:05:28]  - AirlockSecurity
[ERROR - 2024-01-01 21:05:28]  - SignSec
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/praeda.yml' has 4 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - ClothingEyesGlassesSecurity
[ERROR - 2024-01-01 21:05:28]  - SignSec
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/pheonix.yml' has 3 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - DebugSubstation
[ERROR - 2024-01-01 21:05:28]  - WallPlastitanium
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/spectre.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - AirlockSecurity
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/bazaar.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - AirlockSecurity
[ERROR - 2024-01-01 21:05:28] Map 'Resources/Prototypes/_NF/Shipyard/anchor.yml' has 1 illegal prototypes.
[ERROR - 2024-01-01 21:05:28]  - AirlockSecurity

All of these have either been tagged as allowable for this shipyard category, or have been temporarily whitelisted (technical debt).

Why / Balance

Automation of a menial task which can overlook things in the hands of man.

Technical details

  • Github workflow runs .github/mapchecker/mapchecker.py
  • Paths for prototype collection and map collection are specified in arguments which have been set to sensible defaults.
  • Actual things to blacklist have to be configured in .github/mapchecker/config.py due to their complex nature.

Media

  • I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

No. I have not. For my sanity I will do this later.

Breaking changes

Any other PR that modifies any of these ships will likely be merge conflicted by this PR.

Changelog

(Deliberately not properly formatting this for the bot, this is a joke.)

  • remove: Random stuff that shouldn't have been on ships in the first place
  • add: Automation, welcome to the future

@TsjipTsjip
Copy link
Contributor Author

Proooobably should also @MagnusCrowe here.

Copy link
Contributor

@dvir001 dvir001 left a comment

Choose a reason for hiding this comment

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

Going to wait for others to also approve this, seem fine by me.

@github-actions github-actions bot added the Status: Needs Review This PR is awaiting reviews label Jan 1, 2024
@dvir001 dvir001 added Map-Shuttle Map - Shuttle Enhancement New feature or request and removed Map labels Jan 2, 2024
@github-actions github-actions bot added the Merge Conflict This PR has conflicts that prevent merging label Jan 2, 2024
Copy link
Contributor

github-actions bot commented Jan 2, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Copy link
Member

@Cheackraze Cheackraze left a comment

Choose a reason for hiding this comment

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

try to keep ship file updates to their own PRs, else you will end up in conflict hell.

@TsjipTsjip
Copy link
Contributor Author

try to keep ship file updates to their own PRs, else you will end up in conflict hell.

Can do, will add all current violations to technical debt list of the whitelist to prevent this PR from murdering the success state of other PR's.

@github-actions github-actions bot removed Map-Shuttle Map - Shuttle Merge Conflict This PR has conflicts that prevent merging labels Jan 2, 2024
@TsjipTsjip
Copy link
Contributor Author

Gonna stop touching this PR now. I feel like the items that were marked DO NOT MAP by this PR provide sufficient proof that this works. Ready for review.

@Cheackraze Cheackraze merged commit 428a59f into new-frontiers-14:master Jan 7, 2024
10 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request No C# Status: Needs Review This PR is awaiting reviews YML
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants