Skip to content

ademilsonfp/parse-tibia-analyser

Repository files navigation

CircleCI Codecov npm GitHub

Description

Parse text reports from game Tibia generated by Copy to clipboard button in some dialogs of Analytics Selector.

Supported game contents

  • Hunting Session Analyser
  • Party Hunt Analyser

Features

  • Customizable type parsers
  • Supports Unix, DOS and old Mac line breaks
  • Tabular indentations but also two, four and eight spaces are supported
  • Consistent syntax, names, line breaks and indentations
  • TypeScript definitions

Usage

You can install this using your preferred npm package manager:

npm install --save parse-tibia-analyser

Parsing any supported game content:

import parseGameAnalyser from 'parse-tibia-analyser';

// replace ... with copied game content:
const myHunt = parseGameAnalyser('...');
console.log(myHunt); 

Only specific contents:

import {
  parseHuntingSession,
  parsePartyHunt
} from 'parse-tibia-analyser';

// Hunting Sesion Analyser:
const myHuntingSession = parseHuntingSession('...');
console.log(myHuntingSession);

// Party Hunt Analyser:
const myPartyHunt = parsePartyHunt('...');
console.log(myPartyHunt);

Customizing type parsers:

parseGameAnalyser('...', {
  dateTime(value) {
    return new Date(value);
  },

  // ...
});

parseHuntingSession('...', {
  integer(value) {
    return value.replace(',', '.')
  },

  // ...
});

parsePartyHunt('...', {
  lootType(value) {
    return value.charAt(0);
  },

  boolean(value) {
    return value ? 1 : 0;
  },

  // ...
})

Development

Dependencies

Installing dependencies:

$ yarn install

Tests

Running tests continuously as source code changes:

# watch mode
$ yarn run dev

Running tests at only once:

$ yarn run test

Generating code coverage report (Istanbul):

$ yarn run coverage

Documentation

Generating HTML reference documentation (TypeDoc):

$ yarn run docs

License

MIT

Copyright (c) 2020, Ademilson Ferreira Pinto