New World Buddy is a desktop application designed to be used while playing New World.
This repository does not contain the ingame data. Ingame data must be extracted from a local New World installation during development.
The software and development stack is based on the following technologies:
For build commands, see package.json
git clone git@github.com:giniedp/nw-buddy.git
cd nw-buddy
# create a .env file from example file
cp .env.example .env
# install dependencies
pnpm install
# download recent new world data files
pnpm nw-cdn download
# start development server
pnpm dev:web
You can download game data from CDN (see quickstart) and skip the extraction step.
oo2core_8_win64.dll
and texconv.exe
are already in the tools/bin directory.env.example
to .env
and adjust env variables as you need
NW_WORKSPACE=PTR
variable or switch to the ptr
branchIf you have already unpacked the game folder, adjust the NW_UNPACK_LIVE
and/or NW_UNPACK_PTR
env variables accordingly and skip the rest of this step.
Run pnpm nw-extract
. This will extract all the necessary game data to whatever NW_UNPACK_LIVE
and/or NW_UNPACK_PTR
is set to.
This will read files from the unpacked game data folder, convert them and place the results in tmp/nw-data/live
(or tmp/nw-data/ptr
). The conversion includes:
.dds
-> .png
.datasheet
-> .json
.loc.xml
-> .loc.json
.json
This will read files from the conversion folder and prepare them for runtime use, e.g.
.png
-> .webp
The results are written to dist/nw-data/live
(or dist/nw-data/ptr
)
Run pnpm dev
. Starts both, the electron app and a web browser in parallel
Run pnpm dev:web
if you only need a web browser for development
There are multiple target that can be built
Run build:electron
. This will build the electron frame, the web app with electron target and then bundle it all together. The resulting .exe
is written to releases/nw-buddy [VERSION].exe
Run build:web
. This will build the web app that can be uploaded and hosted on a server. The result is written to dist/web