laqieer / nightmare

Online modularized ROM editor, successor to Nightmare and Nightmare 2
https://laqieer.github.io/nightmare
ISC License
2 stars 1 forks source link
fire-emblem-modding

Nightmare 3

pages-build-deployment nightmare-pages-build-deployment

Logo

Online modularized ROM editor, successor to Nightmare and Nightmare 2.

Features

Usage

Demo

nightmare-util

nightmare-util nightmare-util-build-publish

Util to parse and convert Nightmare modules for Nightmare 3.

Features

Install

  1. Add NPM registry to .npmrc

    registry=https://registry.npmjs.org
    @laqieer:registry=https://npm.pkg.github.com
  2. Install package

    npm install @laqieer/nightmare-util

Usage

Convert Nightmare modules

node node_modules\@laqieer\nightmare-util\src\converter.js module_folder output_folder [reference_file]

Example:

node node_modules\@laqieer\nightmare-util\src\converter.js "Fire-Emblem-Nightmare-Modules\FE1 Nightmare Modules" ..\nightmare\src\components\Module\FE1 references\FE1.txt

Parse Nightmare modules

const parser = require('@laqieer/nightmare-util');
var result = parser.parse(module_file);

Example:

node .\parse.js '.\Fire-Emblem-Nightmare-Modules\FE1 Nightmare Modules\FE1 Character Editors\fe1_char 01.nmm'
{
  filename: 'fe1_char 01.nmm',
  version: '1',
  description: 'Character editor 1 (FE1) - By VincentASM and Celice - V 0.2',
  address: '0x204D2',
  entryNum: 7,
  entrySize: 27,
  entryList: 'NULL',
  tbl: 'NULL',
  handlers: [
    {
      description: 'Character',
      offset: 0,
      size: 1,
      type: 'NDHU',
      entryList: 'Chardata.txt'
    },
    {
      description: 'Class',
      offset: 1,
      size: 1,
      type: 'NDHU',
      entryList: 'Class_list.txt'
    },
    ...
  ]
}