Add files not via upload

This commit is contained in:
Emik 2026-06-04 17:41:55 +02:00
parent fd28cc71d3
commit 246392d8fa
Signed by: emik
GPG key ID: 6B0CD72A5E503BDF
8 changed files with 278 additions and 0 deletions

171
.editorconfig Normal file
View file

@ -0,0 +1,171 @@
# see https://github.com/CppCXY/EmmyLuaCodeStyle
[*.lua]
# [basic]
# optional space/tab
indent_style = space
# if indent_style is space, this is valid
indent_size = 4
# if indent_style is tab, this is valid
tab_width = 4
# none/single/double
quote_style = double
continuation_indent = 4
## extend option
# continuation_indent.before_block = 4
# continuation_indent.in_expr = 4
# continuation_indent.in_table = 4
# this mean utf8 length , if this is 'unset' then the line width is no longer checked
# this option decides when to chopdown the code
max_line_length = 120
# optional crlf/lf/cr/auto, if it is 'auto', in windows it is crlf other platforms are lf
# in neovim the value 'auto' is not a valid option, please use 'unset'
end_of_line = lf
# none/ comma / semicolon / only_kv_colon
table_separator_style = none
#optional keep/never/always/smart
trailing_table_separator = smart
# keep/remove/remove_table_only/remove_string_only
call_arg_parentheses = keep
detect_end_of_line = false
# this will check text end with new line
insert_final_newline = true
# [space]
space_around_table_field_list = false
space_before_attribute = false
space_before_function_open_parenthesis = false
space_before_function_call_open_parenthesis = false
space_before_closure_open_parenthesis = false
# optional always/only_string/only_table/none
# or true/false
space_before_function_call_single_arg = always
## extend option
## always/keep/none
# space_before_function_call_single_arg.table = always
## always/keep/none
# space_before_function_call_single_arg.string = always
space_before_open_square_bracket = false
space_inside_function_call_parentheses = false
space_inside_function_param_list_parentheses = false
space_inside_square_brackets = false
# like t[#t+1] = 1
space_around_table_append_operator = false
ignore_spaces_inside_function_call = false
# detail number or 'keep'
space_before_inline_comment = 1
# convert '---' to '--- ' or '--' to '-- '
space_after_comment_dash = false
# [operator space]
space_around_math_operator = true
# space_around_math_operator.exponent = false
space_after_comma = true
space_after_comma_in_for_statement = true
# true/false or none/always/no_space_asym
space_around_concat_operator = true
space_around_logical_operator = true
# true/false or none/always/no_space_asym
space_around_assign_operator = true
# [align]
align_call_args = false
align_function_params = true
# true/false or always
align_continuous_assign_statement = true
align_continuous_rect_table_field = true
align_continuous_line_space = 2
align_if_branch = false
# option none / always / contain_curly/
align_array_table = true
align_continuous_similar_call_args = false
align_continuous_inline_comment = true
# option none / always / only_call_stmt
align_chain_expr = none
# [indent]
never_indent_before_if_condition = false
never_indent_comment_on_if_branch = false
keep_indents_on_empty_lines = false
allow_non_indented_comments = false
# [line space]
# The following configuration supports four expressions
# keep
# fixed(n)
# min(n)
# max(n)
# for eg. min(2)
line_space_after_if_statement = fixed(2)
line_space_after_do_statement = fixed(2)
line_space_after_while_statement = fixed(2)
line_space_after_repeat_statement = fixed(2)
line_space_after_for_statement = fixed(2)
line_space_after_local_or_assign_statement = max(2)
line_space_after_function_statement = fixed(2)
line_space_after_expression_statement = max(2)
line_space_after_comment = fixed(1)
line_space_around_block = fixed(1)
# [line break]
break_all_list_when_line_exceed = false
auto_collapse_lines = false
break_before_braces = false
# [preference]
ignore_space_after_colon = false
remove_call_expression_list_finish_comma = true
# keep / always / same_line / replace_with_newline / never
end_statement_with_semicolon = replace_with_newline

BIN
assets/1x/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
assets/2x/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

81
lovely.toml Normal file
View file

@ -0,0 +1,81 @@
[manifest]
version = "1.0.0"
dump_lua = true
priority = 0
[[patches]]
[patches.pattern]
target = '=[SMODS Multiplayer "ui/main_menu/play_button/ruleset_selection.lua"]'
pattern = '{ button_id = "experimental_ruleset_button", button_localize_key = "k_experimental_standard" },'
position = "before"
payload = '{ button_id = "walledgarden_ruleset_button", button_localize_key = "k_walledgarden" },'
match_indent = true
[[patches]]
[patches.pattern]
target = '=[SMODS Multiplayer "localization/en-us.lua"]'
pattern = 'k_experimental_standard = "Experimental (Standard)",'
position = "before"
payload = """k_walledgarden = "Walled Garden",
k_walledgarden_description = "Personal ruleset for modded Balatro.","""
match_indent = true
[[patches]]
[patches.copy]
target = '=[SMODS Multiplayer "rulesets/experimental/experimental.lua"]'
position = "prepend"
payload = """
sendInfoMessage("Attempting to register the Walled Garden ruleset...", "WalledGarden");
-- for k, v in pairs(G.P_CENTERS) do
-- local _ = not k:find "experimental" and
-- not k:find "sandbox" and
-- k:find "j_" and
-- ({jane = true, Multiplayer = true})[v.mod.id] and
-- table.insert(banned.jokers, k)
-- end
(function()
local banned = {
tags = {"tag_Bakery_DownTag"},
consumables = {"c_Bakery_Scribe", "c_mp_asteroid"},
vouchers = {"v_jane_token_voucher", "v_jane_token_voucher_plus"},
jokers = {
"j_chicot",
"j_luchador",
"j_jane_escapey",
"j_jane_spearmaster",
"j_jane_survivor",
"j_jane_rot",
"j_jane_maxie",
"j_jane_honey",
"j_mp_conjoined_joker",
"j_mp_skip_off",
"j_jane_artificer",
"j_jane_monk",
"j_jane_betmma",
"j_mp_pacifist",
"j_mp_lets_go_gambling",
"j_jane_hunter",
"j_mp_pizza",
"j_jane_saint",
"j_jane_oxy",
"j_jane_rivulet",
"j_mp_taxes",
"j_jane_gourmand",
"j_mp_penny_pincher",
"j_mp_defensive_joker",
"j_mp_speedrun",
},
}
local ruleset = {key = "walledgarden", layers = {"standard"}}
for k, v in pairs(banned) do
ruleset["banned_" .. k] = v
end
MP.Ruleset(ruleset):inject()
sendInfoMessage("Successfully registered \\"Walled Garden\\" as a ruleset under the Experimental tab!", "WalledGarden")
end)()
"""
match_indent = true

23
manifest.json Normal file
View file

@ -0,0 +1,23 @@
{
"priority": 10000001,
"version": "1.0.0",
"id": "WalledGarden",
"name": "WalledGarden",
"icon_path": "icon.png",
"badge_colour": "8BE9FD",
"prefix": "WalledGarden",
"badge_text_colour": "FFFFFF",
"display_name": "Walled Garden",
"description": "Personal ruleset for modded Balatro.",
"provides": [],
"conflicts": [],
"author": [
"Emik"
],
"dependencies": [
"Steamodded (>=1.0.0~BETA-1221a)",
"Lovely (>=0.8)",
"Balatro (>=1.0.1o)",
"Multiplayer (>=0.4.0~*)"
]
}

1
refs/BalatroMultiplayer Symbolic link
View file

@ -0,0 +1 @@
../../BalatroMultiplayer/

1
refs/dump Symbolic link
View file

@ -0,0 +1 @@
../../lovely/dump/

1
refs/lsp_def Symbolic link
View file

@ -0,0 +1 @@
../../smods/lsp_def/