Skip to content

Add "special" set type#584

Open
mmougy wants to merge 1 commit intozzorba:masterfrom
mmougy:fix-prelates-set-type
Open

Add "special" set type#584
mmougy wants to merge 1 commit intozzorba:masterfrom
mmougy:fix-prelates-set-type

Conversation

@mmougy
Copy link
Copy Markdown
Contributor

@mmougy mmougy commented Jan 18, 2025

Prelates are part of the scenario The Age of Apocalypse - 1A
They can't be used as a regular modular

For comparison, the set Marauders is also part of both scenario:

the set Marauders is designated as "villain" set

marvelsdb-json-data/sets.json

Lines 1112 to 1116 in 3f68323

{
"code": "marauders",
"name": "Marauders",
"card_set_type_code": "villain"
},

sets.json Outdated
"code": "prelates",
"name": "Prelates",
"card_set_type_code": "modular"
"card_set_type_code": "villain"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I don't think this change is correct. The Prelates are not a villain set. The set contains a bunch of minions in it. The Apocalypse villain requires this set to be part of it but that doesn't mean it's a villain set and it doesn't mean you couldn't play with that set with another villain as a modular set.

You mention Marauders but that's an actual villain set that contains villains that you use in multiple scenarios. You wouldn't put the Marauders set in with another villain.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Prelates are double sided, they does not have the orange back.
so they cannot be shuffled in the encounter deck and used as a regular modular

Also the Prelates have per_hero hit point, they are very specific minions, meant to be used in a scenario

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I don't think this change is correct. The Prelates are not a villain set.

You are kind of right, Prelates set is not a scenario on its own, like Marauders
Maybe the "villain" or "modular" are incorrect classification for them
They are a sort of subset of a villain set

like the invocation set is not a hero set on its own, and is a subset of Doctor Strange's set,
but currently designated as hero set

{
"code": "invocation",
"name": "Invocation",
"card_set_type_code": "hero"
},

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Traditionally the villain set contains the villain and scenario. The only exception to this rule that I know of is the marauders set which contains the villains but not the scenario. morlock_siege and on_the_run are marked as villains because they contain the main scheme but they don't contain villains. There's not a better model for that currently so I made all 3 villain sets at the time. Possibly morlock_siege and on_the_run could become a new scenario type but I'm not sure how that would impact all existing villains that are not marauders that include both villain and scenario. Maybe the purest form would be set types of villain, villain_scenario, and scenario.

modular is basically for all other encounter sets that can be used with a villain/scenario. I think this is mostly true. You should be able to use all non-villain sets with different villains in theory but maybe some (like prelates) require a little more setup and don't fully make sense to be shuffled into an encounter deck or used with other villains. The prelates do not contain any villains. To me, they are clearly not a villain set even though they might have a close relationship with a single villain. They could be used with another villain (although unlikely at this point) just like any modular set. I don't know if there's a rule against using it as the encounter deck because they are double sided but that in itself doesn't mean they are a villain deck.

per_hero doesn't impact this. There are other minions that have per_hero hit points so that's completely irrelevant.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I would say they are a modular set, but not reusable. so adding a new type of modular set meant for just a group of related cards might make sense. Perhaps just add a "special" set type for this and anything else that needs to be grouped.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

maybe "subset" is clearer than "special" ?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I'm still struggling to see the value in the change for prelates. I think this is trying to solve a problem that doesn't exist. By the way, the back side of the prelate cards are the overseer cards that are currently only used with the missions so that set has the same "problem" but isn't being "solved" in the same way.

I'm trying to think about maintaining these sets and how to know what to tag them. Does a double sided encounter set mean it can't be considered modular because it's double sided? Will we know for sure that all cards in a set are double sided? What if two different villain scenarios interact with the same double sided set? Does that mean it's modular because it's reusable but if it's only used by a single villain scenario isn't not modular? The way the prelate cards are written in the set, they can be reusable. The scenario tells you how to use them but a future scenario could tell you how to use them differently. They are written in a reusable (read: modular) way.

Looking at the 1.6 rules under the Encounter Card section it says:

Encounter cards belong to various classifications, such as scenario-specific encounter cards or modular set encounter cards.

In the Scenario-Specific Card section, it says:

Cards in the "scenario-specific" classification are cards that belong to a scenario's set of accompanying cards.

Based on this, the prelates/overseers are not scenario-specific since their set doesn't match the scenario set. Maybe their list isn't comprehensive but to me, these seem like modular sets by default. I don't think we should be trying to classify these into a new term that the rules don't have. We don't need to be smarter than the game designers.

Separate from that, I think "special" is a poor name for a set type. It's too generic to mean anything and as seen on the last commit it's just a catch-all for anything odd. I think it's easy to abuse it and I'd prefer to design better names for things to describe what they are. That'll help maintaining the cards too. If there are exceptions to the rules, I think we should try to understand what we are building before we just throw a generic label on it.

If we need to separate these out because they aren't a traditional encounter deck with the orange back (I'm still not convinced this is needed and I'm not sure if there's a rule against shuffling the prelates into the encounter deck for a non Apocalypse scenario as a traditional modular set), I think special_modular is a better term. Again, I'm 100% against this idea but I'm not the only voice here (maybe just the loudest at the moment 😆 ).

Separate from all the above...I've long felt that Dr. Strange/Storm/Iceman should be able to display their special hero side decks in the deck building experience so that you can view all the cards that are going to be associated with your hero in the same spot. Dr. Strange and Storm call them decks. Iceman just says set aside upgrades. I think having a "hero_side_deck" or "hero_special_deck" type would be useful (doesn't exactly match Iceman since it's not considered a deck but I think the intent is true) to tag those with and it would easily allow us to search and display those in the UI. Having those marked the same "special" as other encounter sets will make that more difficult and should be avoided. I think shoehorning that into this unrelated PR is wrong and it shouldn't be part of this PR in any way.

TLDR

  • I think the prelates/overseer sets should continue to remain as modular sets.
  • I think this PR should be closed.
  • I think having a new hero_side_deck/hero_special_deck set type with a hero_code pointing to the specific hero would be useful as a separate feature/PR.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I've long felt that Dr. Strange/Storm/Iceman should be able to display their special hero side decks in the deck building experience

It's exactly what I have in mind, I love seeing Permanent cards like Solid during Shadowcat deckbuilding. It would be great to have the same thing for Dr. Strange/Storm/Iceman
image

I also would love having a tool to help building a scenario... and it is necessary to have a distinction between scenario sets, modular sets (the ones you can add to nearly all scenario), campaign sets, and "special" sub-sets

I think this is trying to solve a problem that doesn't exist

I agree there is no problem to solve here.
The goal is to add consistency to the data, and to ease further features

@jordanweiler
Copy link
Copy Markdown
Contributor

I still believe this PR should get closed for a variety of reasons.

  1. I don't think the goal of this repo should be enforcing strict relationships between sets. I just don't. That's a huge can of worms to open. It's a many to many relationship. Most of that information is related to villains and their setup sets. There doesn't exist a villain page currently that can even showcase that type of information so what audience is this type of information for? If we decide to link the required sets for a villain/scenario, should we also be linking the suggested ones too? It potentially is a very big feature to implement and I'm not sure I see a lot of benefit of trying to have that strict database relationship between sets.
  2. The relationship between sets on this PR is backwards. If (and again I am completely against this idea) it is decided that we want to support a strict relationship between sets, then the villain that requires a set should point to that set but the set itself which could be used again by another villain (because all sets are basically modular) shouldn't be pointing to the villain. The cards that say a set is required comes from the main scheme of a villain during contents/setup.
    For example, the "marauders" set currently has a "related": ["morlock_siege", "on_the_run"] property. If we want to have these strict relationships (and again I DON'T think this is a good idea!), it should be the "morlock_siege" and "on_the_run" villain sets that require "marauders" because their main scheme cards in fact say that. The current implementation is backwards. Nothing in "marauders" says anything about "morlock_siege" or "on_the_run" because it is modular.
  3. "Special" as a set type doesn't match a term used by the game developers. It would be creating an artificial name for something that doesn't exist in the real game. I think this is a very bad design choice.
  4. "Special" is being used as a catch-all type. There's a big difference between a hero specific side deck vs a set that is primarily used with a specific villain vs a villain set that is used for two different scenarios. All of those are currently being counted as the same "special" set type. Those seem very different to me.

@Kamalisk
Copy link
Copy Markdown
Collaborator

the encounter data is a nice to have in the database, and I assume the main use case for it, is for tools that read it and generate encounter sets and such, which look for modular encounter sets.

There are two ways to handle it, one is to leave it as a modular set but add another field that tells you if it is actually a modular set that can be included as such, or we can add this special set for those sets which arent true modular sets.

I would argue that hero_special and modular_special set names would be fine (which leads to villain_special and such if needed)

As for the connection between sets, if we wanted to add that data, I think it does make sense for Dr Strange to connect to the special set rather than the other way around (in case those sets are used by other cards however unlikely).

@Kamalisk
Copy link
Copy Markdown
Collaborator

My suggestions for this is to split the set change and the related changes into seperate changes, so we can decide upon them separately.

@mmougy mmougy force-pushed the fix-prelates-set-type branch from 4a249e3 to 548d999 Compare March 15, 2025 20:08
@mmougy mmougy changed the title [AoA] fix Prelates set type Add "special" set type Mar 15, 2025
@mmougy
Copy link
Copy Markdown
Contributor Author

mmougy commented Mar 15, 2025

I kept only the "special" set type.
Indeed the connexion between sets need more reflexion.

@jordanweiler
Copy link
Copy Markdown
Contributor

We don't want "special" as a set type because it's too generic and doesn't mean anything. This current implementation is grouping very different hero related sets with villain/scenario/modular related sets. Can we finally close this PR? This is not what we want.

@jordanweiler
Copy link
Copy Markdown
Contributor

#664 added a new hero_special set type and linked the relationship between heroes and side decks/set aside cards. This finally linked Dr. Strange, Iceman, Storm, and the new Hercules hero with their special cards that are not part of their deck but are part of their hero experience.

Can we close this PR now?

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

Successfully merging this pull request may close these issues.

3 participants