Fork of nParse for TAKP

Discussion in 'General Discussion' started by Phaeton, Jun 9, 2021.

  1. Phaeton

    Phaeton Active Member

    Messages:
    31
    Hi all. I'm working on a fork of the Nomns' P99 nparse utility (log reader for mapping/spell tracking). I've so far extended it to allow specific character log selection (for running multiple instances of it with boxing), changed spell parsing to match TAKP spells file data and overhauled the maps for PoP era accuracy (I know there's some maps that won't work and need testing).

    If anyone would like to try it out/help test and let me know if you run into problems here, that'd be helpful. Hopefully people find it useful.

    I'm not providing any pre-packaged Mac or Linux binaries, rather it can be cloned and ran straight with python. It does require PyQT5 libraries along with a regular python install to run. (can be installed with a OS package manager, or with pip: 'pip install PyQt5'.

    Here's the repo:
    https://github.com/hitechhippie/nparse-takp


    * EDIT: 8/4/2021: For non Linux/Mac users there is now a ready to download/run Windows version (32 bit):

    https://github.com/hitechhippie/npa....6.0-takp/nparse-takp_0.6.0_windows_32bit.zip
     
    Last edited: Aug 4, 2021
    pivoo likes this.
  2. thucydides

    thucydides I Feel Loved

    Messages:
    800
    Mind saying a bit more about what it does? maybe a screenshot of the output?
     
    pivoo likes this.
  3. Phaeton

    Phaeton Active Member

    Messages:
    31
    Would be good if I provided some context! Like GINA or Zlizeq, this parses your character log and moves a map marker on a map window for you. It also parses spell text output in your log and tracks spell duration timers for you. It's 100% python and throws up an icon in your system tray to for menu based control. It's been developed by Nomns for P99 for quite a while, but didn't work well with TAKP due to spell/map differences, so that's what I've been working on in the fork.

    Screens of map, spell duration timers and menu icon attached.

    [​IMG]
    [​IMG]

    [​IMG]
     
    Tesadar, pivoo and Kabouter like this.
  4. Smudge

    Smudge People Like Me

    Messages:
    258
    Interesting
     
    pivoo and Phaeton like this.
  5. Kabouter

    Kabouter Member

    Messages:
    91
    Looks good, what is the difference with Gina when it comes to buff durations is it all automatic?
     
    pivoo likes this.
  6. Phaeton

    Phaeton Active Member

    Messages:
    31
    I'm not super familiar with GINA, but there's no audible alerts with nparse. This parser (nparse) reads the spells_en.txt in the client folder for the spell duration values and uses your character's level (with the duration value from spells_en.txt) to determine the durations. They are pretty accurate, though they don't account for focus items which may increase the length (P99 never had those.. )
     
    pivoo likes this.
  7. pivoo

    pivoo People Like Me

    Messages:
    381
    You made my day deciding to work on nParse! This is the only thing I miss from p99. I've never played EQ before and I'm constantly being lost ;-)

    So you can get original Nomns to work on TAKP? I couldn't. Just shows how non technical am. On p99 I was using his latest dev version (nparse-e905d7a2afa39530106ef3ffe987f57db9537609.zip) that also needs 'concurrent_log_handler' and Python 8 because of this handler. I tried the same version with TAKP and got stuck, because I could not set in nParse where log file is. I enabled logging in INI file, (LOC works) but in P99 there is 'log' folder for log files (per memory). I don't have 'log' folder in tap. So I just assumed nParse is not working on TAKP and I didn't try any more.

    I will give it a try today, crossing fingers, will create new python virtual environment. Two questions, I'm assuming dependencies are the same?
     
    Last edited: Jun 9, 2021
  8. pivoo

    pivoo People Like Me

    Messages:
    381
    It is working for me! Good job and thanks!

    I did the same as with original nParse on p99, I set up virtual environment, with Python 3.8 and install these dependencies:

    I only tried with one character. Next I will try all 3 characters and report back. I'm assuming, I will run 3 instances of nParse, one for each character. Will report back in about 30 minutes when I get back into the game.

    Oh, my characters are sub 20 level so I will be able to test only few zones for now. And I level slow :)

    I tested it in Paludail Caverns where I have my group. Map loaded and timer for shield spell on Necro worked.

    I already decided TAKP will be my home, but this just seals it ;-)
     
    Last edited: Aug 21, 2021
    Phaeton likes this.
  9. jbry2

    jbry2 Member

    Messages:
    20
    I was able to get the original nParse to work with TAKP on PC. The nice thing to me about this program as opposed to Zlize was that it uses the same standard maps that live EQ uses, so the maps were easy to find and didn't need to have any complicated work done to an image of the map. It's also got 3d layers, but those can take some getting used to. I haven't used it for any of the spell timers or anything else, just maps. The only issue I've had is that I messed up some of the zone names so that there are some that don't auto-load when I zone in, but that's more on me being too lazy to go back and fix than on the program.
     
    pivoo and Phaeton like this.
  10. Phaeton

    Phaeton Active Member

    Messages:
    31
    Yes, you can run multiple instances and use the character log selection option on each instance to setup for each character. I added that as the original nParse was just focused on running on one toon.

    *Edit - you should create a separate nparse-takp directory for each character so the configuration is saved uniquely for each. This is mostly for the character log selection and the level that you pick in the Spells window for the duration timer calculation.

    In the future I'll add functionality to save it all in the same JSON config, but that's not there yet.
     
    Last edited: Jun 9, 2021
    pivoo likes this.
  11. Break

    Break People Like Me

    Messages:
    616
    Does this being written in Python mean it will work for Macs as well?
     
    pivoo likes this.
  12. Phaeton

    Phaeton Active Member

    Messages:
    31
    Couldn't agree more. I went back to the "Evolution" three disk set to get the original poknowledge and bazaar maps as the newer map packs have the revamped zones with extra stones and stuff that just won't exist here. I've also used the TAKP server spells file to feed the duration timers instead of the P99 one from Titanium (Classic - Velious correctness only). Glad to hear you got the older nParse working.
     
    pivoo likes this.
  13. Phaeton

    Phaeton Active Member

    Messages:
    31
    Yes, because this is 100% Python, you should just need a functional Python install with the PyQT5 libraries (use "pip" to install them). You can run this natively on Windows, Mac or Linux (why I love the original project). This also uses the original stock map files that started with LoY. Even the modern Brewall maps work with this (but they're too updated, so I've started the slow process of finding the older PoP era ones).
     
    pivoo likes this.
  14. pivoo

    pivoo People Like Me

    Messages:
    381
    OK here is my feedback: SUPER! :)

    Got it to work on all three characters. Maps works and zoning. The only thing that I have yet to figure out is, spell levels. They were all lvl 1. (see bellow, you already answered) In original nParse you could set level somewhere in settings but didn't find this option here. Maybe it picks level automatically?

    A-ha, so here is probably the answer for spell levels. :) Will create each folder of nParse for each character and then try again.

    Hint to other players. Just rename nParse folder as is your character name, that way you know which nParse is for which character ;)
     
    Phaeton likes this.
  15. pivoo

    pivoo People Like Me

    Messages:
    381
    Just follow up feedback. I ran it on my trio and all worked well.
    As you said, having each folder for each character is the way to go.
     
    Phaeton likes this.
  16. Phaeton

    Phaeton Active Member

    Messages:
    31
    Great, glad to hear!
     
    pivoo and Ikeren like this.
  17. Greyn

    Greyn Member

    Messages:
    7
    GINA is definitely better for buff timers and whatnot, but the map aspect on nParse is awesome. Having access to it on TAKP makes the server even more enticing for me as a new join!
     
    pivoo and Phaeton like this.
  18. Greyn

    Greyn Member

    Messages:
    7
    Confirmed base nParse installation works just fine if you have it point to your root directory. Only problem is you wont have Luclin zones. Still awesome though!
     
    pivoo likes this.
  19. Phaeton

    Phaeton Active Member

    Messages:
    31
    If you want to try the takp one I'm working on, it has all the Luclin and PoP maps/map_keys already mapped (and should be working).
     
    pivoo likes this.
  20. pivoo

    pivoo People Like Me

    Messages:
    381
    Yes, your, TAKP version works great. Luclin zones are working. The only one that didn't load for me was Netherbian Lair.
     
  21. pivoo

    pivoo People Like Me

    Messages:
    381
    Give it a try to this TAKP version. I have several copies, several folders, one for each character. That way each instance of TAKP nParse is for each character and it works great. So if I run around with 3 characters, each has it's own buff window.
     
  22. Greyn

    Greyn Member

    Messages:
    7
    Would love to give the TAKP version a go, but I’m not versed in compiling my own “stuff” if that makes sense. Is it pretty simple?
     
    pivoo likes this.
  23. Phaeton

    Phaeton Active Member

    Messages:
    31
    If you're on windows, I have a prebuilt exe now in the releases. You can also just download and run with python (no building required)
     
    pivoo likes this.
  24. pivoo

    pivoo People Like Me

    Messages:
    381
    This is what I'm doing. (using Linux)

    I see I have version 5.1, your latest is 6.0
    Since I will just overwrite files, which ones I should exclude?

    nparse.config.json - I'm pretty sure this one, any others I should save before I overwrite folder with newer version?
     
  25. Phaeton

    Phaeton Active Member

    Messages:
    31
    You can just run `git pull` in each folder. The config files are ignored by git and will be left alone.
     
    pivoo likes this.
  26. pivoo

    pivoo People Like Me

    Messages:
    381
    Silly question, but, do I need a github account for this? I don't have it. I just manually download file and extract it.

    If for this
    Code:
    [ Only registered users can see the bbcode. Click Here To Register... ]
    account on github is not needed, what is exact command I should run in my Linux terminal, considering I'm in correct folder where older version of nParse is?
     
  27. Phaeton

    Phaeton Active Member

    Messages:
    31
    No, valid question! It's a public repository so no account needed. How did you download the existing folder you have that you copied for your characters? If you didn't use 'git clone https://github.com/hitechhippie/nparse-takp.git' to create the folder and you just downloaded the ZIP, you can also go that route:

    Download the latest ZIP, unpack to a new folder, copy your nparse.config.json into the new folder.

    It's easier in the long run to run the git clone command I put, above, and then future updates can be "pulled" by switching to the downloaded/copied 'nparse-takp' folders and then simply running 'git pull'.
     
    pivoo likes this.
  28. sowislifesowislove

    sowislifesowislove People Like Me

    Messages:
    854
    This work on Mac at all?
     
  29. pivoo

    pivoo People Like Me

    Messages:
    381
    Yes, I just manually downloaded zip and extracted it. Thanks for the gitgub command, will start using it from now on
     
  30. Phaeton

    Phaeton Active Member

    Messages:
    31
    Good question, I haven't heard any feedback from Mac users. This is just python; it needs python "PyQT5" and "requests" libraries, but assuming you have a functional python install on OS X, this should work. Wiki here: https://github.com/hitechhippie/nparse-takp/wiki

    If you have a Mac and can test I would love the feedback. One issue reported on Linux/GNOME 3 is the system tray icon not appearing and I've read this may also occur on OS X (I have a branch staged to address this on GNOME 3). I am wondering if that will also be a problem for Mac users but have no way to test.