mirror of
https://github.com/kolbytn/mindcraft.git
synced 2025-09-10 12:02:59 +02:00
Merge branch 'main' into cleanup
This commit is contained in:
commit
6dc5c6401a
19 changed files with 19087 additions and 3560 deletions
|
@ -75,7 +75,6 @@ def extract_result(folder_path):
|
|||
# assert len(json_files) == 2, f"Expected 2 json files in {folder_name}, found {len(json_files)}"
|
||||
|
||||
if not json_files:
|
||||
print(f"No JSON files found in {folder_name}")
|
||||
return None
|
||||
else:
|
||||
outcome = False
|
||||
|
@ -193,9 +192,10 @@ def launch_parallel_experiments(task_path,
|
|||
s3=False,
|
||||
bucket_name="mindcraft-experiments",
|
||||
template_profile="profiles/tasks/collab_profile.json",
|
||||
world_name="Forest",
|
||||
insecure_coding=False,
|
||||
url="http://127.0.0.1:8000/v1"):
|
||||
url="http://127.0.0.1:8000/v1",
|
||||
max_messages=15,
|
||||
num_examples=2):
|
||||
|
||||
with open(task_path, 'r', encoding='utf-8') as file:
|
||||
content = file.read()
|
||||
|
@ -210,6 +210,13 @@ 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)]
|
||||
|
||||
if task_type == "cooking":
|
||||
world_name = "Superflat"
|
||||
elif task_type == "techtree":
|
||||
world_name = "Forest"
|
||||
elif task_type == "construction":
|
||||
world_name = "Superflat"
|
||||
|
||||
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}"
|
||||
|
@ -221,7 +228,7 @@ def launch_parallel_experiments(task_path,
|
|||
else:
|
||||
task_path_name = "tasks"
|
||||
|
||||
s3_path = f"{bucket_name}/{task_type}/{model}/{task_path_name}/{exp_name}/"
|
||||
s3_path = f"{bucket_name}/{task_type}/{model}/{task_path_name}/{exp_name}"
|
||||
|
||||
# start wandb
|
||||
os.makedirs(experiments_folder, exist_ok=True)
|
||||
|
@ -241,7 +248,9 @@ def launch_parallel_experiments(task_path,
|
|||
num_agents=num_agents,
|
||||
url=url,
|
||||
task_type=task_type,
|
||||
s3_path=s3_path)
|
||||
s3_path=s3_path,
|
||||
max_messages=max_messages,
|
||||
num_examples=num_examples)
|
||||
time.sleep(5)
|
||||
|
||||
total_num_tasks = len(task_ids)
|
||||
|
@ -252,13 +261,23 @@ def launch_parallel_experiments(task_path,
|
|||
total_run = results["total"]
|
||||
print(f"Total tasks run: {total_run}/{total_num_experiments}")
|
||||
print(results)
|
||||
results["exp_name"] = exp_name
|
||||
results["template_profile"] = template_profile
|
||||
results["model"] = model
|
||||
results["api"] = api
|
||||
results["num_agents"] = num_agents
|
||||
results["task_path"] = task_path
|
||||
results["task_type"] = task_type
|
||||
results["max_messages"] = max_messages
|
||||
results["num_examples"] = num_examples
|
||||
with open(f"{experiments_folder}/results.txt", "w") as file:
|
||||
file.write(str(results))
|
||||
if s3:
|
||||
s3 = boto3.client('s3')
|
||||
s3.upload_file(f"{experiments_folder}/results.txt", bucket_name, s3_path)
|
||||
cmd = f"aws s3 cp {experiments_folder}/results.txt s3://{s3_path}/results.txt"
|
||||
print(cmd)
|
||||
subprocess.run(cmd.split())
|
||||
|
||||
time.sleep(15)
|
||||
time.sleep(60)
|
||||
|
||||
def launch_server_experiment(task_path,
|
||||
task_ids,
|
||||
|
@ -275,7 +294,10 @@ def launch_server_experiment(task_path,
|
|||
insecure_coding=False,
|
||||
url="http://127.0.0.1:8000/v1",
|
||||
task_type="techtree",
|
||||
s3_path=""):
|
||||
s3_path="",
|
||||
max_messages=15,
|
||||
num_examples=2):
|
||||
|
||||
"""
|
||||
Launch a Minecraft server and run experiments on it.
|
||||
@param task_path: Path to the task file
|
||||
|
@ -333,17 +355,10 @@ def launch_server_experiment(task_path,
|
|||
set_environment_variable_tmux_session(session_name, "MINECRAFT_PORT", server_port)
|
||||
set_environment_variable_tmux_session(session_name, "MINDSERVER_PORT", mindserver_port)
|
||||
set_environment_variable_tmux_session(session_name, "PROFILES", agent_profiles_str)
|
||||
set_environment_variable_tmux_session(session_name, "MAX_MESSAGES", str(max_messages))
|
||||
set_environment_variable_tmux_session(session_name, "NUM_EXAMPLES", str(num_examples))
|
||||
if insecure_coding:
|
||||
set_environment_variable_tmux_session(session_name, "INSECURE_CODING", "true")
|
||||
|
||||
# you need to add the bots to the world first before you can add them as op
|
||||
# cmd = f"node main.js --task_path example_tasks.json --task_id debug_{num_agents}_agent_timeout"
|
||||
|
||||
# subprocess.run(["tmux", "send-keys", "-t", session_name, cmd, "C-m"])
|
||||
|
||||
# time.sleep(40)
|
||||
|
||||
# subprocess.run(["tmux", "send-keys", "-t", "server_" + session_name, f"/op @a", "C-m"])
|
||||
make_ops(agent_names, session_name)
|
||||
|
||||
# add the bots as op
|
||||
|
@ -356,9 +371,6 @@ def launch_server_experiment(task_path,
|
|||
set_environment_variable_tmux_session(session_name, "BLOCKED_ACTIONS", BLOCKED_ACTIONS_CRAFTING)
|
||||
elif task_type == "construction":
|
||||
set_environment_variable_tmux_session(session_name, "BLOCKED_ACTIONS", BLOCKED_ACTIONS_CONSTRUCTION)
|
||||
|
||||
|
||||
|
||||
|
||||
script_content = ""
|
||||
for task_id in task_ids:
|
||||
|
@ -569,8 +581,6 @@ def test_server_running(port=55916):
|
|||
print("Server is not running on port 55916")
|
||||
return False
|
||||
|
||||
|
||||
|
||||
def kill_world(session_name="server"):
|
||||
"""Kill the Minecraft world."""
|
||||
subprocess.run(["tmux", "send-keys", "-t", session_name, "stop", "C-m"])
|
||||
|
@ -615,7 +625,6 @@ def main():
|
|||
|
||||
parser = argparse.ArgumentParser(description='Run Minecraft AI agent experiments')
|
||||
parser.add_argument('--task_path', default="multiagent_crafting_tasks.json", help='Path to the task file')
|
||||
parser.add_argument('--task_id', default=None, help='ID of the task to run')
|
||||
parser.add_argument('--num_agents', default=2, type=int, help='Number of agents to run')
|
||||
parser.add_argument('--num_exp', default=1, type=int, help='Number of experiments to run')
|
||||
parser.add_argument('--num_parallel', default=1, type=int, help='Number of parallel servers to run')
|
||||
|
@ -626,9 +635,11 @@ def main():
|
|||
parser.add_argument('--template_profile', default="profiles/tasks/collab_profile.json", help='Model to use for the agents')
|
||||
parser.add_argument('--model', default="gpt-4o-mini", help='Model to use for the agents')
|
||||
parser.add_argument('--api', default="openai", help='API to use for the agents')
|
||||
parser.add_argument('--world_name', default="Forest", help='Name of the world')
|
||||
# parser.add_argument('--world_name', default="Forest", help='Name of the world')
|
||||
parser.add_argument('--insecure_coding', action='store_true', help='Enable insecure coding')
|
||||
parser.add_argument('--url', default="http://127.0.0.1:8000/v1")
|
||||
parser.add_argument('--max_messages', default=15, type=int, help='Maximum number of messages before summarizing')
|
||||
parser.add_argument('--num_examples', default=2, type=int, help='Maximum number of turns before summarizing')
|
||||
|
||||
args = parser.parse_args()
|
||||
print(args)
|
||||
|
@ -642,21 +653,21 @@ def main():
|
|||
clean_up_server_files(args.num_parallel)
|
||||
if args.add_keys:
|
||||
update_keys_json()
|
||||
if args.task_id is None:
|
||||
launch_parallel_experiments(args.task_path,
|
||||
num_exp=args.num_exp,
|
||||
exp_name=args.exp_name,
|
||||
num_parallel=args.num_parallel,
|
||||
s3=args.s3,
|
||||
bucket_name=args.bucket_name,
|
||||
template_profile=args.template_profile,
|
||||
model=args.model,
|
||||
api=args.api,
|
||||
world_name=args.world_name,
|
||||
insecure_coding=args.insecure_coding,
|
||||
num_agents=args.num_agents,
|
||||
url=args.url)
|
||||
cmd = "aws s3"
|
||||
|
||||
launch_parallel_experiments(args.task_path,
|
||||
num_exp=args.num_exp,
|
||||
exp_name=args.exp_name,
|
||||
num_parallel=args.num_parallel,
|
||||
s3=args.s3,
|
||||
bucket_name=args.bucket_name,
|
||||
template_profile=args.template_profile,
|
||||
model=args.model,
|
||||
api=args.api,
|
||||
insecure_coding=args.insecure_coding,
|
||||
num_agents=args.num_agents,
|
||||
url=args.url,
|
||||
max_messages=args.max_messages,
|
||||
num_examples=args.num_examples)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
47
profiles/tasks/collab_thinking_model_profile.json
Normal file
47
profiles/tasks/collab_thinking_model_profile.json
Normal file
|
@ -0,0 +1,47 @@
|
|||
{
|
||||
"name": "andy",
|
||||
"model": "gpt-4o",
|
||||
"modes": {
|
||||
"hunting": false
|
||||
},
|
||||
"conversing": "You are a playful Minecraft bot named $NAME that can converse with players, see, move, mine, build, and interact with the world by using commands.\n$SELF_PROMPT Act human-like as if you were a typical Minecraft player, rather than an AI. Be very brief in your responses, don't apologize constantly, don't give instructions or make lists unless asked, and don't refuse requests. Don't pretend to act, use commands immediately when requested. Do NOT say this: 'Sure, I've stopped.', instead say this: 'Sure, I'll stop. !stop'. Do NOT say this: 'On my way! Give me a moment.', instead say this: 'On my way! !goToPlayer(\"playername\", 3)'. Respond only as $NAME, never output '(FROM OTHER BOT)' or pretend to be someone else. If you have nothing to say or do, respond with an just a tab '\t'. Share resources and information with other bots! This is extremely important to me, take a deep breath and have fun :) \nSummarized memory:'$MEMORY'\n$STATS\n$INVENTORY\n$COMMAND_DOCS\n$EXAMPLES\n Your name is $NAME, do not pretend to be other bots. You are in a conversation by default do not use ! Do not make lists unless asked. I will be extremely dissapointed if you give instructions instead of responding as if you are in a conversation. Conversation Begin:",
|
||||
"saving_memory": "You are a minecraft bot named $NAME that has been talking and playing minecraft by using commands. Update your memory by summarizing the following conversation and your old memory in your next response. Prioritize preserving important facts, things you've learned, useful tips, and long term reminders. Do Not record stats, inventory, or docs! Only save transient information from your chat history. $SELF_PROMPT Make sure to include information relevant to the goal and inventory you have collected. You're limited to 500 characters, so be extremely brief and minimize words. Compress useful information. \nOld Memory: '$MEMORY'\nRecent conversation: \n$TO_SUMMARIZE\nSummarize your old memory and recent conversation into a new memory, and respond only with the unwrapped memory text: ",
|
||||
"conversation_examples": [
|
||||
[
|
||||
{"role": "user", "content": "Hey! let's collaborate to build a stone pickaxe!"},
|
||||
{"role": "assistant", "content": "Cool, let me check what is in my inventory !inventory\nI have 10 oak logs. What do you have?"},
|
||||
{"role": "user", "content": "Let me check !inventory \nI have 10 stones."},
|
||||
{"role": "assistant", "content": "Let me give you the stones and you can craft the pickaxe. !givePlayer(\"stone\", 10, \"playername\")"},
|
||||
{"role": "user", "content": "Thanks for the stones! Now I can craft the pickaxe. !craftItem(\"stone_pickaxe\", 1)"}
|
||||
|
||||
],
|
||||
[
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) Lets craft 5 chains together"},
|
||||
{"role": "assistant", "content": "Sure, can you let me know what inventory do you have while I check how to craft chains?"},
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) I have 10 iron_nugget and 3 mushroom."},
|
||||
{"role": "assistant", "content": "Thanks for letting me know, let me check how to build a chain, !getCraftingPlan(\"chain\",5)"},
|
||||
{"role": "system", "content": "You are missing the following items:\n- 2 iron_ingot\n\nOnce you have these items, here's your crafting plan:\n\nCraft 2 iron_ingot -> 18 iron_nugget\nCraft 10 iron_nugget + 5 iron_ingot -> 5 chain"},
|
||||
{"role": "assistant", "content": "Seems like we need 2 iron_ingot, but wait, we need the iron_ingot for getting 10 iron_nugget, since you already have 10 iron_nugget, I don't need to search for 2 iron_ingots in the world, could you give me the 10 iron_nugget ?"},
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) Sure, here you go !givePlayer(\"iron_nugget\", 10, \"jacob\")"},
|
||||
{"role": "assistant", "content": "Thanks for the iron_nuggets, now I can craft the chains. !craftItem(\"chain\", 5)"}
|
||||
],
|
||||
[
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) Lets craft a pink_wool together"},
|
||||
{"role": "assistant", "content": "Sure, can you let me what inventory do you have while I check how to craft it?"},
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) I have 1 pink_dye with me."},
|
||||
{"role": "assistant", "content": "Thanks for letting me know, let me check how to craft a pink_wool, !getCraftingPlan(\"pink_wool\",1)"},
|
||||
{"role": "system", "content": "You are missing the following items:\n- 1 peony\n\nOnce you have these items, here's your crafting plan:\n\nCraft 1 peony -> 2 pink_dye\nCraft 1 pink_dye + 1 black_wool -> 1 pink_wool"},
|
||||
{"role": "assistant", "content": "Seems like we need are missing 1 peony which we can use craft 1 pink_dye which is an intermediate item, but since you already have a pink_dye, there is no need to search for peony which is used to craft pink_dye, can you pass the pink_dye to me?"},
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) Sure, here you go !givePlayer(\"pink_dye\", 1, \"jacob\")"},
|
||||
{"role": "assistant", "content": "Thanks for the pink_dye, now I can craft the pink_wool. !craftItem(\"pink_wool\", 1)"}
|
||||
],
|
||||
[
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) Lets craft a cyan bed together"},
|
||||
{"role": "assistant", "content": "Sure, I have !inventory\n I have a cyan_dye and oak_planks. What do you have? "},
|
||||
{"role": "user", "content": "terrance: (FROM OTHER BOT) I have 1 cyan_wool and 1 oak_planks. Let me give those to you !givePlayer(\"cyan_wool\", 1, \"andy\") !givePlayer(\"oak_planks\", 1, \"andy\")"},
|
||||
{"role": "assistant", "content": "Hmm seems like we don't have enough to craft a cyan bed, let me reach out to the third agent and ask for help! !startConversation(\"jacob\", Hey jacob, can you help us craft a cyan bed? We need cyan_dye and oak_planks"},
|
||||
{"role": "user", "content": "jacob: (FROM OTHER BOT) Sure! Let me give those to you !givePlayer(\"cyan_dye\", 1, \"andy\") !givePlayer(\"oak_planks\", 1, \"andy\")"},
|
||||
{"role": "assistant", "content": "Thanks for the items, now I can craft the cyan bed. !craftItem(\"cyan_bed\", 1)"}
|
||||
]
|
||||
]
|
||||
}
|
|
@ -126,25 +126,16 @@ class CookingCraftingTaskValidator {
|
|||
this.data = data;
|
||||
this.agent = agent;
|
||||
}
|
||||
validate(has_initiated) {
|
||||
if (has_initiated) {
|
||||
|
||||
const result = checkItemPresence(this.data, this.agent);
|
||||
let score = 0;
|
||||
if (result.success) {
|
||||
score = 1;
|
||||
}
|
||||
return {
|
||||
"valid": result.success,
|
||||
"score": score,
|
||||
};
|
||||
}
|
||||
else {
|
||||
return {
|
||||
"valid": false,
|
||||
"score": 0
|
||||
};
|
||||
validate() {
|
||||
const result = checkItemPresence(this.data, this.agent);
|
||||
let score = 0;
|
||||
if (result.success) {
|
||||
score = 1;
|
||||
}
|
||||
return {
|
||||
"valid": result.success,
|
||||
"score": score,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -202,7 +193,6 @@ export class Task {
|
|||
|
||||
this.name = this.agent.name;
|
||||
this.available_agents = settings.profiles.map((p) => JSON.parse(readFileSync(p, 'utf8')).name);
|
||||
this.agent_initialized = false;
|
||||
}
|
||||
|
||||
getAgentGoal() {
|
||||
|
@ -213,7 +203,7 @@ export class Task {
|
|||
let add_string = '';
|
||||
|
||||
if (this.task_type === 'cooking') {
|
||||
add_string = '\nIn the end, all the food items should be given to one single player.';
|
||||
add_string = '\nIn the end, all the food items should be given to one single bot.';
|
||||
}
|
||||
|
||||
// If goal is a string, all agents share the same goal
|
||||
|
@ -254,8 +244,12 @@ export class Task {
|
|||
isDone() {
|
||||
let res = null;
|
||||
if (this.validator)
|
||||
res = this.validator.validate(this.agent_initialized);
|
||||
res = this.validator.validate();
|
||||
if (res && res.valid) {
|
||||
// Find all the agents and clear their inventories
|
||||
for (let agent of this.available_agents) {
|
||||
this.agent.bot.chat(`/clear ${agent}`);
|
||||
}
|
||||
return {"message": 'Task successful', "score": res.score};
|
||||
}
|
||||
let other_names = this.available_agents.filter(n => n !== this.name);
|
||||
|
@ -326,8 +320,6 @@ export class Task {
|
|||
await new Promise((resolve) => setTimeout(resolve, 500));
|
||||
}
|
||||
|
||||
this.agent_initialized = true;
|
||||
|
||||
if (this.initiator) {
|
||||
await this.initiator.init();
|
||||
}
|
||||
|
|
|
@ -345,6 +345,11 @@ export class Prompter {
|
|||
if (current_msg_time !== this.most_recent_msg_time) {
|
||||
console.warn(`${this.agent.name} received new message while generating, discarding old response.`);
|
||||
return '';
|
||||
}
|
||||
|
||||
if (generation?.includes('</think>')) {
|
||||
const [_, afterThink] = generation.split('</think>')
|
||||
generation = afterThink
|
||||
}
|
||||
|
||||
return generation;
|
||||
|
@ -375,6 +380,10 @@ export class Prompter {
|
|||
prompt = await this.replaceStrings(prompt, null, null, to_summarize);
|
||||
let resp = await this.chat_model.sendRequest([], prompt);
|
||||
await this._saveLog(prompt, null, resp, 'memSaving');
|
||||
if (resp?.includes('</think>')) {
|
||||
const [_, afterThink] = resp.split('</think>')
|
||||
resp = afterThink
|
||||
}
|
||||
return resp;
|
||||
}
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
import OpenAIApi from 'openai';
|
||||
import { getKey, hasKey } from '../utils/keys.js';
|
||||
import { strictFormat } from '../utils/text.js';
|
||||
|
||||
export class VLLM {
|
||||
constructor(model_name, url) {
|
||||
|
@ -22,6 +23,11 @@ export class VLLM {
|
|||
|
||||
async sendRequest(turns, systemMessage, stop_seq = '***') {
|
||||
let messages = [{ 'role': 'system', 'content': systemMessage }].concat(turns);
|
||||
|
||||
if (this.model_name.includes("deepseek") || this.model_name.inclues("qwen")) {
|
||||
messages = strictFormat(messages);
|
||||
}
|
||||
|
||||
|
||||
const pack = {
|
||||
model: this.model_name || "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
|
||||
|
@ -51,4 +57,20 @@ export class VLLM {
|
|||
return res;
|
||||
}
|
||||
|
||||
async saveToFile(logFile, logEntry) {
|
||||
let task_id = this.agent.task.task_id;
|
||||
console.log(task_id)
|
||||
let logDir;
|
||||
if (this.task_id === null) {
|
||||
logDir = path.join(__dirname, `../../bots/${this.agent.name}/logs`);
|
||||
} else {
|
||||
logDir = path.join(__dirname, `../../bots/${this.agent.name}/logs/${task_id}`);
|
||||
}
|
||||
|
||||
await fs.mkdir(logDir, { recursive: true });
|
||||
|
||||
logFile = path.join(logDir, logFile);
|
||||
await fs.appendFile(logFile, String(logEntry), 'utf-8');
|
||||
}
|
||||
|
||||
}
|
File diff suppressed because it is too large
Load diff
1051
tasks/cooking_tasks/test_tasks/test_tasks.json
Normal file
1051
tasks/cooking_tasks/test_tasks/test_tasks.json
Normal file
File diff suppressed because it is too large
Load diff
1255
tasks/cooking_tasks/test_tasks/test_tasks_3_agents.json
Normal file
1255
tasks/cooking_tasks/test_tasks/test_tasks_3_agents.json
Normal file
File diff suppressed because it is too large
Load diff
1425
tasks/cooking_tasks/test_tasks/test_tasks_4_agents.json
Normal file
1425
tasks/cooking_tasks/test_tasks/test_tasks_4_agents.json
Normal file
File diff suppressed because it is too large
Load diff
1408
tasks/cooking_tasks/test_tasks/test_tasks_5_agents.json
Normal file
1408
tasks/cooking_tasks/test_tasks/test_tasks_5_agents.json
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
2417
tasks/cooking_tasks/train_tasks/train_tasks.json
Normal file
2417
tasks/cooking_tasks/train_tasks/train_tasks.json
Normal file
File diff suppressed because it is too large
Load diff
2864
tasks/cooking_tasks/train_tasks/train_tasks_3_agents.json
Normal file
2864
tasks/cooking_tasks/train_tasks/train_tasks_3_agents.json
Normal file
File diff suppressed because it is too large
Load diff
3345
tasks/cooking_tasks/train_tasks/train_tasks_4_agents.json
Normal file
3345
tasks/cooking_tasks/train_tasks/train_tasks_4_agents.json
Normal file
File diff suppressed because it is too large
Load diff
3772
tasks/cooking_tasks/train_tasks/train_tasks_5_agents.json
Normal file
3772
tasks/cooking_tasks/train_tasks/train_tasks_5_agents.json
Normal file
File diff suppressed because it is too large
Load diff
703
tasks/cse291/longer_timeout_multi_agent.json
Normal file
703
tasks/cse291/longer_timeout_multi_agent.json
Normal file
|
@ -0,0 +1,703 @@
|
|||
{
|
||||
"multiagent_crafting_pink_wool_full_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an pink_wool",
|
||||
"conversation": "Let's work together to craft an pink_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"pink_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"black_wool": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "pink_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_lime_wool_partial_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an lime_wool",
|
||||
"conversation": "Let's work together to craft an lime_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"lime_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"black_wool": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "lime_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 300,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
],
|
||||
"1": ["!getCraftingPlan"]
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_purple_banner_full_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an purple_banner",
|
||||
"conversation": "Let's work together to craft an purple_banner.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"purple_wool": 4,
|
||||
"stick": 1
|
||||
},
|
||||
"1": {
|
||||
"purple_wool": 3,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "purple_banner",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_soul_campfire_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an soul_campfire",
|
||||
"conversation": "Let's work together to craft an soul_campfire.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_planks": 2,
|
||||
"soul_sand": 1,
|
||||
"dark_oak_log": 2
|
||||
},
|
||||
"1": {
|
||||
"oak_planks": 1,
|
||||
"dark_oak_log": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "soul_campfire",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_bookshelf_full_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a bookshelf",
|
||||
"conversation": "Let's work together to craft a bookshelf.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_planks": 4,
|
||||
"book": 2
|
||||
},
|
||||
"1": {
|
||||
"oak_planks": 2,
|
||||
"book": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "bookshelf",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_compass_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a compass",
|
||||
"conversation": "Let's work together to craft a compass.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"iron_ingot": 2
|
||||
},
|
||||
"1": {
|
||||
"iron_ingot": 2,
|
||||
"redstone": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "compass",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_fishing_rod_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a fishing_rod",
|
||||
"conversation": "Let's work together to craft a fishing_rod.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"string": 1,
|
||||
"oak_planks": 2
|
||||
},
|
||||
"1": {
|
||||
"string": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "fishing_rod",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_cake_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a cake",
|
||||
"conversation": "Let's work together to craft a cake.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"wheat": 2,
|
||||
"sugar": 1,
|
||||
"egg": 1
|
||||
},
|
||||
"1": {
|
||||
"wheat": 1,
|
||||
"milk_bucket": 2,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "cake",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_golden_carrot_full_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a golden_carrot",
|
||||
"conversation": "Let's work together to craft a golden_carrot.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"gold_nugget": 5,
|
||||
"carrot": 1
|
||||
},
|
||||
"1": {
|
||||
"gold_nugget": 3,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "golden_carrot",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_map_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a map",
|
||||
"conversation": "Let's work together to craft a map.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"paper": 5
|
||||
},
|
||||
"1": {
|
||||
"paper": 3,
|
||||
"compass": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "map",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_blue_wool_full_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft blue_wool",
|
||||
"conversation": "Let's work together to craft blue_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"blue_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "blue_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_lime_wool_partial_plan__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft lime_wool",
|
||||
"conversation": "Let's work together to craft lime_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"green_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1,
|
||||
"bone_meal": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "lime_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_magenta_wool_full_plan__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft magenta_wool",
|
||||
"conversation": "Let's work together to craft magenta_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"rose_red": 1,
|
||||
"lapis_lazuli": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1,
|
||||
"bone_meal": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "magenta_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 300,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_chest_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a chest",
|
||||
"conversation": "Let's work together to craft a chest.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_log": 1
|
||||
},
|
||||
"1": {
|
||||
"oak_planks": 4,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "chest",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_barrel_partial_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a barrel",
|
||||
"conversation": "Let's work together to craft a barrel.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"spruce_planks": 3,
|
||||
"crafting_table": 1
|
||||
},
|
||||
"1": {
|
||||
"spruce_planks": 3,
|
||||
"wooden_slab": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "barrel",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_lectern_full_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft a lectern",
|
||||
"conversation": "Let's work together to craft a lectern.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"birch_slab": 5,
|
||||
"crafting_table": 1
|
||||
},
|
||||
"1": {
|
||||
"birch_log": 2,
|
||||
"book": 3
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "lectern",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 2,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_clock_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a clock",
|
||||
"conversation": "Let's work together to craft a clock.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"gold_ingot": 2
|
||||
},
|
||||
"1": {
|
||||
"gold_ingot": 2,
|
||||
"redstone": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "clock",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_firework_rocket_partial_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft firework_rocket",
|
||||
"conversation": "Let's work together to craft firework_rocket.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"paper": 1
|
||||
},
|
||||
"1": {
|
||||
"gunpowder": 3
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "firework_rocket",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 300,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_enchanting_table_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an enchanting_table",
|
||||
"conversation": "Let's work together to craft an enchanting_table.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"diamond": 2,
|
||||
"obsidian": 2,
|
||||
"crafting_table": 1
|
||||
},
|
||||
"1": {
|
||||
"obsidian": 2,
|
||||
"book": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "enchanting_table",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 0,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_jukebox_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a jukebox",
|
||||
"conversation": "Let's work together to craft a jukebox.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"diamond": 1
|
||||
},
|
||||
"1": {
|
||||
"oak_log": 2,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "jukebox",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_light_gray_wool_full_plan__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft light_gray_wool",
|
||||
"conversation": "Let's work together to craft light_gray_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"black_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1,
|
||||
"white_dye": 2
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "light_gray_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 300,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_blast_furnace_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a blast_furnace",
|
||||
"conversation": "Let's work together to craft a blast_furnace.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"iron_ingot": 5,
|
||||
"smooth_stone": 3
|
||||
},
|
||||
"1": {
|
||||
"cobblestone": 8,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "blast_furnace",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_activator_rail_full_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft activator_rail",
|
||||
"conversation": "Let's work together to craft activator_rail.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"iron_ingot": 3,
|
||||
"oak_planks": 6
|
||||
},
|
||||
"1": {
|
||||
"redstone": 1,
|
||||
"iron_ingot": 3,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "activator_rail",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 300,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_campfire_partial_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft campfire",
|
||||
"conversation": "Let's work together to craft campfire.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_log": 8
|
||||
},
|
||||
"1": {
|
||||
"coal": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "campfire",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 300,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_crossbow_full_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft a crossbow",
|
||||
"conversation": "Let's work together to craft a crossbow.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_planks": 8,
|
||||
"iron_ingot": 2
|
||||
},
|
||||
"1": {
|
||||
"string": 2,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "crossbow",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
}
|
||||
}
|
703
tasks/cse291/super_long_timeout_multi_agent.json
Normal file
703
tasks/cse291/super_long_timeout_multi_agent.json
Normal file
|
@ -0,0 +1,703 @@
|
|||
{
|
||||
"multiagent_crafting_pink_wool_full_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an pink_wool",
|
||||
"conversation": "Let's work together to craft an pink_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"pink_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"black_wool": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "pink_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_lime_wool_partial_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an lime_wool",
|
||||
"conversation": "Let's work together to craft an lime_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"lime_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"black_wool": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "lime_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 300,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
],
|
||||
"1": ["!getCraftingPlan"]
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_purple_banner_full_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an purple_banner",
|
||||
"conversation": "Let's work together to craft an purple_banner.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"purple_wool": 4,
|
||||
"stick": 1
|
||||
},
|
||||
"1": {
|
||||
"purple_wool": 3,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "purple_banner",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_soul_campfire_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an soul_campfire",
|
||||
"conversation": "Let's work together to craft an soul_campfire.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_planks": 2,
|
||||
"soul_sand": 1,
|
||||
"dark_oak_log": 2
|
||||
},
|
||||
"1": {
|
||||
"oak_planks": 1,
|
||||
"dark_oak_log": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "soul_campfire",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_bookshelf_full_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a bookshelf",
|
||||
"conversation": "Let's work together to craft a bookshelf.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_planks": 4,
|
||||
"book": 2
|
||||
},
|
||||
"1": {
|
||||
"oak_planks": 2,
|
||||
"book": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "bookshelf",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_compass_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a compass",
|
||||
"conversation": "Let's work together to craft a compass.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"iron_ingot": 2
|
||||
},
|
||||
"1": {
|
||||
"iron_ingot": 2,
|
||||
"redstone": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "compass",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_fishing_rod_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a fishing_rod",
|
||||
"conversation": "Let's work together to craft a fishing_rod.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"string": 1,
|
||||
"oak_planks": 2
|
||||
},
|
||||
"1": {
|
||||
"string": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "fishing_rod",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_cake_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a cake",
|
||||
"conversation": "Let's work together to craft a cake.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"wheat": 2,
|
||||
"sugar": 1,
|
||||
"egg": 1
|
||||
},
|
||||
"1": {
|
||||
"wheat": 1,
|
||||
"milk_bucket": 2,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "cake",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_golden_carrot_full_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a golden_carrot",
|
||||
"conversation": "Let's work together to craft a golden_carrot.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"gold_nugget": 5,
|
||||
"carrot": 1
|
||||
},
|
||||
"1": {
|
||||
"gold_nugget": 3,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "golden_carrot",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_map_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a map",
|
||||
"conversation": "Let's work together to craft a map.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"paper": 5
|
||||
},
|
||||
"1": {
|
||||
"paper": 3,
|
||||
"compass": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "map",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_blue_wool_full_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft blue_wool",
|
||||
"conversation": "Let's work together to craft blue_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"blue_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "blue_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_lime_wool_partial_plan__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft lime_wool",
|
||||
"conversation": "Let's work together to craft lime_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"green_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1,
|
||||
"bone_meal": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "lime_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_magenta_wool_full_plan__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft magenta_wool",
|
||||
"conversation": "Let's work together to craft magenta_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"rose_red": 1,
|
||||
"lapis_lazuli": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1,
|
||||
"bone_meal": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "magenta_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_chest_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a chest",
|
||||
"conversation": "Let's work together to craft a chest.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_log": 1
|
||||
},
|
||||
"1": {
|
||||
"oak_planks": 4,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "chest",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 1,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_barrel_partial_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a barrel",
|
||||
"conversation": "Let's work together to craft a barrel.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"spruce_planks": 3,
|
||||
"crafting_table": 1
|
||||
},
|
||||
"1": {
|
||||
"spruce_planks": 3,
|
||||
"wooden_slab": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "barrel",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_lectern_full_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft a lectern",
|
||||
"conversation": "Let's work together to craft a lectern.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"birch_slab": 5,
|
||||
"crafting_table": 1
|
||||
},
|
||||
"1": {
|
||||
"birch_log": 2,
|
||||
"book": 3
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "lectern",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 2,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_clock_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft a clock",
|
||||
"conversation": "Let's work together to craft a clock.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"gold_ingot": 2
|
||||
},
|
||||
"1": {
|
||||
"gold_ingot": 2,
|
||||
"redstone": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "clock",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 600,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_firework_rocket_partial_plan__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft firework_rocket",
|
||||
"conversation": "Let's work together to craft firework_rocket.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"paper": 1
|
||||
},
|
||||
"1": {
|
||||
"gunpowder": 3
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "firework_rocket",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_enchanting_table_partial_plan_requires_ctable__depth_0": {
|
||||
"goal": "Collaborate with other agents to craft an enchanting_table",
|
||||
"conversation": "Let's work together to craft an enchanting_table.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"diamond": 2,
|
||||
"obsidian": 2,
|
||||
"crafting_table": 1
|
||||
},
|
||||
"1": {
|
||||
"obsidian": 2,
|
||||
"book": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "enchanting_table",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 0,
|
||||
"depth": 0,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_jukebox_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a jukebox",
|
||||
"conversation": "Let's work together to craft a jukebox.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"diamond": 1
|
||||
},
|
||||
"1": {
|
||||
"oak_log": 2,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "jukebox",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 1,
|
||||
"depth": 1,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_light_gray_wool_full_plan__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft light_gray_wool",
|
||||
"conversation": "Let's work together to craft light_gray_wool.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"black_dye": 1
|
||||
},
|
||||
"1": {
|
||||
"white_wool": 1,
|
||||
"white_dye": 2
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "light_gray_wool",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": false
|
||||
},
|
||||
"multiagent_crafting_blast_furnace_full_plan_requires_ctable__depth_1": {
|
||||
"goal": "Collaborate with other agents to craft a blast_furnace",
|
||||
"conversation": "Let's work together to craft a blast_furnace.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"iron_ingot": 5,
|
||||
"smooth_stone": 3
|
||||
},
|
||||
"1": {
|
||||
"cobblestone": 8,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "blast_furnace",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 2,
|
||||
"depth": 1,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_activator_rail_full_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft activator_rail",
|
||||
"conversation": "Let's work together to craft activator_rail.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"iron_ingot": 3,
|
||||
"oak_planks": 6
|
||||
},
|
||||
"1": {
|
||||
"redstone": 1,
|
||||
"iron_ingot": 3,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "activator_rail",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_campfire_partial_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft campfire",
|
||||
"conversation": "Let's work together to craft campfire.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_log": 8
|
||||
},
|
||||
"1": {
|
||||
"coal": 1,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "campfire",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [
|
||||
"!getCraftingPlan"
|
||||
],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
},
|
||||
"multiagent_crafting_crossbow_full_plan_requires_ctable__depth_2": {
|
||||
"goal": "Collaborate with other agents to craft a crossbow",
|
||||
"conversation": "Let's work together to craft a crossbow.",
|
||||
"initial_inventory": {
|
||||
"0": {
|
||||
"oak_planks": 8,
|
||||
"iron_ingot": 2
|
||||
},
|
||||
"1": {
|
||||
"string": 2,
|
||||
"crafting_table": 1
|
||||
}
|
||||
},
|
||||
"agent_count": 2,
|
||||
"target": "crossbow",
|
||||
"number_of_target": 1,
|
||||
"type": "techtree",
|
||||
"max_depth": 3,
|
||||
"depth": 2,
|
||||
"timeout": 1200,
|
||||
"blocked_actions": {
|
||||
"0": [],
|
||||
"1": []
|
||||
},
|
||||
"missing_items": [
|
||||
],
|
||||
"requires_ctable": true
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue