/AlbanKnights

gives you the keywords that NPC in Belten loves; for MMORPG Mabinogi

Primary LanguageHaskellBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

AlbanKnights

AlbanKnights is a BSD3 Licensed utility tool, written in Haskell, for Project Belten on MMORPG Mabinogi.

See also README in Japanese.

Description

AlbanKnights gives you keywords that the NPCs in Belten like automatically. Even though there is a Keyword Table(ja) but finding your own index of each NPCs is a little bit bothersome job, isn't it?

And poor Shuan... I think he must take a vacation, so this tool will help him out from messed overwork, even if he can't take his bonus while using this utility though.

At last, there was no special reason to write the code in haskell, just I wanted to learn it (actually, this code is my first challenge to solve RealWorld problem using the language) and let the program executable. Because of it, you can run this program immediately after download and unzip the archive without compiling, building, download implementations and so on.

Features

  • Prompt based console program, from good old days.
  • Keep keyword indices of each NPCs: Dai, Eirlys, Kaour and Elsie.
  • You can set, unset or hold the index specifying NPC name.
  • list shows keywords NPC loves by three, if the index is set.
  • When you type next, the indices will be calculated and reset automatically.
  • If you're not entirely sure what to talk with NPC, suggest shall help you.

Planned Features

  • Suggest index where currently we are.
  • Support special indices 98 and 99.
  • Localize; or remove hard-coded Japanese messages.

Usage

When you run the program, you'll see a prompt like this:

AlbanKnights(1):

Now you're ready to use commands.

Commands

  • npc [index] displays keywords for specified NPC.
  • set npc index sets index of NPC to current program instance.
  • unset npc clears index of specified NPC from current program instance.
  • list displays all keywords of NPCs who index is set.
  • next increments indices by 3 for all NPCs without holded one.
  • hold npc fixes index of NPC. This index won't be incremented when next called.
  • unhold npc unfixes index of NPC.
  • stock npc keyword1 keyword2 ... keeps Keyword for suggest. If you want to see the list, just hit stock.
  • suggest npc [keywords] lists up suggestions of next Keywords. [keywords] can be omitted by using stock.
  • exit displays current index of NPCs and exit the program.

All npc must be proper form, dai, eirlys, kaour or elsie.

Aliases

There are some aliases of NPCs.

NPC name Roman Omitted
dai d
eirlys airi-su a
kaour kaoru k
elsie erusii e

Also, there are some aliases of commands.

Command Omitted Alias Alias Alias Alias
set s
unset u
list l ls
next x update up
hold h unhold lock unlock toggle
stock st
suggest sug
exit q quit :q

For example, set eirlys 27 can be replaced with s a 27.

Work-through

  1. First, you should set index of NPC(s).
  2. Then confirm which keywords and index is right using ls.
  3. In game, talk to NPC(s) with displayed keywords.
  4. At last, use x to update list (before do this, you may use h to hold index)
  5. If you want to quit the program, type exit.
  6. Back to 2.

Install

Download latest binary

Currently supported only Windows.

Contribution

  1. Fork it (http://github.com/sandmark/AlbanKnights/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Author

sandmark

License

BSD3

Special Thanks

Mabinogi Wiki(ja)