From a96424cf8a90aa93edcf4e9ff11fc54800ea1b9e Mon Sep 17 00:00:00 2001 From: Justin Worthe Date: Sat, 21 Jul 2018 20:40:40 +0200 Subject: Simplified duration handling to allow longer profiling --- src/bin/perf-test.rs | 5 +++-- src/engine/constants.rs | 11 +++++++++++ src/main.rs | 12 ++---------- 3 files changed, 16 insertions(+), 12 deletions(-) (limited to 'src') diff --git a/src/bin/perf-test.rs b/src/bin/perf-test.rs index d4eae32..8d6a490 100644 --- a/src/bin/perf-test.rs +++ b/src/bin/perf-test.rs @@ -3,6 +3,7 @@ extern crate time; use time::{PreciseTime, Duration}; use zombot::*; +use zombot::engine::constants::*; const STATE_PATH: &str = "tests/state0.json"; @@ -22,7 +23,7 @@ fn _expressive() { process::exit(1); } }; - let max_time = Duration::milliseconds(1950); + let max_time = Duration::milliseconds(MAX_TIME_MILLIS); strategy::monte_carlo::choose_move(&settings, &state, &start_time, max_time); } @@ -36,6 +37,6 @@ fn bitwise() { process::exit(1); } }; - let max_time = Duration::milliseconds(1950); + let max_time = Duration::milliseconds(MAX_TIME_MILLIS); strategy::monte_carlo::choose_move(&settings, &state, &start_time, max_time); } diff --git a/src/engine/constants.rs b/src/engine/constants.rs index 9805f72..8453a54 100644 --- a/src/engine/constants.rs +++ b/src/engine/constants.rs @@ -27,3 +27,14 @@ pub const ENERGY_PRICE: u16 = 20; pub const ENERGY_CONSTRUCTION_TIME: u8 = 1; pub const DECONSTRUCT_ENERGY: u16 = 5; + + +#[cfg(not(feature = "reduced-time"))] +#[cfg(not(feature = "extended-time"))] +pub const MAX_TIME_MILLIS: i64 = 1950; + +#[cfg(feature = "reduced-time")] +pub const MAX_TIME_MILLIS: i64 = 950; + +#[cfg(feature = "extended-time")] +pub const MAX_TIME_MILLIS: i64 = 19950; diff --git a/src/main.rs b/src/main.rs index 752e8b9..0235d5f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -3,6 +3,7 @@ extern crate time; use time::{PreciseTime, Duration}; use zombot::*; +use zombot::engine::constants::*; use zombot::engine::command::Command; use std::error::Error; @@ -16,16 +17,7 @@ use std::io::prelude::*; use std::process; fn choose_move(settings: &engine::settings::GameSettings, state: &GS, start_time: &PreciseTime) -> Command { - #[cfg(not(feature = "reduced-time"))] - #[cfg(not(feature = "extended-time"))] - let max_time = Duration::milliseconds(1950); - - #[cfg(feature = "reduced-time")] - let max_time = Duration::milliseconds(950); - - #[cfg(feature = "extended-time")] - let max_time = Duration::milliseconds(19950); - + let max_time = Duration::milliseconds(MAX_TIME_MILLIS); strategy::monte_carlo::choose_move(settings, state, start_time, max_time) } -- cgit v1.2.3