Spaces:
Sleeping
Sleeping
File size: 1,382 Bytes
23878c4 acb2712 23878c4 acb2712 23878c4 3d60dc7 23878c4 f2aa0c0 23878c4 3d60dc7 23878c4 f2aa0c0 23878c4 f2aa0c0 23878c4 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | """
core — Pure game engine for the Nation Simulator.
No framework dependencies. The entire game can be run with::
from core import NationGame
game = NationGame(seed=42)
obs = game.reset()
allocations = {name: baseline * 1.3 for name, baseline in game.config.SECTOR_BASELINES.items()}
result = game.step(allocations)
print(result.reward.total, result.done)
"""
from .config import DEFAULT_CONFIG, GameConfig
from .events import Event, EventEngine
from .game import NationGame, StepResult
from .parliament import (
DebateMessage,
ParliamentRoundState,
Proposal,
ResolutionResult,
VoteRecord,
)
from .population import PopulationTracker
from .productivity import ProductivityTracker
from .revenue import calculate_revenue, compute_thresholds, revenue_factor
from .reward import RewardBreakdown, RewardResult, compute_reward
from .sector import Sector
from .treasury import Treasury
__all__ = [
"NationGame",
"StepResult",
"ParliamentRoundState",
"Proposal",
"VoteRecord",
"DebateMessage",
"ResolutionResult",
"GameConfig",
"DEFAULT_CONFIG",
"Sector",
"Treasury",
"EventEngine",
"Event",
"ProductivityTracker",
"PopulationTracker",
"revenue_factor",
"calculate_revenue",
"compute_thresholds",
"compute_reward",
"RewardBreakdown",
"RewardResult",
]
|