Skip to content

Releases: tintin10q/minecraft-logs-analyzer

Updated windows exe and fixed parsing error

25 Jul 10:32
Compare
Choose a tag to compare

What to download

If you use windows and want an easy time just download the .exe and run it. If run use the .exe file you might get a false positive with virus programs. See the README.md for more information about this.

If you know how to use python you can also just run the .pwy version with python or compile your own .exe using the Makefile. The build.zip has everything you need for this.

If you have any problems do not hesitate to create a github issue or send me a message. Have fun learning about your play time!

Read on to learn what changed in this release.

Updated Windows executable

In this release I finally updated the windows executable to the latest version of minecraft-logs-analyser. This means that the updates that the python .pyw version has gotten are now included into the .exe version. I don't use windows anymore so that was why this took some time.

Fixed parsed error if minecraft closed with a crash

In this release I fixed the ERROR (file location) logs could not be parsed. Could be log from modded client that uses different logging format error that sometimes appeared in the scan logs.

This error was incorrectly raised if the last log in your log file was a crash log. The last line of a log file is a crash log when your Minecraft crashes and the crash reason is logged. A crash log spans multiple lines but the minecraft-logs-analyser used to only simply check the first and last line of the log file for a time stamp. But because crash logs span multiple lines the time stamp of the crash log is not on the last line of the file. That caused the parse error. Now minecraft-logs-analyser actually reads the file backwards properly to find the time stamp. This means that this error should not happen anymore. This could add some log files to your scan because this bug meant that any Minecraft session that ended in a crash was previously not included in the scan result.

Actual different logging format

You can, of course still get this error if you do use a heavily modded client that actually changes the logging time format in a significant way. But if that happens every file should give this could not be parsed error instead of just a couple files like what happened before this update. It will probably not happen again because the regex to parse the time stamps is quite lenient. If this does happen you can use the python version and change the line below at the top of the python file (after the imports) to a regex that does work for you. Just make sure to capture the same groups (hour, min and sec). More info about python regex here.

time_pattern = re.compile(r'(?P<hour>\d{2}):(?P<min>\d{2}):(?P<sec>\d{2})', re.I)  # line 18

Full Changelog: 1.3.2...1.4.0

Linux support

09 Nov 01:43
6573c97
Compare
Choose a tag to compare
  • Thanks to the pull request from @othello777 we now have linux support.
  • I also did a bit more it but this works well. I maybe push my additional linux changes in the future.

Really minor update

16 Nov 10:00
Compare
Choose a tag to compare

Fixed makefile.

Increased compatibility with logs from modded + optimization.

16 Nov 09:57
Compare
Choose a tag to compare
  • Removed [ and ] from the regular expression that searches for logs.
    This way a lot more logging formats should be supported. Apparently modded formats can look like this: [10Okt2019 18:18:17.113] now we only look for 18:18:17

  • Fixed the freeze that happens if you have a large glob search

  • Added format strings

  • Changed how insert works to make more sense. Error is not replaced with scream and there is now end like print.

  • Tried to add further multithreading but failed.

New Splash Screen, Makefile and minor fix

27 Jul 17:37
Compare
Choose a tag to compare

New Things:

  • Added splash screen when starting the program
  • Added higher resolution icon
  • If the icon is in the same directory as the .exe the icon will display in the gui
  • Fixed an unhandled exception that was raised when clicking cancel in the color selection screen
  • Updated the .exe file
  • Added a Makefile to make generating the .exe files easier
  • People can build their own .exe's with make if they get false positives from their virus scanners

Fix for python 3.7 and up!

05 Feb 22:12
Compare
Choose a tag to compare
  • Fixed a bug that made the program not work properly with python 3.7 and up
  • Fixed a bug where certain errors were not sent to the gui
  • Added a zip version download
  • Changed "pip install matplotlib" to "pip install --user matplotlib"
  • I did not update the .exe file it will still work but some error's might not get logged

Please sent me a message if you encounter any further problems :)

minecraft-logs-analyzer

17 Jul 18:34
Compare
Choose a tag to compare

minecraft-logs-analyzer

A tool to analyze chat logs generated by Minecraft
Due to the text encoding used, this will likely only work on Windows.
There are 3 modes:

[1] Automatic (default)
[2] Enter path(s)
[3] Enter glob

1: Automatic trys to detect your logs in the normal minecraft folder
C:/Users/USER/AppData/Roaming/.minecraft/logs

2: With this mode you can enter your own file paths
Separate multiple paths with pipes (vertical bar: | ).

3: With glob you can enter a glob to select multiple folders in a directory,
glob will basically select your path but also all the paths of any subdirectories that might exist in your spicified path and that match the glob
Separate multiple globs with pipes (vertical bar: | ). Make sure files don't overlap

Folders that start with period must be explicitly specified
(AppData/Roaming/.*/logs)

Glob-Example: To find all logs folders in all folders that start with . in AppData,
C:/Users/USER/AppData/Roaming/.*/**
This would select all the logs in .minecraft but also in .technic for instance

Globs can take a bit to load if your selection is large

You can read more about globs here: https://pymotw.com/3/glob/

This is how it all looks: https://imgur.com/a/ZuV0CCW

Results

You can export the results into 2 ways

  • A graph with hours per month
  • A csv file with hours per session

This next part is only for those who use the .pyw version

Atleast python 3.6 is required for this program to work it might work on python 3.5 but I have not tested that

This program uses matplotlib pyplot to create graphs. If you do not have matplotlib installed please install it by entering the flowing command into the cmd:
pip install matplotlib

If that does not work try to reinstall python and make sure to click the install pip option

The program will also detect if you do not have matplotlib installed and it will ask you if you want to auto install
This will basicly run os.system("pip install matplotlib") this is about the same as running "pip install matplotlib" in the cmd