콘텐츠로 이동

자주 묻는 질문 (FAQ)

설치 및 실행

Q. 악성코드로 인식합니다.

악성코드가 아닙니다!

파이썬으로 제작된 프로그램은 pyinstaller 같은 패키징 도구로 실행파일을 만듭니다. 이런 도구로 봇이나 악성코드가 많이 만들어지다 보니 백신에서 오탐지합니다.

해결방법: 백신 프로그램에서 예외 처리 후 사용

Q. 관리자 권한으로 실행해야 하나요?

아니요. 더블 클릭으로 그냥 실행하면 됩니다. 예전에는 게임 프로세스의 핸들을 닫기 위해 관리자 권한이 필요했지만, 지금은 일반 권한으로 동작합니다.

UAC 창은 모드/스킨 설치·삭제와 자동 업데이트에서, 그것도 대상 폴더가 C:\Program Files 안에 있을 때만 뜹니다.

오히려 D2R 쪽을 확인하세요

D2R이 관리자 권한으로 실행되고 있으면 일반 권한인 이 프로그램이 게임 창을 조작할 수 없습니다. 윈도우가 낮은 권한에서 높은 권한 창으로 가는 입력을 막기 때문입니다(UIPI).

더 곤란한 것은 오류 없이 조용히 무시된다는 점입니다. 스크립트가 성공한 것처럼 보이는데 게임 안에서는 아무 일도 일어나지 않습니다.

D2R 바로가기 → 속성 → 호환성 탭에서 관리자 권한으로 이 프로그램 실행 체크를 해제하세요.

프로그램이 이 상황을 실행 전에 감지해서 안내 창을 띄웁니다. 거기서 관리자 권한으로 다시 시작을 고르면 이 프로그램 쪽을 올릴 수도 있습니다(도움말 > 관리자 권한으로 다시 시작).

Q. "이미 실행중" 이라고 뜹니다.

배틀넷 런처 업데이트 후 발생할 수 있습니다.

해결방법:

  1. 실행 중인 D2R 클라이언트와 배틀넷 런처를 모두 종료
  2. 프로그램을 다시 실행

그래도 안 되면 배틀넷 런처를 재설치해 보세요.

Q. 파일 암호화 키(Encryption Key)가 뭔가요?

프로그램 최초 실행 시 입력을 요청하는 키는 계정 정보 파일을 암호화하기 위한 비밀번호입니다.

  • 입력한 키로 AES 암호화 알고리즘을 사용하여 설정 파일을 암호화합니다
  • 다음 실행 시 동일한 키를 입력해야 저장된 계정 정보를 읽을 수 있습니다
  • 키를 분실하면 default.dat 파일을 삭제하고 계정 정보를 다시 입력해야 합니다

Q. DLL 오류가 발생합니다.

프로그램을 자주 설치/제거하다 보면 공용 DLL 파일이 삭제되는 경우가 있습니다.

해결방법:

  1. 32/64비트 DLL이 혼재되어 있는지 확인
  2. 별도로 Python을 설치한 버전이 있다면 충돌 가능성 확인
  3. 필요한 DLL 파일을 windows\system32 폴더에 복사

Q. 프로그램 창이 화면 밖으로 사라졌습니다.

해결방법: 레지스트리에서 프로그램의 위치(position) 값을 삭제합니다.

  1. 레지스트리 편집기 실행 (regedit)
  2. 프로그램 관련 항목에서 pos 또는 position으로 되어 있는 좌표 값을 삭제
  3. 프로그램 재실행

Q. 윈도우 11에서 화면이 멈춥니다 (프리징).

윈도우 11 24H2 업데이트 이후 멀티 클라이언트 실행 시 화면 멈춤(프리징) 현상이 보고되고 있습니다.

해결방법:

  1. 윈도우 11 23H2로 버전을 내리면 해결됩니다
  2. 그래도 안 되면 메모리 접촉 상태를 확인하세요

접속 문제

Q. 접속이 되지 않습니다.

이 프로그램의 역할은 클라이언트 실행까지입니다. 이후 접속 문제는 계정 또는 배틀넷 서버 문제입니다.

확인사항:

  1. 계정 정보 확인: 사용자, 비밀번호가 정확한지
  2. CAPTCHA: 이전 로그인 실패로 CAPTCHA 활성화 여부
  3. OTP: 인증기 사용 계정은 명령줄 실행 불가
  4. 서버 상태: 점검, 업데이트, 접속자 과다
  5. 클라이언트 버전: 업데이트 필요 여부

Q. CAPTCHA(퍼즐)가 활성화되었습니다.

잘못된 로그인 정보로 반복 시도하면 블리자드에서 CAPTCHA(봇 체크)를 활성화합니다.

해결방법:

  1. 원래 배틀넷 런처로 정상 로그인을 몇 번 수행합니다
  2. CAPTCHA가 더 이상 뜨지 않는 것을 확인한 후 멀티로더를 사용합니다
  3. 공유기에서 새로운 IP를 다시 받으면 더 빨리 풀립니다

Q. 친구목록이 뜨지 않습니다.

명령줄 실행 시 친구목록 로딩에 시간이 걸립니다. 배틀넷 런처는 미리 로그인되어 있어서 빠르지만, 명령줄 실행은 순서상 늦게 로딩됩니다.

잠시 기다리면 표시됩니다.

Q. 연속 실행 시 로그인이 꼬입니다.

토큰 방식은 레지스트리에 토큰을 저장하고 클라이언트가 읽는 방식입니다. 로그인이 완료되기 전에 다음 클라이언트가 실행되면 꼬일 수 있습니다.

해결방법:

  1. 환경설정 변경 → 일반 → 실행 옵션 → 실행 지연을 늘림 (5~6초)
  2. 명령줄 방식 사용 (가능한 경우)
  3. 실행 후 스크립트 설정

Q. "서버 접속 불가"가 특정 계정에서만 발생합니다.

토큰이 꼬이거나 만료된 경우 발생할 수 있습니다.

해결방법:

  1. 해당 계정의 토큰을 삭제하고 다시 발급합니다
  2. 계정 정보를 삭제 후 새로 생성합니다
  3. 인증기를 사용하지 않는 계정이라면 명령줄 방식으로 변경해 봅니다

토큰

Q. 토큰은 어떻게 만드나요?

자동 발급 (권장):

  1. 사용자, 비밀번호 입력
  2. 토큰 입력창 옆 아이콘 클릭
  3. OTP 사용 시 30초 이내 인증

수동 발급:

  1. 크롬 시크릿 창 열기
  2. https://us.battle.net/login/en/?externalChallenge=login&app=OSI 접속
  3. 로그인 후 에러 페이지의 ST= 뒤 값 복사

Q. 토큰은 매번 새로 발급해야 하나요?

아닙니다. 한 번 발급받은 토큰은 계속 사용할 수 있습니다.

단, 다음 경우 재발급이 필요합니다:

  • 비밀번호 변경 시
  • 토큰이 만료된 경우 (장기간 미사용)
  • 접속 오류가 발생하는 경우

최근 토큰 이슈 (2025~2026)

일부 사용자에게서 신규 발급 토큰이 일회용(30분 한정)으로 동작하는 현상이 보고되고 있습니다. 기존에 발급받은 토큰은 정상 동작하지만, 새로 발급받은 토큰이 1회만 사용 가능한 경우가 있습니다. 이는 블리자드 측 정책 변경으로 인한 것이며, 멀티로더에서 해결할 수 있는 문제가 아닙니다.

Q. 구글/페이스북 계정으로 토큰 생성이 안됩니다.

토큰 생성은 배틀넷 이메일과 비밀번호로 직접 로그인해야 합니다. 구글, 페이스북 등 소셜 로그인으로는 토큰을 발급받을 수 없습니다.

해결방법: 배틀넷 계정 설정에서 이메일/비밀번호 로그인을 설정하세요.

Q. 토큰 자동 발급 시 브라우저가 뜹니다.

환경설정 변경 → 고급 설정 → 토큰 생성 → 헤드리스 모드(브라우저 숨김) 활성화

이 옵션을 켜면 토큰 발급 시 브라우저 창이 보이지 않습니다.

Q. OTP 인증 시간이 부족합니다.

환경설정 변경 → 고급 설정 → 토큰 생성 → OTP 대기 시간에서 시간을 늘려주세요. (10~120초)

Q. 인증기 해제 후에도 토큰 발급 시 인증기 승인이 필요합니다.

인증기를 해제했더라도, 블리자드 측에서 여전히 인증기 승인을 요구하는 경우가 있습니다.

해결방법: 토큰 발행 시 Battle.net 모바일 앱에서 30초 이내에 승인을 눌러주세요.


게임 기능

Q. 게임 이름은 어떻게 만들어지나요?

게임 접두어 + 번호 형식입니다.

  • 게임 접두어: MAG
  • 게임 번호: 1
  • 자릿수: 2

→ 결과: MAG01, MAG02, ... MAG99

환경설정 → 게임 정보에서 바꾸며, 방을 자주 바꾼다면 띄워 둘 수 있는 도구 → 게임 정보 창이 편합니다. 접두어 옆 🎲 버튼으로 무작위 접두어를 만들 수 있습니다.

접두어와 번호를 합쳐서 15자

15자는 접두어만의 한도가 아니라 완성된 이름의 한도입니다. 자릿수를 5로 두면 접두어는 10자까지만 들어갑니다.

넘치면 접두어 쪽이 잘리고 미리보기가 빨간색이 됩니다. 번호는 방을 구분하는 값이라 잘리지 않습니다. 한글도 15자입니다.

Q. 여러 계정을 한 번에 방에 넣고 싶습니다.

자동 기능 (Ctrl+A)을 사용하세요.

  1. 모든 계정을 실행
  2. 메인 계정이 게임 생성, 나머지가 자동 참가
  3. Ctrl+A를 누르면 나가기→생성→참가가 자동 실행

또는 컨텍스트 메뉴에서:

  1. 메인 계정 선택 → 우클릭 → 게임 생성
  2. 나머지 계정 선택 → 우클릭 → 게임 참가

자동(Ctrl+A)은 게임 안에서 실행

자동 기능은 모든 계정이 게임 방 안에 있는 상태에서 실행해야 합니다. 대기실에서 실행하면 오동작합니다. 대기실에서는 방 만들기/참가를 개별로 해야 합니다.

Q. 게임 생성/참가 시 입력이 안됩니다.

스크립트 속도 조정이 필요합니다.

환경설정 변경 → 스크립트 관리 → 명령어 지연 시간(초) 값을 조정합니다.

  • 기본값: 0.09초
  • 0.025 단위로 조금씩 늘려보세요
  • 권장 범위: 0.075 ~ 0.15

Q. 방 제목 대신 비밀번호로 방이 생성됩니다.

원인

게임 생성/참가 스크립트는 클립보드를 이용해 텍스트를 입력합니다:

    copy {game_name},       # 1. 게임 이름을 클립보드에 복사
    send ctrl+v,            # 2. 붙여넣기
    sleep 0.1,
    copy {game_password},   # 3. 비밀번호를 클립보드에 복사 (이때 클립보드가 바뀜)
    send tab,               # 4. 비밀번호 입력창으로 이동
    send ctrl+v,            # 5. 붙여넣기

send ctrl+v → OS 입력 큐에 키 이벤트를 넣기만 하고 즉시 다음 줄로 넘어갑니다. 게임 클라이언트는 자기 메시지 루프에서 이 키 이벤트를 꺼내서 처리해야 하는데, 게임이 아직 ctrl+v를 처리하기 전에 스크립트는 이미 copy {game_password}를 실행하고 있으므로 게임이 뒤늦게 ctrl+v를 처리할 때 클립보드를 읽으면 이미 암호로 바뀌어 있게 됩니다. 클립보드 경쟁 조건 (Race Condition)

위와 같이 2번(ctrl+v)이 실행되기 전에 3번(copy)이 먼저 실행될 수 있다는 것입니다. 클립보드가 이미 {game_password}로 덮어씌워진 상태에서 붙여넣기가 되므로, 게임 이름 칸에 암호가 입력됩니다.

이런 현상은 PC 성능이 느리거나, 다른 프로그램이 클립보드를 사용하거나, sleep 시간이 부족할 때 발생합니다. 특히 게임의 프레임레이트를 60fps 미만으로 낮게 설정하면 위 현상이 발생할 수 있습니다. 프레임레이트가 60fps면 메시지 루프가 약 16ms마다 한 번 돌지만, 30fps면 약 33ms마다 한 번 돕니다. 스크립트의 sleep 0.1(100ms)이면 60fps: 100ms 동안 약 6프레임으로 ctrl+v 처리할 기회 충분하지만 30fps 이하로 프레임 드랍이 심하면 100ms 안에 입력 처리를 못 할 수 있습니다.

해결방법:

스크립트에서 copy {game_password}, 앞에 sleep 0.5,를 추가합니다.

    ...
    sleep 0.5,        # 대기 0.5초 전 후로 sleep
    copy {game_password},
    ...
다른 방법으로 write 사용하는 방법이 있습니다. 이 방법은 클립보드 자체를 안 쓰므로 근본적 해결이 되긴 하지만 클립보드를 사용하는 방법보다는 약간 느리게 동작합니다.

게임 만들기 (write 버전)

    activate,
    count plus,
    click {create_x} {create_y},
    click {create_title_x} {create_title_y},
    send ctrl+a,
    send del,
    write {game_name},
    sleep 0.1,
    send tab,
    send ctrl+a,
    send del,
    write {game_password},
    send enter,
    sleep 0.2
게임 참가 (write 버전)
    activate,
    click {join_x} {join_y},
    click {join_title_x} {join_title_y},
    send ctrl+a,
    send del,
    write {game_name},
    sleep 0.1,
    send tab,
    send ctrl+a,
    send del,
    write {game_password},
    send enter,
    sleep 0.2
copy + send ctrl+v 2줄이 write 1줄로 줄어든 것입니다. 클립보드를 사용하지 않으므로 sleep도 최소한만 있으면 됩니다.

Q. 자동(Ctrl+A) 기능이 제대로 동작하지 않습니다.

스크립트의 클릭 좌표가 현재 해상도/모드와 맞지 않을 수 있습니다.

확인사항:

  1. 창모드로 실행하고 있는지 확인
  2. 환경설정 → 스크립트 관리 → 스크립트 실행 전 창 크기 조정 활성화
  3. 모드(스킨) 사용 시 버튼 위치가 다를 수 있으므로 좌표 수정 필요
  4. Ctrl+N(생성), Ctrl+J(참가)가 각각 잘 동작하는지 먼저 확인

Q. 스크립트 실행 중 오동작합니다.

스크립트 동작 중에 마우스나 키보드를 조작하면 오동작합니다.

  • 다른 프로그램으로 포커스가 이동하면 해당 프로그램에 키 입력이 전달됩니다
  • 채팅창이나 메신저가 열려 있으면 계정 정보가 입력될 수 있으므로 주의하세요
  • 스크립트 실행 중에는 아무 조작도 하지 않는 것이 좋습니다

Q. 다른 계정으로 방을 생성하고 싶습니다.

기본적으로 auto 스크립트는 메인(master) 계정이 방을 생성합니다. 다른 계정(예: slave0)이 방을 생성하도록 변경하려면:

    loop {all_games},
    execute exit,
    end,
    loop {slave0},
    execute create,
    end,
    loop {slave_games},
    execute join,
    end,
    loop {master_game},
    execute join,
    end,
    sleep 4.5,
    activate {master_game}

Q. /nopickup 상태로 게임을 시작하고 싶습니다.

/nopickup은 실행 시 명령줄 옵션으로 지원되지 않습니다. 별도 스크립트로 채팅창을 열어 입력할 수 있습니다:

    send enter,
    send /,
    send n,
    send o,
    send p,
    send i,
    send c,
    send k,
    send u,
    send p,
    send enter,

스크립트

Q. 스크립트 시간 조정 방법이 있나요?

전체 속도 조정:

환경설정 → 스크립트 관리 → 명령어 지연 (초)

  • 값을 낮추면 빨라짐 (오동작 가능)
  • 값을 높이면 느려짐 (안정적)
  • 권장: 0.075 ~ 0.15

개별 지연 추가:

스크립트 편집기에서 sleep 명령어를 사용합니다.

    sleep 1,        # 1초 대기 후 시작
    click 850 55,
    # ...

Q. 클릭 위치는 어떻게 얻나요?

  1. 환경설정 → 스크립트 관리 → 스크립트 실행 전 창 크기 조정 활성화
  2. 창모드에서 실행 (1280x720)
  3. AutoHotkey의 Windows Spy 같은 도구로 좌표 확인

비율 좌표 사용:

click 0.5 0.5    # 정중앙

비율 좌표 계산법:

  1. 게임 해상도를 1280x720으로 설정
  2. 화면 캡처 후 원하는 위치의 좌표(x, y)를 얻음
  3. x좌표 ÷ 1280, y좌표 ÷ 720으로 비율 계산

예: 좌표 (640, 314) → click 0.5 0.436

Q. 자동에서 레거시 모드를 생략하고 싶습니다.

환경설정 → 스크립트 관리에서 auto 스크립트를 수정합니다.

레거시 관련 부분을 삭제하세요:

    loop {all_games},
    execute exit,
    end,
    loop {master_game},
    execute create,
    end,
    loop {slave_games},
    execute join,
    end,
    sleep 4.5,
    activate {master_game}

Q. 메인/부캐 스킨이 다를 때 나가기가 안됩니다.

사용하는 모드(스킨)별로 나가기 버튼 위치가 다르면, 메인용 나가기 스크립트를 별도로 만들어야 합니다.

; 메인용 나가기 스크립트 (스킨에 맞는 좌표)
    activate,
    send space,
    send esc,
    sleep 0.1,
    click [메인 나가기 x좌표] [y좌표],
    sleep 0.2

; 오토 스크립트에서 분리
    loop {master_game},
    execute exit_main,
    end,
    loop {slave_games},
    execute exit,
    end,
    loop {master_game},
    execute create,
    end,
    loop {slave_games},
    execute join,
    end,
    sleep 4.5,
    activate {master_game},
    beep

가급적 버튼 위치가 변경되지 않은 스킨을 사용하는 것을 권장합니다.


단축키

Q. 단축키가 먹통이 됩니다.

한/영키가 분리된 103/106키 키보드 문제입니다.

환경설정 변경 → 고급 설정 → 키보드 → 103/106키 키보드 사용 활성화

설정 후 프로그램 재시작

한/영 키가 분리되어 있지 않은 키보드

Alt키와 한/영 키가 같은 키인 키보드는 이 설정이 필요 없습니다.

Q. 단축키를 변경하고 싶습니다.

**환경설정 변경 → 단축키 관리 ** 에서 원하는 키 조합으로 변경합니다.

예: ctrl+a를 ctrl+0으로 변경

키 예약어: alt, ctrl, shift, windows

Q. 작업 관리자를 열었더니 단축키가 안 먹힙니다.

작업 관리자 등 시스템 프로그램을 열면 단축키가 먹히지 않는 경우가 있습니다.

해결방법: Ctrl+Alt를 동시에 한 번 눌러주면 해결됩니다.


실행 문제

Q. 여러 개 실행 시 꺼져버립니다.

원인:

  • PC/그래픽카드 메모리 부족
  • 실행 간격이 너무 빠름

해결방법:

  • 환경설정 변경 → 일반 → 실행옵션 → 실행 지연(초)을 4초 이상으로 증가

메모리 참고사항

  • 16GB: 2~3 클라이언트 가능 (저사양 스킨 권장)
  • 32GB: 5 클라이언트 가능 (다소 버벅일 수 있음)
  • 64GB: 5개 이상 안정적 사용 가능

Q. D2R 클라이언트가 자꾸 죽습니다.

클라이언트를 최소화하면 메모리 누수 버그가 있습니다. 사용하지 않더라도 화면 뒤쪽에 띄워 놓으세요.

Q. 업데이트 오류가 뜨면서 실행이 안됩니다.

여러 클라이언트를 연속 실행할 때 중간에 업데이트 오류가 발생하는 경우입니다.

해결방법:

  1. 모든 D2R 클라이언트와 배틀넷 런처 종료
  2. 실행 간격을 늘림 (5~6초 이상)
  3. 그래도 안 되면 복사해 둔 D2R 폴더를 삭제하고 원본을 다시 복사

Q. 명령줄·웹 토큰 방식만 실행이 안 됩니다 (배틀넷 런처로는 됩니다).

게임 파일에 '관리자 권한으로 실행'이 체크돼 있을 가능성이 큽니다.

증상이 이렇다면 거의 이 경우입니다.

  • 명령줄과 웹 토큰 방식이 둘 다 막힌다
  • 같은 계정을 배틀넷 런처 방식으로 바꾸면 정상이다
  • 계정 일부만 막힌다 (예: 8개 중 5개)
  • 토큰을 다시 발급해도 똑같다
  • 로그에 There is a problem executing by cmd. 또는 by token. 이 남는다

확인·해결 방법

  1. 그 계정의 런처 칸에 적힌 d2r.exe 를 탐색기에서 찾습니다
  2. 오른쪽 클릭 → 속성 → 호환성 탭
  3. 관리자 권한으로 이 프로그램 실행 체크를 해제합니다

왜 일부 계정만 막히나요

이 설정은 윈도우 레지스트리에 파일 경로별로 저장됩니다. 계정마다 다른 폴더의 d2r.exe 를 쓰고 있다면, 체크해 둔 폴더의 계정만 막힙니다.

배틀넷 런처 방식이 멀쩡한 이유도 같습니다 — 그 방식은 d2r.exe 가 아니라 런처를 띄우고, 게임은 런처가 알아서 실행하기 때문입니다.

예전 버전에서는 왜 괜찮았나요

예전에는 이 프로그램 자체가 관리자 권한으로 실행됐습니다. 그래서 게임이 그 권한을 그대로 물려받아 이 설정이 드러나지 않았습니다. 지금은 일반 권한으로 실행되므로, 관리자 권한을 요구하는 프로그램은 띄울 수 없습니다.

급하면 도움말 → 관리자 권한으로 다시 시작으로도 됩니다. 다만 체크를 해제하는 쪽을 권합니다.

v4.4 build 68 이후

실행 버튼을 누르면 먼저 확인해서 미리 알려 줍니다. 이 설정뿐 아니라 런처 경로가 방식에 맞는지(웹 토큰·명령줄은 d2r.exe, 런처 방식은 런처), 파일이 실제로 있는지, 토큰·비밀번호가 비었는지도 함께 봅니다.

Q. 배틀넷 런처 방식에서 실행이 안됩니다.

확인사항:

  1. 런처 경로가 올바른지 확인 (Diablo II Resurrected Launcher.exe)
  2. 동시에 띄우는 개수만큼 별도 폴더가 필요합니다(정션이면 충분) — 폴더 복사를 해야 하나요? 참고
  3. 실행 후 스크립트를 after_launch로 설정했는지 확인
  4. 환경설정 변경 → 고급 설정 → 배틀넷 런처 → 런처 대기 시간을 늘려보세요

로그를 먼저 보세요. 어느 단계에서 멈췄는지 남습니다.

로그가 말하는 것 뜻
창이 안 떴다 런처가 뜨지 않았거나 너무 느립니다 — 대기 시간을 늘리세요
로그인 실패 / 인증기 대기 아이디·비밀번호가 틀렸거나 OTP 승인을 기다리는 중입니다
실행 버튼을 눌렀는데 게임이 안 떴다 런처는 떴지만 게임 실행이 안 된 경우입니다

이미 로그인돼 있으면 로그인 과정을 건너뜁니다

런처에 웹 세션이 남아 있으면 로그인 창 없이 메인 화면이 바로 뜹니다. 이 경우를 가려내므로 메인 화면에 계정이 타이핑되는 일은 없습니다.

Q. 실행 후 자동으로 클릭(캐릭터 선택 화면)이 안됩니다.

최근 버전부터 실행 후 스크립트를 별도로 설정해야 합니다.

해결방법: 각 계정에서 실행 후 스크립트를 after_launch로 설정하고 저장하세요.

Q. 듀얼 모니터에서 보조 모니터 창이 주 모니터로 이동합니다.

스크립트 실행 전 창 크기 조정 옵션이 활성화되어 있으면, 스크립트 실행 시 창을 리사이즈하면서 주 모니터로 이동할 수 있습니다.

해결방법: resize_window = False로 설정하세요.

Q. 최소 창 크기 제한이 있나요?

게임 화면은 1280x720 이하로는 100% 표시가 불가능합니다. 이 크기 이하에서는 좌측/하단부터 잘리게 됩니다. sizer 같은 도구로 더 줄일 수는 있지만, 좌표가 달라져서 멀티로더의 클릭 위치가 맞지 않게 됩니다.


설정 관련

Q. 설정이 초기화됩니다.

D2R은 마지막 저장/종료한 설정이 모든 클라이언트에 적용됩니다.

해결방법: 클라이언트별 설정파일 지정

  1. %userprofile%\Saved Games\Diablo II Resurrected\Settings.json 복사
  2. 원하는 이름으로 저장 (예: Settings_Low.json)
  3. 계정 설정에서 설정파일 선택

설정 파일 동작 원리

A 계정에 Settings_A.json을 지정하면, 실행 시 Settings_A.json을 Settings.json으로 교체하여 로드합니다. 이후 게임 내에서 설정을 변경해도 반영되는 파일은 Settings_A.json이 아닌 원래 Settings.json입니다. 따라서 설정 변경 후에는 Settings.json을 다시 복사하여 Settings_A.json으로 저장해야 합니다. 설정 파일은 Settings로 시작해서 .json으로 끝나는 파일명이어야 합니다.

계정 창의 '활성 파일 저장' 버튼

지금 게임에 적용돼 있는 Settings.json을 그 계정의 설정파일로 바로 복사해 줍니다. 손으로 복사할 필요가 없습니다. 저장되는 곳은 실행 파일 옆의 settings/ 폴더이고, 목록에는 [개인화] / [D2R] 배지로 어느 쪽 파일인지 표시됩니다.

Q. 계정 정보를 저장했는데 사라졌습니다.

계정 정보 입력 후 반드시 파일 → 저장 (Ctrl+S)을 해야 합니다. 저장하지 않으면 프로그램 종료 시 사라집니다.

Q. 설정을 다른 PC로 옮기고 싶습니다.

환경설정 → 현재 설정을 파일로 저장으로 설정 파일을 내보낸 후, 새 PC에서 환경설정 → 파일에서 설정 읽기로 가져옵니다.

계정 정보는 별도로 default.dat 파일을 복사하세요.

가져오기는 한꺼번에 적용됩니다

파일을 전부 읽어 본 뒤에 적용하므로, 중간에 알아볼 수 없는 값이 있어도 절반만 바뀐 상태가 되지 않습니다. 모르는 항목은 건너뛰고 나머지를 적용합니다.

가져온 설정은 바로 저장되므로, 가져온 뒤 다른 작업 없이 프로그램을 닫아도 남아 있습니다.

이 PC에만 해당하는 값은 따라가지 않습니다

창 위치·크기, 최근 연 파일, 설치한 모드 목록, 한 번 내린 동의(브라우저 쿠키·명령줄 안내)는 내보내지 않습니다. 새 PC에서 다시 정하면 됩니다.

Q. INI 파일은 어디서 만드나요?

평소에는 만들 필요가 없습니다. 설정은 모두 환경설정 → 환경설정 변경에서 관리하고 자동으로 저장됩니다.

INI 파일은 설정을 주고받을 때만 씁니다.

  • 내보내기: 환경설정 → 현재 설정을 파일로 저장
  • 가져오기: 환경설정 → 파일에서 설정 읽기

예전처럼 프로그램이 시작할 때 INI를 읽어 들이지는 않습니다.

Q. 이전 버전을 계속 사용해도 되나요?

쓸 수는 있지만 권장하지 않습니다. 모양만 바뀐 것이 아니라 동작이 달라진 부분이 있습니다.

  • 관리자 권한 없이 실행됩니다(예전 버전은 UAC 창이 떴습니다)
  • 배틀넷 런처 로그인이 좌표가 아니라 화면 요소 이름으로 동작합니다 — 런처 업데이트에 덜 깨집니다
  • 창 배치가 '화면영역 + 계정 배정' 방식으로 바뀌었습니다

도움말 → 업데이트 확인으로 새 버전을 받을 수 있습니다. 바뀐 내용은 도움말 → 변경 이력에서 봅니다(프로그램에 동봉돼 있어 네트워크 없이도 보이고, 지금 쓰는 빌드에 맞는 내용만 나옵니다).


폴더 및 모드

Q. 폴더 복사를 해야 하나요?

인증 방식 별도 폴더 정션(Junction)으로 대체
명령줄 불필요 —
웹 토큰 불필요 —
스팀 불필요 —
배틀넷 런처 동시에 띄울 개수만큼 필요 가능 (권장)

배틀넷 런처 방식만 폴더 복사가 필요한 이유

명령줄 · 웹 토큰 · 스팀은 d2r.exe를 직접 띄웁니다. 게임이 다중 실행을 막는 데 쓰는 핸들은 이 프로그램이 닫아 주므로, 한 폴더에서 여러 개를 띄울 수 있습니다. 그래서 복사본이 필요 없습니다.

배틀넷 런처는 다릅니다. 이 프로그램이 게임을 직접 띄우는 것이 아니라 런처에게 띄워 달라고 부탁하는 방식입니다. 런처는 자기 설치 폴더의 파일로 게임을 띄우는데, 그 폴더의 파일로 이미 D2R이 하나라도 돌고 있으면 그 클라이언트를 어떤 방식으로 띄웠든(명령줄로 띄웠든 웹 토큰으로 띄웠든) 새로 띄우기를 거부합니다.

핸들을 닫는 것은 d2r.exe의 다중 실행 제한을 푸는 것이라, 런처가 스스로 내리는 이 판단까지 바꾸지는 못합니다. 그래서 런처 방식만 폴더 경로를 따로 둬야 합니다.

런처가 보는 것은 경로입니다. 실제 파일이 같아도 경로가 다르면 새로 띄웁니다 — 그래서 정션으로 충분합니다.

해결 방법: 동시에 띄울 개수만큼 경로를 따로 만들고, 계정마다 런처 경로를 각자의 폴더 안쪽으로 지정합니다.

D:\Games\Diablo II Resurrected\      ← 원본 (계정 A용)
D:\Games\Diablo II Resurrected2\     ← 계정 B용
D:\Games\Diablo II Resurrected3\     ← 계정 C용

프로그램이 대신 만들어 줍니다

실행할 때 그 폴더로 게임이 이미 떠 있으면 물어본 뒤 정션 폴더를 만들고 그 계정의 런처 경로를 바꿔 실행합니다. 손으로 만들 필요가 없습니다.

이미 만들어 둔 정션이 비어 있으면 그것을 다시 씁니다. 실행할 때마다 폴더가 늘어나지 않고, 번호도 빈 자리를 채웁니다(2가 비면 6을 만들지 않고 2를 씁니다).

바뀐 런처 경로는 계정 목록의 변경 사항으로 남으므로, 프로그램을 닫을 때 저장할지 물어봅니다.

직접 만들려면 — 정션이면 충분합니다, 디스크를 쓰지 않습니다

런처는 경로를 기준으로 판단하므로, 실제 파일을 복사하지 않고 정션으로 경로만 나눠도 동작합니다. 설치 폴더가 수십 GB이니 복사보다 훨씬 낫습니다.

도구 → 폴더 연결에서 만들거나, 명령 프롬프트에서 직접 만들 수 있습니다.

mklink /j "D:\Games\Diablo II Resurrected3" "D:\Games\Diablo II Resurrected"

지울 때는 정션 폴더만 지우면 되고 원본 파일에는 영향이 없습니다.

정션이 안 될 때는 다시 만들어 보세요

정션이 되다가 안 되는 경우가 있습니다. 가리키는 원본 폴더가 옮겨졌거나 게임이 업데이트되면서 어긋났을 수 있습니다. 그 정션을 지우고 새로 만들면 대개 해결됩니다.

그래도 안 되면 그 계정만 설치 폴더를 통째로 복사해서 쓰거나, 폴더가 아예 필요 없는 웹 토큰 방식으로 바꾸세요.

Q. 모드 적용은 어떻게 하나요?

  1. D2R 설치폴더\mods\모드명 폴더에 모드 파일 배치
  2. 계정 설정에서 런처를 d2r.exe로 선택
  3. 모드 콤보박스에서 모드 선택
  4. 저장 후 실행

참고

Launcher.exe는 실행 방식이 달라 모드 선택이 안됩니다.

모드 압축 해제 확인

모드 파일의 폴더 구조를 확인하세요. 폴더 안에 같은 이름의 폴더가 중첩되어 풀리는 경우가 많습니다.

Q. 나가기 버튼 클릭이 이상한 위치입니다.

사용하는 모드(스킨)에서 버튼 위치가 변경된 경우입니다.

해결방법:

  1. 기본 스킨 사용
  2. 또는 환경설정 → 스크립트 관리에서 나가기 스크립트의 클릭 좌표 수정

키보드로 나가기:

    activate,
    send esc,
    send up,
    send enter

엽굵 모드 사용자

엽굵 모드의 경우 나가기 버튼 좌표를 click 0.5 0.555로 수정하면 됩니다. 또는 모드 파일에서 data\global\ui\layouts\pauselayouthd.json 파일을 삭제하면 종료 창이 기본 모드로 변경됩니다.


스페이스바 관련

Q. 스페이스바를 다른 기능(큐브 등)에 바인딩했더니 자동 기능이 안됩니다.

나가기 스크립트에서 인벤토리/상태창을 닫기 위해 send space를 사용합니다. 스페이스바를 다른 용도로 바인딩하면 오동작합니다.

해결방법: 설정 파일에서 exit 스크립트의 send space, 라인을 삭제하세요.

    activate,
    send esc,        # send space 라인 삭제
    sleep 0.1,
    click 0.5 0.436,
    sleep 0.2

기타

Q. 매크로가 동작하지 않습니다.

권한을 맞추세요. 입력을 보내는 쪽과 받는 쪽의 권한 수준이 같아야 합니다. 윈도우는 낮은 권한에서 높은 권한 창으로 가는 입력을 조용히 버립니다(UIPI).

  • D2R을 일반 권한으로 실행한다면(권장) AHK·로지텍 GHub·PowerToys도 일반 권한으로 실행합니다.
  • D2R이 관리자 권한으로 떠 있다면 그 도구들도 관리자 권한으로 실행해야 합니다.

Q. 사용 중 밴(정지)될 수 있나요?

이 프로그램의 사용으로 발생하는 모든 문제에 대한 책임은 사용자 본인에게 있습니다.

Q. 외부 프로그램(AHK 등)에서 멀티로더 단축키를 전송하면 오동작합니다.

외부에서 단축키를 전송하면 활성화된 창이 없어 모든 클라이언트가 Slave로 인식될 수 있습니다. Main과 Slave는 실행 시점에 활성화된 창을 기준으로 판단합니다.

Q. 로그 파일은 어떻게 확인하나요?

문제 해결을 위해 로그 파일을 확인할 수 있습니다.

  1. 메뉴에서 로그 보기 활성화
  2. d2r.log 파일이 생성됩니다
  3. SnakeTail 같은 프로그램으로 실시간 모니터링 가능

Note

로그 파일에는 계정 정보(패스워드 등)가 표시되지 않으므로, 문제 발생 시 로그를 공유해도 안전합니다.

Q. 배틀넷 런처 없이도 사용 가능한가요?

명령줄 방식이라면 배틀넷 런처 없이 사용 가능합니다. 다만 업데이트나 CAPTCHA 해결 시에는 배틀넷 런처가 필요합니다.

Q. 명령줄 방식과 토큰 방식 중 어떤 것이 좋나요?

토큰 방식을 권합니다.

항목 명령줄 토큰
인증기 해제 필요 사용 가능
폴더 복사 불필요 불필요
접속 안정성 서버·계정에 따라 막히는 일이 있음 높음
아시아 서버 전원 차단된 적 있음 (이후 복구) 사용 가능
보안 비밀번호가 작업 관리자에 보임 토큰으로 인증

왜 토큰이 더 안정적인가

토큰 방식은 배틀넷 런처가 쓰는 것과 사실상 같은 흐름입니다. 로그인해서 받은 토큰으로 인증하므로 블리자드가 의도한 경로를 그대로 탑니다.

명령줄은 디아블로2 시절부터 있던 옛 경로라, 블리자드가 마음먹으면 통째로 끌 수 있습니다. 2023년에 아시아 서버에 대해 모든 사용자의 명령줄 접속이 막힌 적이 있습니다(이후 복구).

토큰 방식은 그때도 멀쩡했습니다. 잘 되던 계정이 어느 날부터 접속이 안 되는 사례도 명령줄 쪽에서 더 자주 나옵니다.

  • 되도록 토큰 방식을 쓰세요
  • 명령줄은 간단하지만 언제든 막힐 수 있는 길이라고 보시면 됩니다
  • 접속이 안 될 때는 같은 계정을 토큰 방식으로 바꿔 시험해 보세요. 그것으로 되면 명령줄이 막힌 것입니다