horus
 member, 403 posts
 Wayfarer of the
 Western Wastes
Tue 27 Feb 2018
at 02:27
Tarot Deck Development Methods & Practices
This topic is in response to a request by the original poster in this topic:

link to a message in this forum

(From message no. 19 in that thread...)

steelsmiter:
I'm not a mod, but I'd like to respectfully ask that the greater substance of the different varieties of cards in your post and the one you were referencing be opened in another thread. I do of course have a bias in that regard, so take of that what you will.


So... let's continue our discussions on methods and practices for simulating a tarot deck in the RPoL dice roller here, please, folks.

Copied below are relevant posts from the previously linked thread for continuity's sake:


{From message no. 18, by horus}

Re: Is there a way?

DarkLightHitomi:
How about just making a way to add our own decks?

That would allow ccgs to be played fairly easy, and allow any number of other card games such as Three Dragon Ante (whicn has two decks with a variety of ways to mix and match the "suits") or even Phase 10 and Uno.

The dice roll to support this is the easy part.  Roll XdY where X is is the number of draws, Y is the number of cards, and set unique=yes.  Easy peasy.  (But in the case of Tarot, not Xd78 as one might think, but Xd156, to account for upright and reversed meanings.)

The hard part would be building the interface to make a symbol table, because not all card decks have the same suits, values, names, meanings, etc.

I could see a need for as many as seven columns in the symbol table:

Result:  the value of the die roll which generates a given card.
Symbol:  the value shown on the face of the card (1, 2, 3,... Page, Knight, Grand Imperial Poobah, etc.)
Suit/Color:  Spades, Hearts, Diamonds, Clubs, Red, Green, Blue, Yellow, Black, etc.
Hierarchy:  Major/Minor Arcana, Trumps, Pips, Face Cards, etc.
Position:  Normal, Upright, Crossing
Face Up/Face Down: (Basically private or not?)
Text:         Any meanings, rules, or effects this card has, etc.


Of course, others may have different ideas.  It is certainly possible some of these columns in the table for a deck might be dealt with in other ways by the dice roller.

Then again, I'm making presumptions I probably shouldn't about the best method for simulating a deck of cards.

Mods:  would further discussion of methods and practices be welcome here?
 Aside from practical considerations, there are also legal ones.  Building a deck simulator for copyrighted cards (Yugi-Oh, Deck of Fate, etc.) might present ethical challenges...



{From message no. 22, by Skald}

Re: Is there a way?

That's what I like to see - sorted before I get here !  Thanks for that. <grins>

Yup, feature creep is one thing, but the custom cards suggestion is really another matter entirely.  For what it's worth, my opinion is that the copyright problem will be a killer, but as we've said that's a discussion for another thread.

Very good point about the reversed option taking the Tarot deck out to XD156 - anything else that needs to be taken into account ... from a quick look at wikipedia, it seems the occult deck with major/minor arcana is the most commonly used, though there's also some Italian, Italian-Portuguese and French gaming decks.

Even with just the occult deck, wiki suggests there's some variation in naming the suits, specifically batons/wands/rods/staves and coins/pentacles/disks.  Is there a more widely used/preferred term ?


{From message no. 23, by steelsmiter}

The reddit post that prompted me to ask about this uses cups, swords, wands and pentacles, though I happen to know coins are often used instead of pentacles so either of those works for my purposes.


{From message no. 24, by Utsukushi}

Re: Is there a way?

Reversals aren't that simple, though - it's not half and half.  If anything, you kind of decided that when you shuffle.  Also, it doesn't double the number of cards, because you're not going to have, say, The Moon, and The Moon Reversed, in the same draw, which could totally happen if you just double the size of the deck.  So from the system's side of things, that has to be, "Draw a card, then decide if it's reversed or not."

Really, it sounds a little cold, but ideally there would be a space to fill in, like, "% Reversed" when you draw.  Unfortunately, the open space that comes with different systems is already needed for "No of cards", so I don't know where you could put that.

If it needs to be just standard, I'd say maybe each card should have at most a 20% chance of being Reversed, but then again, that might just be the way I shuffle.  I always feel like they should be rare, so I don't turn very many.

Maybe at the beginning of any Tarot draw, the system could randomly generate a number from 5-25 and that would be the percent chance of a card being reversed in this set?

I actually like Staves and Coins best -- but for annotation purposes, since Swords and Cups are pretty standard, Pentacles and Wands is more useful since they start with different letters.


horus
 member, 404 posts
 Wayfarer of the
 Western Wastes
Tue 27 Feb 2018
at 03:04
Tarot Deck Development Methods & Practices
Utsukushi brings up a valid point:  if the dice roller were used as I suggested (Xd156), unique=yes would be no guarantee of, for instance, The Fool and The Fool (Reversed) both appearing in a draw of more than one card.

Experiments I've performed in my sandbox so far indicate that unique=yes is applied to all dice rolled by the dice roller in any one throw, so using Xd2 to handle reversals doesn't fit well for any values of X greater than 2 (as you need X unique sides on any one die thrown to account for X unique results)

All the preceding babble is predicated upon my limited but growing knowledge of the RPoL Dice Roller.  jase will doubtless have better tools at his disposal?

As for Minor Arcana suits:

  • Swords (equivalent to Spades)
  • Cups (equivalent to Hearts)
  • Pentacles/Disks/Coins (equivalent to Diamonds)
  • Wands/Batons (equivalent to Clubs)


are the usually accepted suit names, but there are foreign-language equivalents as well:

French:  Épées (Swords), Coupes (Cups), Deniers (Coins) and Bâtons (Batons)
Spanish:  Espadas (Swords), Copas (Cups), Oros (Coins), Bastos (Wands)

just to name a couple.  Whatever wins the popularity contest is fine with me.

I think I'll dog off my ramblings for now.  Keep it going, folks!

This message was last edited by the user at 11:00, Tue 27 Feb.

DarkLightHitomi
 member, 1292 posts
Tue 27 Feb 2018
at 05:19
Tarot Deck Development Methods & Practices
Replace the d2 with a larger dice, then evens are regular, odds are reversed.

Of course, not all tarot reading styles use reversals, so you could just use a style that doesn't need reversals marked.
horus
 member, 406 posts
 Wayfarer of the
 Western Wastes
Tue 27 Feb 2018
at 08:42
Re: Tarot Deck Development Methods & Practices
DarkLightHitomi:
Replace the d2 with a larger dice, then evens are regular, odds are reversed.

Of course, not all tarot reading styles use reversals, so you could just use a style that doesn't need reversals marked.


I'd actually prefer it if we could use symbols of inclusion other than [] (since these are used to open and close dice roller links) for something like:

[dice=(Xd78 unique=yes),Xd2]

such that the scope of the unique= (and possibly other) option(s) could be made local to one dice roll in a list, or to a subset of the list instead of always being global in scope.

But... as I may have mentioned earlier, my thinking on this may be crabbed by limited perspective.  It would really help to have a peek at the dice roller's source code to know what is do-able and what is not, but that's jase's call.  I'd be willing to sign a Non-Disclosure Agreement, even, if it would help.

Such a generalized solution appeals to me more, since it would promote more versatility in the dice roller, and lend itself to simpler solutions for future projects.

There I go again...
Utsukushi
 member, 1440 posts
 I should really stay out
 of this, I know...but...
Tue 27 Feb 2018
at 21:06
Re: Tarot Deck Development Methods & Practices
Actually, most of this still feels totally on-topic for the original tarot deck inclusion.  Being able to build tables so that you can name the suits to suit you seems.. like overkill to me, but it is in no way this:
DarkLightHitomi:
How about just making a way to add our own decks?

That would allow ccgs to be played fairly easy, and allow any number of other card games such as Three Dragon Ante (whicn has two decks with a variety of ways to mix and match the "suits") or even Phase 10 and Uno.


I think the reason this went beyond Steelsmiter's request is because this quickly has nothing to do with Tarot anything and quickly leaves the Dice Roller behind entirely, being more about things like M:tG, or games that use decks of cards (like Torg Eternity -- for which this would be awesome to have, but... it seems like a lot of work for a comparatively obscure game.)  It probably requires being able to track Uniqueness between draws, and may even require being able to attach different tables to specific players (like for CCGs where each person draws from their own deck, rather than a common one.)

It's a very neat idea, but I'm pretty sure it's a whole new thing.  (Well, to RPoL.  I know there are places that have things like it.)
horus
 member, 410 posts
 Wayfarer of the
 Western Wastes
Wed 28 Feb 2018
at 04:56
Re: Tarot Deck Development Methods & Practices
In reply to Utsukushi (msg # 5):

And... because I started talking about algorithms, methods, practices, etc. for actually implementing a Tarot or other generic deck.  Yeah, it very quickly got rather far afield.
DarkLightHitomi
 member, 1296 posts
Wed 28 Feb 2018
at 06:13
Re: Tarot Deck Development Methods & Practices
In reply to Utsukushi (msg # 5):

Umm, that is far beyond what I intended.

Perhaps better examples for including custom decks is Paizo's not-tarot deck, or tarot spreads where you draw only from courts, particular suits, or just the major arcana. There are also numerous oracle decks out there. There is also a dnd supplement for building a character usjng a tarot deck, though doing something similar with a custom deck themed to your game would be awesome. Strsight card decks but with both jokers, or just one joker, or decks that eliminate some of the cardd.

All that could be achieved with one single addition rather than adding a dozen different additions.

As far as I'm concerned, if jase adds something, he might as well get the most bang for his time, and that means making flexible additions that can be adapted to the most uses with the least work. In most cases, that means generalize, generalize, generalize. In this case, that means having a deck list the dice roller draws from that is easily modified and/or swappable/choosable.
bigbadron
 moderator, 15512 posts
 He's big, he's bad,
 but mostly he's Ron.
Wed 28 Feb 2018
at 06:35
Re: Tarot Deck Development Methods & Practices
Or just roll dice (using the roller as it currently stands) and compare the results to a table that you created yourself.  That would be infinitely customisable.

This message was last edited by the user at 06:38, Wed 28 Feb.

horus
 member, 412 posts
 Wayfarer of the
 Western Wastes
Wed 28 Feb 2018
at 08:02
Re: Tarot Deck Development Methods & Practices
In reply to bigbadron (msg # 8):

Yup.  I have an article in my sandbox about how to simulate a Zener deck using just this method
DarkLightHitomi
 member, 1297 posts
Thu 1 Mar 2018
at 05:37
Re: Tarot Deck Development Methods & Practices
There is a reason why the current dice roller does so much, and that reason is not because those things can't be done by rolling xDy and comparing to a table.

Same applies here. It takes like a minute to write and compile a console program that rolls xDy. So why don't we all do that?
bigbadron
 moderator, 15515 posts
 He's big, he's bad,
 but mostly he's Ron.
Thu 1 Mar 2018
at 06:17
Re: Tarot Deck Development Methods & Practices
Sure, for something that simple, it is fast.  But what's being proposed here is not that simple, is it?

Also note that there are numerous systems that can use the roller in conjunction with tables which are not included in the roller itself.  All of them involve rolling the dice, then looking up the result somewhere else - RPG books are full of tables.
DarkLightHitomi
 member, 1298 posts
Thu 1 Mar 2018
at 09:07
Re: Tarot Deck Development Methods & Practices
As far as I know, what is being asked for is quite that simple by itself, only the integration with existing stuff is what makes it hard. Why go through that, or even have to decide what decks are worth the trouble, for every additional deck variation, when one solution not only handles this request but many variations of it all at once?

Note (in case this fact got missed), The earlier mention by someone else about supporting ccgs with counters and unique draws over the course of a game is not what I'm suggesting.

This message was last edited by the user at 09:09, Thu 01 Mar.

horus
 member, 417 posts
 Wayfarer of the
 Western Wastes
Thu 1 Mar 2018
at 18:27
Re: Tarot Deck Development Methods & Practices
The only reason integration with existing stuff is "hard" is because the only one who knows the ins-and-outs of that existing stuff is jase.  As long as that is the case, the heavy lifting all falls on him.  I think that's one of the reasons there's some opposition to the feature creep associated with a more generic card deck simulator.

That said, the thinking and discussion we are doing here may promote lines of development that otherwise might not have arisen, so our time is isn't exactly being wasted. (Not that you said it was, mind you...)

Making RPoL more versatile and able to meet its users' needs is the end game.  New tools should integrate well with existing ones where that is possible, and where that is not possible, should be designed with a clean and easy to use interface and a solid back-end.

jase seems to already have a good grasp of these concepts in the tools he's fielded thus far, even if the code backing them is (maybe) a bit tangled and bodged together.    (I'm paraphrasing jase here - I forget where he expressed these sentiments just now, and I'm getting ready for work.)

At this point, we don't even know whether the dice roller is done in perl, PHP, SQL, or some other language.