Ir para o conteúdo
Riot Bits

Riot Bits

  • Lar
  • Notícias
  • Guias
  • Guias de vídeo
  • Notas do Patch
  • Denunciar abuso
  • Alternar formulário de pesquisa
Bitburner

Bitburner – Optimized Hacknet Bot

postado em 01/15/2022 Por syw1 Sem comentários em Bitburner – Optimized Hacknet Bot
  • Título: Bitburner
  • Data de lançamento:
  • Desenvolvedor:
  • Editor:
Information about Bitburner is still incomplete. Por favor, ajude-nos a preencher os detalhes do jogo usando este formulário de contato.

Simple Bot that uses math to choose the most profitable upgrade.

Como funciona

The bot takes the following steps.

  1. Checks cost and production growth of all the possible upgrades
  2. Calculates profitable ratio of each upgrade
  3. Sorts elements by ratio descending
  4. Chooses the first element
  5. Checks if you can purchase upgrade now, se não, it waits to collect money
  6. Checks if you can buy a new node in less than 30 segundos (you can customize this time), se for assim, it buys it
  7. Repita…

Profitable ratio = Production growth / upgrade cost
Production growth = Production after upgrade / current production

This guide is based on my previous “Automation for Hacknet Nodes”.

Como usar

Take the following steps.

  1. Run the terminal
  2. Type ‘nano hacknet-bot.js’
  3. Copy and paste the code below into this file
  4. Salve o arquivo (Ctrl + é)
  5. Back to the terminal
  6. Type ‘run hacknet-bot.js’

/** @param {NS} ns **/
export async function main(ns) {
	// helpers
	const getMoney = () => ns.getPlayer().dinheiro;
	const getProd = (nível, ram, cores) => (nível * 1.5) * Math.pow(1.035, ram - 1) * ((cores + 5) / 6);
	// your production multiplier
	const PROD_MULTIPLIER = ns.getHacknetMultipliers().produção;
	// maximum waiting time for collecting money for new node (default 30s)
	const WAITING_TIME = ns.args[0] || 30;

	enquanto (verdadeiro) {
		const ratios = [];
		let hacknetProduction = 0;
		// loop through all nodes
		for (let index = 0; index < ns.hacknet.numNodes(); index++) { // get current node stats const { nível, ram, cores, produção } = ns.hacknet.getNodeStats(index); hacknetProduction += production; // get upgrades cost const levelUpgradeCost = ns.hacknet.getLevelUpgradeCost(index); const ramUpgradeCost = ns.hacknet.getRamUpgradeCost(index); const coreUpgradeCost = ns.hacknet.getCoreUpgradeCost(index); // get prod. crescimento / cost ratios const levelUpgradeRatio = ((getProd(nível + 1, ram, cores) * PROD_MULTIPLIER) - produção) / levelUpgradeCost; const ramUpgradeRatio = ((getProd(nível, ram * 2, cores) * PROD_MULTIPLIER) - produção) / ramUpgradeCost; const coreUpgradeRatio = ((getProd(nível, ram, cores + 1) * PROD_MULTIPLIER) - produção) / coreUpgradeCost; // possible upgrades of current node const currentNodeUpgrades = [ {razão: levelUpgradeRatio, custo: levelUpgradeCost, nodeIndex: index, atualizar: "nível"}, {razão: ramUpgradeRatio, custo: ramUpgradeCost, nodeIndex: index, atualizar: "ram"}, {razão: coreUpgradeRatio, custo: coreUpgradeCost, nodeIndex: index, atualizar: "essencial"} ]; // push current node upgrades to all upgrades ratios.push(...currentNodeUpgrades); } // get the most profitable upgrade const { custo, nodeIndex, atualizar } = ratios.sort((a, b) => b.ratio - a.ratio)[0];
		// wait until you have the money for upgrade
		while (getMoney() < custo) { await ns.sleep(1); } // execute upgrade switch (atualizar) { caso "nível": await ns.hacknet.upgradeLevel(nodeIndex); quebrar; caso "ram": await ns.hacknet.upgradeRam(nodeIndex); quebrar; caso "essencial": await ns.hacknet.upgradeCore(nodeIndex); quebrar; padrão: continuar; } // check if you can purchase new node const purchaseNodeCost = ns.hacknet.getPurchaseNodeCost(); const missingMoneyForNewNode = purchaseNodeCost - getMoney(); se (missingMoneyForNewNode > 0 && missingMoneyForNewNode < hacknetProduction * WAITING_TIME) {
			// if you need to wait for purchase node less than WAITING_TIME (in seconds) program waits to collect money
			while (getMoney() < purchaseNodeCost) {
				await ns.sleep(1);
			}
			ns.hacknet.purchaseNode();
		}

		// sleep 1ms to prevent crash because of infinite loop
		await ns.sleep(1);
	}
}

You can customize the time of waiting for purchase node (by default 30s) by passing an additional script argument. Por exemplo:

run hacknet-bot.js 120

Isso é tudo o que estamos compartilhando hoje para isso Bitburner guia. Este guia foi originalmente criado e escrito por syw1. Caso não atualizemos este guia, você pode encontrar a atualização mais recente seguindo este link.

Se você acredita que algum conteúdo deste site viola seus direitos, incluindo seus direitos de propriedade intelectual, entre em contato conosco imediatamente usando nosso formulário de contato.
Guias Tag:Bitburner

Navegação de artigos

Postagem anterior: Thea 2: The Shattering – All Theopedia Terrain List
próxima postagem: Simulador de fuga – Passo a passo de Wallace em Yonderland

Deixe um comentário Cancelar resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  • Título: Bitburner
  • Data de lançamento:
  • Desenvolvedor:
  • Editor:
Information about Bitburner is still incomplete. Por favor, ajude-nos a preencher os detalhes do jogo usando este formulário de contato.

Isenção de responsabilidade

Todo o conteúdo citado é derivado de suas respectivas fontes. Se você acha que usamos seu conteúdo sem permissão, certifique-se de entrar em contato conosco e levaremos isso a sério.
  • Sobre nós
  • Contate-nos
  • política de Privacidade
  • Termos de serviço

direito autoral © 2025 Riot Bits.

Distribuído por PressBook Notícias tema WordPress