CptWesley / NewWorldMinimap

Opensource Minimap for Amazon's New World.
MIT License
188 stars 66 forks source link
minimap new-world newworld

CptWesley's Minimap

Discord Buy Me A Coffee

Minimap for Amazon's New World. The application uses Overwolf's approved API for getting character positions. It then utilizes data obtained from StudioLoot's New World Interactive Map to render all objects of interest around the player.

Get it from the Overwolf Appstore or see the installation instructions below.

Join the Discord!

Looking for the legacy C# app? You can find it here!

Table of Contents

Current Features

Planned Features

Known Issues

Examples


Second monitor full-screen window.

In-game semi-transparent (configureable) overlay.

Different minimap shapes.

Compass mode.

Cosine interpolation.

GPS navigation.

GPS navigation.

Installation and Usage

Development

Currently, the Overwolf version of the application is the only supported one. The .NET application is considered legacy. This section will only contain information on how to develop the Overwolf application.

Building and running

  1. Ensure you have NodeJS installed. Verify whether you can use npm by running npm -v in a terminal. If it doesn't print an error, proceed with the next step.
  2. Install Yarn. While npm works as a package manager, Yarn is just better. Run npm install -g yarn to install it.
  3. Open a terminal in the overwolf directory of this repository.
  4. Run yarn install to download and install the required dependencies.
  5. To build the application, you have two options:
    1. yarn watch will continuously build the application whenever there is an update. This is the recommended command.
    2. yarn build will build the application once.
    3. yarn build:prod will also build the application once, but it will be a production build. This allows for optimizations, such as minification, and a production build of React (which is faster). Source maps are included, and an .opk (Overwolf package) file is also generated.
  6. Go to Overwolf Settings - About - Development options to open the Overwolf developer tools.
  7. Select Load unpacked extension... and navigate to the overwolf/dist directory of this repository. It contains the build output if the build was successful. You may get an error at this step, see below for more information.
  8. Enable the Overwolf overlay for New World. Go to Overwolf settings - Overlay & Hotkeys, and enable the switch for New World. The application icon should appear beside the name of the game.
  9. Launch the application from the Overwolf dock, or launch the game to see the app in action.

When loading an unpacked extension, you might encounter an error where Overwolf will not allow you to load an unauthorized extension. When this happens, you need to make two modifications to the file overwolf\public\manifest.json. The fields meta.name and meta.author should be updated to have the values "Sample App" and "Overwolf" respectively; using these values allows you to use the unpacked extension. In short, the manifest should look somewhat like the following:

{
  "manifest_version": 1,
  "type": "WebApp",
  "meta": {
    "name": "Sample App",
    "author": "Overwolf",

Rebuild the application after making the required changes to the application manifest.

Development

Although there are no real requirements for developing the app, a nice editor is Visual Studio Code. It offers integration with TypeScript, the language used for the extension. If you decide to use Visual Studio Code, make sure to open the overwolf directory in VSCode. Opening the repository root will work as well, but ESLint probably won't play nice then.

Should you decide to open the overwolf directory in VSCode, chances are you'll get a popup with some recommended extensions. These will help find code smells, or make the code adhere to this repository's style configuration. You can use the built-in terminal to run commands such as yarn watch to automatically run webpack in watch mode, continuously building the application when a change is detected.

Licensing

The source code is fully MIT licensed.

Contribution

Any help is welcome. Feel free to open issues or feature requests or create a pull request.

Support Me

Want to support me in other ways? You can buy me a coffee! But don't feel obliged to!