Aller au contenu
Morceaux d'émeute

Morceaux d'émeute

  • Maison
  • Nouvelles
  • Guides
  • Guides vidéo
  • Notes de mise à jour
  • Signaler un abus
  • Basculer le formulaire de recherche
Brûleur de bits

Brûleur de bits – Bot Hacknet optimisé

Posté sur 01/15/2022 Par syw1 Aucun commentaire sur Brûleur de bits – Bot Hacknet optimisé
  • Titre: Brûleur de bits
  • Date de sortie:
  • Promoteur:
  • Éditeur:
Les informations sur Bitburner sont encore incomplètes. S'il vous plaît, aidez-nous à remplir les détails du jeu en utilisant ceci formulaire de contact.

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

Comment ça marche

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, sinon, it waits to collect money
  6. Checks if you can buy a new node in less than 30 secondes (you can customize this time), le cas échéant, it buys it
  7. Répéter…

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

This guide is based on my previous « Automation for Hacknet Nodes ».

Comment utiliser

Take the following steps.

  1. Run the terminal
  2. Taper ‘nano hacknet-bot.js’
  3. Copy and paste the code below into this file
  4. Enregistrez le fichier (ctrl + s)
  5. Back to the terminal
  6. Taper ‘run hacknet-bot.js’

/** @param {Ns} ns **/
export async function main(ns) {
	// helpers
	const getMoney = () => ns.getPlayer().argent;
	const getProd = (niveau, bélier, cores) => (niveau * 1.5) * Math.pow(1.035, bélier - 1) * ((cores + 5) / 6);
	// your production multiplier
	const PROD_MULTIPLIER = ns.getHacknetMultipliers().production;
	// maximum waiting time for collecting money for new node (default 30s)
	const WAITING_TIME = ns.args[0] || 30;

	alors que (vrai) {
		const ratios = [];
		let hacknetProduction = 0;
		// loop through all nodes
		for (let index = 0; indice < ns.hacknet.numNodes(); index++) { // get current node stats const { niveau, bélier, cores, production } = ns.hacknet.getNodeStats(indice); hacknetProduction += production; // get upgrades cost const levelUpgradeCost = ns.hacknet.getLevelUpgradeCost(indice); const ramUpgradeCost = ns.hacknet.getRamUpgradeCost(indice); const coreUpgradeCost = ns.hacknet.getCoreUpgradeCost(indice); // get prod. croissance / cost ratios const levelUpgradeRatio = ((getProd(niveau + 1, bélier, cores) * PROD_MULTIPLIER) - production) / levelUpgradeCost; const ramUpgradeRatio = ((getProd(niveau, bélier * 2, cores) * PROD_MULTIPLIER) - production) / ramUpgradeCost; const coreUpgradeRatio = ((getProd(niveau, bélier, cores + 1) * PROD_MULTIPLIER) - production) / coreUpgradeCost; // possible upgrades of current node const currentNodeUpgrades = [ {rapport: levelUpgradeRatio, coût: levelUpgradeCost, nodeIndex: indice, mise à niveau: "niveau"}, {rapport: ramUpgradeRatio, coût: ramUpgradeCost, nodeIndex: indice, mise à niveau: "bélier"}, {rapport: coreUpgradeRatio, coût: coreUpgradeCost, nodeIndex: indice, mise à niveau: "cœur"} ]; // push current node upgrades to all upgrades ratios.push(...currentNodeUpgrades); } // get the most profitable upgrade const { coût, nodeIndex, mise à niveau } = ratios.sort((un, b) => b.ratio - a.ratio)[0];
		// wait until you have the money for upgrade
		while (getMoney() < coût) { attendre le ns(1); } // execute upgrade switch (mise à niveau) { cas "niveau": await ns.hacknet.upgradeLevel(nodeIndex); casser; cas "bélier": await ns.hacknet.upgradeRam(nodeIndex); casser; cas "cœur": await ns.hacknet.upgradeCore(nodeIndex); casser; défaut: continuer; } // check if you can purchase new node const purchaseNodeCost = ns.hacknet.getPurchaseNodeCost(); const missingMoneyForNewNode = purchaseNodeCost - getMoney(); si (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) {
				attendre le ns(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. Par exemple:

run hacknet-bot.js 120

C'est tout ce que nous partageons aujourd'hui pour cela Brûleur de bits guide. Ce guide a été initialement créé et rédigé par syw1. Si nous ne parvenons pas à mettre à jour ce guide, vous pouvez trouver la dernière mise à jour en suivant ceci lien.

Si vous pensez que le contenu de ce site viole vos droits, y compris vos droits de propriété intellectuelle, veuillez nous contacter immédiatement en utilisant notre formulaire de contact.
Guides Mots clés:Brûleur de bits

Navigation de l’article

Post précédent: Théa 2: The Shattering – All Theopedia Terrain List
Prochain article: Simulateur d'évasion – Procédure pas à pas de Wallace à Yonderland

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

  • Titre: Brûleur de bits
  • Date de sortie:
  • Promoteur:
  • Éditeur:
Les informations sur Bitburner sont encore incomplètes. S'il vous plaît, aidez-nous à remplir les détails du jeu en utilisant ceci formulaire de contact.

Clause de non-responsabilité

Tout le contenu cité est dérivé de leurs sources respectives. Si vous pensez que nous avons utilisé votre contenu sans autorisation, assurez-vous de nous joindre et nous le prendrons au sérieux.
  • À propos de nous
  • Contactez-nous
  • politique de confidentialité
  • Conditions d'utilisation

droits d'auteur © 2025 Morceaux d'émeute.

Alimenté par Actualité PressBook Thème WordPress