""" ТУРНИРНЫЙ РЕЖИМ БАЛАНСА Для соревнований """ from game_balance.test_balance.standard_mode import StandardBalance class TournamentBalance(StandardBalance): """Турнирный режим""" @classmethod def get_assets_config(cls): config = super().get_assets_config() # Балансировка цен price_adjustments = { 'gov_bonds': 1.0, 'stock_gazprom': 0.8, 'stock_sberbank': 0.8, 'apartment_small': 0.7, 'apartment_elite': 0.6, 'bitcoin': 1.2, 'oil': 1.0, 'coffee_shop': 0.8, 'it_startup': 1.0, 'shopping_mall': 0.5, 'oil_field': 0.4, } for asset_id, multiplier in price_adjustments.items(): if asset_id in config and config[asset_id].get('base_price'): config[asset_id]['base_price'] *= multiplier return config @classmethod def get_players_config(cls): config = super().get_players_config() config['STARTING_CAPITAL'] = 500000 config['TARGET_CAPITAL'] = 100000000 # Жесткие ограничения против монополий config['MAX_ASSETS_PER_TYPE'] = { 'bonds': 0.5, 'stocks': 0.3, 'real_estate': 0.4, 'crypto': 0.5, 'commodities': 0.3, 'business': 0.4, 'unique': 0.5, } # Быстрый старт config['PURCHASE_LIMITS_BY_MONTH'] = { 1: 0.5, 2: 1.0, } return config @classmethod def get_economy_config(cls): config = super().get_economy_config() # Высокие налоги config['TAX_SYSTEM']['income_tax'] = [ {'threshold': 0, 'rate': 0.00}, {'threshold': 100000, 'rate': 0.15}, {'threshold': 500000, 'rate': 0.25}, {'threshold': 2000000, 'rate': 0.35}, {'threshold': 5000000, 'rate': 0.45}, ] config['TAX_SYSTEM']['wealth_tax']['rate'] = 0.02 config['TAX_SYSTEM']['transaction_fee'] = 0.02 # Высокие ставки config['LOAN_SYSTEM']['interest_rates']['standard'] = 0.08 # Высокая инфляция config['MACROECONOMICS']['base_inflation'] = 0.01 return config