Prompt de Geração de Código de Bot Minecraft Estilo Voyager
De Wikiprompt, a enciclopédia livre de prompts
Prompt de Geração de Código de Bot Minecraft Estilo Voyager Um prompt de sistema abrangente para gerar código de bot do Minecraft com Mineflayer, incluindo definição de papel, reutilização de biblioteca de código, especificação de entrada, requisitos de saída e formato de resposta.
Conteúdo do PromptSalvar
🌐
Explicação: Nenhuma etapa está faltando no plano. O código não foi executado ainda, pois esta é a primeira rodada. Não há erros de execução ou logs de chat para analisar. O plano é direto: coletar madeira, criar uma bancada de trabalho, criar uma picareta de madeira e depois minar pedra para obter pedregulho.
Plano:
1) Verificar se há madeira no inventário. Se não houver, usar exploreUntil para encontrar uma árvore e usar mineBlock para coletar pelo menos 3 toras de madeira.
2) Verificar se há uma bancada de trabalho. Se não houver, usar craftItem para criar uma bancada de trabalho com as toras de madeira.
3) Usar a bancada de trabalho para criar uma picareta de madeira (craftItem com "wooden_pickaxe").
4) Usar exploreUntil para encontrar pedra próxima e usar mineBlock para coletar pelo menos 8 pedregulhos (cobblestone).
5) A tarefa estará completa quando o inventário contiver a picareta de madeira e os pedregulhos coletados.
Código:
```javascript
async function collectWoodAndCobblestone(bot) {
const requiredWood = 3;
const requiredCobblestone = 8;
// Check and collect wood
let woodCount = 0;
const woodItems = bot.inventory.items().filter(item => item.name.includes('log'));
woodCount = woodItems.reduce((sum, item) => sum + item.count, 0);
if (woodCount < requiredWood) {
const woodToCollect = requiredWood - woodCount;
const direction = Math.random() < 0.5 ? [1, 0, 0] : [0, 0, 1];
const treeFound = await exploreUntil(bot, direction, 32, () => {
const block = bot.findBlock({
matching: (b) => b.name.includes('log'),
maxDistance: 32
});
return block;
});
if (treeFound) {
await mineBlock(bot, treeFound.name, woodToCollect);
} else {
// Try another direction
const altDirection = direction[0] === 1 ? [-1, 0, 0] : [0, 0, -1];
const treeFoundAlt = await exploreUntil(bot, altDirection, 32, () => {
const block = bot.findBlock({
matching: (b) => b.name.includes('log'),
maxDistance: 32
});
return block;
});
if (treeFoundAlt) {
await mineBlock(bot, treeFoundAlt.name, woodToCollect);
}
}
}
// Check and craft crafting table if needed
const hasCraftingTable = bot.inventory.items().some(item => item.name === 'crafting_table');
if (!hasCraftingTable) {
await craftItem(bot, 'crafting_table', 1);
}
// Craft wooden pickaxe
const hasWoodenPickaxe = bot.inventory.items().some(item => item.name === 'wooden_pickaxe');
if (!hasWoodenPickaxe) {
await craftItem(bot, 'wooden_pickaxe', 1);
}
// Collect cobblestone
let cobblestoneCount = 0;
const cobblestoneItems = bot.inventory.items().filter(item => item.name === 'cobblestone');
cobblestoneCount = cobblestoneItems.reduce((sum, item) => sum + item.count, 0);
if (cobblestoneCount < requiredCobblestone) {
const cobblestoneToCollect = requiredCobblestone - cobblestoneCount;
const direction = Math.random() < 0.5 ? [1, 0, 1] : [-1, 0, -1];
const stoneFound = await exploreUntil(bot, direction, 32, () => {
const block = bot.findBlock({
matching: (b) => b.name === 'stone',
maxDistance: 32
});
return block;
});
if (stoneFound) {
await mineBlock(bot, 'stone', cobblestoneToCollect);
}
}
// Final check
const finalWood = bot.inventory.items().filter(item => item.name.includes('log')).reduce((sum, item) => sum + item.count, 0);
const finalCobblestone = bot.inventory.items().filter(item => item.name === 'cobblestone').reduce((sum, item) => sum + item.count, 0);
const finalPickaxe = bot.inventory.items().some(item => item.name === 'wooden_pickaxe');
if (finalWood >= requiredWood && finalCobblestone >= requiredCobblestone && finalPickaxe) {
await bot.chat('Coleta concluída: madeira e pedregulho obtidos com sucesso!');
} else {
await bot.chat('Coleta parcial concluída. Verificando inventário final.');
}
}
```
Entre para ver o prompt completo
Continuar com:
Ao entrar, você concorda com nossos Termos de uso e Política de privacidade
Uso
Este prompt foi projetado para uso com coding. Copie o conteúdo acima e cole na sua ferramenta de IA preferida.
Para melhores resultados, personalize os marcadores (indicados por colchetes ou maiúsculas) com seus requisitos específicos.
Referências
- Categoria: Prompts de coding
- Fonte: https://x.com/dotey/status/1662255634035687426
Discussão
0 comentários