Bitburner: Como adicionar estatísticas personalizadas ao HUD (Monitor de alerta)

Personalize seu HUD de estatísticas usando ganchos internos secretos, e um pouco de script.

 

Bisbilhotando

Este jogo o incentiva a olhar além da IU, além da documentação. Você é incentivado a inspecionar o DOM, e até mesmo olhar para o próprio código-fonte. Você descobrirá que há muito que pode fazer quando começar a pensar fora da caixa.

Por exemplo, uma rápida olhada no HUD de estatísticas (monitor de alerta) seção da IU revelará que há uma seção vazia:

id ="visão geral-extra-gancho-0"

Ele foi colocado ali deliberadamente para permitir que qualquer tipo de estatística personalizada que você queira ser adicionada a este elemento da IU.

Código de amostra

Você sabia que pode acessar o documento (UI) de dentro do próprio jogo? Com um pouco de script você pode ligar esses elementos de espaço reservado e colocar o que quiser neles. Aqui está um exemplo:
nano custom-stats.js
/** @param {NS} ns **/
export async function main(ns) {
    const doc = document; // Isto é caro! (25 GB de RAM) Talvez haja uma maneira de contornar isso? ;)
    const hook0 = doc.getElementById('visão geral-extra-gancho-0');
    const hook1 = doc.getElementById('visão geral-extra-gancho-1');
    enquanto (verdadeiro) {
        experimentar {
            const headers = []
            valores const = [];
            // Add script income per second
            headers.push("ScrInc");
            valores.push(ns.getScriptIncome()[0].toPrecision(5) + '/s');
            // Add script exp gain rate per second
            headers.push("ScrExp");
            valores.push(ns.getScriptExpGain().toPrecision(5) + '/s');
            // TUDO: Add more neat stuff

            // Now drop it into the placeholder elements
            hook0.innerText = headers.join(" n");
            hook1.innerText = values.join("n");
        } pegar (errar) { // This might come in handy later
            ns.print("ERRO: Atualização ignorada: " + Cadeia(errar));
        }
        aguarde ns.sono(1000);
    }
}

Aqui está o que parece codificado no jogo (A renderização de código do Steam não é das melhores)

Execute seu programa a partir do terminal (certifique-se de ter RAM livre suficiente):

execute custom-stats.js

E aí está, estatísticas personalizadas no HUD, atualizado a cada segundo:

De Discernimento-

Mais guias:

1 Comentário

  1. Thanks for this guide! Mas, I’m midway through the game and the intro here seems like a late-game spoiler. That kind of thing bugs me more than it should, so should I skip ahead in the game to find some closure? I could friend you on Steam to chat. Obrigado.

Deixe uma resposta

O seu endereço de email não será publicado.


*