├── .gitignore ├── .vscode └── settings.json ├── LICENSE ├── README.md ├── docs ├── Agents.md ├── Insights.md └── WebSupport.md ├── logo.png ├── pom.xml ├── src ├── main │ └── java │ │ └── com │ │ └── sothatsit │ │ └── royalur │ │ ├── RoyalUrAnalysis.java │ │ ├── ai │ │ ├── CachedAgent.java │ │ ├── ExpectimaxAgent.java │ │ ├── FirstMoveAgent.java │ │ ├── GreedyAgent.java │ │ ├── LastMoveAgent.java │ │ ├── LikelihoodAgent.java │ │ ├── PandaAgent.java │ │ ├── RandomAgent.java │ │ ├── RemoteAgent.java │ │ ├── RoyalUrNetAgent.java │ │ └── utility │ │ │ ├── AlbanReinforcementUtilityFn.java │ │ │ ├── CanonicaliseWinsUtilityFn.java │ │ │ ├── PiecesAdvancedUtilityFn.java │ │ │ ├── PrioritiseCenterUtilityFn.java │ │ │ └── UtilityFunction.java │ │ ├── analysis │ │ ├── AgentStats.java │ │ ├── AgentType.java │ │ ├── Analyser.java │ │ ├── ConfiguredAgentType.java │ │ ├── GameSimulator.java │ │ ├── Main.java │ │ ├── reporting │ │ │ ├── ReportFormatter.java │ │ │ └── TableGenerator.java │ │ ├── targets │ │ │ ├── AlbanTarget.java │ │ │ ├── BenchmarkTarget.java │ │ │ ├── DataGatheringTarget.java │ │ │ ├── DiegoTarget.java │ │ │ ├── FirstMoveAdvantageTarget.java │ │ │ ├── LeaderboardTarget.java │ │ │ ├── LuckTarget.java │ │ │ ├── RemoteBenchmarkTarget.java │ │ │ ├── RoyalUrNetTarget.java │ │ │ ├── Target.java │ │ │ ├── TargetResult.java │ │ │ └── UtilityFnsTarget.java │ │ └── ui │ │ │ ├── AnalysisWindow.java │ │ │ └── BufferedCanvas.java │ │ ├── browser │ │ ├── MoveRequestPacket.java │ │ ├── MoveResponsePacket.java │ │ ├── PacketReader.java │ │ ├── PacketWriter.java │ │ ├── WasmMain.java │ │ └── api.js │ │ └── simulation │ │ ├── Agent.java │ │ ├── Board.java │ │ ├── Game.java │ │ ├── GameState.java │ │ ├── MoveList.java │ │ ├── Path.java │ │ ├── Player.java │ │ ├── Pos.java │ │ ├── Roll.java │ │ └── Tile.java └── test │ └── java │ └── com │ └── sothatsit │ └── royalur │ ├── BoardTest.java │ ├── GameTest.java │ ├── PathTest.java │ └── PosTest.java └── window.png /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .idea/ 3 | .llvm/ 4 | target/ 5 | RoyalUrAnalysis.iml 6 | *.txt 7 | *.csv -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/README.md -------------------------------------------------------------------------------- /docs/Agents.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/docs/Agents.md -------------------------------------------------------------------------------- /docs/Insights.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/docs/Insights.md -------------------------------------------------------------------------------- /docs/WebSupport.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/docs/WebSupport.md -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/logo.png -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/pom.xml -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/RoyalUrAnalysis.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/RoyalUrAnalysis.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/CachedAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/CachedAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/ExpectimaxAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/ExpectimaxAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/FirstMoveAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/FirstMoveAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/GreedyAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/GreedyAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/LastMoveAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/LastMoveAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/LikelihoodAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/LikelihoodAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/PandaAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/PandaAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/RandomAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/RandomAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/RemoteAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/RemoteAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/RoyalUrNetAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/RoyalUrNetAgent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/utility/AlbanReinforcementUtilityFn.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/utility/AlbanReinforcementUtilityFn.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/utility/CanonicaliseWinsUtilityFn.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/utility/CanonicaliseWinsUtilityFn.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/utility/PiecesAdvancedUtilityFn.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/utility/PiecesAdvancedUtilityFn.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/utility/PrioritiseCenterUtilityFn.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/utility/PrioritiseCenterUtilityFn.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/ai/utility/UtilityFunction.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/ai/utility/UtilityFunction.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/AgentStats.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/AgentStats.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/AgentType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/AgentType.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/Analyser.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/Analyser.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/ConfiguredAgentType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/ConfiguredAgentType.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/GameSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/GameSimulator.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/Main.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/reporting/ReportFormatter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/reporting/ReportFormatter.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/reporting/TableGenerator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/reporting/TableGenerator.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/AlbanTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/AlbanTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/BenchmarkTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/BenchmarkTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/DataGatheringTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/DataGatheringTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/DiegoTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/DiegoTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/FirstMoveAdvantageTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/FirstMoveAdvantageTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/LeaderboardTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/LeaderboardTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/LuckTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/LuckTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/RemoteBenchmarkTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/RemoteBenchmarkTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/RoyalUrNetTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/RoyalUrNetTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/Target.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/Target.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/TargetResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/TargetResult.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/targets/UtilityFnsTarget.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/targets/UtilityFnsTarget.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/ui/AnalysisWindow.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/ui/AnalysisWindow.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/analysis/ui/BufferedCanvas.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/analysis/ui/BufferedCanvas.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/browser/MoveRequestPacket.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/browser/MoveRequestPacket.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/browser/MoveResponsePacket.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/browser/MoveResponsePacket.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/browser/PacketReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/browser/PacketReader.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/browser/PacketWriter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/browser/PacketWriter.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/browser/WasmMain.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/browser/WasmMain.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/browser/api.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/browser/api.js -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Agent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Agent.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Board.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Board.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Game.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Game.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/GameState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/GameState.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/MoveList.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/MoveList.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Path.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Path.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Player.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Player.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Pos.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Pos.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Roll.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Roll.java -------------------------------------------------------------------------------- /src/main/java/com/sothatsit/royalur/simulation/Tile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/main/java/com/sothatsit/royalur/simulation/Tile.java -------------------------------------------------------------------------------- /src/test/java/com/sothatsit/royalur/BoardTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/test/java/com/sothatsit/royalur/BoardTest.java -------------------------------------------------------------------------------- /src/test/java/com/sothatsit/royalur/GameTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/test/java/com/sothatsit/royalur/GameTest.java -------------------------------------------------------------------------------- /src/test/java/com/sothatsit/royalur/PathTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/test/java/com/sothatsit/royalur/PathTest.java -------------------------------------------------------------------------------- /src/test/java/com/sothatsit/royalur/PosTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/src/test/java/com/sothatsit/royalur/PosTest.java -------------------------------------------------------------------------------- /window.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyalUr/RoyalUr-Analysis/HEAD/window.png --------------------------------------------------------------------------------