buttonmen-dev / buttonmen

Buttonmen - an online dice game
Other
16 stars 24 forks source link

Consolidate promo sets #2601

Open jl8e opened 4 years ago

jl8e commented 4 years ago

I think we're mostly doing it because the old site did it, and it leads to a lot of tiny little sets, which I don't think is ideal.

I suggest that we create a single set for promos that don't have an associated set, excluding promos that were part of a large grouping (like origins), or have a specific strong theme (like the presidential button men)

If we think that would be too large and unwieldy a set, we might divide them by large chronological grouping (last milennium, 2001-2010, etc), or by large theme (cheapass promos, con promos, misc promos)

If we want to leave the source information easily available , we could put it into flavor text, which isn't a bad idea regardless.

irilyth commented 4 years ago

This sounds fine to me, although I suppose it gets into philosophical territory about what's the purpose of "a set". On the old site, with the "random TL button from set" option, it tended to mean the buttons played a lot more games against buttons in their set. I suppose we may have that here some day -- if we do, would we want more smaller sets, or fewer bigger sets? I don't have a strong preference / intuition either way; I don't feel like sets have much to do with my day-to-day use of the site. (The one exception is for adoption matches, where I work may way through a set at a time, just because it's a convenient way to pick a next button without having to search through the whole button list; but that's only for new sets anyway.)

jl8e commented 4 years ago

I've been assuming that'll be part of filtering when that happens, and it's a good argument for this. Random from a 2-3 button set isn't interesting to most people.

TheOrgg commented 3 years ago

I was thinking about this and the 'random from set' option, and had the thought that any sets with less than four could be put into their own little set, with a note in the flavor text field about what set they appeared in.

What would the new category be called, though? Promotional&Small sets?

TheOrgg commented 3 years ago

@blackshadowshade , as per request.

TheOrgg commented 3 years ago

The question is where the threshold is. Four buttons? Six?

dwvanstone commented 3 years ago

I think we're mostly doing it because the old site did it, and it leads to a lot of tiny little sets, which I don't think is ideal.

Can you articulate more about why it's not ideal? That might help with the solution.

jl8e commented 3 years ago
dwvanstone commented 3 years ago

I agree the year isn't particularly interesting. I wouldn't even mind if they were all thrown into a "Promos Hodge Podge" set rather than categorized by theme or chronology.

All the ones I look at (besides Rikachu) have no description so putting the source info we have into the description would be perfect.

Do you think the current membership would be sad to lose all the little sets?

I was trying to think what a good minimum number is for a set size. I have a sense that 4 buttons is a good minimum for playing a "random from set" tournament.

TheOrgg: you ask about the other small sets that are not promos. You have the best sense of history of our buttons - which are the small sets that are not promos? I wonder if they could be categorized as well in some way.

TheOrgg commented 3 years ago

Let's see... Non-CON small sets... using https://buttonmen.fandom.com/wiki/Category:All_Sets would be Bar Mitzva, Bruno, Bunnies/Lab Rats, Cryptonom (but that is incomplete, with more to come), Ogres/E2G would be better with the L5R buttons, Official Japanese Beetle (better lumpped w/ unofficial), Yoyodyne, Freaks, Warlords, Tirade, Space Girlz, SFR/DragonDice, and Order of Dolls.

Four is probably the right cutoff for a full set, looking at Yoyo, Freaks, and Dolls. Most of those could probably be put as promos, as they promote a brand or company-- even the Space Girlz set fits as it was a promo for Dana's BMO site. Feel free to take a look at the all sets list in the wiki to see if I missed anything.

The bigger question is do we separate the promos from the con buttons? I'd argue that con buttons ARE promo buttons, so they should be in a big "Promo" category if not added to associated sets (like Giant, et al).

jl8e commented 3 years ago

So, I got around to taking a look at the promo sets.

For reference, the sets I consider to be at least arguably promos are: 1999, 2000, 2003, 2005, 2017 Shorecon, AnimeExpo, Balticon, Broccoli, CGC, Demicon, Fairies, Howling Wolf, Polycon, SFR, Sydcon, Big Cheese, Presidential, Save the Ogres, Everything to Gain, and Space Girls. Also Angora.

(Also the Origins set, but that's easily big enough to stand on its own.)

There are up to 43 promos, depending on one's definition. That's too many for a workable set, so we need some kind of breakdown.

My proposed breakdown comes out to: Cheapass Promos: 8 Con Promos: 16 Other Promos: 19

Con and Other are kind of big, but not that bad. They might rate more subdivision if someone can come up with something that makes sense. Most of the sets I might leave alone go into Other. (There's also a fair amount of hair-splitting available between "promos given out at a specific con" vs "promos for a specific con". These decisions may be fairly arbitrary.)

More specific breakdowns: 1999: Carson is Other, the rest Cheapass. 2000: Gordo is cheapass, the rest other shorecon: con Anime Expo: con 2003: con 2005: con 2017: cheapass Balticon: con Broccoli: other cgc: con demicon: con fairies: Little Sven is other, the rest con howling wolf: other polygon: con sfr: other sydcon: con big cheese: cheapass presidential: other save the ogres and everything to gain: other space girls: other Angora: other

Sets I might leave alone: presidential, fairies There's an argument to be made for combining save the ogres and everything to gain into their own set. (L5R Promos?) There's also an argument for adding them to l5r, but that's already a big set.

jl8e commented 3 years ago

And a technical question:

When this gets turned into a pull request, I should clearly make a file to update the live db, and make the changes to the master button file, but are they done as separate pulls?

TheOrgg commented 3 years ago

I'd second the putting of StO and E2G into L5R, as L5R's first two promos are already in with the set.

I also don't see anything wrong with a 40 character set. Fanatics, once Chaos Dice, Wildcard Dice, and Plasma Dice are implemented will be 175 characters.

I'd also put Vote, Broccoli, and Space Girls with Cheapass from what I know about them.

The rest seem like they'd fit into "Con" in general. Howling Wolf was from an anniversary party, and Angora was handed out at cons. I could see Hodgepodge for Angora, too, as she's most similar to Bull and a few others in Hodgepodge.

jl8e commented 3 years ago

I also don't see anything wrong with a 40 character set. Fanatics, once Chaos Dice, Wildcard Dice, and Plasma Dice are implemented will be 175 characters.

And it's huge and unwieldy. Even if we improve the interface, you're still scrolling through 40 characters to find the one you want.

For random-from-set, I'm pretty sure ~8-15 is about right. Less and you get too little variation. Too much more and it no longer feels much different from the larger pool. (You want some frequency of repeats.)

I'd also put Vote, Broccoli, and Space Girls with Cheapass from what I know about them.

Space Girls is arguable, but my criterion was "distributed by Cheapass". Presidential was done by taking a page from the con book to cheapass (or, semi-secretly, Chaosium). Tirade was distributed by Looney Labs.

irilyth commented 3 years ago

And it's huge and unwieldy. Even if we improve the interface, you're still scrolling through 40 characters to find the one you want.

I pretty much never scroll through lists of buttons to find the one I want; when I'm creating a game, for example, I use the already improved interface to type in the name, and it pops right up. When do you find yourself scrolling through lists of buttons?

jl8e commented 3 years ago

Also, I think it's probably more productive to hash out the general categorizations first, then argue about specific filing decisions.

jl8e commented 3 years ago

And it's huge and unwieldy. Even if we improve the interface, you're still scrolling through 40 characters to find the one you want.

I pretty much never scroll through lists of buttons to find the one I want; when I'm creating a game, for example, I use the already improved interface to type in the name, and it pops right up. When do you find yourself scrolling through lists of buttons?

When you're just browsing to see which button you want. (Also, the larger the set, the harder it is to remember what all the buttons in it are.)

When you're making a series of games against a set. When I get to 50 states and Fanatics in "I will fight everybody!", it's going to be a pain.

cgolubi1 commented 3 years ago

When this gets turned into a pull request, I should clearly make a file to update the live db, and make the changes to the master button file, but are they done as separate pulls?

Nope, put both sets of changes in the same PR. I do a (sadly, scripted manual, but that's life) test to make sure that recreated and updated databases are identical, so we don't wind up with drift between new dev sites and prod/staging.

irilyth commented 3 years ago

When you're just browsing to see which button you want.

I'm more or less never doing that. :^ ) But sure.

When you're making a series of games against a set.

Hm, so I do this all the time with adoption matches, and the way I do it is that I create a game, select the set, and then pick a button from the set, usually the next one alphabetically. (I usually play a series of games with the same person, and create a new game from the previous one, so the previous game's button is already right there, and once I select the set, the next button in the set is just the next button down in the list.)

Anyway, you may do things differently, and everyone else may do things differently than either of us, and I continue to mostly not really care about how many buttons are in a set, except insofar as it takes time and effort away from things that I care more about. :^ )

TheOrgg commented 3 years ago

I suspect the most efficient time to do this would be during the Giant Button Dump in a few months. Add the new items (including the unimplemented) and rearrange all at once.

jl8e commented 3 years ago

I suspect the most efficient time to do this would be during the Giant Button Dump in a few months. Add the new items (including the unimplemented) and rearrange all at once.

It's probably easier to keep them separate. Multiple pulls that alter the DB are going to be more annoying to handle.

Also, since the user base are going to Have Opinions, hashing out the details is going to take unbounded time.

blackshadowshade commented 3 years ago

I agree with @jl8e that changing button sets should be kept separate from button addition. It makes it far easier to work out what's supposed to be happening.

@jl8e, you'll find that once you make the changes, you'll get a failure (maybe multiple!) related to a counter that we have there for the number of button sets. That one file will also need to be updated in the pull request.

jl8e commented 3 years ago

Is there a reason we're hard-coding the number of sets, rather than pulling it from the DB?

blackshadowshade commented 3 years ago

Yes, to make sure that the unit tests and code base are synchronous with the current DB version.

jl8e commented 2 years ago

I'm probably not going to work on this until after the "Add All The Buttons!" pull is in, but I'm inclined to go with the division I proposed in this forum thread

In the interest of keeping sets together in the list as discussed in #2778, I propose naming the sets:

Legend of the Five Rings Rares Promo: Cheapass Promo: Conventions Promo: Misc

It seems more appropriate to have the L5R buttons with the rest of L5R than with the other promos.

Also, renaming the Origins set to Promo: Origins 2004