Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Pinochle Notation
For me the most important line to scrutinize at the moment is Variant
There is a lot that I wish to identify in the line and I am worried that it is a little over stuffed and yet I don't want to explode it into separate lines.
All of these values are important for quickly querying/identifying the game for statistical purposes.

If you need to filter out all Passing games, or Kitty games, or basically all games that are not to 500, then you can do so merely by accessing these values.

The trouble is keeping it clean, concise, and intuitive.
I also worry about different variants extending and extending the possible values.

I'd like to hear some thoughts and suggestions about refining this line.


And of much smaller significance, I am slightly grated by the Holding line.
It serves to replace the Deal# value after cards are exchanged.
But it doesn't work with a single label like Seat# and Team#.
I guess I am saying I'd like to have a single label be responsible for declaring what each player is holding.
However, if I rename "Deal#" to "Hand#" it is likely to be confused visually with the "Hand" line which identifies and starts each annotated hand.
I could rename "Deal#" to "Holding#" but it feels weird, because I don't intuitively think of my cards as my holding -- I mean, it's not bad, maybe it is weird because it is a new idea.
Having a single line is an improvement to the PN specs because it reduces the total tag count by one and aligns all declaration-overwriting conventions.
Thoughts? Suggestions?

This just came to me, I guess I should state in the specs that Team#, Seat#, and Annotator ~may~ be use multiple times when there is a change to reflect.

I had a look at Tigre's cutthroat annotation, and I think we need to discuss his value for the MeldScoring tag since I have changed the spec after his submission.

All thoughts are welcome, I sense that we are getting close to completion!
It's unbelievable how much you don't know about the game you've been playing all your life. -- Mickey Mantle
Reply
What if I pull out the game ending values from the Variant line and dedicate a new line to declaring these things?

Maybe the game is to 500, but the host has a mercy rule of -250 -- causing the steeply negative team to lose.
Or in the case of the NPA, 4 hands per game.
Or in x10 meld scoring, 5000 points.
Do we want/need to specify whether the bidder out rule is in effect? I'm thinking no.

I am thinking forward to statistical queries where we might want to know:
How many hands, on average, does it take to finish a game?
Or what is the average score difference between the winning team and the losers?
Or the average number of contracts a winning team has?
Or the average offensive meld for Passing variants versus non-Passing variants?

If we don't have the Variant, Meldscoring, [GameEnd] lines then filtering the game records becomes less simple.

Is the Kitty component in the Variant unimportant for querying? Probably.  But perhaps it could be used to validate the individual hands in the game -- the parser would expect Kitty lines to appear.

Passing in the Variant line is more important for querying, and would be helpful in game validation.

Let's talk it out.
It's unbelievable how much you don't know about the game you've been playing all your life. -- Mickey Mantle
Reply
ToreadorElder Wrote:
mickmackusa Wrote:
ToreadorElder Wrote:...one piece of nomenclature.
The DEAL is all 4 HANDS.  So your Hand 1 (at the start of the first deal of a game) should probably be Deal 1, and you have Hand1, Hand2, Hand3, Hand4.  I personally can never recall hearing anyone say, "I looked at my Deal and decided to......"  The cards *I* hold are always my HAND.

I agree.  By ripple effect this fixes a few things.
Numbering using Deal # is solid.
Calling each players' cards Hand# is literal/intuitive and permits the removal of the Holding# line.

HandNumber also would work for numbering but Deal works better for me because...
It better connects what I want to convey about the NPA ending games after 4 'rounds' to the terminology of the PN; now I can say "4 Deals".
I still don't know how I want to go with the [GameEnd] line, but I feel it is important for filtering in/out records for statistics.
Maybe values could be like: "Score500" or "Deals4" or "Score-500" or "Score5000" ... etc.

p.s. If a presenter has a rule where a team loses if they go set five times in one game -- they could declare a value like: "Sets5"
I guess the value syntax boils down to the same type of syntax as the line labels -- "one or more capitalized words followed by a positive or negative number if necessary".
This also allows a declaration like "BidToWin" where a presenter doesn't let a team win by coasting over, say, 500 -- they would have to score over 500 as offense.
I want to prepare the PN with some sensible flexibility around these rare/fictitious possibilities.

Regarding defaults, a double-deck four-handed variant would have the following:
[GameEnd] Score500 OffenseBreaksTie    <-- hmm, I don't think that "OffenseBreaksTie" is the most intuitive/accurate way to declare the rule.


I've just been for a long car drive last night and I was thinking about how I am going to store annotations...
I plan to have the raw annotation assigned an auto-incremented ID number and stored in one table.
Then in another table I will match the annotation's ID with the annotation's "metadata".  That is to say, Power Pinochle will glean any filtering values off of the annotation and place them in predefined table columns.
The point of this is to identify the variant aspects without requiring these values to be declared in the game-section(event/table-type lines) of the annotation.

For the bulk of the records that I expect to store, this can easily be done programmatically.

For example, Power Pinochle knows that WoCG plays to 500 and doesn't allow passing or a kitty.  The annotation doesn't need to declare any of that, I add that to my database.
It's unbelievable how much you don't know about the game you've been playing all your life. -- Mickey Mantle
Reply
Okay, I'm calling the Pinochle Notation complete!!!!!!!!!!!!!!!!!!!!!!

I am satisfied that it is packaged well and ready to roll out.
If anyone disagrees, constructively speak now or it may be a long time before a version change is done.

At this point, I would like to call upon our membership for spell checking and general editing of the specs page.
Unless I hear some immediate shouts to stop the presses, I will start talks with game hosts, developers, and other interested users.

After discussing and confirming with these people, I will begin developing the new Pinochle Notation Animator and the Power Pinochle Notation Archive.

Marya, I accept that you may not want to change your export format until I have completed the new Animator.  Marek may have the same opinion.  This will incentivize the quick completion of the Animator.  I would like the comfort of knowing that my endeavor will be supported by more than one gaming host.

A warm thanks to all people who have contributed to the development of the PN!
It's unbelievable how much you don't know about the game you've been playing all your life. -- Mickey Mantle
Reply
Well done everyone. This was not a subject that was in my wheelhouse, but I did enjoy watching everyone contribute with critical thinking and constructive criticism in this 12 page thread. Congrats!!
Reply
After having plenty of time thinking about it.  I've decided that I am going to take ToreadorElder's advice (buried somewhere deep in this thread or another) to package the Pinochle Notation using JSON.  If it is ever to gain traction, it must be insanely easy for developers and game hosts to integrate with.

I am going to spend some time toiling with this idea, and work toward authoring a new animator program.

If anyone has any questions or concerns or advice about converting the Pinochle Notation documentation to JSON, now is the time.

When the new stable notation and animator are done, I'll be asking hosts to offer an API by which I can grab JSON from their site.  If you are a host, please consider how you would like to implement this on your site.
It's unbelievable how much you don't know about the game you've been playing all your life. -- Mickey Mantle
Reply
Bravo!

Currently at World of Card Games, the hand histories are downloaded by individuals if they want to keep them; so there's no API needed at the site.

Hopefully you'll also make it possible for individuals to copy/paste the JSON into a hand animator as it currently works.

Also, hopefully, you'll keep the old hand animator available so that old hand histories can continue to be played.

With several other card games at World of Card Games, a "replayer" is possible, similar to your hand history. The file is downloaded, and can be replayed by clicking on a link. Here's an example for Spades. The query string is just a long url-encoded JSON object which is interpreted by the replayer.
Play Pinochle at World of Card Games!
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)