kone
소미소프트

소미소프트

nw.js 업그레이드 및 문제해결

03/12/2026, 22:56:18
정보
8543 views · 44 likes

얼마나 이 글을 읽고 정작 사용 하실 분이 계실진 모르겠지만, 적어도 방주 가지고 있는 분이라면 필요한 정보라고 생각합니다.

피드백 받아서 완성된 가이드이지만, 내용에 개선할 부분이 있다면 댓글 달아주세요.




여기 자료들 받아 게임 하시거나 다른 RPG Maker 게임을 하시다보면 nw.js 실행 파일을 자주 보실겁니다.
nw.js 은 알만툴 런타임(RPG Maker Runtime) 입니다.
nw.js 는 RPG Maker MV 와 MZ 가 사용합니다.

nw.js를 업그레이드 하는 주된 이유는 최신 Chromium 및 Node.js 버전을 반영하여
퍼포먼스(속도) 향상, 보안 취약점 해결, 그리고 새로운 웹 API 및 ES 기능 지원을 통해 애플리케이션의 안정성과 기능성을 확보하기 위함입니다.
최신 버전은 더 나은 렌더링 성능과 안정성을 제공합니다

이 가이드는 얘초에 실행이 불가하던 게임에 대한 문제해결이 아니라,
잘 되던 게임이 nw.js와 윈도우 시스템 호환 문제를 겪을 시의 문제해결 대처 가이드이며, 동시에 nw.js 버전 바꾸기 가이드이기도 합니다.
알만툴이 안 깔려있는 일반 유저가 따라할 수 있기 위해 작성 되었습니다.


nw.js 업그레이드로 문제해결이 더 많겠지만, 모든 상위 nw.js 버전이 전 버전에 호환이 된다는 보장은 없습니다.




문제 #1:
nw.js 버전 불일치나 윈도우 호환 환경 변경으로 인해 게임 실행시 무반응일 때가 있습니다.

문제 #2:
게임 실행 후 타이틀까진 문제 없는데, '게임 실행' 누르면 꺼져버립니다.

오래 된 버전의 runtime 사용 시 발생할 수 있습니다.




참고#1 - 정의:
nw.js            특정 하나의 파일명이 아니라, 알만툴 런타임인 nw.js 그 자체 관련된 전반적인 것들
RPGMV        RPG Maker MV
RPGMZ        RPG Maker MZ

참고#2 - RPGMV 파일 구조:
my-app/
├─ credits.html                   ← 게임/프로그램 크레딧을 표시하는 HTML 파일
├─ d3dcompiler_47.dll       ← Direct3D 셰이더 컴파일러 라이브러리 파일
├─ ffmpeg.dll                      ← 오디오/비디오 변환 및 처리용 FFmpeg 라이브러리
├─ Game.exe                      ← 게임 실행 파일
├─ icudtl.dat                       ← ICU (International Components for Unicode) 국제화 데이터 파일
├─ libEGL.dll                       ← OpenGL ES와 같은 그래픽 API와의 인터페이스를 제공하는 라이브러리 파일
├─ libGLESv2.dll                 ← OpenGL ES 2.0 API를 구현하는 라이브러리 파일
├─ natives_blob.bin           ← 네이티브 코드 초기화를 위한 이진 파일
├─ node.dll                         ← Node.js 실행 환경을 제공하는 DLL 파일
├─ nw.dll                             ← NW.js 프레임워크의 핵심 DLL 파일
├─ nw_100_percent.pak     ← NW.js 리소스 파일(100% 해상도)
├─ nw_200_percent.pak     ← NW.js 리소스 파일(200% 해상도)
├─ nw_elf.dll                       ← NW.js 관련 ELF 파일을 처리하는 관련 라이브러리 파일
├─ package.json                ← Node.js 애플리케이션의 패키지 정보와 의존성을 정의하는 JSON 파일
├─ resources.pak              ← 게임/애플리케이션 리소스를 담은 압축 파일
├─ snapshot_blob.bin       ← Electron 앱의 빠른 시작을 위한 스냅샷 파일
├─ ...
├─ www/
│ ├─ index.html               ← 웹 애플리케이션의 메인 HTML 파일.
│ ├─ package.json          ← 프로젝트 설정, 의존성, 스크립트 등을 정의하는 JSON 파일.
│ ├─ audio/
│ │ └─ ...
│ ├─ data/
│ │ └─ ...
│ ├─ fonts/
│ │ └─ ...
│ ├─ icon/
│ │ └─ ...
│ ├─ img/
│ │ └─ ...
│ ├─ js/
│ │ ├─main.js                      ← 애플리케이션의 실행 시작점이며, 주요 기능을 처리하는 JavaScript 파일
│ │ ├─plugins.js                  ← 애플리케이션에서 사용하는 플러그인들의 설정 및 초기화 파일
│ │ ├─rpg_core.js               ← RPG 게임의 핵심 기능을 정의하는 JavaScript 파일
│ │ ├─rpg_managers.js      ← 게임의 관리 시스템(게임 진행, 타이머 등)을 처리하는 파일
│ │ ├─rpg_objects.js          ← 게임 내 객체들(플레이어, 아이템 등)을 정의하는 파일
│ │ ├─rpg_scenes.js          ← 게임 씬(장면, 화면) 처리 및 전환을 담당하는 파일
│ │ ├─rpg_sprites.js           ← 게임의 스프라이트(캐릭터, 객체)의 그래픽 처리 파일
│ │ ├─rpg_windows.js       ← RPG 게임의 윈도우(메뉴, 대화창 등) 처리 파일
│ │ ├─node_modules/       ← JS 모듈 (필요 시)
│ │ └─ ...
│ └─ ...
└─ ...

참고#3 - RPGMZ 파일 구조:
my-app/
├─ credits.html                        ← 게임/프로그램 크레딧을 표시하는 HTML 파일
├─ d3dcompiler_47.dll            ← DirectX 3D 그래픽 컴파일러 라이브러리 파일
├─ ffmpeg.dll                           ← 비디오 및 오디오 파일을 처리하는 FFmpeg 라이브러리의 DLL 파일
├─ Game.exe                           ← 게임 실행 파일
├─ icudtl.dat                            ← ICU (International Components for Unicode) 데이터 파일
├─ index.html                           ← 웹 애플리케이션의 시작 페이지를 정의하는 HTML 파일
├─ libEGL.dll                             ← OpenGL ES와 같은 그래픽 API와의 인터페이스를 제공하는 라이브러리 파일
├─ libGLESv2.dll                       ← OpenGL ES 2.0 API를 구현하는 라이브러리 파일
├─ node.dll                               ← Node.js 실행 환경을 제공하는 DLL 파일
├─ notification_helper.exe       ← 프로그램에서 사용자에게 알림을 제공하는 실행 파일
├─ nw.dll                                   ← NW.js 프레임워크의 핵심 DLL 파일
├─ nw_100_percent.pak          ← NW.js 리소스 파일(100% 해상도)
├─ nw_200_percent.pak          ← NW.js 리소스 파일(200% 해상도)
├─ nw_elf.dll                              ← NW.js에서 사용하는 ELF 관련 라이브러리 파일
├─ package.json                       ← Node.js 애플리케이션의 패키지 정보와 의존성을 정의하는 JSON 파일
├─ resources.pak                     ← NW.js 애플리케이션의 리소스 패키지 파일
├─ v8_context_snapshot.bin    ← V8 JavaScript 엔진의 초기화 상태를 저장한 바이너리 파일
├─ ...
├─ audio/
├─ data/
├─ img/
├─ js/
│ ├─ main.js                          ← 애플리케이션의 실행 시작점이며, 주요 기능을 처리하는 JavaScript 파일
│ ├─ plugins.js                      ← 애플리케이션에서 사용하는 플러그인들의 설정 및 초기화 파일
│ ├─ rmmz_core.js               ← RPG Maker MZ의 핵심 기능을 제공하는 JavaScript 파일
│ ├─ rmmz_managers.js     ← RPG Maker MZ의 게임 관리 기능을 담당하는 JavaScript 파일
│ ├─ rmmz_objects.js         ← RPG Maker MZ의 게임 오브젝트 및 클래스 정의 파일
│ ├─ rmmz_scenes.js          ← RPG Maker MZ의 게임 씬 관련 로직을 처리하는 JavaScript 파일
│ ├─ rmmz_sprites.js          ← RPG Maker MZ의 스프라이트 렌더링 관련 기능을 담당하는 JavaScript 파일
│ ├─ rmmz_windows.js      ← RPG Maker MZ의 윈도우와 관련된 UI 요소를 처리하는 JavaScript 파일
│ └─ ...
├─ fonts/
├─ movies/
└─ ...




해결 시도 #1:
우선 게임이 RPGMMV인지 RPGMMZ인지 확인합시다.
참고#1, 참고#2 를 확인해주세요.
RPGMV일 경우, 게임파일\www\js 경로 파일명들이 rpg_..js 로 보이며,
RPGMZ일 경우, 게임파일\js 경로 파일명들이 rmmz_..js 로 보입니다.

최신 nw.js 버전 다운로드를 해주세요.
https://nwjs.io/downloads 에서 Stable normal 최신 버전을 받아주세요.



다음은 구버전 nw.js 파일들을 게임 폴더에서 치우도록 하겠습니다.

아래 파일들을 제외하고, 나머지 파일들을 치워주세요 (우선 지우지 말고 백업).


게임이 RPGMV일 경우:

www 폴더

credits.html

package.json

그리고 같이 동봉 되어 있는 게임 제품 설명서, .txt, .pdf 등 (이 파일들을 날려버리는 분들이 많아 보이는데, 보존하는 걸 권장합니다)


게임이 RPGMZ일 경우:

audio 폴더

data 폴더

img 폴더

js 폴더

fonts 폴더

movies 폴더

credits.html

그리고 같이 동봉 되어 있는 게임 제품 설명서, .txt, .pdf 등 (이 파일들을 날려버리는 분들이 많아 보이는데, 보존하는 걸 권장합니다)



이제 최신 nw.js 파일들을 게임 폴더에 넣어 nw.js를 업그레이드 합니다.

'nw.exe'를 전에 게임실행 파일의 이름이였던 파일명으로 바꿔주세요.
보통 'Game.exe' 파일명을 사용합니다.
그리고 게임 실행.

게임 실행시 'Required value 'name' is missing or invalid' 라는 오류 창이 뜬다면,

게임을 끄고, 'package.json' 파일을 열어 "name"의 값을 아무거나 쓰고 저장.

"name"의 값은 소문자영어/숫자/-/_ 외의 사용은 권장하지 않습니다.

게임을 다시 실행해주세요.


nw.js 호환 오류 창이 뜬다면, 플러그인이 nw.js와 호환이 안 맞아서일 수도 있습니다.
MV 에서 최신 nw.js로 안 된다면, 최대 많은 플러그인과 호환이 맞는 v0.49.2 를 권장하기도 합니다.

그 외의 오류 메세지 창이 뜬다면 어렵지 않게 검색으로 답을 찾으실 수 있을겁니다.


해결 시도 #2:
nw.js는 앱 폴더 구조가 깨지면 바로 무반응 될 수 있습니다.
package.json이나 node_modules 폴더가 없거나 잘못되면 nw.js가 시작하지 못합니다.

참고#2, 참고#3 의 게임 폴더 구조 재확인을 해보십시요.


nw.js 는 package.json 을 보고 게임을 실행합니다.
{
"name": "my-app", ← "" 공백일 수도 있음
"main": "index.html",
"nwVersion": "0.71.0" ← 여기에 안 적혀 있을 수도 있음
}

이미 앞서 '해결 시도 #1'에서 언급했듯이, 업그레이드 했을 시 "name"에 값을 줘야 할 수도 있습니다.


해결 시도 #3:
로그 확인.

A. 게임 실행 자체가 안 된다면 '해결 시도 #1'에서 받은 nw.js 로 실험.
cmd 실행
> cd 게임폴더\경로
> 신규nw.js파일경로\nw.exe .
실행 → 에러 메시지 확인.
B. 게임의 타이틀까지만 들어갈 수 있다면,
타이틀에서 f12 눌러 개발자 도구 (Developer Tools) 실행.
콘솔에 입력:
> process.versions
펼쳐보면 nw 버전 확인 가능.


게임이 요구하는 nw.js 버전을 알 수 있을 텐데,
이 특정 nw.js 버전을 https://dl.nwjs.io/ 에서 다운해서 시도.



해결 시도 #4:
특정 DLL이 관리자 권한이 없어 접근이 안되 무반응이 될 수도 있음.

게임을 관리자 권한으로 실행.




추가 #1:
nw.js 업데이트시 게임 화면이 상좌 측에 붙어 실행이 될 때가 있는데,
고치자면 'package.json' 에서 아래로 수정:
...
"window": {
...
"icon": "www/icon/icon.png",
"position": "center"
}


추가 #2:
pixiJS 업그레이드.

PixiJS는 WebGL과 WebGPU를 사용하여 웹 브라우저에서 풍부하고
상호작용적인 그래픽, 애니메이션 및 게임을 표시하는 고성능 오픈 소스 2D 렌더링 라이브러리입니다.
앞서 말했듯, nw.js 는 Chromium (웹) 소스 기반입니다.

RPGMV일 경우 '게임파일경로\www\js\libs\pixi.js' 을 백업.
RPGMZ일 경우 '게임파일경로\js\libs\pixi.js' 을 백업.

RPG Maker MV 에선 기본적으로 v4를 쓰며, 그 이하/이상을 쓰면 플러그인 등 호환 문제가 생길 수 있어, v4중에서 제일 높은 v4.8.9 를 사용합니다.
https://github.com/pixijs/pixijs/releases/tag/v4.8.9 에서, 'pixi.js' 파일을 받아 '게임파일경로\www\js\libs\pixi.js' 로 이동시키세요.

RPG Maker MZ 에선 기본적으로 v5를 쓰며, 그 이하/이상을 쓰면 플러그인 등 호환 문제가 생길 수 있어, v5중에서 제일 호환이 높은 v5.3.10 를 사용합니다 (v5.3.12 말고 v5.3.10 입니다!)
https://github.com/pixijs/pixijs/releases/tag/v5.3.10 에서, 'pixi.js' 파일을 받아 '게임파일경로\js\libs\pixi.js' 로 이동시키세요.


추가 #3:
RPG Maker는 nw.js(Chromium) 기반으로 해, GPU 사용이 제한됩니다.
기기마다 성능에 따라 다르기에, 렌더링 문제 시 'package.json' 에서 아래로 수정:
...
"chromium-args": "--ignore-gpu-blacklist --ignore-gpu-blocklist",
"window": {
...
}
이 부분은 왠만해선 건들이지 않아도 됩니다.


추가 #4:
nw.js 앱은 Visual C++ Redistributable 또는 DirectX 같은 시스템 DLL에 의존할 수 있습니다.

MSVC_P140.dll (코네가 글 깨먹어서 '_' 추가로 넣음), VCRUNTIME140.dll 같은 파일이 있어야 한다는 뜻이죠.

보통이라면 이 파일들이 없을 경우엔 위 특정 파일들이 없다고 오류 메세지가 뜨긴 합니다.
Microsoft Visual C++ Redistributable 또는 DirectX End-User Runtime 가 설치 안 되어 있으면 설치해주세요.



게임이 고쳐졌다는 게 확인이 됐고 재배포할 생각이시라면, 백업했던 nw.js 파일들을 지워주세요.
또한, 차후 자료 버전 비교 확인을 하는 이용자나 파일 업데이트/개선 등 하는 개발자 분들을 위해,
본인이 한 파일 변경이 명시가 되도록 package.json 에 '해결 시도 #2' 에 보이듯이 "nwVersion" 을 작성해 주시기 바랍니다.
pixi.js 업그레이드는, pixi.js 파일을 열면 버전이 적혀 있는 것으로 확인이 됩니다.

또한 파일 복구 공유 시, 다른 분들이 파일을 다운로드 하기 전에 자료 버전을 구별할 수 있게 하기 위해,

버전을 명시해 주시기 바랍니다 (예: nwjs-v0.108.0-win-x64).


44
14 comments
유익하네 개추
03/12
03/12
03/12
03/12
03/12
03/13
유익한 글 감사합니다
03/13
RPGMZ일 경우, 게임파일\www\js 이 부분 고쳐야겠지
감사합니다 수정했어요
이 가이드 보고 실행시 무반응이랑 좌상단 고정되는거 고침 감사합니다
03/31
05/10
저장해두고 필요할 때마다 참고 할게요
[ai 번역]고블린 소굴2 (미검수)
번역
piriparafuru
05/23 25329 91
손번역,후타,림잡) [ももも合衆国] 후타나리 에로가키 자지로 친척인 폭유 젖가슴 언니와 교미 삼매경인 여름방학
동인
나는림잡이좋다
05/23 18146 138
AI, 셀레스포니아) 바니슈트 아마네
야짤
miso5
05/23 10438 88
음주의 미궁 발매 연기
정보
도라야키
05/23 10094 28
[AI번역][VJ004257] 나는 그녀를 믿고있다 (패치파일만)
번역
호빵할배
05/23 19130 80
쿠노이치 모란 rj204823
복구
zadvoskoi
05/23 14744 47
[RJ196613] 프로넌트 심포니(노모) 복구
복구
zadvoskoi
05/23 13240 41
[시모바시라 공방] 「마장영희 셀레녹시아」 제작 보고 70 - 나머지 스탠딩 CG 차이점 제작!
정보
날개 로봇
05/23 7609 37
[RJ191638, RJ262218] 밀키퀘스트
복구
zadvoskoi
05/23 14098 29
나만이 섹스 못하는 집
동인
kifbodo245
05/23 18445 62
청아) 이놈의 주댕이
야짤
쩝냡
05/23 6561 16
[손번역,청아] 히로인을 붙잡아 놓고 아무것도 하지 않을 리가 없다
번역
미스터장
05/23 54102 336
카츠라이 요시아키 상업 복귀작 샘플
정보
카오스
05/23 8455 16
ai번역 손번역) 압도적인 힘을 가진 수컷에게 향할수 없는 당당한 암컷이 성노예가 될때 까지
동인
1Q2W3E4R
05/23 22235 75
스압, 똥까시) 제군들, 나는 림잡이 좋다
야짤
나는림잡이좋다
05/23 13481 112
Party Me: 개발 정지 먹음
창작
tteokleaf
05/23 5921 27
[구매보급]쿨데레 ○리 성인에게 인체 실험. 미끈미끈 촉수 고문으로 착정자만들기 교미
소리
이름뭐하지
05/23 10326 64
이본 (엔드필드)
영상
브레머튼
05/23 16829 100
[Hamao/노모] 번뇌ui 개
동인
ㅇㅇ
05/23 12225 55
LIFEGUARD HOLIC 개발 진행의 알림 및 발매일을 8월 1일로 변경에 대해
정보
kucci231
05/23 7761 22
시니시스타2 유저 모드들은 준DLC급임
야짤
roomonfire
05/23 13830 38
아리아드네 MZ 리메이크 110일 차 (오프닝 및 시스템 개선)
창작
Code_Max
05/23 7921 78
ai, 찢) 니콜에게 성처리 출장 서비스를 요청하였다
야짤
kjh9304
05/23 11861 127
[구매보급] 익애 용인과 임신 성활
동인
뒷담난쟁이로야족
05/23 21208 136
[한글패치]FORTUNE BRIDE ~ 절정개안의 의식_260523_수정
번역
아르
05/23 60084 196
[5/22] 아칼리
영상
브레머튼
05/23 18211 75
[노모] 이번 정류장은 갸루입니다
동인
질겨찾기
05/23 24635 168
[미번/구매보급/번역요청/버전업] 프린세스 시너지 RJ01550550 v1.0.28
미번
giraffeman
05/23 11713 57
관문지기 msg 작업 현황 - 4
작업현황
fin768
05/22 5524 26
[Hatoya Mameshichi] 동경하던 그녀는 치한전차에서 조교완료 되었습니다 1~5 [p.178]
동인
mybest
05/22 14724 38