Bitburner: 초기 게임 가이드(스포일러 없음)

튜토리얼을 마치고 진행 방법이 궁금하신가요? 해킹 스크립트를 개선하고 싶거나 게임의 다른 부분을 자동화하고 싶습니까?

올바른 방향을 알려주는 스포일러 없는 가이드입니다.

 

해킹 스크립트: 개선 방법

1: 튜토리얼 따르기

게임 내 튜토리얼에 추가하여 적절한 해킹 스크립트를 시작하는 방법에 대한 좋은 가이드가 있습니다. 온라인 문서[bitburner.readthedocs.io].

이 시점에서 주어진 서버를 지속적으로 약화, 성장 및 해킹하는 스크립트가 있습니다. 당신은 그것이 느리다고 생각할 수도 있고 (그리고 당신이 옳을 것입니다) 당신이 만들 수 있는 몇 가지 개선 사항이 있기 때문입니다.

첫 번째 단계는 사용을 시작하는 것입니다. 넷스크립트2[bitburner.readthedocs.io]. 튜토리얼에서 사용되는 Netscript 1 또는 .script 파일은 느리고 기능이 적습니다. Netscript2는 최신 자바스크립트에 매우 가깝고 속도는 컴퓨터에 의해서만 제한됩니다. 여기서 속도는 실행 시간을 의미하며, 해킹 기술에 의해 결정되는 weak() growth() 및 hack() 함수의 실행 속도가 아니라 실행 시간을 나타냅니다.

스크립트를 작성할 때 더 많은 ns 함수를 사용함에 따라 램 요구 사항이 증가한다는 것을 알 수 있습니다. weak() growth() 및 hack()만 추가 스레드를 사용하는 이점이 있으므로 다른 스레드와 분리하면 더 많은 스레드를 실행할 수 있으므로 더 높은 수익을 얻을 수 있습니다.

이 시점에서 가질 가치가 있습니다. API 문서[bitburner.readthedocs.io] 능숙한.

램 사용을 최적화하기 위해 해킹 스크립트 분리

가능한 한 많은 스레드로 중요한 기능을 실행할 수 있도록 하려면 실행될 가장 간단한 가능한 스크립트를 만드는 방법을 찾으십시오.  인수 및 그 이상으로 주어진 대상에 대해 weak()를 사용합니다. 그런 다음 튜토리얼에서 해킹 스크립트를 가져와서 weak()를 직접 실행하는 대신, free ram이 허용하는 한 많은 스레드를 사용하여 weak 스크립트를 실행하고 대상을 인수로 전달하는 방법을 찾으십시오. 그런 다음 완료될 때까지 기다리는 방법을 찾으십시오. Grow() 및 hack()에 대해 이 과정을 반복합니다.

이제 우리는 1개의 스레드로 제어할 때 RAM의 작은 부분만 사용하기 때문에 가능한 한 많은 스레드를 사용하여 실제로 스레드에 관심이 있는 기능을 실행하는 데 나머지 RAM 전체를 사용할 수 있습니다. 이것은 당신의 수입을 두 배 이상 늘릴 수 있습니다.

중앙 집중식 제어

이 해킹 스크립트를 루트가 있는 각 서버에 배포하면 꽤 잘 진행되고 있을 것입니다. 그러나 루팅된 서버에서 램 사용량을 분석하면 제어 스크립트가 상당한 덩어리를 차지하기 때문에 실제 weak.ns, growth.ns 및 hack.ns 스크립트가 사용 가능한 모든 램을 사용하지 않는다는 것을 알 수 있습니다. 그러나 어쨌든 이 모든 서버로 가장 수익성이 높은 목표를 공격하는 것이라면 한 서버의 단일 제어 스크립트를 고수하고 다른 서버를 제어하도록 하는 것이 어떻겠습니까?

여기의 목표는 우리가 집 컴퓨터에서 실행하는 제어 스크립트를 작성하는 것입니다. 다른 서버 – 중요한 작업을 수행하는 데 사용할 수 있는 모든 메모리를 남겨둡니다. 제어 스크립트가 weak.ns, growth.ns 또는 hack.ns의 단일 스레드 램의 약 두 배를 사용하는 경우 이 기술을 사용하여 루팅된 각 서버에서 2개의 추가 스레드를 무료로 얻습니다. 대부분의 램이 루팅한 임의의 서버에서 오는 초기 게임에서 이는 상당히 증가할 수 있습니다.

동시 실행

일반적으로 최적화의 경우 알고리즘에서 성능에 가장 큰 영향을 미치는 부분을 측정하는 것이 중요합니다. 우리의 루프가 대략적으로 약화 -> 성장 -> 약화 -> 해킹이 되도록 서버가 준비되는 지점(최소 보안 및 최대 자금에 도달)에 도달했다고 가정해 봅시다.

인쇄하여 각 단계에 소요된 시간을 기록하십시오. 제 경우에는 성장이 보안을 크게 향상 시켰기 때문에 명백한 시간 싱크가 성장 직후 약화되었습니다. 성장이 진행되는 동안 약화되기 시작하여 작업을 병렬로 수행할 수 있다면 어떨까요? 우리는 실제로 다음을 수행할 수 있습니다.

weak(), growth() 및 hack()에 걸리는 시간은 서버와 플레이어 상태에 의해 계산됩니다. 스타트 작업의. 효과는 다음에서 발생합니다. end. 따라서 성장이 끝나기 전에 약해지기 시작하면 훨씬 빨라질 것입니다. weak() 및 growth()가 얼마나 오래 걸리는지 확인하는 방법을 찾으십시오(힌트: 선적 서류 비치[깃허브닷컴] 이에 대한 기능이 있습니다). 그런 다음 성장을 시작하는 데 사용 가능한 모든 메모리를 사용하는 대신 절반을 사용합니다. 그런 다음 나머지 절반으로 약해지기 시작합니다. weak가 더 빨리 실행된다면 weak를 실행하기 전에 스크립트를 잠시 잠자기 상태로 놓아야 합니다.

최적 분할은 50/50이 아닐 가능성이 높습니다. 비율을 실험하거나 다음의 분석 기능을 사용할 수 있습니다. 선적 서류 비치[깃허브닷컴] 약화가 성장의 효과를 상쇄할 수 있는 충분한 전력을 갖도록 최적 분할을 계산합니다.

추가 최적화

Grow()는 현재 돈의 특정 %만큼 서버를 성장시킵니다. 이상적으로는 단일 Grow()가 전체를 다시 가져올 수 있도록 하고 싶습니다. 주기를 짧게 유지하는 데 필요한 해킹 및 성장 스레드 수를 계산하는 방법을 찾으십시오.

고려해야 할 마지막이자 가장 어려운 최적화는 전체 주기를 일괄 처리하고 동시에 실행하여 hack() growth() 및 weak()가 서로 짧은 시간 내에 모두 적중하도록 하는 것입니다. 이를 관리하면 나중에 게임에서 더 큰 서버를 크게 활용할 수 있습니다. 한 번의 전체 스레드 해킹으로 모든 돈이 제거되어 보관함을 다시 만드는 데 오랜 시간이 걸리기 때문입니다. 대신에 모두 차례로 적중하는 여러 스크립트 배치를 대기열에 넣고 돈의 더 적은 %를 훔치면 시간이 지남에 따라 GB 램당 더 많은 돈을 얻게 됩니다.

그러나 이 마지막 최적화는 사소하지 않은 문제이며 올바르게 수행하려면 광범위한 계획, 분석 및 리팩토링이 필요합니다.

서버 찾기 및 크래킹: 공격을 위해 더 많은 램 또는 더 많은 목표물 확보

튜토리얼을 따랐다면 몇 개의 하드코딩된 서버를 확인하고 크랙하는 스크립트를 갖게 될 것입니다. 하드코딩된 목록에 의존하는 대신 실행되는 스크립트를 만드십시오. 주사()[깃허브닷컴] 그리고 너비 우선 탐색[ko.wikipedia.org] 게임의 모든 서버 목록을 생성합니다. 그런 다음 다음을 사용하여 연속적으로 반복할 수 있습니다(예: XNUMX초에 한 번). 자다()[깃허브닷컴], 가능한 경우 목록을 반복하고 사용 가능한 포트 오프너와 NUKE.exe를 실행합니다. 확인할 기능이 있습니다. 포트가 충분하다면[깃허브닷컴] 과 해킹 기술[깃허브닷컴].

서버가 크랙되면 어떻게 할지 결정할 수 있습니다.

  • 쉬운 첫 번째 단계는 ns.tprint()[깃허브닷컴] 서버 이름을 알 수 있습니다.
  • 또 하나는 복사[깃허브닷컴] 과 운영[깃허브닷컴] 스크립트를 해킹하여 즉시 돈을 벌 수 있습니다.
  • 세 번째는 가능한 모든 해킹 대상의 순위를 매기고 일부 메트릭별로 정렬한 다음 결과를 인쇄하거나 모든 서버를 리디렉션하여 새 대상이 이전 대상보다 더 나은 경우 새 대상을 해킹하도록 리디렉션하는 것입니다. 간단한 휴리스틱은 최대 돈[깃허브닷컴] 로 나눈 최소 보안[깃허브닷컴]. 더 정확한 것은 최대 자금을 해킹, 성장 및 약화에 걸리는 시간으로 나눈 것입니다. 기능은 다음에서 찾을 수 있습니다. 선적 서류 비치[깃허브닷컴].

 

기타 역학

출시 예정: hacknet, 주식 시장 등에 대한 가이드.

더 많은 가이드:

코멘트 남김

ArabicEnglishFrenchGermanItalianJapaneseKoreanPortugueseSpanish