Orchestrator/Console.js: Printing Running Hacks. Running script with 1 thread(s), pid 521 and args. Terminal: (Console.js printRunningHacks > run /Orchestrator/Console.js printRunningHacks Targetmanager logs: Broadcasting to Hack Manager Hi, saw a similar/same issue which was closed previously but I think it has happened again.Ĭlosed issue: TargetManager stuck on "Scanning network" (Closed) Can be run with the 'no-server-manager' argument to skip booting the ServerManager. This scripts simply start all other script. ![]() ![]() The simple script simply grow/weaken/hack and send a signal when they are done. grow.ns/weaken.ns/hack.ns - 1.75 GiB Required This script is facultative and simply update periodically the bought server, once all 25 servers are bought it will try to update them with more RAM. The number of concurrent hack is limited by the amount of RAM on the server running the HackClasses. It then ask the ThreadManager for the amount of available threads, and if there are enough available, spawn an HackClass on the selected server, else it skip to the next one.Īfterward it listen for any update from the Hack, and when it is finished it start another one. These calculation are updated periodically, and consider what hack are currently in progress. Once it has all these value, it divide the expected value by the required time, and order them from the highest to lowest value. These can be expanded by the addition of different algorithm. Hacking it for 50% of its current value in the case of a quick hack. Growing the server to its max value, weakening its security to its min value and hacking it for 50% of it's max value in the case of a full hack It then calculate how many thread and time would be required for: This script loop through all hacked host and calculate for each of them two kind of hack, a full and a quick one. It then listen on a port for thread request, when a script require a certain amount of thread it allocate them and send an answer stating how many thread are available on each host, once the threads are not used anymore, it also de-allocate them so they can be re-used. Threads are calculated based on the largest hack/grow/weaken script (which currently stand at 1.75 GiB). This script build an array with all available "threads" for all hacked host. Everytime it finds a new host, it send a message to ThreadManager and HackManager with the new host. Then it drill down until it can't hack anything anymore. It scan each host, starting from the "home" host, or the host on which it run, check if it can be hacked, hack it, and copy the scripts and their requirements on the host. This script loop every minutes to try to find new target. Here are more details about each script: TargetManager.js - 4.55 GiB Required The Hacking and Managing server can be edited in the config file. Each Conductor will then spawn multiple grow/weaken/hack scripts on multiple host with different amount of threads. The Conductors can be run on home or another server, each instance require around 4 GiB or ram. They will spawn one Conductor per target found. The managers are run on home, and require 24.20 GiB on home or a managing to fully run or 14.45 GiB if ServerManager is ignored. They are run with a calculated (almost) optimal amount of threads. The Scripts: These are the basic hack/grow/weaken part.The Conductors: These are instance of a hack, they manage the start, steps and end of a hack.The Managers: These scripts are looping and communicating between themselves to manage different parts of the state: the targets, the thread, the hacks and the servers.Not sure if this is high or low, I am still pretty early in the game. It is still quite buggy, ugly and unoptimized. I made a prototype hack manager that try to optimize the available thread over all hacked server and proceed with the most efficient hacks based on their value per second. ![]() You can also click Use as template in GitHub to create a repo form this one push ( new NewNodeAction ( ns, 1 ) ) ĪctionList = actionList. ![]() numNodes ( ) įor ( var i = 0 i actionList. getServerMoneyAvailable ( 'home' ) īudget *= budgetPercentage //Don't want to spend all money on hacknet, allow 33% but change this if wanted
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |