mirror of
https://github.com/kolbytn/mindcraft.git
synced 2025-08-02 13:25:31 +02:00
fix evaluation script bug
This commit is contained in:
parent
2aca2730ac
commit
7e7f893cf3
4 changed files with 14 additions and 18 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -18,4 +18,5 @@ wandb/
|
|||
experiments/
|
||||
andy_*.json
|
||||
jill_*.json
|
||||
src/models/logs/*
|
||||
src/models/logs/*
|
||||
server_data*
|
|
@ -126,7 +126,7 @@ def launch_parallel_experiments(task_path,
|
|||
task_ids = list(task_ids)
|
||||
task_ids_split = [task_ids[i::num_parallel] for i in range(num_parallel)]
|
||||
|
||||
servers = create_server_files("../server_data/", num_parallel, world_name=world_name)
|
||||
servers = create_server_files("./server_data/", num_parallel, world_name=world_name)
|
||||
date_time = datetime.now().strftime("%m-%d_%H-%M")
|
||||
experiments_folder = f"experiments/{exp_name}_{date_time}"
|
||||
exp_name = f"{exp_name}_{date_time}"
|
||||
|
@ -292,7 +292,7 @@ def create_server_files(source_path, num_copies, world_name="Forest"):
|
|||
print(num_copies)
|
||||
servers = []
|
||||
for i in range(num_copies):
|
||||
dest_path = f"../server_data_{i}/"
|
||||
dest_path = f"./server_data_{i}/"
|
||||
copy_server_files(source_path, dest_path)
|
||||
print(dest_path)
|
||||
edit_file(dest_path + "server.properties", {"server-port": 55916 + i,
|
||||
|
@ -319,7 +319,7 @@ def edit_file(file, content_dict):
|
|||
def clean_up_server_files(num_copies):
|
||||
"""Delete server files from multiple locations."""
|
||||
for i in range(num_copies):
|
||||
dest_path = f"../server_data_{i}/"
|
||||
dest_path = f"./server_data_{i}/"
|
||||
delete_server_files(dest_path)
|
||||
|
||||
def copy_server_files(source_path, dest_path):
|
||||
|
@ -338,7 +338,7 @@ def delete_server_files(dest_path):
|
|||
except Exception as e:
|
||||
print(f"Error deleting server files: {e}")
|
||||
|
||||
def launch_world(server_path="../server_data/", agent_names=["andy", "jill"], session_name="server"):
|
||||
def launch_world(server_path="./server_data/", agent_names=["andy", "jill"], session_name="server"):
|
||||
"""Launch the Minecraft world."""
|
||||
print(server_path)
|
||||
cmd = f"cd {server_path} && java -jar server.jar"
|
||||
|
@ -406,7 +406,7 @@ def main():
|
|||
parser.add_argument('--world_name', default="Forest", help='Name of the world')
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
|
||||
try:
|
||||
subprocess.run(['tmux', 'kill-server'], check=True)
|
||||
except:
|
||||
|
|
|
@ -556,13 +556,6 @@ export class Agent {
|
|||
|
||||
cleanKill(msg='Killing agent process...', code=1) {
|
||||
this.history.add('system', msg);
|
||||
|
||||
if (code === 2 || code === 3 || code === 4) {
|
||||
this.bot.chat('Exiting the world permanently.');
|
||||
}
|
||||
else {
|
||||
this.bot.chat('Restarting.')
|
||||
}
|
||||
this.bot.chat(code > 1 ? 'Restarting.': 'Exiting.');
|
||||
this.history.save();
|
||||
process.exit(code);
|
||||
|
@ -571,7 +564,7 @@ export class Agent {
|
|||
if (this.task.data) {
|
||||
let res = this.task.isDone();
|
||||
if (res) {
|
||||
await this.history.add('system', `${res.message} ended with code : ${res.code}`);
|
||||
await this.history.add('system', `Task ended with score : ${res.score}`);
|
||||
await this.history.save();
|
||||
console.log('Task finished:', res.message);
|
||||
this.killAll();
|
||||
|
|
|
@ -128,9 +128,13 @@ class CookingCraftingTaskValidator {
|
|||
}
|
||||
validate() {
|
||||
const result = checkItemPresence(this.data, this.agent);
|
||||
let score = 0;
|
||||
if (result.success) {
|
||||
score = 1;
|
||||
}
|
||||
return {
|
||||
"valid": result.success,
|
||||
"score": result.success ? 1 : 0,
|
||||
"score": score,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -279,7 +283,6 @@ export class Task {
|
|||
await new Promise((resolve) => setTimeout(resolve, 3000));
|
||||
|
||||
if (this.data.initial_inventory) {
|
||||
console.log("\n\n\n\n\n")
|
||||
console.log("Setting inventory...");
|
||||
let initialInventory = {};
|
||||
|
||||
|
@ -290,7 +293,6 @@ export class Task {
|
|||
} else {
|
||||
initialInventory = this.data.initial_inventory;
|
||||
console.log("Initial inventory:", initialInventory);
|
||||
console.log("\n\n\n\n");
|
||||
}
|
||||
console.log(this.data.initial_inventory);
|
||||
|
||||
|
@ -343,7 +345,7 @@ export class Task {
|
|||
}
|
||||
|
||||
async teleportBots() {
|
||||
console.log('\n\n\n\n\nTeleporting bots');
|
||||
console.log('\n\nTeleporting bots');
|
||||
function getRandomOffset(range) {
|
||||
return Math.floor(Math.random() * (range * 2 + 1)) - range;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue