From b99a11a77ff13e31f9fb4aad50f163184e1330bd Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Sun, 20 Jul 2025 23:21:22 -0500 Subject: [PATCH 01/17] uses sort(), crashes balatro --- bots/example.py | 1 + src/lua/api.lua | 81 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) diff --git a/bots/example.py b/bots/example.py index beab664..fbbf5f1 100644 --- a/bots/example.py +++ b/bots/example.py @@ -1,6 +1,7 @@ """Example usage of the BalatroBot API.""" import logging +import time from balatrobot.client import BalatroClient from balatrobot.exceptions import BalatroError diff --git a/src/lua/api.lua b/src/lua/api.lua index 371f4f4..72ef8ae 100644 --- a/src/lua/api.lua +++ b/src/lua/api.lua @@ -485,6 +485,87 @@ API.functions["play_hand_or_discard"] = function(args) } end +API.functions["rearrange_hand"] = function(args) + -- Validate required parameters + local success, error_message, error_code, context = validate_request(args, { "action", "cards" }) + + if not success then + ---@cast error_message string + ---@cast error_code string + API.send_error_response(error_message, error_code, context) + return + end + + -- Validate current game state is appropriate for rearranging cards + if G.STATE ~= G.STATES.SELECTING_HAND then + API.send_error_response( + "Cannot rearrange hand when not selecting hand", + ERROR_CODES.INVALID_GAME_STATE, + { current_state = G.STATE } + ) + return + end + + -- Validate number of cards is equal to the number of cards in hand + if #args.cards ~= #G.hand.cards then + API.send_error_response( + "Invalid number of cards to rearrange", + ERROR_CODES.PARAMETER_OUT_OF_RANGE, + { cards_count = #args.cards, valid_range = tostring(#G.hand.cards) } + ) + return + end + + -- adjust from 0-based to 1-based indexing + for i, card_index in ipairs(args.cards) do + args.cards[i] = card_index + 1 + end + + -- Set new order + -- Set each card's order to its desired position + for i, old_index in ipairs(args.cards) do + local card = G.hand.cards[old_index] + -- Store original order if it exists (for cleanup) + if not card.original_order then + card.original_order = card.config.card.order or card.config.center.order + end + -- Set new order to desired position + if card.config.card then + card.config.card.order = i + else + card.config.center.order = i + end + end + + -- Use existing sort function + G.hand:sort('order') + + + -- Clean up temporary order values + for _, card in ipairs(G.hand.cards) do + if card.original_order then + if card.config.card then + card.config.card.order = card.original_order + else + card.config.center.order = card.original_order + end + card.original_order = nil + end + end + + -- G.hand:set_ranks() + + API.pending_requests["rearrange_hand"] = { + condition = function() + return G.STATE == G.STATES.SELECTING_HAND + end, + action = function() + local game_state = utils.get_game_state() + API.send_response(game_state) + end, + } +end + ---Cashes out from the current round to enter the shop ---Call G.FUNCS.cash_out() to cash out from the current round to enter the shop. ---@param _ table Arguments (not used) From e60bbc28ae2fe21f4051333e72255d8d9f460928 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Mon, 21 Jul 2025 19:54:25 -0500 Subject: [PATCH 02/17] revert time import --- bots/example.py | 1 - 1 file changed, 1 deletion(-) diff --git a/bots/example.py b/bots/example.py index fbbf5f1..beab664 100644 --- a/bots/example.py +++ b/bots/example.py @@ -1,7 +1,6 @@ """Example usage of the BalatroBot API.""" import logging -import time from balatrobot.client import BalatroClient from balatrobot.exceptions import BalatroError From abe1a3a8de5d6e25f215fc4a8605d4d736010cf1 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 22 Jul 2025 20:46:53 -0500 Subject: [PATCH 03/17] fixed rearrange hand --- src/lua/api.lua | 51 +++++++++++++++++++++++------------------------ src/lua/types.lua | 5 +++++ 2 files changed, 30 insertions(+), 26 deletions(-) diff --git a/src/lua/api.lua b/src/lua/api.lua index bd7d18b..5d0aa50 100644 --- a/src/lua/api.lua +++ b/src/lua/api.lua @@ -490,6 +490,9 @@ API.functions["play_hand_or_discard"] = function(args) } end +---Rearranges the hand based on the given card indices +---Call G.FUNCS.rearrange_hand(new_hand) +---@param args RearrangeHandArgs The card indices to rearrange the hand with API.functions["rearrange_hand"] = function(args) -- Validate required parameters local success, error_message, error_code, context = validate_request(args, { "action", "cards" }) @@ -521,45 +524,41 @@ API.functions["rearrange_hand"] = function(args) return end - -- adjust from 0-based to 1-based indexing + -- Convert incoming indices from 0-based to 1-based for i, card_index in ipairs(args.cards) do args.cards[i] = card_index + 1 end - -- Set new order - -- Set each card's order to its desired position - for i, old_index in ipairs(args.cards) do + -- Create a new hand to swap card indices + local new_hand = {} + for _, old_index in ipairs(args.cards) do local card = G.hand.cards[old_index] - -- Store original order if it exists (for cleanup) - if not card.original_order then - card.original_order = card.config.card.order or card.config.center.order - end - -- Set new order to desired position - if card.config.card then - card.config.card.order = i - else - card.config.center.order = i + if not card then + API.send_error_response( + "Card index out of range", + ERROR_CODES.PARAMETER_OUT_OF_RANGE, + { index = old_index, max_index = #G.hand.cards } + ) + return end + table.insert(new_hand, card) end - -- Use existing sort function - G.hand:sort('order') + G.hand.cards = new_hand - - -- Clean up temporary order values - for _, card in ipairs(G.hand.cards) do - if card.original_order then - if card.config.card then - card.config.card.order = card.original_order - else - card.config.center.order = card.original_order - end - card.original_order = nil + -- Update each card's order field so future sort('order') calls work correctly + for i, card in ipairs(G.hand.cards) do + card.config.card.order = i + if card.config.center then + card.config.center.order = i end end - -- G.hand:set_ranks() + -- Update ranks and realign the hand for correct rendering + G.hand:set_ranks() + G.hand:align_cards() + ---@type PendingRequest API.pending_requests["rearrange_hand"] = { condition = function() return G.STATE == G.STATES.SELECTING_HAND diff --git a/src/lua/types.lua b/src/lua/types.lua index e268ef1..8d5353a 100644 --- a/src/lua/types.lua +++ b/src/lua/types.lua @@ -47,6 +47,11 @@ ---@field action "play_hand" | "discard" The action to perform ---@field cards number[] Array of card indices (0-based) +---@class RearrangeHandArgs +---@field action "rearrange" The action to perform +---@field cards number[] Array of card indices for every card in hand (0-based) + + ---@class ShopActionArgs ---@field action "next_round" The action to perform From 7ade635d4e480ae773eb3adada97532cb92a9c14 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 22 Jul 2025 20:54:27 -0500 Subject: [PATCH 04/17] added tests for rearrange hand --- tests/lua/test_api_functions.py | 146 ++++++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) diff --git a/tests/lua/test_api_functions.py b/tests/lua/test_api_functions.py index 9241cfa..8dc18fb 100644 --- a/tests/lua/test_api_functions.py +++ b/tests/lua/test_api_functions.py @@ -965,3 +965,149 @@ def test_cash_out_invalid_state_error(self, tcp_client: socket.socket) -> None: ["current_state"], ErrorCode.INVALID_GAME_STATE.value, ) + + +class TestRearrangeHand: + """Tests for the rearrange_hand API endpoint.""" + + @pytest.fixture(autouse=True) + def setup_and_teardown( + self, tcp_client: socket.socket + ) -> Generator[dict, None, None]: + """Start a run, reach SELECTING_HAND phase, yield initial state, then clean up.""" + # Begin a run and select the first blind to obtain an initial hand + send_and_receive_api_message( + tcp_client, + "start_run", + { + "deck": "Red Deck", + "stake": 1, + "challenge": None, + "seed": "TESTSEED", + }, + ) + game_state = send_and_receive_api_message( + tcp_client, "skip_or_select_blind", {"action": "select"} + ) + assert game_state["state"] == State.SELECTING_HAND.value + yield game_state + send_and_receive_api_message(tcp_client, "go_to_menu", {}) + + # ------------------------------------------------------------------ + # Success scenario + # ------------------------------------------------------------------ + + def test_rearrange_hand_success( + self, tcp_client: socket.socket, setup_and_teardown: dict + ) -> None: + """Reverse the hand order and verify the API response reflects it.""" + initial_state = setup_and_teardown + initial_cards = initial_state["hand"]["cards"] + hand_size: int = len(initial_cards) + + # Reverse order indices (API expects zero-based indices) + new_order = list(range(hand_size - 1, -1, -1)) + + final_state = send_and_receive_api_message( + tcp_client, + "rearrange_hand", + {"action": "rearrange_hand", "cards": new_order}, + ) + + # Ensure we remain in selecting hand state + assert final_state["state"] == State.SELECTING_HAND.value + + # Compare card_key ordering to make sure it's reversed + initial_keys = [card["config"]["card_key"] for card in initial_cards] + final_keys = [ + card["config"]["card_key"] for card in final_state["hand"]["cards"] + ] + assert final_keys == list(reversed(initial_keys)) + + def test_rearrange_hand_noop( + self, tcp_client: socket.socket, setup_and_teardown: dict + ) -> None: + """Sending indices in current order should leave the hand unchanged.""" + initial_state = setup_and_teardown + initial_cards = initial_state["hand"]["cards"] + hand_size: int = len(initial_cards) + + # Existing order indices (0-based) + current_order = list(range(hand_size)) + + final_state = send_and_receive_api_message( + tcp_client, + "rearrange_hand", + {"action": "rearrange_hand", "cards": current_order}, + ) + + assert final_state["state"] == State.SELECTING_HAND.value + + initial_keys = [card["config"]["card_key"] for card in initial_cards] + final_keys = [ + card["config"]["card_key"] for card in final_state["hand"]["cards"] + ] + assert final_keys == initial_keys + + # ------------------------------------------------------------------ + # Validation / error scenarios + # ------------------------------------------------------------------ + + def test_rearrange_hand_invalid_number_of_cards( + self, tcp_client: socket.socket, setup_and_teardown: dict + ) -> None: + """Providing an index list with the wrong length should error.""" + hand_size = len(setup_and_teardown["hand"]["cards"]) + invalid_order = list(range(hand_size - 1)) # one short + + response = send_and_receive_api_message( + tcp_client, + "rearrange_hand", + {"action": "rearrange_hand", "cards": invalid_order}, + ) + + assert_error_response( + response, + "Invalid number of cards to rearrange", + ["cards_count", "valid_range"], + ErrorCode.PARAMETER_OUT_OF_RANGE.value, + ) + + def test_rearrange_hand_out_of_range_index( + self, tcp_client: socket.socket, setup_and_teardown: dict + ) -> None: + """Including an index >= hand size should error.""" + hand_size = len(setup_and_teardown["hand"]["cards"]) + order = list(range(hand_size)) + order[-1] = hand_size # out-of-range zero-based index + + response = send_and_receive_api_message( + tcp_client, + "rearrange_hand", + {"action": "rearrange_hand", "cards": order}, + ) + + assert_error_response( + response, + "Card index out of range", + ["index", "max_index"], + ErrorCode.PARAMETER_OUT_OF_RANGE.value, + ) + + def test_rearrange_hand_invalid_state(self, tcp_client: socket.socket) -> None: + """Calling rearrange_hand outside of SELECTING_HAND should error.""" + # Ensure we're in MENU state + send_and_receive_api_message(tcp_client, "go_to_menu", {}) + + response = send_and_receive_api_message( + tcp_client, + "rearrange_hand", + {"action": "rearrange_hand", "cards": [0]}, + ) + + assert_error_response( + response, + "Cannot rearrange hand when not selecting hand", + ["current_state"], + ErrorCode.INVALID_GAME_STATE.value, + ) From 03be16731d7f981d3770190e6cfb721819c99df3 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 22 Jul 2025 21:03:35 -0500 Subject: [PATCH 05/17] documented rearrange_hand function --- docs/developing-bots.md | 16 ++++++++-------- docs/protocol-api.md | 23 +++++++++++------------ 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/docs/developing-bots.md b/docs/developing-bots.md index fa41291..1d21a8c 100644 --- a/docs/developing-bots.md +++ b/docs/developing-bots.md @@ -7,14 +7,14 @@ BalatroBot allows you to create automated players (bots) that can play Balatro b A bot is a finite state machine that implements a sequence of actions to play the game. The bot can be in one state at a time and have access to a set of functions that can move the bot to other states. -| **State** | **Description** | **Functions** | -| ---------------- | -------------------------------------------- | ---------------------- | -| `MENU` | The main menu | `start_run` | -| `BLIND_SELECT` | Selecting or skipping the blind | `skip_or_select_blind` | -| `SELECTING_HAND` | Selecting cards to play or discard | `play_hand_or_discard` | -| `ROUND_EVAL` | Evaluating the round outcome and cashing out | `cash_out` | -| `SHOP` | Buy items and move to the next round | `shop` | -| `GAME_OVER` | Game has ended | – | +| **State** | **Description** | **Functions** | +| ---------------- | -------------------------------------------- | ---------------------------------------- | +| `MENU` | The main menu | `start_run` | +| `BLIND_SELECT` | Selecting or skipping the blind | `skip_or_select_blind` | +| `SELECTING_HAND` | Selecting cards to play or discard | `play_hand_or_discard`, `rearrange_hand` | +| `ROUND_EVAL` | Evaluating the round outcome and cashing out | `cash_out` | +| `SHOP` | Buy items and move to the next round | `shop` | +| `GAME_OVER` | Game has ended | – | Developing a bot boils down to provide the action name and its parameters for each of the diff --git a/docs/protocol-api.md b/docs/protocol-api.md index 0d955d8..fde7657 100644 --- a/docs/protocol-api.md +++ b/docs/protocol-api.md @@ -46,10 +46,7 @@ All communication uses JSON messages with a standardized structure. The protocol "name": "function_name", "arguments": { "param1": "value1", - "param2": [ - "array", - "values" - ] + "param2": ["array", "values"] } } ``` @@ -86,14 +83,14 @@ The BalatroBot API operates as a finite state machine that mirrors the natural f The game progresses through these states in a typical flow: `MENU` → `BLIND_SELECT` → `SELECTING_HAND` → `ROUND_EVAL` → `SHOP` → `BLIND_SELECT` (or `GAME_OVER`). -| State | Value | Description | Available Functions | -| ---------------- | ----- | ---------------------------- | ---------------------- | -| `MENU` | 11 | Main menu screen | `start_run` | -| `BLIND_SELECT` | 7 | Selecting or skipping blinds | `skip_or_select_blind` | -| `SELECTING_HAND` | 1 | Playing or discarding cards | `play_hand_or_discard` | -| `ROUND_EVAL` | 8 | Round completion evaluation | `cash_out` | -| `SHOP` | 5 | Shop interface | `shop` | -| `GAME_OVER` | 4 | Game ended | `go_to_menu` | +| State | Value | Description | Available Functions | +| ---------------- | ----- | ---------------------------- | ---------------------------------------- | +| `MENU` | 11 | Main menu screen | `start_run` | +| `BLIND_SELECT` | 7 | Selecting or skipping blinds | `skip_or_select_blind` | +| `SELECTING_HAND` | 1 | Playing or discarding cards | `play_hand_or_discard`, `rearrange_hand` | +| `ROUND_EVAL` | 8 | Round completion evaluation | `cash_out` | +| `SHOP` | 5 | Shop interface | `shop` | +| `GAME_OVER` | 4 | Game ended | `go_to_menu` | ### Validation @@ -119,6 +116,7 @@ The BalatroBot API provides core functions that correspond to the main game acti | `start_run` | Starts a new game run with specified configuration | | `skip_or_select_blind` | Handles blind selection - either select the current blind to play or skip it | | `play_hand_or_discard` | Plays selected cards or discards them | +| `rearrange_hand` | Reorders the current hand according to the supplied index list | | `cash_out` | Proceeds from round completion to the shop phase | | `shop` | Performs shop actions. Currently supports proceeding to the next round | @@ -131,6 +129,7 @@ The following table details the parameters required for each function. Note that | `start_run` | `deck` (string): Deck name
`stake` (number): Difficulty level 1-8
`seed` (string, optional): Seed for run generation
`challenge` (string, optional): Challenge name | | `skip_or_select_blind` | `action` (string): Either "select" or "skip" | | `play_hand_or_discard` | `action` (string): Either "play_hand" or "discard"
`cards` (array): Card indices (0-indexed, 1-5 cards) | +| `rearrange_hand` | `action` (string): Must be "rearrange_hand"
`cards` (array): Card indices (0-indexed, exactly `hand_size` elements) | | `shop` | `action` (string): Shop action to perform ("next_round") | ### Errors From 154954ca3e082c5f856f9e41c2dedf4809da2dc0 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 22 Jul 2025 21:12:37 -0500 Subject: [PATCH 06/17] stylua --- src/lua/types.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/src/lua/types.lua b/src/lua/types.lua index 8d5353a..90f5158 100644 --- a/src/lua/types.lua +++ b/src/lua/types.lua @@ -51,7 +51,6 @@ ---@field action "rearrange" The action to perform ---@field cards number[] Array of card indices for every card in hand (0-based) - ---@class ShopActionArgs ---@field action "next_round" The action to perform From 306cdeecb36b3446ad81abc5d72a42da9f7c7012 Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 14:18:19 +0200 Subject: [PATCH 07/17] refactor: remove action from rearrange_hand --- src/lua/api.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lua/api.lua b/src/lua/api.lua index 5d0aa50..2660a7d 100644 --- a/src/lua/api.lua +++ b/src/lua/api.lua @@ -495,7 +495,7 @@ end ---@param args RearrangeHandArgs The card indices to rearrange the hand with API.functions["rearrange_hand"] = function(args) -- Validate required parameters - local success, error_message, error_code, context = validate_request(args, { "action", "cards" }) + local success, error_message, error_code, context = validate_request(args, { "cards" }) if not success then ---@cast error_message string From 15bf34e3897e711dda989cf47e3a15b67de83db1 Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 14:18:30 +0200 Subject: [PATCH 08/17] test: remove action from rearrange_hand --- tests/lua/test_api_functions.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/lua/test_api_functions.py b/tests/lua/test_api_functions.py index 8dc18fb..264d5d9 100644 --- a/tests/lua/test_api_functions.py +++ b/tests/lua/test_api_functions.py @@ -1011,7 +1011,7 @@ def test_rearrange_hand_success( final_state = send_and_receive_api_message( tcp_client, "rearrange_hand", - {"action": "rearrange_hand", "cards": new_order}, + {"cards": new_order}, ) # Ensure we remain in selecting hand state @@ -1038,7 +1038,7 @@ def test_rearrange_hand_noop( final_state = send_and_receive_api_message( tcp_client, "rearrange_hand", - {"action": "rearrange_hand", "cards": current_order}, + {"cards": current_order}, ) assert final_state["state"] == State.SELECTING_HAND.value @@ -1063,7 +1063,7 @@ def test_rearrange_hand_invalid_number_of_cards( response = send_and_receive_api_message( tcp_client, "rearrange_hand", - {"action": "rearrange_hand", "cards": invalid_order}, + {"cards": invalid_order}, ) assert_error_response( @@ -1084,7 +1084,7 @@ def test_rearrange_hand_out_of_range_index( response = send_and_receive_api_message( tcp_client, "rearrange_hand", - {"action": "rearrange_hand", "cards": order}, + {"cards": order}, ) assert_error_response( @@ -1102,7 +1102,7 @@ def test_rearrange_hand_invalid_state(self, tcp_client: socket.socket) -> None: response = send_and_receive_api_message( tcp_client, "rearrange_hand", - {"action": "rearrange_hand", "cards": [0]}, + {"cards": [0]}, ) assert_error_response( From 0dc978f60f6d82c54745a90d60c5ea4387213c1a Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 14:27:38 +0200 Subject: [PATCH 09/17] ci: do not run release_please for pull requests --- .github/workflows/release_please.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/release_please.yml b/.github/workflows/release_please.yml index cf353a1..e036051 100644 --- a/.github/workflows/release_please.yml +++ b/.github/workflows/release_please.yml @@ -1,8 +1,6 @@ on: push: branches: [main] - pull_request: - branches: [main] workflow_dispatch: workflow_run: workflows: ["Code Quality"] From 61c66d455d76ceca4d00ce404802e8756ae2eea2 Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 16:12:14 +0200 Subject: [PATCH 10/17] feat: add sort_id to card in game state --- src/lua/utils.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lua/utils.lua b/src/lua/utils.lua index 9f71e21..a10d17d 100644 --- a/src/lua/utils.lua +++ b/src/lua/utils.lua @@ -317,6 +317,7 @@ function utils.get_game_state() label = card.label, -- str (default "Base Card") | ... | ... | ? -- playing_card = card.config.card.playing_card, -- int. The card index in the deck for the current round ? -- sell_cost = card.sell_cost, -- int (default 1). The dollars you get if you sell this card ? + sort_id = card.sort_id, -- int. Unique identifier for this card instance base = { -- These should be the valude for the original base card -- without any modifications From 635c9b7abff1054101fad0c30f6acd76ba09d90a Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 17:29:18 +0200 Subject: [PATCH 11/17] fix: remove set_ranks and align_cards from rearrange_hand --- src/lua/api.lua | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/lua/api.lua b/src/lua/api.lua index 2660a7d..4caa818 100644 --- a/src/lua/api.lua +++ b/src/lua/api.lua @@ -554,14 +554,12 @@ API.functions["rearrange_hand"] = function(args) end end - -- Update ranks and realign the hand for correct rendering - G.hand:set_ranks() - G.hand:align_cards() - ---@type PendingRequest API.pending_requests["rearrange_hand"] = { condition = function() return G.STATE == G.STATES.SELECTING_HAND + and #G.E_MANAGER.queues.base < EVENT_QUEUE_THRESHOLD + and G.STATE_COMPLETE end, action = function() local game_state = utils.get_game_state() From cb49c4232f2170d582eb2072251cebcd4c398407 Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 17:29:41 +0200 Subject: [PATCH 12/17] feat(utils): add sets_equal function --- src/lua/utils.lua | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/lua/utils.lua b/src/lua/utils.lua index a10d17d..566fc94 100644 --- a/src/lua/utils.lua +++ b/src/lua/utils.lua @@ -491,6 +491,29 @@ function utils.get_game_state() } end +-- ========================================================================== +-- Utility Functions +-- ========================================================================== + +function utils.sets_equal(list1, list2) + if #list1 ~= #list2 then + return false + end + + local set = {} + for _, v in ipairs(list1) do + set[v] = true + end + + for _, v in ipairs(list2) do + if not set[v] then + return false + end + end + + return true +end + -- ========================================================================== -- Debugging Utilities -- ========================================================================== From 70ffcd9e8212e71a9290c0c504b8880a40ae953c Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 17:30:19 +0200 Subject: [PATCH 13/17] feat(log): add hand rearrange logging (WIP) --- src/lua/log.lua | 65 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) diff --git a/src/lua/log.lua b/src/lua/log.lua index a1aed71..ae5f00e 100644 --- a/src/lua/log.lua +++ b/src/lua/log.lua @@ -190,6 +190,70 @@ function LOG.hook_toggle_shop() sendDebugMessage("Hooked into G.FUNCS.toggle_shop for logging", "LOG") end +-- ----------------------------------------------------------------------------- +-- hand_rearrange Hook +-- ----------------------------------------------------------------------------- + +---Hooks into CardArea:align_cards for hand reordering detection +function LOG.hook_hand_rearrange() + local original_function = CardArea.align_cards + local previous_order = {} + CardArea.align_cards = function(self, ...) + -- Only monitor hand cards + ---@diagnostic disable-next-line: undefined-field + if self.config and self.config.type == "hand" and self.cards then + -- Call the original function with all arguments + local result = original_function(self, ...) + + ---@diagnostic disable-next-line: undefined-field + if self.config.card_count ~= #self.cards then + -- We're drawing cards from the deck + return result + end + + -- Capture current card order after alignment + local current_order = {} + ---@diagnostic disable-next-line: undefined-field + for i, card in ipairs(self.cards) do + current_order[i] = card.sort_id + end + + if utils.sets_equal(previous_order, current_order) then + local order_changed = false + for i = 1, #current_order do + if previous_order[i] ~= current_order[i] then + order_changed = true + break + end + end + + if order_changed then + -- TODO: compute the rearrangement from previous_order and current_order + -- and use as the arguments to the rearrange_hand API call + -- So remove previous_order and current_order and use cards + -- Then remove sendInfoMessage calls + local arguments = { + previous_order = previous_order, + current_order = current_order, + } + local name = "rearrange_hand" + sendInfoMessage("Hand rearranged - cards reordered", "LOG") + sendInfoMessage("Before: " .. json.encode(previous_order), "LOG") + sendInfoMessage("After: " .. json.encode(current_order), "LOG") + LOG.write(name, arguments) + end + end + + previous_order = current_order + return result + else + -- For non-hand card areas, just call the original function + return original_function(self, ...) + end + end + sendInfoMessage("Hooked into CardArea:align_cards for hand rearrange logging", "LOG") +end + -- TODO: add hooks for other shop functions -- ============================================================================= @@ -216,6 +280,7 @@ function LOG.init() LOG.hook_discard_cards_from_highlighted() LOG.hook_cash_out() LOG.hook_toggle_shop() + LOG.hook_hand_rearrange() sendInfoMessage("Logger initialized", "LOG") end From b4fa7a7aa468f7670061764f7fcd6b32b6ba3924 Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 17:38:55 +0200 Subject: [PATCH 14/17] docs: update docs/protocol-api.md with new sign for rearrange_hand Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- docs/protocol-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/protocol-api.md b/docs/protocol-api.md index fde7657..df19590 100644 --- a/docs/protocol-api.md +++ b/docs/protocol-api.md @@ -129,7 +129,7 @@ The following table details the parameters required for each function. Note that | `start_run` | `deck` (string): Deck name
`stake` (number): Difficulty level 1-8
`seed` (string, optional): Seed for run generation
`challenge` (string, optional): Challenge name | | `skip_or_select_blind` | `action` (string): Either "select" or "skip" | | `play_hand_or_discard` | `action` (string): Either "play_hand" or "discard"
`cards` (array): Card indices (0-indexed, 1-5 cards) | -| `rearrange_hand` | `action` (string): Must be "rearrange_hand"
`cards` (array): Card indices (0-indexed, exactly `hand_size` elements) | +| `rearrange_hand` | `cards` (array): Card indices (0-indexed, exactly `hand_size` elements) | | `shop` | `action` (string): Shop action to perform ("next_round") | ### Errors From a7f1ebce2b7fd34aea6455ec1ce86cdd1e89eccd Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 17:54:54 +0200 Subject: [PATCH 15/17] style: format docs/protocol-api.md --- docs/protocol-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/protocol-api.md b/docs/protocol-api.md index df19590..973181e 100644 --- a/docs/protocol-api.md +++ b/docs/protocol-api.md @@ -129,7 +129,7 @@ The following table details the parameters required for each function. Note that | `start_run` | `deck` (string): Deck name
`stake` (number): Difficulty level 1-8
`seed` (string, optional): Seed for run generation
`challenge` (string, optional): Challenge name | | `skip_or_select_blind` | `action` (string): Either "select" or "skip" | | `play_hand_or_discard` | `action` (string): Either "play_hand" or "discard"
`cards` (array): Card indices (0-indexed, 1-5 cards) | -| `rearrange_hand` | `cards` (array): Card indices (0-indexed, exactly `hand_size` elements) | +| `rearrange_hand` | `cards` (array): Card indices (0-indexed, exactly `hand_size` elements) | | `shop` | `action` (string): Shop action to perform ("next_round") | ### Errors From 25c2d8b8d94a6b87fa216423de280d90024ea422 Mon Sep 17 00:00:00 2001 From: S1M0N38 Date: Wed, 23 Jul 2025 17:55:30 +0200 Subject: [PATCH 16/17] test: update test runs with sort_id field --- tests/lua/test_runs.py | 5 ++- tests/runs/one_ante_no_shop_1.jsonl | 34 ++++++++-------- tests/runs/one_ante_no_shop_2.jsonl | 62 ++++++++++++++--------------- 3 files changed, 52 insertions(+), 49 deletions(-) diff --git a/tests/lua/test_runs.py b/tests/lua/test_runs.py index dd8a3f8..5bf6ae2 100644 --- a/tests/lua/test_runs.py +++ b/tests/lua/test_runs.py @@ -61,19 +61,22 @@ def test_replay_run(self, tcp_client: socket.socket, jsonl_file: Path) -> None: next_step = steps[step_num + 1] expected_game_state = next_step["game_state"] - # HACK: Remove highlighted field from cards before comparison + # HACK: Remove non-deterministic fields from cards before comparison # The logger hook, log the game state after the card selection, # so in the replay we have the highlighted cards, while the game_state # before the action has the non-highlighted cards. + # sort_id is also non-deterministic and changes between runs. if "hand" in actual_game_state and "cards" in actual_game_state["hand"]: for card in actual_game_state["hand"]["cards"]: card.pop("highlighted", None) + card.pop("sort_id", None) if ( "hand" in expected_game_state and "cards" in expected_game_state["hand"] ): for card in expected_game_state["hand"]["cards"]: card.pop("highlighted", None) + card.pop("sort_id", None) # Assert game state equality assert actual_game_state == expected_game_state, ( diff --git a/tests/runs/one_ante_no_shop_1.jsonl b/tests/runs/one_ante_no_shop_1.jsonl index 2005a0c..f37a0ec 100644 --- a/tests/runs/one_ante_no_shop_1.jsonl +++ b/tests/runs/one_ante_no_shop_1.jsonl @@ -1,17 +1,17 @@ -{"timestamp_ms":1753138093059,"function":{"arguments":{"stake":1,"seed":"OOOO155","deck":"Red Deck"},"name":"start_run"},"game_state":{"state":11,"jokers":[],"game":{"round":0,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":0,"discards_used":0,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":"","boss":false},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":0,"tags":[],"base_reroll_cost":5,"shop":[]}}} -{"timestamp_ms":1753138093915,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"},"game_state":{"state":7,"jokers":[],"game":{"round":0,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138094611,"function":{"arguments":{"cards":[0,1,2,3],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":"Small Blind","boss":false},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_J","card":{"suit":"Spades","value":"Jack","name":"Jack of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Jack of Spades","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"H_J","card":{"suit":"Hearts","value":"Jack","name":"Jack of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Jack of Hearts","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"C_J","card":{"suit":"Clubs","value":"Jack","name":"Jack of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Jack of Clubs","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"H_T","card":{"suit":"Hearts","value":"10","name":"10 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"10 of Hearts","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"C_9","card":{"suit":"Clubs","value":"9","name":"9 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"9 of Clubs","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":false},{"config":{"card_key":"D_7","card":{"suit":"Diamonds","value":"7","name":"7 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"7 of Diamonds","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false}]}}} -{"timestamp_ms":1753138097641,"function":{"arguments":[],"name":"cash_out"},"game_state":{"state":8,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":""},"unused_discards":4,"won":false,"chips":700,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138098069,"function":{"arguments":{"action":"next_round"},"name":"shop"},"game_state":{"state":5,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Joker"},"sell_cost":3,"cost":6,"highlighted":false,"facing":"front","config":{"center_key":"j_burglar"},"label":"Burglar","debuff":false},{"ability":{"set":"Planet"},"sell_cost":1,"cost":3,"highlighted":false,"facing":"front","config":{"center_key":"c_jupiter"},"label":"Jupiter","debuff":false}]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Booster"},"cost":4,"highlighted":false,"sell_cost":2,"label":"Buffoon Pack","config":{"center_key":"p_buffoon_normal_1"}},{"ability":{"set":"Booster"},"cost":6,"highlighted":false,"sell_cost":3,"label":"Jumbo Buffoon Pack","config":{"center_key":"p_buffoon_jumbo_1"}}]},"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":""},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[{"ability":{"set":"Voucher"},"sell_cost":5,"cost":10,"highlighted":false,"facing":"front","config":{"center_key":"v_hone"},"label":"Hone","debuff":false}]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138098256,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"},"game_state":{"state":7,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":""},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138098541,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"},"game_state":{"state":7,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":""},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138099226,"function":{"arguments":{"cards":[2,3,5,6],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":"The Manacle","boss":true},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":7,"card_count":7,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_K","card":{"suit":"Spades","value":"King","name":"King of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"King of Spades","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_K","card":{"suit":"Hearts","value":"King","name":"King of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"King of Hearts","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":1,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"C_7","card":{"suit":"Clubs","value":"7","name":"7 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"7 of Clubs","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"C_5","card":{"suit":"Clubs","value":"5","name":"5 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"5 of Clubs","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"S_4","card":{"suit":"Spades","value":"4","name":"4 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"4 of Spades","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false},{"config":{"card_key":"D_3","card":{"suit":"Diamonds","value":"3","name":"3 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"3 of Diamonds","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138099716,"function":{"arguments":{"cards":[2,3,6],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":1,"discards_left":3},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":"The Manacle","boss":true},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":7,"card_count":7,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_K","card":{"suit":"Spades","value":"King","name":"King of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"King of Spades","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_K","card":{"suit":"Hearts","value":"King","name":"King of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"King of Hearts","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"D_9","card":{"suit":"Diamonds","value":"9","name":"9 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"9 of Diamonds","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":false},{"config":{"card_key":"C_8","card":{"suit":"Clubs","value":"8","name":"8 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"8 of Clubs","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_5","card":{"suit":"Clubs","value":"5","name":"5 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"5 of Clubs","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"D_2","card":{"suit":"Diamonds","value":"2","name":"2 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"2 of Diamonds","times_played":0,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138100123,"function":{"arguments":{"cards":[3,5,6],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":2,"discards_left":2},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":"The Manacle","boss":true},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":7,"card_count":7,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"S_K","card":{"suit":"Spades","value":"King","name":"King of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"King of Spades","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_K","card":{"suit":"Hearts","value":"King","name":"King of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"King of Hearts","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"S_8","card":{"suit":"Spades","value":"8","name":"8 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"8 of Spades","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_5","card":{"suit":"Clubs","value":"5","name":"5 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"5 of Clubs","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_4","card":{"suit":"Clubs","value":"4","name":"4 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"4 of Clubs","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false}]}}} -{"timestamp_ms":1753138100528,"function":{"arguments":{"cards":[3,4,6],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":"The Manacle","boss":true},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":7,"card_count":7,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"S_K","card":{"suit":"Spades","value":"King","name":"King of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"King of Spades","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_K","card":{"suit":"Hearts","value":"King","name":"King of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"King of Hearts","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"S_T","card":{"suit":"Spades","value":"10","name":"10 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"10 of Spades","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"S_5","card":{"suit":"Spades","value":"5","name":"5 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"5 of Spades","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"D_4","card":{"suit":"Diamonds","value":"4","name":"4 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"4 of Diamonds","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false}]}}} -{"timestamp_ms":1753138100933,"function":{"arguments":{"cards":[1,2,3,4],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":4,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":"The Manacle","boss":true},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":7,"card_count":7,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"S_K","card":{"suit":"Spades","value":"King","name":"King of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"King of Spades","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_K","card":{"suit":"Hearts","value":"King","name":"King of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"King of Hearts","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"C_K","card":{"suit":"Clubs","value":"King","name":"King of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"King of Clubs","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"S_7","card":{"suit":"Spades","value":"7","name":"7 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"7 of Spades","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"H_6","card":{"suit":"Hearts","value":"6","name":"6 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"6 of Hearts","times_played":0,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false}]}}} -{"timestamp_ms":1753138102633,"function":{"arguments":{"cards":[0,1,6],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":4,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":"The Manacle","boss":true},"unused_discards":4,"won":false,"chips":180,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":2,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":7,"card_count":7,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"H_6","card":{"suit":"Hearts","value":"6","name":"6 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"6 of Hearts","times_played":0,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"H_4","card":{"suit":"Hearts","value":"4","name":"4 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"4 of Hearts","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false},{"config":{"card_key":"H_3","card":{"suit":"Hearts","value":"3","name":"3 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"3 of Hearts","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false},{"config":{"card_key":"C_2","card":{"suit":"Clubs","value":"2","name":"2 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"2 of Clubs","times_played":0,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138103944,"function":{"arguments":{"cards":[2,3,4,5,6],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":2,"voucher":[],"hands_left":2,"discards_used":4,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":"The Manacle","boss":true},"unused_discards":4,"won":false,"chips":196,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":7,"card_count":7,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_Q","card":{"suit":"Spades","value":"Queen","name":"Queen of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Queen of Spades","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"C_Q","card":{"suit":"Clubs","value":"Queen","name":"Queen of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Queen of Clubs","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"H_6","card":{"suit":"Hearts","value":"6","name":"6 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"6 of Hearts","times_played":0,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"H_4","card":{"suit":"Hearts","value":"4","name":"4 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"4 of Hearts","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false},{"config":{"card_key":"H_3","card":{"suit":"Hearts","value":"3","name":"3 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"3 of Hearts","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138108104,"function":{"arguments":[],"name":"cash_out"},"game_state":{"state":8,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":1,"discards_used":4,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":""},"unused_discards":4,"won":false,"chips":1196,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":4,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":20,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138108512,"function":{"arguments":{"action":"next_round"},"name":"shop"},"game_state":{"state":5,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Joker"},"sell_cost":3,"cost":6,"highlighted":false,"facing":"front","config":{"center_key":"j_reserved_parking"},"label":"Reserved Parking","debuff":false},{"ability":{"set":"Joker"},"sell_cost":2,"cost":4,"highlighted":false,"facing":"front","config":{"center_key":"j_juggler"},"label":"Juggler","debuff":false}]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Booster"},"cost":8,"highlighted":false,"sell_cost":4,"label":"Mega Spectral Pack","config":{"center_key":"p_spectral_mega_1"}},{"ability":{"set":"Booster"},"cost":6,"highlighted":false,"sell_cost":3,"label":"Jumbo Standard Pack","config":{"center_key":"p_standard_jumbo_2"}}]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":4,"discards_used":4,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":""},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":4,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":30,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[{"ability":{"set":"Voucher"},"sell_cost":5,"cost":10,"highlighted":false,"facing":"front","config":{"center_key":"v_magic_trick"},"label":"Magic Trick","debuff":false}]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138108699,"function":{"arguments":[],"name":"go_to_menu"},"game_state":{"state":7,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":4,"discards_used":4,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":""},"unused_discards":4,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":4,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":30,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} +{"game_state":{"state":11,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":0,"discards_left":0,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":0,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"tags":[],"pseudorandom":[],"last_blind":{"boss":false,"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":0,"round_scores":[],"probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}}},"timestamp_ms":1753285686835,"function":{"arguments":{"stake":1,"deck":"Red Deck","seed":"OOOO155"},"name":"start_run"}} +{"game_state":{"state":7,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":0,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285687692,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":false,"name":"Small Blind"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":1,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"S_J","card":{"value":"Jack","name":"Jack of Spades","suit":"Spades"}},"sort_id":3766,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Spades","original_value":"Jack","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_J","card":{"value":"Jack","name":"Jack of Hearts","suit":"Hearts"}},"sort_id":3753,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Hearts","original_value":"Jack","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_J","card":{"value":"Jack","name":"Jack of Clubs","suit":"Clubs"}},"sort_id":3727,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Clubs","original_value":"Jack","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3740,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_T","card":{"value":"10","name":"10 of Hearts","suit":"Hearts"}},"sort_id":3756,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Hearts","original_value":"10","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3730,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_9","card":{"value":"9","name":"9 of Clubs","suit":"Clubs"}},"sort_id":3725,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Clubs","original_value":"9","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_7","card":{"value":"7","name":"7 of Diamonds","suit":"Diamonds"}},"sort_id":3736,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Diamonds","original_value":"7","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285688375,"function":{"arguments":{"action":"play_hand","cards":[0,1,2,3]},"name":"play_hand_or_discard"}} +{"game_state":{"state":8,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":700,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":1,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285691391,"function":{"arguments":[],"name":"cash_out"}} +{"game_state":{"state":5,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":6,"config":{"center_key":"j_burglar"},"sell_cost":3,"facing":"front","label":"Burglar","ability":{"set":"Joker"},"debuff":false},{"highlighted":false,"cost":3,"config":{"center_key":"c_jupiter"},"sell_cost":1,"facing":"front","label":"Jupiter","ability":{"set":"Planet"},"debuff":false}]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":1,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":4,"config":{"center_key":"p_buffoon_normal_1"},"sell_cost":2,"label":"Buffoon Pack","ability":{"set":"Booster"}},{"highlighted":false,"cost":6,"config":{"center_key":"p_buffoon_jumbo_1"},"sell_cost":3,"label":"Jumbo Buffoon Pack","ability":{"set":"Booster"}}]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[{"highlighted":false,"cost":10,"config":{"center_key":"v_hone"},"sell_cost":5,"facing":"front","label":"Hone","ability":{"set":"Voucher"},"debuff":false}]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285691825,"function":{"arguments":{"action":"next_round"},"name":"shop"}} +{"game_state":{"state":7,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":1,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285692026,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"}} +{"game_state":{"state":7,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285692308,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Manacle"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"S_K","card":{"value":"King","name":"King of Spades","suit":"Spades"}},"sort_id":3767,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Spades","original_value":"King","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_K","card":{"value":"King","name":"King of Hearts","suit":"Hearts"}},"sort_id":3754,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Hearts","original_value":"King","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3740,"base":{"id":11,"value":"Jack","nominal":10,"times_played":1,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_7","card":{"value":"7","name":"7 of Clubs","suit":"Clubs"}},"sort_id":3723,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Clubs","original_value":"7","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_5","card":{"value":"5","name":"5 of Clubs","suit":"Clubs"}},"sort_id":3721,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Clubs","original_value":"5","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_4","card":{"value":"4","name":"4 of Spades","suit":"Spades"}},"sort_id":3759,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Spades","original_value":"4","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_3","card":{"value":"3","name":"3 of Diamonds","suit":"Diamonds"}},"sort_id":3732,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Diamonds","original_value":"3","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":7,"card_count":7,"highlighted_limit":5}}},"timestamp_ms":1753285692974,"function":{"arguments":{"action":"discard","cards":[2,3,5,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":3,"voucher":[],"discards_used":1,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Manacle"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"S_K","card":{"value":"King","name":"King of Spades","suit":"Spades"}},"sort_id":3767,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Spades","original_value":"King","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_K","card":{"value":"King","name":"King of Hearts","suit":"Hearts"}},"sort_id":3754,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Hearts","original_value":"King","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_9","card":{"value":"9","name":"9 of Diamonds","suit":"Diamonds"}},"sort_id":3738,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Diamonds","original_value":"9","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_8","card":{"value":"8","name":"8 of Clubs","suit":"Clubs"}},"sort_id":3724,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Clubs","original_value":"8","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3747,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_5","card":{"value":"5","name":"5 of Clubs","suit":"Clubs"}},"sort_id":3721,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Clubs","original_value":"5","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_2","card":{"value":"2","name":"2 of Diamonds","suit":"Diamonds"}},"sort_id":3731,"base":{"id":2,"value":"2","nominal":2,"times_played":0,"name":"2 of Diamonds","original_value":"2","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":7,"card_count":7,"highlighted_limit":5}}},"timestamp_ms":1753285693457,"function":{"arguments":{"action":"discard","cards":[2,3,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":2,"voucher":[],"discards_used":2,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Manacle"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3752,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_K","card":{"value":"King","name":"King of Spades","suit":"Spades"}},"sort_id":3767,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Spades","original_value":"King","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_K","card":{"value":"King","name":"King of Hearts","suit":"Hearts"}},"sort_id":3754,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Hearts","original_value":"King","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_8","card":{"value":"8","name":"8 of Spades","suit":"Spades"}},"sort_id":3763,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Spades","original_value":"8","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3747,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_5","card":{"value":"5","name":"5 of Clubs","suit":"Clubs"}},"sort_id":3721,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Clubs","original_value":"5","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_4","card":{"value":"4","name":"4 of Clubs","suit":"Clubs"}},"sort_id":3720,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Clubs","original_value":"4","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":7,"card_count":7,"highlighted_limit":5}}},"timestamp_ms":1753285693857,"function":{"arguments":{"action":"discard","cards":[3,5,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Manacle"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3752,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_K","card":{"value":"King","name":"King of Spades","suit":"Spades"}},"sort_id":3767,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Spades","original_value":"King","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_K","card":{"value":"King","name":"King of Hearts","suit":"Hearts"}},"sort_id":3754,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Hearts","original_value":"King","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_T","card":{"value":"10","name":"10 of Spades","suit":"Spades"}},"sort_id":3769,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Spades","original_value":"10","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_5","card":{"value":"5","name":"5 of Spades","suit":"Spades"}},"sort_id":3760,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Spades","original_value":"5","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3747,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_4","card":{"value":"4","name":"4 of Diamonds","suit":"Diamonds"}},"sort_id":3733,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Diamonds","original_value":"4","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":7,"card_count":7,"highlighted_limit":5}}},"timestamp_ms":1753285694258,"function":{"arguments":{"action":"discard","cards":[3,4,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":0,"voucher":[],"discards_used":4,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Manacle"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3752,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_K","card":{"value":"King","name":"King of Spades","suit":"Spades"}},"sort_id":3767,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Spades","original_value":"King","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_K","card":{"value":"King","name":"King of Hearts","suit":"Hearts"}},"sort_id":3754,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Hearts","original_value":"King","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_K","card":{"value":"King","name":"King of Clubs","suit":"Clubs"}},"sort_id":3728,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Clubs","original_value":"King","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_7","card":{"value":"7","name":"7 of Spades","suit":"Spades"}},"sort_id":3762,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Spades","original_value":"7","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_6","card":{"value":"6","name":"6 of Hearts","suit":"Hearts"}},"sort_id":3748,"base":{"id":6,"value":"6","nominal":6,"times_played":0,"name":"6 of Hearts","original_value":"6","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3747,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"}],"config":{"card_limit":7,"card_count":7,"highlighted_limit":5}}},"timestamp_ms":1753285694662,"function":{"arguments":{"action":"play_hand","cards":[1,2,3,4]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":0,"voucher":[],"discards_used":4,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":180,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":2,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Manacle"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3752,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3730,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_6","card":{"value":"6","name":"6 of Hearts","suit":"Hearts"}},"sort_id":3748,"base":{"id":6,"value":"6","nominal":6,"times_played":0,"name":"6 of Hearts","original_value":"6","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3747,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_4","card":{"value":"4","name":"4 of Hearts","suit":"Hearts"}},"sort_id":3746,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Hearts","original_value":"4","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_3","card":{"value":"3","name":"3 of Hearts","suit":"Hearts"}},"sort_id":3745,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Hearts","original_value":"3","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_2","card":{"value":"2","name":"2 of Clubs","suit":"Clubs"}},"sort_id":3718,"base":{"id":2,"value":"2","nominal":2,"times_played":0,"name":"2 of Clubs","original_value":"2","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":7,"card_count":7,"highlighted_limit":5}}},"timestamp_ms":1753285696342,"function":{"arguments":{"action":"play_hand","cards":[0,1,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":2,"discards_left":0,"voucher":[],"discards_used":4,"hands_played":2},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":196,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Manacle"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"S_Q","card":{"value":"Queen","name":"Queen of Spades","suit":"Spades"}},"sort_id":3768,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Spades","original_value":"Queen","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_Q","card":{"value":"Queen","name":"Queen of Clubs","suit":"Clubs"}},"sort_id":3729,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Clubs","original_value":"Queen","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3749,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_6","card":{"value":"6","name":"6 of Hearts","suit":"Hearts"}},"sort_id":3748,"base":{"id":6,"value":"6","nominal":6,"times_played":0,"name":"6 of Hearts","original_value":"6","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3747,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_4","card":{"value":"4","name":"4 of Hearts","suit":"Hearts"}},"sort_id":3746,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Hearts","original_value":"4","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_3","card":{"value":"3","name":"3 of Hearts","suit":"Hearts"}},"sort_id":3745,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Hearts","original_value":"3","suit":"Hearts"},"facing":"front","label":"Base Card"}],"config":{"card_limit":7,"card_count":7,"highlighted_limit":5}}},"timestamp_ms":1753285697663,"function":{"arguments":{"action":"play_hand","cards":[2,3,4,5,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":8,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":1,"discards_left":0,"voucher":[],"discards_used":4,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":20,"chips":1196,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":4,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285701774,"function":{"arguments":[],"name":"cash_out"}} +{"game_state":{"state":5,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":6,"config":{"center_key":"j_reserved_parking"},"sell_cost":3,"facing":"front","label":"Reserved Parking","ability":{"set":"Joker"},"debuff":false},{"highlighted":false,"cost":4,"config":{"center_key":"j_juggler"},"sell_cost":2,"facing":"front","label":"Juggler","ability":{"set":"Joker"},"debuff":false}]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":4,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":30,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":4,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":8,"config":{"center_key":"p_spectral_mega_1"},"sell_cost":4,"label":"Mega Spectral Pack","ability":{"set":"Booster"}},{"highlighted":false,"cost":6,"config":{"center_key":"p_standard_jumbo_2"},"sell_cost":3,"label":"Jumbo Standard Pack","ability":{"set":"Booster"}}]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[{"highlighted":false,"cost":10,"config":{"center_key":"v_magic_trick"},"sell_cost":5,"facing":"front","label":"Magic Trick","ability":{"set":"Voucher"},"debuff":false}]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285702176,"function":{"arguments":{"action":"next_round"},"name":"shop"}} +{"game_state":{"state":7,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":4,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":30,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":4,"voucher_text":"","hands_played":4,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":2,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285702374,"function":{"arguments":[],"name":"go_to_menu"}} diff --git a/tests/runs/one_ante_no_shop_2.jsonl b/tests/runs/one_ante_no_shop_2.jsonl index 59358b8..9bd3d25 100644 --- a/tests/runs/one_ante_no_shop_2.jsonl +++ b/tests/runs/one_ante_no_shop_2.jsonl @@ -1,31 +1,31 @@ -{"timestamp_ms":1753138137823,"function":{"arguments":{"stake":1,"seed":"OOOOOOO","deck":"Red Deck"},"name":"start_run"},"game_state":{"state":11,"jokers":[],"game":{"round":0,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":0,"discards_used":0,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":"","boss":false},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":0,"tags":[],"base_reroll_cost":5,"shop":[]}}} -{"timestamp_ms":1753138138679,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"},"game_state":{"state":7,"jokers":[],"game":{"round":0,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":0,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138138797,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"},"game_state":{"state":7,"jokers":[],"game":{"round":0,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":1,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138138912,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"},"game_state":{"state":7,"jokers":[],"game":{"round":0,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138139605,"function":{"arguments":{"cards":[1,5,6,7],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":"The Head","boss":true},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"D_A","card":{"suit":"Diamonds","value":"Ace","name":"Ace of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Ace of Diamonds","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"H_K","card":{"suit":"Hearts","value":"King","name":"King of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"King of Hearts","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":true},{"config":{"card_key":"C_K","card":{"suit":"Clubs","value":"King","name":"King of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"King of Clubs","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"S_J","card":{"suit":"Spades","value":"Jack","name":"Jack of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Jack of Spades","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_9","card":{"suit":"Diamonds","value":"9","name":"9 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"9 of Diamonds","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":false},{"config":{"card_key":"S_7","card":{"suit":"Spades","value":"7","name":"7 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"7 of Spades","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"H_3","card":{"suit":"Hearts","value":"3","name":"3 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"3 of Hearts","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":true}]}}} -{"timestamp_ms":1753138140101,"function":{"arguments":{"cards":[0,2,5,6],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":1,"discards_left":3},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":"The Head","boss":true},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"D_A","card":{"suit":"Diamonds","value":"Ace","name":"Ace of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Ace of Diamonds","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"C_K","card":{"suit":"Clubs","value":"King","name":"King of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"King of Clubs","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"S_J","card":{"suit":"Spades","value":"Jack","name":"Jack of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Jack of Spades","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"C_8","card":{"suit":"Clubs","value":"8","name":"8 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"8 of Clubs","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"D_8","card":{"suit":"Diamonds","value":"8","name":"8 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"8 of Diamonds","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"D_4","card":{"suit":"Diamonds","value":"4","name":"4 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"4 of Diamonds","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false},{"config":{"card_key":"C_2","card":{"suit":"Clubs","value":"2","name":"2 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"2 of Clubs","times_played":0,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138140578,"function":{"arguments":{"cards":[0,3,4,6,7],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":2,"discards_left":2},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":"The Head","boss":true},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":0,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"C_K","card":{"suit":"Clubs","value":"King","name":"King of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"King of Clubs","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"S_9","card":{"suit":"Spades","value":"9","name":"9 of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"9 of Spades","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":false},{"config":{"card_key":"C_8","card":{"suit":"Clubs","value":"8","name":"8 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"8 of Clubs","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"C_6","card":{"suit":"Clubs","value":"6","name":"6 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"6 of Clubs","times_played":0,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":false},{"config":{"card_key":"S_5","card":{"suit":"Spades","value":"5","name":"5 of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"5 of Spades","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_4","card":{"suit":"Clubs","value":"4","name":"4 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"4 of Clubs","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false},{"config":{"card_key":"C_2","card":{"suit":"Clubs","value":"2","name":"2 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"2 of Clubs","times_played":0,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138142640,"function":{"arguments":{"cards":[0,3,4,5,6],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":2,"discards_left":2},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":"The Head","boss":true},"unused_discards":0,"won":false,"chips":260,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_J","card":{"suit":"Hearts","value":"Jack","name":"Jack of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Jack of Hearts","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":true},{"config":{"card_key":"C_J","card":{"suit":"Clubs","value":"Jack","name":"Jack of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Jack of Clubs","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"S_9","card":{"suit":"Spades","value":"9","name":"9 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"9 of Spades","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":false},{"config":{"card_key":"H_9","card":{"suit":"Hearts","value":"9","name":"9 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"9 of Hearts","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":true},{"config":{"card_key":"S_5","card":{"suit":"Spades","value":"5","name":"5 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"5 of Spades","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"S_4","card":{"suit":"Spades","value":"4","name":"4 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"4 of Spades","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false},{"config":{"card_key":"C_3","card":{"suit":"Clubs","value":"3","name":"3 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"3 of Clubs","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138143187,"function":{"arguments":{"cards":[0,1,3,5,7],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":"The Head","boss":true},"unused_discards":0,"won":false,"chips":260,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":true},{"config":{"card_key":"H_Q","card":{"suit":"Hearts","value":"Queen","name":"Queen of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Queen of Hearts","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":true},{"config":{"card_key":"C_J","card":{"suit":"Clubs","value":"Jack","name":"Jack of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Jack of Clubs","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_5","card":{"suit":"Diamonds","value":"5","name":"5 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"5 of Diamonds","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_3","card":{"suit":"Clubs","value":"3","name":"3 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"3 of Clubs","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false},{"config":{"card_key":"S_2","card":{"suit":"Spades","value":"2","name":"2 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"2 of Spades","times_played":0,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138143726,"function":{"arguments":{"cards":[1,2,3,4,5],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":4,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":"The Head","boss":true},"unused_discards":0,"won":false,"chips":260,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":1,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"C_J","card":{"suit":"Clubs","value":"Jack","name":"Jack of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Jack of Clubs","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"S_T","card":{"suit":"Spades","value":"10","name":"10 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"10 of Spades","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_T","card":{"suit":"Diamonds","value":"10","name":"10 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"10 of Diamonds","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"S_6","card":{"suit":"Spades","value":"6","name":"6 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"6 of Spades","times_played":0,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":false},{"config":{"card_key":"D_6","card":{"suit":"Diamonds","value":"6","name":"6 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"6 of Diamonds","times_played":0,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":false},{"config":{"card_key":"C_5","card":{"suit":"Clubs","value":"5","name":"5 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"5 of Clubs","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_3","card":{"suit":"Clubs","value":"3","name":"3 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"3 of Clubs","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138145777,"function":{"arguments":{"cards":[0,2,4,5,7],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":2,"voucher":[],"hands_left":2,"discards_used":4,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":"The Head","boss":true},"unused_discards":0,"won":false,"chips":588,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":2,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"C_A","card":{"suit":"Clubs","value":"Ace","name":"Ace of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Ace of Clubs","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"S_Q","card":{"suit":"Spades","value":"Queen","name":"Queen of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Queen of Spades","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"C_J","card":{"suit":"Clubs","value":"Jack","name":"Jack of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Jack of Clubs","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"S_8","card":{"suit":"Spades","value":"8","name":"8 of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"8 of Spades","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"C_7","card":{"suit":"Clubs","value":"7","name":"7 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"7 of Clubs","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"C_5","card":{"suit":"Clubs","value":"5","name":"5 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"5 of Clubs","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"H_4","card":{"suit":"Hearts","value":"4","name":"4 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"4 of Hearts","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":true},{"config":{"card_key":"C_3","card":{"suit":"Clubs","value":"3","name":"3 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"3 of Clubs","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138150050,"function":{"arguments":[],"name":"cash_out"},"game_state":{"state":8,"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":1,"discards_used":4,"discards_left":0},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":872,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":4,"tags":[{"key":"tag_d_six","name":"D6 Tag"},{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138150593,"function":{"arguments":{"action":"next_round"},"name":"shop"},"game_state":{"state":5,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Joker"},"sell_cost":2,"cost":5,"highlighted":false,"facing":"front","config":{"center_key":"j_popcorn"},"label":"Popcorn","debuff":false},{"ability":{"set":"Joker"},"sell_cost":2,"cost":4,"highlighted":false,"facing":"front","config":{"center_key":"j_walkie_talkie"},"label":"Walkie Talkie","debuff":false}]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Booster"},"cost":4,"highlighted":false,"sell_cost":2,"label":"Buffoon Pack","config":{"center_key":"p_buffoon_normal_1"}},{"ability":{"set":"Booster"},"cost":6,"highlighted":false,"sell_cost":3,"label":"Jumbo Standard Pack","config":{"center_key":"p_standard_jumbo_1"}}]},"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":4,"discards_used":4,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[{"ability":{"set":"Voucher"},"sell_cost":5,"cost":10,"highlighted":false,"facing":"front","config":{"center_key":"v_overstock_norm"},"label":"Overstock","debuff":false}]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138150797,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"},"game_state":{"state":7,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":4,"discards_used":4,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":2,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Small","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138151061,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"},"game_state":{"state":7,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":1,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":4,"discards_used":4,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":""},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138151770,"function":{"arguments":{"cards":[2,4,6,7],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"Big Blind","boss":false},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"D_K","card":{"suit":"Diamonds","value":"King","name":"King of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"King of Diamonds","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"H_T","card":{"suit":"Hearts","value":"10","name":"10 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"10 of Hearts","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_T","card":{"suit":"Diamonds","value":"10","name":"10 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"10 of Diamonds","times_played":1,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"S_8","card":{"suit":"Spades","value":"8","name":"8 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"8 of Spades","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"D_8","card":{"suit":"Diamonds","value":"8","name":"8 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"8 of Diamonds","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"S_7","card":{"suit":"Spades","value":"7","name":"7 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"7 of Spades","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"C_5","card":{"suit":"Clubs","value":"5","name":"5 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"5 of Clubs","times_played":1,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false}]}}} -{"timestamp_ms":1753138152243,"function":{"arguments":{"cards":[5,6,7],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":1,"discards_left":3},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"Big Blind","boss":false},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_A","card":{"suit":"Spades","value":"Ace","name":"Ace of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Ace of Spades","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"D_K","card":{"suit":"Diamonds","value":"King","name":"King of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"King of Diamonds","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"D_T","card":{"suit":"Diamonds","value":"10","name":"10 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"10 of Diamonds","times_played":1,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_8","card":{"suit":"Diamonds","value":"8","name":"8 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"8 of Diamonds","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"C_4","card":{"suit":"Clubs","value":"4","name":"4 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"4 of Clubs","times_played":1,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false},{"config":{"card_key":"H_3","card":{"suit":"Hearts","value":"3","name":"3 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"3 of Hearts","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138152652,"function":{"arguments":{"cards":[0,1,4,7],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":2,"discards_left":2},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"Big Blind","boss":false},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_A","card":{"suit":"Spades","value":"Ace","name":"Ace of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Ace of Spades","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"C_A","card":{"suit":"Clubs","value":"Ace","name":"Ace of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Ace of Clubs","times_played":1,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"D_K","card":{"suit":"Diamonds","value":"King","name":"King of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"King of Diamonds","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"S_T","card":{"suit":"Spades","value":"10","name":"10 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"10 of Spades","times_played":1,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_T","card":{"suit":"Diamonds","value":"10","name":"10 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"10 of Diamonds","times_played":1,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_8","card":{"suit":"Diamonds","value":"8","name":"8 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"8 of Diamonds","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"C_7","card":{"suit":"Clubs","value":"7","name":"7 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"7 of Clubs","times_played":1,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false}]}}} -{"timestamp_ms":1753138153125,"function":{"arguments":{"cards":[0,2,3,4,5],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"Big Blind","boss":false},"unused_discards":0,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":3,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"D_K","card":{"suit":"Diamonds","value":"King","name":"King of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"King of Diamonds","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_Q","card":{"suit":"Hearts","value":"Queen","name":"Queen of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Queen of Hearts","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"D_T","card":{"suit":"Diamonds","value":"10","name":"10 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"10 of Diamonds","times_played":1,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_8","card":{"suit":"Diamonds","value":"8","name":"8 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"8 of Diamonds","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"D_6","card":{"suit":"Diamonds","value":"6","name":"6 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"6 of Diamonds","times_played":1,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_2","card":{"suit":"Clubs","value":"2","name":"2 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"2 of Clubs","times_played":1,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138155300,"function":{"arguments":{"cards":[0,1,4,5],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"Big Blind","boss":false},"unused_discards":0,"won":false,"chips":632,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":4,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_K","card":{"suit":"Spades","value":"King","name":"King of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"King of Spades","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_K","card":{"suit":"Hearts","value":"King","name":"King of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"King of Hearts","times_played":0,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"S_Q","card":{"suit":"Spades","value":"Queen","name":"Queen of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Queen of Spades","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"H_Q","card":{"suit":"Hearts","value":"Queen","name":"Queen of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Queen of Hearts","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"S_J","card":{"suit":"Spades","value":"Jack","name":"Jack of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Jack of Spades","times_played":0,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"C_J","card":{"suit":"Clubs","value":"Jack","name":"Jack of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Jack of Clubs","times_played":1,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_2","card":{"suit":"Clubs","value":"2","name":"2 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"2 of Clubs","times_played":1,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138159206,"function":{"arguments":[],"name":"cash_out"},"game_state":{"state":8,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":2,"voucher":[],"hands_left":2,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":""},"unused_discards":1,"won":false,"chips":1352,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":5,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":10,"tags":[{"key":"tag_d_six","name":"D6 Tag"}],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138159748,"function":{"arguments":{"action":"next_round"},"name":"shop"},"game_state":{"state":5,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Planet"},"sell_cost":1,"cost":3,"highlighted":false,"facing":"front","config":{"center_key":"c_neptune"},"label":"Neptune","debuff":false},{"ability":{"set":"Planet"},"sell_cost":1,"cost":3,"highlighted":false,"facing":"front","config":{"center_key":"c_mars"},"label":"Mars","debuff":false}]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[{"ability":{"set":"Booster"},"cost":4,"highlighted":false,"sell_cost":2,"label":"Standard Pack","config":{"center_key":"p_standard_normal_1"}},{"ability":{"set":"Booster"},"cost":4,"highlighted":false,"sell_cost":2,"label":"Standard Pack","config":{"center_key":"p_standard_normal_3"}}]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":2,"voucher":[],"hands_left":4,"discards_used":3,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":""},"unused_discards":1,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Big","previous_round":[],"hands_played":5,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[{"ability":{"set":"Voucher"},"sell_cost":5,"cost":10,"highlighted":false,"facing":"front","config":{"center_key":"v_overstock_norm"},"label":"Overstock","debuff":false}]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138159934,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"},"game_state":{"state":7,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":2,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":2,"voucher":[],"hands_left":4,"discards_used":3,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":""},"unused_discards":1,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":5,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":0,"highlighted_limit":5},"cards":[]}}} -{"timestamp_ms":1753138160633,"function":{"arguments":{"cards":[0,1,2,3,6],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":0,"discards_left":4},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":5,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_J","card":{"suit":"Spades","value":"Jack","name":"Jack of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Jack of Spades","times_played":1,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"S_T","card":{"suit":"Spades","value":"10","name":"10 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"10 of Spades","times_played":1,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_T","card":{"suit":"Diamonds","value":"10","name":"10 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"10 of Diamonds","times_played":2,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"C_8","card":{"suit":"Clubs","value":"8","name":"8 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"8 of Clubs","times_played":1,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":true},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_5","card":{"suit":"Clubs","value":"5","name":"5 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"5 of Clubs","times_played":1,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":true},{"config":{"card_key":"H_3","card":{"suit":"Hearts","value":"3","name":"3 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"3 of Hearts","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138161190,"function":{"arguments":{"cards":[4,5,6,7],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":0,"voucher":[],"hands_left":4,"discards_used":1,"discards_left":3},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":0,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":5,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"D_Q","card":{"suit":"Diamonds","value":"Queen","name":"Queen of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Queen of Diamonds","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"S_9","card":{"suit":"Spades","value":"9","name":"9 of Spades"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"9 of Spades","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"H_3","card":{"suit":"Hearts","value":"3","name":"3 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"3 of Hearts","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false},{"config":{"card_key":"C_3","card":{"suit":"Clubs","value":"3","name":"3 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"3 of Clubs","times_played":1,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":true},{"config":{"card_key":"S_2","card":{"suit":"Spades","value":"2","name":"2 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"2 of Spades","times_played":0,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false},{"config":{"card_key":"C_2","card":{"suit":"Clubs","value":"2","name":"2 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"2 of Clubs","times_played":1,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":true}]}}} -{"timestamp_ms":1753138163095,"function":{"arguments":{"cards":[1,2,3,4,7],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":1,"discards_left":3},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":250,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":6,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"D_A","card":{"suit":"Diamonds","value":"Ace","name":"Ace of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Ace of Diamonds","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"D_Q","card":{"suit":"Diamonds","value":"Queen","name":"Queen of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Queen of Diamonds","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"C_T","card":{"suit":"Clubs","value":"10","name":"10 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"10 of Clubs","times_played":1,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":true},{"config":{"card_key":"S_9","card":{"suit":"Spades","value":"9","name":"9 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"9 of Spades","times_played":0,"nominal":9,"value":"9","id":9,"original_value":"9"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"D_4","card":{"suit":"Diamonds","value":"4","name":"4 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"4 of Diamonds","times_played":0,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":false}]}}} -{"timestamp_ms":1753138163635,"function":{"arguments":{"cards":[2,3,7],"action":"discard"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":2,"discards_left":2},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":250,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":6,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"C_A","card":{"suit":"Clubs","value":"Ace","name":"Ace of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Ace of Clubs","times_played":1,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":true},{"config":{"card_key":"C_K","card":{"suit":"Clubs","value":"King","name":"King of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"King of Clubs","times_played":1,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":true},{"config":{"card_key":"S_8","card":{"suit":"Spades","value":"8","name":"8 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"8 of Spades","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_8","card":{"suit":"Hearts","value":"8","name":"8 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"8 of Hearts","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"S_3","card":{"suit":"Spades","value":"3","name":"3 of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"3 of Spades","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138164040,"function":{"arguments":{"cards":[0,1,2,3],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":1,"voucher":[],"hands_left":3,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":250,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":6,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_A","card":{"suit":"Spades","value":"Ace","name":"Ace of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Ace of Spades","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"H_A","card":{"suit":"Hearts","value":"Ace","name":"Ace of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"Ace of Hearts","times_played":0,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":false},{"config":{"card_key":"C_A","card":{"suit":"Clubs","value":"Ace","name":"Ace of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Ace of Clubs","times_played":1,"nominal":11,"value":"Ace","id":14,"original_value":"Ace"},"debuff":true},{"config":{"card_key":"S_K","card":{"suit":"Spades","value":"King","name":"King of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"King of Spades","times_played":1,"nominal":10,"value":"King","id":13,"original_value":"King"},"debuff":false},{"config":{"card_key":"H_8","card":{"suit":"Hearts","value":"8","name":"8 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"8 of Hearts","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"C_6","card":{"suit":"Clubs","value":"6","name":"6 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"6 of Clubs","times_played":1,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":true},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false}]}}} -{"timestamp_ms":1753138165800,"function":{"arguments":{"cards":[0,1,2,7],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":2,"voucher":[],"hands_left":2,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":822,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":7,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"S_Q","card":{"suit":"Spades","value":"Queen","name":"Queen of Spades"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Spades","name":"Queen of Spades","times_played":0,"nominal":10,"value":"Queen","id":12,"original_value":"Queen"},"debuff":false},{"config":{"card_key":"C_J","card":{"suit":"Clubs","value":"Jack","name":"Jack of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"Jack of Clubs","times_played":2,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":true},{"config":{"card_key":"D_J","card":{"suit":"Diamonds","value":"Jack","name":"Jack of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"Jack of Diamonds","times_played":1,"nominal":10,"value":"Jack","id":11,"original_value":"Jack"},"debuff":false},{"config":{"card_key":"H_8","card":{"suit":"Hearts","value":"8","name":"8 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"8 of Hearts","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"C_6","card":{"suit":"Clubs","value":"6","name":"6 of Clubs"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"6 of Clubs","times_played":1,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":true},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"D_2","card":{"suit":"Diamonds","value":"2","name":"2 of Diamonds"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"2 of Diamonds","times_played":0,"nominal":2,"value":"2","id":2,"original_value":"2"},"debuff":false}]}}} -{"timestamp_ms":1753138167584,"function":{"arguments":{"cards":[1,3,4,5,6],"action":"play_hand"},"name":"play_hand_or_discard"},"game_state":{"state":1,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":3,"voucher":[],"hands_left":1,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":1062,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":8,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":8,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_T","card":{"suit":"Hearts","value":"10","name":"10 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"10 of Hearts","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"H_8","card":{"suit":"Hearts","value":"8","name":"8 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"8 of Hearts","times_played":0,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"D_8","card":{"suit":"Diamonds","value":"8","name":"8 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"8 of Diamonds","times_played":1,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"H_7","card":{"suit":"Hearts","value":"7","name":"7 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"7 of Hearts","times_played":0,"nominal":7,"value":"7","id":7,"original_value":"7"},"debuff":false},{"config":{"card_key":"C_6","card":{"suit":"Clubs","value":"6","name":"6 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"6 of Clubs","times_played":1,"nominal":6,"value":"6","id":6,"original_value":"6"},"debuff":true},{"config":{"card_key":"H_5","card":{"suit":"Hearts","value":"5","name":"5 of Hearts"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"5 of Hearts","times_played":0,"nominal":5,"value":"5","id":5,"original_value":"5"},"debuff":false},{"config":{"card_key":"C_4","card":{"suit":"Clubs","value":"4","name":"4 of Clubs"}},"highlighted":true,"facing":"front","label":"Base Card","base":{"suit":"Clubs","name":"4 of Clubs","times_played":1,"nominal":4,"value":"4","id":4,"original_value":"4"},"debuff":true},{"config":{"card_key":"D_3","card":{"suit":"Diamonds","value":"3","name":"3 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"3 of Diamonds","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} -{"timestamp_ms":1753138170289,"function":{"arguments":[],"name":"go_to_menu"},"game_state":{"state":4,"shop_jokers":{"config":{"card_count":2,"card_limit":2},"cards":[]},"shop_booster":{"config":{"card_count":2,"card_limit":2},"cards":[]},"jokers":[{"label":"Jolly Joker","config":{"center":{"name":"Jolly Joker","rarity":1,"effect":"Type Mult","_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"type":"Pair","t_mult":8},"_discovered_unlocked_overwritten":true,"key":"j_jolly","set":"Joker","pos":{"x":2,"y":0},"_saved_d_u":true,"order":6,"unlocked":true,"cost":3,"cost_mult":1,"discovered":true,"alerted":true}}},{"label":"Photograph","config":{"center":{"name":"Photograph","rarity":1,"cost":5,"_d":false,"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"_u":true,"config":{"extra":2},"_discovered_unlocked_overwritten":true,"key":"j_photograph","set":"Joker","order":78,"_saved_d_u":true,"pos":{"x":2,"y":13},"unlocked":true,"discovered":true,"alerted":true}}}],"game":{"round":3,"round_bonus":[],"round_scores":[],"uncommon_mod":1,"current_round":{"hands_played":4,"voucher":[],"hands_left":0,"discards_used":3,"discards_left":1},"used_vouchers":[],"starting_params":[],"skips":3,"bosses_used":[],"last_blind":{"name":"The Club","boss":true},"unused_discards":1,"won":false,"chips":1262,"probabilities":[],"planet_rate":4,"blind_on_deck":"Boss","previous_round":[],"hands_played":9,"pseudorandom":[],"win_ante":8,"tarot_rate":4,"stake":1,"playing_card_rate":0,"seeded":true,"max_jokers":2,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"selected_back":{"name":"Red Deck"},"bankrupt_at":0,"voucher_text":"","smods_version":"1.0.0~BETA-0706c","dollars":18,"tags":[],"base_reroll_cost":5,"shop":[]},"shop_vouchers":{"config":{"card_count":1,"card_limit":1},"cards":[]},"hand":{"config":{"card_limit":8,"card_count":3,"highlighted_limit":5},"cards":[{"config":{"card_key":"H_T","card":{"suit":"Hearts","value":"10","name":"10 of Hearts"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Hearts","name":"10 of Hearts","times_played":0,"nominal":10,"value":"10","id":10,"original_value":"10"},"debuff":false},{"config":{"card_key":"D_8","card":{"suit":"Diamonds","value":"8","name":"8 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"8 of Diamonds","times_played":1,"nominal":8,"value":"8","id":8,"original_value":"8"},"debuff":false},{"config":{"card_key":"D_3","card":{"suit":"Diamonds","value":"3","name":"3 of Diamonds"}},"highlighted":false,"facing":"front","label":"Base Card","base":{"suit":"Diamonds","name":"3 of Diamonds","times_played":0,"nominal":3,"value":"3","id":3,"original_value":"3"},"debuff":false}]}}} +{"game_state":{"state":11,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":0,"discards_left":0,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":0,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"tags":[],"pseudorandom":[],"last_blind":{"boss":false,"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":0,"round_scores":[],"probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}}},"timestamp_ms":1753285710302,"function":{"arguments":{"stake":1,"deck":"Red Deck","seed":"OOOOOOO"},"name":"start_run"}} +{"game_state":{"state":7,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":0,"round":0,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285711158,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"}} +{"game_state":{"state":7,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":1,"round":0,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285711278,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"}} +{"game_state":{"state":7,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":0,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285711391,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Head"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"D_A","card":{"value":"Ace","name":"Ace of Diamonds","suit":"Diamonds"}},"sort_id":3814,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Diamonds","original_value":"Ace","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"H_K","card":{"value":"King","name":"King of Hearts","suit":"Hearts"}},"sort_id":3829,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Hearts","original_value":"King","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_K","card":{"value":"King","name":"King of Clubs","suit":"Clubs"}},"sort_id":3803,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Clubs","original_value":"King","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_J","card":{"value":"Jack","name":"Jack of Spades","suit":"Spades"}},"sort_id":3841,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Spades","original_value":"Jack","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3805,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_9","card":{"value":"9","name":"9 of Diamonds","suit":"Diamonds"}},"sort_id":3813,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Diamonds","original_value":"9","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_7","card":{"value":"7","name":"7 of Spades","suit":"Spades"}},"sort_id":3837,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Spades","original_value":"7","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"H_3","card":{"value":"3","name":"3 of Hearts","suit":"Hearts"}},"sort_id":3820,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Hearts","original_value":"3","suit":"Hearts"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285712075,"function":{"arguments":{"action":"discard","cards":[1,5,6,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":3,"voucher":[],"discards_used":1,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Head"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"D_A","card":{"value":"Ace","name":"Ace of Diamonds","suit":"Diamonds"}},"sort_id":3814,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Diamonds","original_value":"Ace","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_K","card":{"value":"King","name":"King of Clubs","suit":"Clubs"}},"sort_id":3803,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Clubs","original_value":"King","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_J","card":{"value":"Jack","name":"Jack of Spades","suit":"Spades"}},"sort_id":3841,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Spades","original_value":"Jack","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3805,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_8","card":{"value":"8","name":"8 of Clubs","suit":"Clubs"}},"sort_id":3799,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Clubs","original_value":"8","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_8","card":{"value":"8","name":"8 of Diamonds","suit":"Diamonds"}},"sort_id":3812,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Diamonds","original_value":"8","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_4","card":{"value":"4","name":"4 of Diamonds","suit":"Diamonds"}},"sort_id":3808,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Diamonds","original_value":"4","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_2","card":{"value":"2","name":"2 of Clubs","suit":"Clubs"}},"sort_id":3793,"base":{"id":2,"value":"2","nominal":2,"times_played":0,"name":"2 of Clubs","original_value":"2","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285712556,"function":{"arguments":{"action":"discard","cards":[0,2,5,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":2,"voucher":[],"discards_used":2,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":0,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Head"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"C_K","card":{"value":"King","name":"King of Clubs","suit":"Clubs"}},"sort_id":3803,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Clubs","original_value":"King","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3805,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_9","card":{"value":"9","name":"9 of Spades","suit":"Spades"}},"sort_id":3839,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Spades","original_value":"9","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_8","card":{"value":"8","name":"8 of Clubs","suit":"Clubs"}},"sort_id":3799,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Clubs","original_value":"8","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_6","card":{"value":"6","name":"6 of Clubs","suit":"Clubs"}},"sort_id":3797,"base":{"id":6,"value":"6","nominal":6,"times_played":0,"name":"6 of Clubs","original_value":"6","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_5","card":{"value":"5","name":"5 of Spades","suit":"Spades"}},"sort_id":3835,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Spades","original_value":"5","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_4","card":{"value":"4","name":"4 of Clubs","suit":"Clubs"}},"sort_id":3795,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Clubs","original_value":"4","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_2","card":{"value":"2","name":"2 of Clubs","suit":"Clubs"}},"sort_id":3793,"base":{"id":2,"value":"2","nominal":2,"times_played":0,"name":"2 of Clubs","original_value":"2","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285713025,"function":{"arguments":{"action":"play_hand","cards":[0,3,4,6,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":2,"voucher":[],"discards_used":2,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":260,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Head"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":true,"debuff":true,"config":{"card_key":"H_J","card":{"value":"Jack","name":"Jack of Hearts","suit":"Hearts"}},"sort_id":3828,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Hearts","original_value":"Jack","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_J","card":{"value":"Jack","name":"Jack of Clubs","suit":"Clubs"}},"sort_id":3802,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Clubs","original_value":"Jack","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3805,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_9","card":{"value":"9","name":"9 of Spades","suit":"Spades"}},"sort_id":3839,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Spades","original_value":"9","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"H_9","card":{"value":"9","name":"9 of Hearts","suit":"Hearts"}},"sort_id":3826,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Hearts","original_value":"9","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_5","card":{"value":"5","name":"5 of Spades","suit":"Spades"}},"sort_id":3835,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Spades","original_value":"5","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_4","card":{"value":"4","name":"4 of Spades","suit":"Spades"}},"sort_id":3834,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Spades","original_value":"4","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_3","card":{"value":"3","name":"3 of Clubs","suit":"Clubs"}},"sort_id":3794,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Clubs","original_value":"3","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285715047,"function":{"arguments":{"action":"discard","cards":[0,3,4,5,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":260,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Head"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":true,"debuff":true,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3827,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"H_Q","card":{"value":"Queen","name":"Queen of Hearts","suit":"Hearts"}},"sort_id":3830,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Hearts","original_value":"Queen","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_J","card":{"value":"Jack","name":"Jack of Clubs","suit":"Clubs"}},"sort_id":3802,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Clubs","original_value":"Jack","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3815,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3805,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_5","card":{"value":"5","name":"5 of Diamonds","suit":"Diamonds"}},"sort_id":3809,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Diamonds","original_value":"5","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_3","card":{"value":"3","name":"3 of Clubs","suit":"Clubs"}},"sort_id":3794,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Clubs","original_value":"3","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_2","card":{"value":"2","name":"2 of Spades","suit":"Spades"}},"sort_id":3832,"base":{"id":2,"value":"2","nominal":2,"times_played":0,"name":"2 of Spades","original_value":"2","suit":"Spades"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285715578,"function":{"arguments":{"action":"discard","cards":[0,1,3,5,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":0,"voucher":[],"discards_used":4,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":260,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":1,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Head"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"C_J","card":{"value":"Jack","name":"Jack of Clubs","suit":"Clubs"}},"sort_id":3802,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Clubs","original_value":"Jack","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_T","card":{"value":"10","name":"10 of Spades","suit":"Spades"}},"sort_id":3844,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Spades","original_value":"10","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3805,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_T","card":{"value":"10","name":"10 of Diamonds","suit":"Diamonds"}},"sort_id":3818,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Diamonds","original_value":"10","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_6","card":{"value":"6","name":"6 of Spades","suit":"Spades"}},"sort_id":3836,"base":{"id":6,"value":"6","nominal":6,"times_played":0,"name":"6 of Spades","original_value":"6","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_6","card":{"value":"6","name":"6 of Diamonds","suit":"Diamonds"}},"sort_id":3810,"base":{"id":6,"value":"6","nominal":6,"times_played":0,"name":"6 of Diamonds","original_value":"6","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_5","card":{"value":"5","name":"5 of Clubs","suit":"Clubs"}},"sort_id":3796,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Clubs","original_value":"5","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_3","card":{"value":"3","name":"3 of Clubs","suit":"Clubs"}},"sort_id":3794,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Clubs","original_value":"3","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285716116,"function":{"arguments":{"action":"play_hand","cards":[1,2,3,4,5]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":2,"discards_left":0,"voucher":[],"discards_used":4,"hands_played":2},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":588,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":2,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Head"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"C_A","card":{"value":"Ace","name":"Ace of Clubs","suit":"Clubs"}},"sort_id":3801,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Clubs","original_value":"Ace","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_Q","card":{"value":"Queen","name":"Queen of Spades","suit":"Spades"}},"sort_id":3843,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Spades","original_value":"Queen","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_J","card":{"value":"Jack","name":"Jack of Clubs","suit":"Clubs"}},"sort_id":3802,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Clubs","original_value":"Jack","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_8","card":{"value":"8","name":"8 of Spades","suit":"Spades"}},"sort_id":3838,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Spades","original_value":"8","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_7","card":{"value":"7","name":"7 of Clubs","suit":"Clubs"}},"sort_id":3798,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Clubs","original_value":"7","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_5","card":{"value":"5","name":"5 of Clubs","suit":"Clubs"}},"sort_id":3796,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Clubs","original_value":"5","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":true,"config":{"card_key":"H_4","card":{"value":"4","name":"4 of Hearts","suit":"Hearts"}},"sort_id":3821,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Hearts","original_value":"4","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_3","card":{"value":"3","name":"3 of Clubs","suit":"Clubs"}},"sort_id":3794,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Clubs","original_value":"3","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285718164,"function":{"arguments":{"action":"play_hand","cards":[0,2,4,5,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":8,"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":1,"discards_left":0,"voucher":[],"discards_used":4,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":4,"chips":872,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"},{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285722381,"function":{"arguments":[],"name":"cash_out"}} +{"game_state":{"state":5,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":5,"config":{"center_key":"j_popcorn"},"sell_cost":2,"facing":"front","label":"Popcorn","ability":{"set":"Joker"},"debuff":false},{"highlighted":false,"cost":4,"config":{"center_key":"j_walkie_talkie"},"sell_cost":2,"facing":"front","label":"Walkie Talkie","ability":{"set":"Joker"},"debuff":false}]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":4,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":4,"config":{"center_key":"p_buffoon_normal_1"},"sell_cost":2,"label":"Buffoon Pack","ability":{"set":"Booster"}},{"highlighted":false,"cost":6,"config":{"center_key":"p_standard_jumbo_1"},"sell_cost":3,"label":"Jumbo Standard Pack","ability":{"set":"Booster"}}]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[{"highlighted":false,"cost":10,"config":{"center_key":"v_overstock_norm"},"sell_cost":5,"facing":"front","label":"Overstock","ability":{"set":"Voucher"},"debuff":false}]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285722935,"function":{"arguments":{"action":"next_round"},"name":"shop"}} +{"game_state":{"state":7,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":4,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":0,"skips":2,"round":1,"round_scores":[],"blind_on_deck":"Small","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285723152,"function":{"arguments":{"action":"skip"},"name":"skip_or_select_blind"}} +{"game_state":{"state":7,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":4,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":1,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285723433,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":false,"name":"Big Blind"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"D_K","card":{"value":"King","name":"King of Diamonds","suit":"Diamonds"}},"sort_id":3816,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Diamonds","original_value":"King","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3815,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_T","card":{"value":"10","name":"10 of Hearts","suit":"Hearts"}},"sort_id":3831,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Hearts","original_value":"10","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_T","card":{"value":"10","name":"10 of Diamonds","suit":"Diamonds"}},"sort_id":3818,"base":{"id":10,"value":"10","nominal":10,"times_played":1,"name":"10 of Diamonds","original_value":"10","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_8","card":{"value":"8","name":"8 of Spades","suit":"Spades"}},"sort_id":3838,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Spades","original_value":"8","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_8","card":{"value":"8","name":"8 of Diamonds","suit":"Diamonds"}},"sort_id":3812,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Diamonds","original_value":"8","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_7","card":{"value":"7","name":"7 of Spades","suit":"Spades"}},"sort_id":3837,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Spades","original_value":"7","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_5","card":{"value":"5","name":"5 of Clubs","suit":"Clubs"}},"sort_id":3796,"base":{"id":5,"value":"5","nominal":5,"times_played":1,"name":"5 of Clubs","original_value":"5","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285724135,"function":{"arguments":{"action":"discard","cards":[2,4,6,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":3,"voucher":[],"discards_used":1,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":false,"name":"Big Blind"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"S_A","card":{"value":"Ace","name":"Ace of Spades","suit":"Spades"}},"sort_id":3840,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Spades","original_value":"Ace","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_K","card":{"value":"King","name":"King of Diamonds","suit":"Diamonds"}},"sort_id":3816,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Diamonds","original_value":"King","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3815,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_T","card":{"value":"10","name":"10 of Diamonds","suit":"Diamonds"}},"sort_id":3818,"base":{"id":10,"value":"10","nominal":10,"times_played":1,"name":"10 of Diamonds","original_value":"10","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_8","card":{"value":"8","name":"8 of Diamonds","suit":"Diamonds"}},"sort_id":3812,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Diamonds","original_value":"8","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_4","card":{"value":"4","name":"4 of Clubs","suit":"Clubs"}},"sort_id":3795,"base":{"id":4,"value":"4","nominal":4,"times_played":1,"name":"4 of Clubs","original_value":"4","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_3","card":{"value":"3","name":"3 of Hearts","suit":"Hearts"}},"sort_id":3820,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Hearts","original_value":"3","suit":"Hearts"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285724602,"function":{"arguments":{"action":"discard","cards":[5,6,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":2,"voucher":[],"discards_used":2,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":false,"name":"Big Blind"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"S_A","card":{"value":"Ace","name":"Ace of Spades","suit":"Spades"}},"sort_id":3840,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Spades","original_value":"Ace","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_A","card":{"value":"Ace","name":"Ace of Clubs","suit":"Clubs"}},"sort_id":3801,"base":{"id":14,"value":"Ace","nominal":11,"times_played":1,"name":"Ace of Clubs","original_value":"Ace","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_K","card":{"value":"King","name":"King of Diamonds","suit":"Diamonds"}},"sort_id":3816,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Diamonds","original_value":"King","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3815,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_T","card":{"value":"10","name":"10 of Spades","suit":"Spades"}},"sort_id":3844,"base":{"id":10,"value":"10","nominal":10,"times_played":1,"name":"10 of Spades","original_value":"10","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_T","card":{"value":"10","name":"10 of Diamonds","suit":"Diamonds"}},"sort_id":3818,"base":{"id":10,"value":"10","nominal":10,"times_played":1,"name":"10 of Diamonds","original_value":"10","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_8","card":{"value":"8","name":"8 of Diamonds","suit":"Diamonds"}},"sort_id":3812,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Diamonds","original_value":"8","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_7","card":{"value":"7","name":"7 of Clubs","suit":"Clubs"}},"sort_id":3798,"base":{"id":7,"value":"7","nominal":7,"times_played":1,"name":"7 of Clubs","original_value":"7","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285725019,"function":{"arguments":{"action":"discard","cards":[0,1,4,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":3,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":false,"name":"Big Blind"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"D_K","card":{"value":"King","name":"King of Diamonds","suit":"Diamonds"}},"sort_id":3816,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Diamonds","original_value":"King","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_Q","card":{"value":"Queen","name":"Queen of Hearts","suit":"Hearts"}},"sort_id":3830,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Hearts","original_value":"Queen","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3815,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_T","card":{"value":"10","name":"10 of Diamonds","suit":"Diamonds"}},"sort_id":3818,"base":{"id":10,"value":"10","nominal":10,"times_played":1,"name":"10 of Diamonds","original_value":"10","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_8","card":{"value":"8","name":"8 of Diamonds","suit":"Diamonds"}},"sort_id":3812,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Diamonds","original_value":"8","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_6","card":{"value":"6","name":"6 of Diamonds","suit":"Diamonds"}},"sort_id":3810,"base":{"id":6,"value":"6","nominal":6,"times_played":1,"name":"6 of Diamonds","original_value":"6","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_2","card":{"value":"2","name":"2 of Clubs","suit":"Clubs"}},"sort_id":3793,"base":{"id":2,"value":"2","nominal":2,"times_played":1,"name":"2 of Clubs","original_value":"2","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285725521,"function":{"arguments":{"action":"play_hand","cards":[0,2,3,4,5]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":632,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":0,"voucher_text":"","hands_played":4,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"boss":false,"name":"Big Blind"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"S_K","card":{"value":"King","name":"King of Spades","suit":"Spades"}},"sort_id":3842,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Spades","original_value":"King","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_K","card":{"value":"King","name":"King of Hearts","suit":"Hearts"}},"sort_id":3829,"base":{"id":13,"value":"King","nominal":10,"times_played":0,"name":"King of Hearts","original_value":"King","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_Q","card":{"value":"Queen","name":"Queen of Spades","suit":"Spades"}},"sort_id":3843,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Spades","original_value":"Queen","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_Q","card":{"value":"Queen","name":"Queen of Hearts","suit":"Hearts"}},"sort_id":3830,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Hearts","original_value":"Queen","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_J","card":{"value":"Jack","name":"Jack of Spades","suit":"Spades"}},"sort_id":3841,"base":{"id":11,"value":"Jack","nominal":10,"times_played":0,"name":"Jack of Spades","original_value":"Jack","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"C_J","card":{"value":"Jack","name":"Jack of Clubs","suit":"Clubs"}},"sort_id":3802,"base":{"id":11,"value":"Jack","nominal":10,"times_played":1,"name":"Jack of Clubs","original_value":"Jack","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"C_2","card":{"value":"2","name":"2 of Clubs","suit":"Clubs"}},"sort_id":3793,"base":{"id":2,"value":"2","nominal":2,"times_played":1,"name":"2 of Clubs","original_value":"2","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285727668,"function":{"arguments":{"action":"play_hand","cards":[0,1,4,5]},"name":"play_hand_or_discard"}} +{"game_state":{"state":8,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":2,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":2},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":10,"chips":1352,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":5,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[{"name":"D6 Tag","key":"tag_d_six"}],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285731551,"function":{"arguments":[],"name":"cash_out"}} +{"game_state":{"state":5,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":3,"config":{"center_key":"c_neptune"},"sell_cost":1,"facing":"front","label":"Neptune","ability":{"set":"Planet"},"debuff":false},{"highlighted":false,"cost":3,"config":{"center_key":"c_mars"},"sell_cost":1,"facing":"front","label":"Mars","ability":{"set":"Planet"},"debuff":false}]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":3,"hands_played":2},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":5,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Big","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[{"highlighted":false,"cost":4,"config":{"center_key":"p_standard_normal_1"},"sell_cost":2,"label":"Standard Pack","ability":{"set":"Booster"}},{"highlighted":false,"cost":4,"config":{"center_key":"p_standard_normal_3"},"sell_cost":2,"label":"Standard Pack","ability":{"set":"Booster"}}]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[{"highlighted":false,"cost":10,"config":{"center_key":"v_overstock_norm"},"sell_cost":5,"facing":"front","label":"Overstock","ability":{"set":"Voucher"},"debuff":false}]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285732084,"function":{"arguments":{"action":"next_round"},"name":"shop"}} +{"game_state":{"state":7,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":3,"hands_played":2},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":5,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"name":""},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":2,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[],"config":{"card_limit":8,"card_count":0,"highlighted_limit":5}}},"timestamp_ms":1753285732284,"function":{"arguments":{"action":"select"},"name":"skip_or_select_blind"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":4,"voucher":[],"discards_used":0,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":5,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"S_J","card":{"value":"Jack","name":"Jack of Spades","suit":"Spades"}},"sort_id":3841,"base":{"id":11,"value":"Jack","nominal":10,"times_played":1,"name":"Jack of Spades","original_value":"Jack","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_T","card":{"value":"10","name":"10 of Spades","suit":"Spades"}},"sort_id":3844,"base":{"id":10,"value":"10","nominal":10,"times_played":1,"name":"10 of Spades","original_value":"10","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_T","card":{"value":"10","name":"10 of Diamonds","suit":"Diamonds"}},"sort_id":3818,"base":{"id":10,"value":"10","nominal":10,"times_played":2,"name":"10 of Diamonds","original_value":"10","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_8","card":{"value":"8","name":"8 of Clubs","suit":"Clubs"}},"sort_id":3799,"base":{"id":8,"value":"8","nominal":8,"times_played":1,"name":"8 of Clubs","original_value":"8","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_5","card":{"value":"5","name":"5 of Clubs","suit":"Clubs"}},"sort_id":3796,"base":{"id":5,"value":"5","nominal":5,"times_played":1,"name":"5 of Clubs","original_value":"5","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_3","card":{"value":"3","name":"3 of Hearts","suit":"Hearts"}},"sort_id":3820,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Hearts","original_value":"3","suit":"Hearts"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285732976,"function":{"arguments":{"action":"discard","cards":[0,1,2,3,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":4,"discards_left":3,"voucher":[],"discards_used":1,"hands_played":0},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":0,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":5,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"D_Q","card":{"value":"Queen","name":"Queen of Diamonds","suit":"Diamonds"}},"sort_id":3817,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Diamonds","original_value":"Queen","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"S_9","card":{"value":"9","name":"9 of Spades","suit":"Spades"}},"sort_id":3839,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Spades","original_value":"9","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_3","card":{"value":"3","name":"3 of Hearts","suit":"Hearts"}},"sort_id":3820,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Hearts","original_value":"3","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_3","card":{"value":"3","name":"3 of Clubs","suit":"Clubs"}},"sort_id":3794,"base":{"id":3,"value":"3","nominal":3,"times_played":1,"name":"3 of Clubs","original_value":"3","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_2","card":{"value":"2","name":"2 of Spades","suit":"Spades"}},"sort_id":3832,"base":{"id":2,"value":"2","nominal":2,"times_played":0,"name":"2 of Spades","original_value":"2","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_2","card":{"value":"2","name":"2 of Clubs","suit":"Clubs"}},"sort_id":3793,"base":{"id":2,"value":"2","nominal":2,"times_played":1,"name":"2 of Clubs","original_value":"2","suit":"Clubs"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285733537,"function":{"arguments":{"action":"play_hand","cards":[4,5,6,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":3,"voucher":[],"discards_used":1,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":250,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":6,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3827,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_A","card":{"value":"Ace","name":"Ace of Diamonds","suit":"Diamonds"}},"sort_id":3814,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Diamonds","original_value":"Ace","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_Q","card":{"value":"Queen","name":"Queen of Diamonds","suit":"Diamonds"}},"sort_id":3817,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Diamonds","original_value":"Queen","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_T","card":{"value":"10","name":"10 of Clubs","suit":"Clubs"}},"sort_id":3805,"base":{"id":10,"value":"10","nominal":10,"times_played":1,"name":"10 of Clubs","original_value":"10","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_9","card":{"value":"9","name":"9 of Spades","suit":"Spades"}},"sort_id":3839,"base":{"id":9,"value":"9","nominal":9,"times_played":0,"name":"9 of Spades","original_value":"9","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_4","card":{"value":"4","name":"4 of Diamonds","suit":"Diamonds"}},"sort_id":3808,"base":{"id":4,"value":"4","nominal":4,"times_played":0,"name":"4 of Diamonds","original_value":"4","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285735440,"function":{"arguments":{"action":"discard","cards":[1,2,3,4,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":2,"voucher":[],"discards_used":2,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":250,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":6,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3827,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":true,"config":{"card_key":"C_A","card":{"value":"Ace","name":"Ace of Clubs","suit":"Clubs"}},"sort_id":3801,"base":{"id":14,"value":"Ace","nominal":11,"times_played":1,"name":"Ace of Clubs","original_value":"Ace","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_K","card":{"value":"King","name":"King of Clubs","suit":"Clubs"}},"sort_id":3803,"base":{"id":13,"value":"King","nominal":10,"times_played":1,"name":"King of Clubs","original_value":"King","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_8","card":{"value":"8","name":"8 of Spades","suit":"Spades"}},"sort_id":3838,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Spades","original_value":"8","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_8","card":{"value":"8","name":"8 of Hearts","suit":"Hearts"}},"sort_id":3825,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Hearts","original_value":"8","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_3","card":{"value":"3","name":"3 of Spades","suit":"Spades"}},"sort_id":3833,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Spades","original_value":"3","suit":"Spades"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285736002,"function":{"arguments":{"action":"discard","cards":[2,3,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":3,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":1},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":250,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":6,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"S_A","card":{"value":"Ace","name":"Ace of Spades","suit":"Spades"}},"sort_id":3840,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Spades","original_value":"Ace","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_A","card":{"value":"Ace","name":"Ace of Hearts","suit":"Hearts"}},"sort_id":3827,"base":{"id":14,"value":"Ace","nominal":11,"times_played":0,"name":"Ace of Hearts","original_value":"Ace","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_A","card":{"value":"Ace","name":"Ace of Clubs","suit":"Clubs"}},"sort_id":3801,"base":{"id":14,"value":"Ace","nominal":11,"times_played":1,"name":"Ace of Clubs","original_value":"Ace","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"S_K","card":{"value":"King","name":"King of Spades","suit":"Spades"}},"sort_id":3842,"base":{"id":13,"value":"King","nominal":10,"times_played":1,"name":"King of Spades","original_value":"King","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_8","card":{"value":"8","name":"8 of Hearts","suit":"Hearts"}},"sort_id":3825,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Hearts","original_value":"8","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":true,"config":{"card_key":"C_6","card":{"value":"6","name":"6 of Clubs","suit":"Clubs"}},"sort_id":3797,"base":{"id":6,"value":"6","nominal":6,"times_played":1,"name":"6 of Clubs","original_value":"6","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285736406,"function":{"arguments":{"action":"play_hand","cards":[0,1,2,3]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":2,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":2},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":822,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":7,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":true,"debuff":false,"config":{"card_key":"S_Q","card":{"value":"Queen","name":"Queen of Spades","suit":"Spades"}},"sort_id":3843,"base":{"id":12,"value":"Queen","nominal":10,"times_played":0,"name":"Queen of Spades","original_value":"Queen","suit":"Spades"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_J","card":{"value":"Jack","name":"Jack of Clubs","suit":"Clubs"}},"sort_id":3802,"base":{"id":11,"value":"Jack","nominal":10,"times_played":2,"name":"Jack of Clubs","original_value":"Jack","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_J","card":{"value":"Jack","name":"Jack of Diamonds","suit":"Diamonds"}},"sort_id":3815,"base":{"id":11,"value":"Jack","nominal":10,"times_played":1,"name":"Jack of Diamonds","original_value":"Jack","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_8","card":{"value":"8","name":"8 of Hearts","suit":"Hearts"}},"sort_id":3825,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Hearts","original_value":"8","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":true,"config":{"card_key":"C_6","card":{"value":"6","name":"6 of Clubs","suit":"Clubs"}},"sort_id":3797,"base":{"id":6,"value":"6","nominal":6,"times_played":1,"name":"6 of Clubs","original_value":"6","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"D_2","card":{"value":"2","name":"2 of Diamonds","suit":"Diamonds"}},"sort_id":3806,"base":{"id":2,"value":"2","nominal":2,"times_played":0,"name":"2 of Diamonds","original_value":"2","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285738157,"function":{"arguments":{"action":"play_hand","cards":[0,1,2,7]},"name":"play_hand_or_discard"}} +{"game_state":{"state":1,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":1,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":3},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":1062,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":8,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"H_T","card":{"value":"10","name":"10 of Hearts","suit":"Hearts"}},"sort_id":3831,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Hearts","original_value":"10","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_8","card":{"value":"8","name":"8 of Hearts","suit":"Hearts"}},"sort_id":3825,"base":{"id":8,"value":"8","nominal":8,"times_played":0,"name":"8 of Hearts","original_value":"8","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_8","card":{"value":"8","name":"8 of Diamonds","suit":"Diamonds"}},"sort_id":3812,"base":{"id":8,"value":"8","nominal":8,"times_played":1,"name":"8 of Diamonds","original_value":"8","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_7","card":{"value":"7","name":"7 of Hearts","suit":"Hearts"}},"sort_id":3824,"base":{"id":7,"value":"7","nominal":7,"times_played":0,"name":"7 of Hearts","original_value":"7","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_6","card":{"value":"6","name":"6 of Clubs","suit":"Clubs"}},"sort_id":3797,"base":{"id":6,"value":"6","nominal":6,"times_played":1,"name":"6 of Clubs","original_value":"6","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":false,"config":{"card_key":"H_5","card":{"value":"5","name":"5 of Hearts","suit":"Hearts"}},"sort_id":3822,"base":{"id":5,"value":"5","nominal":5,"times_played":0,"name":"5 of Hearts","original_value":"5","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":true,"debuff":true,"config":{"card_key":"C_4","card":{"value":"4","name":"4 of Clubs","suit":"Clubs"}},"sort_id":3795,"base":{"id":4,"value":"4","nominal":4,"times_played":1,"name":"4 of Clubs","original_value":"4","suit":"Clubs"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_3","card":{"value":"3","name":"3 of Diamonds","suit":"Diamonds"}},"sort_id":3807,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Diamonds","original_value":"3","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":8,"highlighted_limit":5}}},"timestamp_ms":1753285739903,"function":{"arguments":{"action":"play_hand","cards":[1,3,4,5,6]},"name":"play_hand_or_discard"}} +{"game_state":{"state":4,"shop_jokers":{"config":{"card_limit":2,"card_count":2},"cards":[]},"jokers":[{"config":{"center":{"effect":"Type Mult","_u":true,"set":"Joker","unlocked":true,"discovered":true,"pos":{"x":2,"y":0},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":6,"key":"j_jolly","_discovered_unlocked_overwritten":true,"rarity":1,"cost_mult":1,"config":{"type":"Pair","t_mult":8},"_d":false,"alerted":true,"_saved_d_u":true,"cost":3,"name":"Jolly Joker"}},"label":"Jolly Joker"},{"config":{"center":{"_u":true,"_saved_d_u":true,"unlocked":true,"discovered":true,"pos":{"x":2,"y":13},"blueprint_compat":true,"perishable_compat":true,"eternal_compat":true,"order":78,"key":"j_photograph","_discovered_unlocked_overwritten":true,"rarity":1,"cost":5,"config":{"extra":2},"name":"Photograph","alerted":true,"_d":false,"set":"Joker"}},"label":"Photograph"}],"game":{"used_vouchers":[],"current_round":{"hands_left":0,"discards_left":1,"voucher":[],"discards_used":3,"hands_played":4},"tarot_rate":4,"planet_rate":4,"playing_card_rate":0,"dollars":18,"chips":1262,"discount_percent":0,"interest_cap":25,"interest_amount":1,"inflation":0,"unused_discards":1,"voucher_text":"","hands_played":9,"bankrupt_at":0,"base_reroll_cost":5,"previous_round":[],"won":false,"seeded":true,"tags":[],"pseudorandom":[],"last_blind":{"boss":true,"name":"The Club"},"smods_version":"1.0.0~BETA-0706c","bosses_used":[],"round_bonus":[],"shop":[],"win_ante":8,"starting_params":[],"max_jokers":2,"skips":3,"round":3,"round_scores":[],"blind_on_deck":"Boss","probabilities":[],"stake":1,"uncommon_mod":1,"selected_back":{"name":"Red Deck"}},"shop_booster":{"config":{"card_limit":2,"card_count":2},"cards":[]},"shop_vouchers":{"config":{"card_limit":1,"card_count":1},"cards":[]},"hand":{"cards":[{"highlighted":false,"debuff":false,"config":{"card_key":"H_T","card":{"value":"10","name":"10 of Hearts","suit":"Hearts"}},"sort_id":3831,"base":{"id":10,"value":"10","nominal":10,"times_played":0,"name":"10 of Hearts","original_value":"10","suit":"Hearts"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_8","card":{"value":"8","name":"8 of Diamonds","suit":"Diamonds"}},"sort_id":3812,"base":{"id":8,"value":"8","nominal":8,"times_played":1,"name":"8 of Diamonds","original_value":"8","suit":"Diamonds"},"facing":"front","label":"Base Card"},{"highlighted":false,"debuff":false,"config":{"card_key":"D_3","card":{"value":"3","name":"3 of Diamonds","suit":"Diamonds"}},"sort_id":3807,"base":{"id":3,"value":"3","nominal":3,"times_played":0,"name":"3 of Diamonds","original_value":"3","suit":"Diamonds"},"facing":"front","label":"Base Card"}],"config":{"card_limit":8,"card_count":3,"highlighted_limit":5}}},"timestamp_ms":1753285742569,"function":{"arguments":[],"name":"go_to_menu"}} From 89512f84eb4ebd9d66df7d8e1b0386bb57b74dec Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Wed, 23 Jul 2025 17:08:46 -0500 Subject: [PATCH 17/17] computed reorder index --- src/lua/log.lua | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/src/lua/log.lua b/src/lua/log.lua index ae5f00e..ab5c084 100644 --- a/src/lua/log.lua +++ b/src/lua/log.lua @@ -228,19 +228,20 @@ function LOG.hook_hand_rearrange() end if order_changed then - -- TODO: compute the rearrangement from previous_order and current_order - -- and use as the arguments to the rearrange_hand API call - -- So remove previous_order and current_order and use cards - -- Then remove sendInfoMessage calls - local arguments = { - previous_order = previous_order, - current_order = current_order, - } - local name = "rearrange_hand" - sendInfoMessage("Hand rearranged - cards reordered", "LOG") - sendInfoMessage("Before: " .. json.encode(previous_order), "LOG") - sendInfoMessage("After: " .. json.encode(current_order), "LOG") - LOG.write(name, arguments) + -- Compute rearrangement to interpret the action + -- Map every card-id → its position in the old list + local lookup = {} + for pos, card_id in ipairs(previous_order) do + lookup[card_id] = pos - 1 -- zero-based for the API + end + + -- Walk the new order and translate + local cards = {} + for pos, card_id in ipairs(current_order) do + cards[pos] = lookup[card_id] + end + + LOG.write("rearrange_hand", { cards = cards }) end end