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

Inventory variations #375

Closed
nhjjr opened this issue Jun 2, 2023 · 2 comments
Closed

Inventory variations #375

nhjjr opened this issue Jun 2, 2023 · 2 comments

Comments

@nhjjr
Copy link
Collaborator

nhjjr commented Jun 2, 2023

Here I will add a list of possible inventory use-cases that can be taken into consideration when building the foundation of Onyo. Take the desires for these use-cases with a large grain of salt. I'm going all-out in what I can imagine, and not everything is relevant to Onyo's scope. It may trigger someone else's desires, though, and then we can always decide to move the scope-posts.

Books

Books have a lot of meta-data and tracking which books you've read, own, want-to-read (etc.) is useful when you read a lot of them. The books themselves I store as author - series # - title (e.g., Erikson, S - Malazan Book of the Fallen 01 - Gardens of the Moon). While there are plenty of other keys to use, these are the most useful once on first glance, but can of course also make use of the folder structure. This brings with it a new complication: spaces in pseudo-keys, and potentially missing pseudo-keys. After all, not every book is part of a series. I rarely lend books to others, so using directories as a location (as we do with devices) is suboptimal. That frees up directories to store meta-data, but is that really a good idea?

I would mostly use onyo to track books I own or wish to own. There are book trackers out there, but they come with built-in social features I loathe.

When it comes to books there is a mild desire to attach files to an asset (.epub, .mobi, or .pdf) because they don't necessarily have to be physical books.

Tabletop RPG Books

A different category of books. These RPG books can again have many different meta-data keys. I'm currently keeping track of my collection via an excel sheet but that's suboptimal. RPG books can often be grouped in various ways. Grouped by genre, by system mechanics, by book type (e.g., core rules, scenario, campaign, sourcebook, etc.), and by setting. Setting is the most important grouping, as there can be many books in the same series and you often depend upon the core rules of a setting to understand the other books.

It is quite common nowadays that if you buy a ttRPG book you get a PDF alongside it, but other digital assets such as images and soundscapes aren't uncommon either. Much like the books, it can be quite useful to store them alongside. However, unlike the books these files tend to be much bigger due to a larger focus on art.

Comic Books

Comic books are again of the book category, but with a whole set of different meta-data keys. What is more prevalent in this type of book is the publisher (since marvel and DC are big ones), and unless it's an indie title it is usually part of a big series. Lets take superheroes for example. We can have spider-man as a hero, who has various books (spider-man, the amazing spider-man, ultimate spider-man, the spectacular spider-man, spider-man unlimited, the sensational spider-man, etc. etc. you get the point). Within those books there can be appearances of other heroes, so we'd call it a "crossover". If Captain America shows up in a Spider-Man book, then in Captain America's own series there's suddenly a gap. This encourages you to buy those spider-man books. This makes things quite complicated, as suddenly books cannot just be categorized by what hero they feature. There can even be major crossover events, like "Secret War" in which many heroes and villains are featured together.

Then there is the differentiation of book types. You have the small issues that are collected into trade paperbacks. Depending on the publisher, these can again be collected into omnibuses or other books. Then there are special editions such as hardcover books that look fancier, and there are even duplicates of the same issue but with a different cover. Those must be differentiated because collectors often buy multiple variants (especially if they like an artist doing a variant cover).

In comics also artists are just as important as writers, so putting either of them in the name is probably not a great idea. Comics are complicated.

Boardgames

Boardgames are much like ttRPGs. You tend to have base-games and expansions that belong to a base-game. Here you again have many things to store as meta-data ranging from mechanics or number of players, to genre and designer. In addition to just the boardgames, some players like to keep play-by-play logs of varying complexity (i..e, write a report on the entire game, or just keep track of who won). It can then be quite useful to get a boardgame and cat the play logs. This is of course not something easily tracked via key-value pairs (especially if you expect to be able to see the values in a table). Furthermore, rule PDFs are free to download for pretty much every game so that would be a good thing to keep track of with this as well.

Again, location is not important here. They're all in my bookcase and ever since I no longer let anyone borrow them after one of my favorite games got destroyed (the idiot used carrier straps to tie the box to the rear of his bike. It then fell off right in a puddle of mud, because it was raining when he was transporting it. He thought cardboard would withstand rain. We're not friends anymore).

However, with the amount of space boardgames take up, it's common to just sell them if I feel I have two games that are mechanically too similar. In that case I want to have the game in my inventory still, but marked as "no longer owned" (e.g., gifted or sold).

@nhjjr
Copy link
Collaborator Author

nhjjr commented Oct 23, 2023

I'm creating a boardgame collection using Onyo. Below are the commands to create what I have thus far created. Note that it contains some wishful thinking with regard to bugfixes and feature requests :)

mkdir onyo-demo
cd onyo-demo
onyo init
touch .onyo/templates/boardgame
echo "---\nplayers:\ntime:\ndesigner:\nrating:\nserial: faux" >> .onyo/templates/boardgame
onyo config onyo.assets.filename "{title} ({year}).{serial}"
onyo config onyo.new.template "boardgame"
onyo config onyo.collection.owner "niels"
onyo config onyo.collection.type "boardgames"
ASSET=onyo new -k title="7 Wonders" year=2010 designer="Antoine Bauza" players=2-7 time=30m
onyo set -k rating="6 out of 7 wonders" -p $ASSET
ASSETDIR=onyo new -k title="Arkham Horror: The Card Game (Revised Edition)" year=2021 designer="Nate French, Maxine Juniper Newman" players=1-4 time=60m
onyo mkdir $ASSETDIR
onyo new --inherit -k title="The Dunwich Legacy: Campaign Expansion" year=2022 cycle=1 type="campaign expansion" -p $ASSETDIR
onyo new --inherit -k title="The Dunwich Legacy: Investigator Expansion" year=2022 cycle=1 type="investigator expansion" -p $ASSETDIR
onyo new --inherit -k title="The Path to Carcosa: Campaign Expansion" year=2022 cycle=2 type="campaign expansion" -p $ASSETDIR
onyo new --inherit -k title="The Path to Carcosa: Investigator Expansion" year=2022 cycle=2 type="investigator expansion" -p $ASSETDIR
onyo new --inherit -k title="The Forgotten Age: Campaign Expansion" year=2023 cycle=3 type="campaign expansion" -p $ASSETDIR
onyo new --inherit -k title="The Forgotten Age: Investigator Expansion" year=2023 cycle=3 type="investigator expansion" -p $ASSETDIR
onyo new --inherit -k title="The Circle Undone: Campaign Expansion" year=2023 cycle=4 type="campaign expansion" -p $ASSETDIR
onyo new --inherit -k title="The Circle Undone: Investigator Expansion" year=2023 cycle=4 type="investigator expansion" -p $ASSETDIR
onyo new --inherit -k title="Edge of the Earth: Campaign Expansion" year=2021 cycle=7 type="campaign expansion" -p $ASSETDIR
onyo new --inherit -k title="Edge of the Earth: Investigator Expansion" year=2021 cycle=7 type="investigator expansion" -p $ASSETDIR
onyo new --inherit -k title="The Scarlet Keys: Campaign Expansion" year=2022 cycle=8 type="campaign expansion" -p $ASSETDIR
onyo new --inherit -k title="The Scarlet Keys: Investigator Expansion" year=2022 cycle=8 type="investigator expansion" -p $ASSETDIR
onyo new --inherit -k title="Harvey Walters" year=2020 type="investigator starter deck"
onyo new --inherit -k title="Winifred Habbamock" year=2020 type="investigator starter deck"
onyo new --inherit -k title="Jacqueline Fine" year=2020 type="investigator starter deck"
onyo new --inherit -k title="Stella Clark" year=2020 type="investigator starter deck"
onyo new --inherit -k title="Nathaniel Cho" year=2020 type="investigator starter deck"

@aqw
Copy link
Collaborator

aqw commented Aug 19, 2024

Closing along with #335 and #357.

Reading through the ideas in here, most seem to be either implemented (#432) or have tracking issues open for them (#428).

The only one I don't see/recall is:

onyo config onyo.collection.owner "niels"
onyo config onyo.collection.type "boardgames"

Onyo can set arbitrary keys, so if this is just metadata to describe the repository, then it's already implemented. If it's something else that you think should be implemented, please open an issue for it and we will discuss there. :-)

@aqw aqw closed this as completed Aug 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants