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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

[UPSTREAM] Ports Genpop from NSV to BeeStation to NSV #2620

Merged
merged 30 commits into from May 21, 2024

Conversation

someone543
Copy link
Contributor

@someone543 someone543 commented Mar 29, 2024

About The Pull Request

Ports the PRs below from BeeStation:

Moves Genpop from the NSV13 folder and adds the new holodeck workshop and other features from BeeStation to the Gladius and Hammerhead (See screenshots).

Workshops
From the original PR,
Prisoners can make donuts or bots plushes and scan them to get reduced sentences.
Currently, only donut and plush workshops are available, and either can be loaded in using the holodeck console in the Warden's Office.

Other Features

  • Prison grilles have been added to genpop windows. Break one, and blast doors from every other window will close.
  • Genpop interface has been updated (See screenshots) choose a severity and it will show what crimes are applicable
  • Plushes can now be crafted using cloth

Why It's Good For The Game

Keeps our code up to date with BeeStation, and improves our own genpop with new features
Also fixes #2619

Testing Photographs and Procedure

Screenshots&Videos

Updated Genpop Interface

GenpopNewInterface

Gladius (Execution room has been moved to the firing range for more space)

WorkshopGladius1

Hammerhead

WorkshopHammerhead1

Changelog

馃啈 Haliris, BriggsIDP, Powerfulbacon, TsunamiAnt, PestoVerde322
add: Added workshop area to brig based on the holodeck code, where prisoners can make donuts or plushes and scan them to get reduced sentences. Adds secure floors and prison grilles to help secure the prison area better. Adds crafting method for plushes to support the prison plushes sweatshop.
add: Added genpop workshops to Hammerhead and Gladius
tweak: Changed the path of the previous prisoner id used for gulag (now id/gulag). Updated paths of the current holodeck templates to holodeck/recreational to allow for easier subtypes implementation. Removed holographic flag preventing the crafting menu from working.
tweak: Genpop code and icons moved out of nsv13 folder
/:cl:

Haliris and others added 19 commits February 16, 2024 19:49
* Genpop

Ports genpop from NSV

* Add construction and deconstruction support

* Updates UI icons, implements space law modifiers

* Add the ability to add descriptions to crimes, presets will now copy their tooltip on the record of incarceration.

* Fixes radio messages broadcasts

* Adds support for workshop holodeck in prison, adds alarm grilles and secured floors, also renames prisoner lockers

* Boxstation V1, two workshop templates

* Adds prison_scanner, tweaks to brig and workshop templates, makes the crafting menu see hologram items

Adds the prison scanner, which allows prisoner to scan donuts and bots they'll have made to get sentence reductions.

I had to modify crafting.dm, so if it causes any problems, this is the commit to look at.

* Tries to adress checks failing

Funny airlock over wall, and weird fucking vent in the detective office for some reasons?

* Finally found where tgui-prettier was

* Prisoners can't drag each other through the turnstile

* Workshop randomly loads a program at roundstart

* Code improvements, can't get that search bar to work in the genpop.js

* Updates bot workshop

* fixes bad ids for prison lockdown

* Adds emergency shutdown button for the workshop, adds workshop UI file,  cleans up code in various files, tweaks to workshop templates.

* Removes useless check in workshop.dm

* Fixes double quotation marks in a tutorial paper

* Fixes check in workshop emergency shutdown

* Disables bot workshop, adds plushes sweatshop instead. Add plushes crafting method.

* Adds welder step to AI deconstruction. Prevents buckled prisoners from being allowed through the turnstile.

* Makes superficial map adjustments based on feedback. Fixes workshop runtime because of holo_item being used instead of spawned, adds visible error message when someone tries to pass through the turnstile with a ridden vehicle.

* Adresses feedback

Tweaks Brig according to feedback (bad door in solitary cell, interrogation room simplified, labor shuttle dock corrected, other minor stuff).
Fixed workshop UI not checking for any access, added proper construction costs to turnstile and deconstruction hints.
Added warning and block to secoffs trying to extend the sentences of prisoner already released, not ideal, find another solution later.

* Commit 1

* Executes prettification

* Update genpop.dm

* Re-adds the tooltips

* WIP Config

All fucked up and shit

* bad line

* Finally got it working

* Adds first draft of Delta

* Bunch of hotfixes for delta

* Removes bad lattices

* I hate lattices

* Adds meta

* Adds corg, other map tweaks

* Carrots exist again, thanks newfood or something I guess

* swaps rustg for file2text to check for runtime in check

* Fland

* Adds Fland

* Adds kilo

* Adds Rad

* Fucking lattice and grille

* Makes the prisoner interface a buildable wallframe instead

* Fixes the regex

* Removes the bot workshop and associated code.

* Adresses various requests

Fixes most requests in grille and prison_floor.
Removed redundancies in workshop.dm.
Added bitfield for obj_scanned flag
use() in toys.dm for plushes making

* Adresses mapping oversight.

Removed leftover rooms in delta and kilo
Changes r_walls distribution in kilo brig
fixes escape pod on delta

* Bad linters

* Excludes dehydrated carps from plushes making

* Adresses various requests in genpop.dm

* Woopsie fucky doozy

* Finishes adressing requests on genpop.dm, ignore the else without if clause

* Bad check in prison_floor

* Fix punctuation and qdell null

* Finishes adressing changes

* Fixes linters

* Improves crafting menu check for holo items, fixes yet more newfood paths

* Adresses plating and prison_floor requests

* Fixes powernet on box and bad maint

* Fixes missing labor shuttle dock on Corg

* Does this fix checks? Also adresses oversight in corg and plushes workshop

* Fixes confinement cell access, fixes genpop interface access, adds nutrients to plushes workshop

* Adds old timer displays and windoors to solitary confinements, enables dynamic lighting for the workshop area, fixes bad interaction with the genpop locker

* lattice once again

* Fixes duplicated labor shuttle dock on Corg

* Wraps json_decode in a catch and try statement

* Swaps some rwalls for normal walls on corg, adds floorlights to workshop templates

* Fixes regex again, prevents secoff from locking unassigned prisoner lockers, minor map edits

* Update radstation

* Fixed Rad execution room being inaccessible

* Fixes bad integrity var and check for the turnstile, minor mapping tweaks.

Attempts to fix disposals in CorgStation

* Fixes hos windows instead of prison windows on Fland

* Comment on crime.dm indicating that it is overwritten by the config

* Various improvements (final maybe).

- Prisoners that are released will get pushed out by the turnstile
- The turnstile now removes PRISONER_ACCESS from IDs, fixed bad display time on prisoner IDs.
- Adds additional access airlock to the prison for security on all maps except Fland because no room on Fland
-Restricts access to SEC for the prison intake airlock.

* Bad leftover code smh head

* Fixes bad corgstation labor shuttle dock

* Bad extra windoor on a wall on Corg

* Improves prisoner lockers

Prisoner lockers can now be unassigned.

Improves their description.

* Batch of fixes and improvement

Fixes release/escape and time adjusting buttons not looking for any specific prisoner IDs.

Fixes bad time display for prison scanner.

Adds missing construction step for turnstile frames and adds rotation.

Properly implements the one directional turnstile with sprites. Replaces prison intake airlock with a turnstile.

Changes random lights in Boxstation I guess.

* Fixes bad cable on Corg

* Fixes make_plating being inconsistent in prison_floor.dm, fixes some bad lights

* Fixes bad disposals on Rad

* Hopefully removes all conflict markers

* Adresses requests

Adresses requests and fixes oversight on rad and meta.

Small refactor of CanAllowThrough() in genpop.dm. Buckled mobs and ridden vehicles are properly handled now.

Added check to prevent exit_push from executing if the prisoner left the turnstile turf.

* Bad airlock ruining my life fr

* Fixes inversed windows in warden office on delta

* Armsky floating in space on delta

* Update genpop.dm

* Fixes bad cables and zoning and pipes and wall navbeacon

Also makes south west solar on kilo functional again lol

* Rogue turnstile on fland

---------

Co-authored-by: PowerfulBacon <26465327+PowerfulBacon@users.noreply.github.com>
Co-authored-by: TsunamiAnt <TheTsunamiAnt@gmail.com>
Turnstiles now work properly again.

Simplified the code and axed a lot of potential interactions for the sake of sanity.

Co-authored-by: PowerfulBacon <26465327+PowerfulBacon@users.noreply.github.com>
Assign the correct offline template IDs to the holodeck computers.
This should allow everything to actually compile. Still need to fix & add genpop workshops to maps
Decals for holodeck workshops gone. Should be added back whenever the next beebase happens
* Align and remove the distros from the workshop holodecks

* eeee

---------

Co-authored-by: PigeonVerde322 <pesto.verde322@gmai.com>
Earlier, I wanted to add a torpedo workshop, but decided to leave it for another PR.
I barely have an idea of how tgui works, but an extension gave me a solution, so I'll use it and hope nothing breaks
@Bokkiewokkie Bokkiewokkie added Update PRs that pull updates from upstream Mass Map Change This PR will likely change two or more maps in order to implement its primary feature. labels Mar 29, 2024
@Bokkiewokkie
Copy link
Contributor

Bokkiewokkie commented Apr 5, 2024

Currently on hold because the laws/punishments in here are still bee laws and not NSV ones

@someone543
Copy link
Contributor Author

someone543 commented Apr 6, 2024

Currently on hold because the laws/punishments in here are still bee laws and not NSV ones

Should I change just the ones in config/space_law.json or should I also include the backup in code/modules/security/crimes.dm?

Also it looks like that our Space Law is missing some laws like possession of contraband, and has fine evasion as a infraction rather than a minor crime (Infractions aren't included in the interface)

@Bokkiewokkie
Copy link
Contributor

Currently on hold because the laws/punishments in here are still bee laws and not NSV ones

Should I change just the ones in config/space_law.json or should I also include the backup in code/modules/security/crimes.dm?

Also it looks like that our Space Law is missing some laws like possession of contraband, and has fine evasion as a infraction rather than a minor crime (Infractions aren't included in the interface)

The crimes.dm file is the more important one because it's hardcoded and can't be changed in the server

Copy link
Contributor

@Bokkiewokkie Bokkiewokkie left a comment

Choose a reason for hiding this comment

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

Not a full review, but some things I saw

tgui/packages/tgui/interfaces/GenPop.js Outdated Show resolved Hide resolved
code/__DEFINES/access.dm Outdated Show resolved Hide resolved
Copy link
Contributor

@Bokkiewokkie Bokkiewokkie left a comment

Choose a reason for hiding this comment

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

Mapping review:
Can you revert the changes on Atlas (don't forget the top deck) and Tycoon (except where necessary for the typepaths) I'd like to rework those seperately later.
Also please put the grilles in space closer to the windows again similar to how the rest of the ship has it on the Gladius.
On Hammerhead you've put down a newscaster in front of the armory on accident, and the red tile decals at the holoroom door should match the rest of the ship's style. There are also some firedoors in the brig hallway which could use a northern side if you'd like to add em in this too.
Also remember to put in a fire alarm and air vents in the rooms you've added.

Thanks for the patience with this by the way, I've been real busy lately

Bokkiewokkie
Bokkiewokkie previously approved these changes May 4, 2024
@Bokkiewokkie Bokkiewokkie added the Needs Test Merge This PR is ready for test merge during a test to determine effectiveness. label May 4, 2024
@SerynEngi
Copy link
Contributor

Additional request, since you're mass map changing anyway, mind fixing this?
#2619

@someone543
Copy link
Contributor Author

I don't think changing the area of a single tile is supposed to cause this

TestFailed

@Bokkiewokkie Bokkiewokkie added Active Test Merge and removed Needs Test Merge This PR is ready for test merge during a test to determine effectiveness. labels May 10, 2024
@Bokkiewokkie Bokkiewokkie merged commit cddfdfb into BeeStation:master May 21, 2024
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Active Test Merge Config Update Mapping Mass Map Change This PR will likely change two or more maps in order to implement its primary feature. Sprites TGUI-Changes Update PRs that pull updates from upstream
Projects
None yet
Development

Successfully merging this pull request may close these issues.

A tile in Tycoon's cargo bay has the wrong area
5 participants