majikat768 / HuntStatsLogger

stats logger for Hunt: Showdown
MIT License
62 stars 7 forks source link

[Feature] Tracking multiple Steam-Profiles on the same machine #53

Open Hrungdisaster opened 1 year ago

Hrungdisaster commented 1 year ago

Hi again,

the issue is partly adressed in a post a little lower, however is a little different:

When changing Steamnames of the SAME player, my KD and MMR stays consistent (at least for me). However, if a DIFFERENT player is putting his Steamname (eg a Friend playing on my Laptop during a small LAN session), it seems like he inherits the stats and charts of the original player up to that point.

If it means a lot of effort to implement/change this to being able to track multiple profiles, dont bother, I was just trying to make you aware of that scenario.

majikat768 commented 1 year ago

This could be doable...currently it assumes there'd only be one person is using it, so it's just using a single database file for everything. It'd be a bit of work, but I'll look into it.

One possible solution in the meantime: click Settings, then Open Settings Folder, and rename the huntstats.db file to something else, like huntstats-player1.db, and restart the app. This would create a new huntstats.db file, so you'll just need to make sure to go into the Settings folder and be sure the .db file you want to use is called huntstats.db. Not the best solution, but it could work :)

MadHoek commented 1 year ago

I use a simple bat file for that (paired with, a not so simple, backup script for safety measures). I describe how I do it but without the backup script for the sake of simplicity. (it can be done easier and most likely better, but I do it this way) I highly suggest you make backups of your files before you start to do something like this.

First I setup a clean Hunt "attributes.xml" and a clean Hunt Stats Logger "settings.ini" ( "huntstats.db" deleted in order for it to be recreated) After that I start Hunt with my first account, play a match and exit Hunt. Then I backup the "attributes.xml", "huntstats.db" and "settings.ini" Repeat the same with my second account from scratch (with the clean "attributes.xml" and "settings.ini")

After that is done use 3 bat files to start the game and the logger (I also use a backup script in between to avoid data loss due to overwriting as I already stated)

01 - Create the Bat-Files:

Bat-File 1: StartHuntAndLogger.bat:

Start Hunt & Logger bat (Replace "PathToTheLogger" with the path where you saved the HSL):

@echo off start steam://rungameid/594650 start "" "PathToTheLogger\HuntStatsLogger.exe" exit

Bat-File 2: Prepare the files for use with account1 and start Hunt+HSL bat (adjust paths):

@echo off xcopy "...\SteamLibrary\steamapps\common\Hunt Showdown\user\profiles\default\attributes.xml" "PathToTheLogger\Data_Account2\" /s/h/e/k/f/c/y xcopy "C:\Users\YourUserName\AppData\Roaming\hsl_files2\huntstats.db" "PathToTheLogger\Data_Account2\" /s/h/e/k/f/c/y xcopy "C:\Users\YourUserName\AppData\Roaming\hsl_files2\settings.ini" "PathToTheLogger\Data_Account2\" /s/h/e/k/f/c/y xcopy "PathToTheLogger\Data_Account1\attributes.xml" "G:\SteamLibrary\steamapps\common\Hunt Showdown\user\profiles\default\" /s/h/e/k/f/c/y xcopy "PathToTheLogger\Data_Account1\huntstats.db" "C:\Users\YourUserName\AppData\Roaming\hsl_files2\" /s/h/e/k/f/c/y xcopy "PathToTheLogger\Data_Account1\settings.ini" "C:\Users\YourUserName\AppData\Roaming\hsl_files2" /s/h/e/k/f/c/y call StartHuntAndLogger.bat exit

Bat-File 3: Prepare the files for use with account2 and start Hunt+HSL bat (adjust paths):

@echo off xcopy "...\SteamLibrary\steamapps\common\Hunt Showdown\user\profiles\default\attributes.xml" "PathToTheLogger\Data_Account1\" /s/h/e/k/f/c/y xcopy "C:\Users\YourUserName\AppData\Roaming\hsl_files2\huntstats.db" "PathToTheLogger\Data_Account1\" /s/h/e/k/f/c/y xcopy "C:\Users\YourUserName\AppData\Roaming\hsl_files2\settings.ini" "PathToTheLogger\Data_Account1\" /s/h/e/k/f/c/y xcopy "PathToTheLogger\Data_Account2\attributes.xml" "G:\SteamLibrary\steamapps\common\Hunt Showdown\user\profiles\default\" /s/h/e/k/f/c/y xcopy "PathToTheLogger\Data_Account2\huntstats.db" "C:\Users\YourUserName\AppData\Roaming\hsl_files2\" /s/h/e/k/f/c/y xcopy "PathToTheLogger\Data_Account2\settings.ini" "C:\Users\YourUserName\AppData\Roaming\hsl_files2" /s/h/e/k/f/c/y call StartHuntAndLogger.bat exit

01 - Crerate Shortcut 1: Create a Shortcut for Bat-File 1. (use this when you don't switch to accounts and want start Hunt & HSL the first time)

02 - Crerate Shortcut 1: Create a Shortcut for Bat-File 2. (use this when you switch to account 1 and want start Hunt & HSL the first time)

03 - Create Shortcut 2: Create a Shortcut for Bat-File 3. (use this when you switch to account 2 and want start Hunt & HSL the first time)

04 - Done Start Hunt and HSL with your shortcuts.

!!WARNING!! If you accidently use the same shortcut twice in a row, it overwrites your "attributes.xml", "huntstats.db" and "settings.ini" with the files the shortcut is told to copy from and to (for example: If you use "Shortcut 2" twice in a row you will have "attributes.xml", "huntstats.db" and "settings.ini" from account 2 everywhere)

Infos: All the Bat-Files need to be in the same directory in order to work properly! "xcopy "PathToCopyFrom\Filename.ending" "PathToCopyTo\" /s/h/e/k/f/c/y" means, always copy that file to the given location and overwrite all files with the same name.

I hope that helps, cheers