Jump to content

Library Overhaul


Recommended Posts

Posted (edited)

The Library system is functionally a persistent, cross-shift text storage system and currently does not fully exercise the roleplay potential that represents. A character should be able to write any type of document they want and be free to upload it for any future character to access and roleplay around.

The Library should easier to curate, less overwhelming to search, and capable of restricting access to certain books by department/group. Additionally, books should be re-flavored as 'files' or similar to represent the multitude of types of documents that can be stored and retrieved across shifts. Any reference to 'books' below should be considered in that light, as it may represent any given written record.

A character should be able to log into the Library computer and see a cleanly-organized, sortable, searchable, list of books to print, all appropriate to the access privileges on their ID.

A Librarian (or someone with similar authority) should be able to easily review newly-submitted books for approval before they are added to the repo(s), purge books which are inappropriate if one manages to get through, and change which repo(s) a book lives in according to head of staff requests.

Siloed repositories should also exist to represent encrypted archives managed by 'independent' parties. For example, Corporate Representatives and National Consulars should have private repos that even the Captain and Librarian cannot access, reflected in-game as these repos being 'encrypted' or what have you. This would give these roles the ability to store and share sensitive documents across shifts.

All of this should be implemented with TGUI-framework UI.

Before this overhaul can be implemented, the existing library database should be reviewed and every book either re-categorized, archived, or deleted, if necessary.

  1. Books should be more easily identifiable by category. For example, 'Poetry' should be distinct from 'Fiction,' given the profusion of poetry. It should be easy to see at a glance what type of book you are looking at independent of the title.
  2. Books which don't meet a modern basic standard of quality should not be deleted, but should be moved to an 'archival' category to avoid cluttering the main stacks but still preserving historical creative writing submissions.
  3. Books which are duplicates, reference old mechanics or lore, etc., should be removed entirely, if appropriate.

Feature Outline
The library management system should accommodate the following:

  1. There should be multiple repositories for books.
    1. This should reflect that some contain privileged information that should be restricted by department.
    2. This should give characters from across departments an additional reason to interact with each other ('borrow' a book).
    3. Access to a given departmental repository should be determined by the user's ID card.
    4. This should make each individual repository less overwhelming to browse.
  2. Repos should be easier to peruse by end users.
    1. Accessing the library computer should require an ID card login to determine the user's access levels.
    2. The user will have a tab for each repo they have access to by ID. Examples:
      Off-Duty Crew: Public
      Atmos Tech: Public, Engineering
      Head of Security: Public, Security, Command
  3. Librarians should have more power to manage and curate the collection.
    1. There should be a method for newly-submitted books to be reviewed for approval before populating a given repository.
      1. When a new book is submitted, it will be flagged as a 'Submission,' requiring Approval before it populates for regular users.
      2. A Librarian/auth'd user can Approve a book in the Submission queue to send it to its submitted repo.
    2. A Librarian should be able to freely update a book's name (formatting/capitalization/etc.) and category to maintain the library's internal consistency.
    3. There should be a method for an existing book to be 'purged' (moved to a private repo only viewable with moderator/admin/TBD privileges, to be reversed if deemed appropriate).
      1. Purging a book should require the Purger should input a reason- this can be an IC action (quality issue) or an OOC action (canonicity issue). This action will logged by a notification to Moderators/Admins/TBD.
    4. Librarians and Captains should have full access and authority public and restricted departmental repos. They will NEVER have access to corporate or consular repos.
    5. Heads of Staff will have Librarian-level access and authority only over their own departmental repo and the Command repo, not the Public repo.
  4. There should be more appearances for books. In line the suggestion above that they should be re-flavored as 'files,' a good starting point would be to save whether a submitted book has a 'book' appearance or a 'written paper' appearance.
  5. Submitting new books should accommodate all of the above changes, using the following prompts when attempting to scan it into the system:
    1. Enter the Book's name.
    2. Enter the Author's name. This is no longer a freeform text field, books must either use the scanning individual's name, or 'Anonymous.' Any deviations from this should be an admin request or a non-option.
    3. Select the Category. See below for expanded category options.
    4. Select the Appearance. Random-color book or written papersheet. Maybe more in future.
    5. Select the Repo. This will be the list of Repos to which they have access.

SQL stuff:
One table should be added to accommodate the assignment of books to multiple repositories (examples: manual on experimental laser gun available to both Sci and Sec, write-up of items desired by engineering available to both Ops and Eng).

CREATE TABLE IF NOT EXISTS `ss13_lib_repo` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) NOT NULL,
  `book` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `FK_ss13_lib_repo_ss13_library` (`book`)
  CONSTRAINT `FK_ss13_lib_repo_ss13_library` FOREIGN KEY (`book`) REFERENCES `ss13_library` (`id`) ON UPDATE CASCADE
)

An additional table could be added to audit book approvals and removals, but it may be preferable to just have plain jane admin text logs for those. I defer to admin preference there.

Implementation:
As those of you in #code-dungeon know I am not john coder mccoolski, so some of this falls outside my current scope of ability. This means that of the above proposal, the following I hope to do myself:

1. Read and re-categorize every single book in the library.
2. Flag certain books for archive or deletion.
3. Port the EXISTING library UI to TGUI to get a grip on it and make the rest more feasible.

If I can do this, I can at least get the Library to be a bit more cool, and hopefully have groundwork laid to begin attacking the actual tough meat of this thing (the repos/approval/purge shit really I expect).

Categories:
The following categories should or COULD be available, at the discretion of approvers. Consider this list VERY in flux. I'll have a better one hammered out once I finish reading the entire library.
Asterisks* indicate existing categories:

  • Fiction*
  • Non-Fiction*
  • Reference* (to be renamed Guide-Reference)
  • Religion* (to be renamed Philosophy-Religion)
  • Poetry (there's SO MUCH POETRY)
  • Report-Article : News articles, interviews, incident reports, etc...
  • Art-Culture : Visual media, cooking, music, theatre etc...

Repos:
The following repos should or COULD be added, at the discretion of approvers.
Asterisks* indicate key minimum requirement repos:
Double asterisks** indicate restricted/"encrypted" repos:

  • Public*
  • Archived* //also available to the public
  • Command*
  • HR-CCIA
  • Security*
  • Engineering*
  • Operations*
  • Medical*
  • Research*
  • Service*
  • Purged* //only accessible to moderators/admins/whatever
  • Corrupted* //when emagged? maybe for really funky fucked up books? idk, its an idea.
  • Librarian //this so librarians can write themselves basic style/submission guides to all refer to, or store their smut idk
  • SCC**
  • Hephaestus**
  • NanoTrasen**
  • Zavodskoi**
  • PMCG**
  • Orion**
  • Zeng-Hu**
  • Idris**
  • Tau Ceti**
  • Sol Alliance**
  • Coalition**
  • Elyra**
  • PRA**
  • DPRA**
  • NKA**
  • Hegemony**
  • Nralakk**
  • Dominian**
  • Vaurca**
  • Golden Deep**
  • Hieroaetheria**
Edited by zha everything broken
Updated categories
  • Like 2
Posted (edited)

Post reserved for the lists of every item to be re-categorized/archived/removed, once I finish reading all of them.

TL;DR completely subjective judgement calls on my part below. You've been warned.

Why a book might have been categorized for archive:
- References old mechanics.
- Every creative act involves a person putting a part of themselves into something, but when I played a librarian elsewhere, I would have asked for more because I'm a heartless gatekeeping cad like that. I'm still new enough here that I don't know enough people for any of it to be personal sorry love y'all but if a judgement call on quality has to be made I'll bite the bullet and make it. :)

Why a book might have been categorized for deletion:
- Duplicate of an existing book
- Minimal contribution to the server or setting
- Works from other media- I don't have an issue with someone uploading Kipling or Coleridge so long as they're credited, but a snippet copy-pasted from a book from a random other video game that has 0 to do with Aurora or the setting or anything? Curation strikes again.
- References excessive meta/OOC information or removed lore
- Personal judgement call like above. Sorry! There's a reason I'm dropping it all here for the public eye first!

All books listed in csv-friendly format:
Title|ID

Books to assign to Archive repo:
10 Random Sol Facts, Earth Edition|701
A Beautiful Way of Understanding Our Universe One|799
A guide to Blobs|1188
A Short Series Of Events, 1|1029
A Short Series Of Events, 2|1030
A Short Series Of Events, 4|1032
An Idiot's Guide To Binary|656
blank book|1622

Books to delete:
An Interview with a Th'akh Shaman|1575
Book: Big Blue Sky|1623
A Series of Quotes|923
Anything Goes|1089
April Come She Will|1134

Books to update Category to 'Fiction':
Ayta and the Pale Stag, Part 1|1577


Books to update Category to 'Non-Fiction':
An sumarized History of the Empire of Dominia|1636
Appeal of 18 June|1168

Books to update Category to 'Poetry':
A Drop Of Red|248
A Hopeful Tale of the Depressed|1277
A Poem of Question|655
A Seaside Stroll|1511
A Short Poem On Mice|1038
A Trace in the Ether|1657
A wasteland|1466
Acquainted with the Night|242
Ad Gloriam - Memories of a warrior|1040
After You Have Gone|1143
Alabaster Eyes|1505
Alcohol, Cargo, Despair|565
Alone|1158
Altered Beast Inside|1097
An Account From the Siege of Trizar|1358
An Homage to the Miniscule, in the Style of Rudyard Kipling|445
Apartheid|1426
Apocalypse State of Mind|1295
Ark upon the sea|1482
As they sit here|1369
At the Bar|477
AT:After Theft|1474

Books to update Category to 'Art-Culture':
6 Moments musicaux, D 780, Opus 94 No3|1638
A Guide to Marching Band Instruments: Brass and Woodwinds|514
A Guide to Marching Band Instruments: Percussion|515
Adult Coloring - Adhomai Fauna Edition|912
Adult Coloring - Old Earth Wonders Edition|946
Adult Coloring - Space Edition|908
Adult Coloring - Tau Ceti Edition|911
An Exciting Journey Through Europan Cusine|1580
Assunzionii Paintings|1554

Books to update Category to 'Article-Report':
An Interview with CelestAI, Part One|559
An Interview with CelestAI, Part Two|560
An Interview with Walter Keck, chaplain|386

Books to assign to Command Repo:
A Guide For New NT Liaisons|1388

Books to assign to Engineering Repo:
A Scrapmaster's Guide to Disassembly, Vol. 1:1410
Assembling A Pistol|557
Atmospheric Technician's Reference Book|573

Books to assign to Medical Repo:
A Brief Medical Primer|1641
A Study on the Pharmaceutical Benefits of Botany|1339
Anxiety and You|927
Aurora and Mental Health|251

Books to assign to Science Repo:
A Guide to the Science of Crafting Guns - Part 1|1336
A Guide to the Science of Crafting Guns - Part 2|1337
Advanced Combinatorial Explosives Manual|800
Apple Tree Mutation Study|781

Books to assign to Security Repo:
A Guide to the Science of Crafting Guns - Part 1|1336
A Guide to the Science of Crafting Guns - Part 2|1337
An Idiot's Guide to Crime Scenes|448
Assembling A Pistol|557

Books to assign to Service Repo:
A Study on the Pharmaceutical Benefits of Botany|1339
Apple Tree Mutation Study|781

Books to migrate to the Corrupted Repo* (if this isn't created, then just deleted):
Authentic Scriptures of the Forgotten|1012

Edited by zha everything broken
Posted

Updated second post with just the titles that start with A.

As I'm going through these, tbh giving the online library page controls to edit everything right from the browser would be extremely ideal, but that's also out of my scope and would demand admin call too. Would make managing books on the fly when necessary (i.e. someone uploads some crazy shit or whatever) extremely easy to just handle and clean up from a web interface.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...