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

Repath ABCU savefiles, make construction pausable, other fixes #15774

Merged
merged 50 commits into from Oct 2, 2023

Conversation

kbsmilk
Copy link
Contributor

@kbsmilk kbsmilk commented Sep 9, 2023

[GAME OBJECTS][FEATURE]

About the PR

  • ABCU user savefiles are fragmented into separate savefiles for each blueprint. Old blueprints have to be migrated manually, individually, by the player that owns them. A verb does this, accessible when holding a Blueprint Marker.
  • Build jobs can now paused or canceled by players. To support this change, build material costs are now processed per-tile.
  • The ABCU now isn't deleted after a build job completes.
  • Fixes to object rebuilding, e.g. electric cables and APCs have better behavior now.
  • Some UI polish: ABCU gets tgui controls, more and rewritten feedback messages, ABCU's name var shortened.

Why's this needed?

Currently blueprints are stored in a single savefile for ALL users. This file is partially corrupted, making the blueprint system permanently unusable for certain users. Individual save files makes corruption manageable by users.
Canceling build jobs is just useful, and good for Future Plans :)

Changelog

(u)Smilg
(*)ABCU blueprints updated+fixed internally. You can migrate old blueprints with a blueprint marker tool.

kbsmilk added 28 commits July 17, 2023 18:00
Also adds feedback noises when selecting/unselecting tiles
safety prompts
better help messages
audio feedback
re-added range limit
maxSize moved back under pixelaction
canceling rect select makes a noise
and uses dmm_suite preloader to rebuild objects
it appears to work!
started work on blueprint dump verb
slightly renamed blueprint admin verbs to group them up
bit of admin logging that maybe works
blueprint tileinfo now stores icon (as string)
building is now pausable and cancelable.
however, it does not load the icon.
@github-actions github-actions bot added the size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. label Sep 9, 2023
@keywordlabeler keywordlabeler bot added the A-Game-Objects The point of this PR is to deal with a specific game object label Sep 9, 2023
@frawhst
Copy link
Member

frawhst commented Sep 12, 2023

Currently blueprints are stored in a single savefile for ALL users.

This explains some things lmao

Copy link
Member

@frawhst frawhst left a comment

Choose a reason for hiding this comment

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

Mostly small deletions. I don't know much about savefiles, but it looks generally fine to me.

code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
code/WorkInProgress/blueprints.dm Outdated Show resolved Hide resolved
kbsmilk and others added 15 commits September 12, 2023 13:51
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
Co-authored-by: aloe <frawhstdev@gmail.com>
@kbsmilk
Copy link
Contributor Author

kbsmilk commented Sep 12, 2023

by god, clicking through "commit suggestion" 15 times while github refreshes and collapses the list every time. that'll teach me to clean up my commented code lol. Ty

@ZeWaka
Copy link
Member

ZeWaka commented Sep 12, 2023

by god, clicking through "commit suggestion" 15 times while github refreshes and collapses the list every time. that'll teach me to clean up my commented code lol. Ty

You can bulk commit review suggestions on the review page

@kbsmilk
Copy link
Contributor Author

kbsmilk commented Sep 29, 2023

Yay old blueprint migration is added. THE PR MUST GROW.

@frawhst
Copy link
Member

frawhst commented Oct 2, 2023

I don't think testmerging this would play nice with the savefiles so let's try it!!!

@frawhst frawhst merged commit 83c929f into goonstation:master Oct 2, 2023
22 checks passed
github-actions bot pushed a commit that referenced this pull request Oct 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Game-Objects The point of this PR is to deal with a specific game object C-Feature A new feature or enhancements to existing features size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants