Homebrew RELEASE NX Activity Log - View (slightly) more detailed play statistics!

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
Version 1.2.2 fixes the issues related to playtime described in the last few posts, sorry for not realising there was a problem before!
https://github.com/tallbl0nde/NX-Activity-Log/releases/tag/v1.2.2

Also I've got everything set up for translations (I believe so at least :P) so let me know if you're interested in translating the app! So far I have people who have offered to translate it into French and German. I'll make sure to include your username within the app if you wish. :)
You can find me on Twitter, Reddit or here. I have the same username across platforms!
 
  • Like
Reactions: 1basti1

evertonstz

Well-Known Member
Member
Joined
Jan 5, 2019
Messages
209
Trophies
0
Age
29
XP
557
Country
Brazil
Version 1.2.2 fixes the issues related to playtime described in the last few posts, sorry for not realising there was a problem before!
https://github.com/tallbl0nde/NX-Activity-Log/releases/tag/v1.2.2

Also I've got everything set up for translations (I believe so at least :P) so let me know if you're interested in translating the app! So far I have people who have offered to translate it into French and German. I'll make sure to include your username within the app if you wish. :)
You can find me on Twitter, Reddit or here. I have the same username across platforms!

I can translate it to brazilian portuguese, ping me up once everything is ready so I can start working in it.

EDIT: oops, I suppose it's inside "romfs/lang" right? I'll take a look at it and submit a pull request soon! I suppose you're following the iso and the filename will need to be pt-BR.json, right?
 
Last edited by evertonstz,

1basti1

Well-Known Member
Member
Joined
Jun 30, 2019
Messages
215
Trophies
0
Age
33
XP
953
Country
Germany
Oh, German is done already. Hehe. Ehm... I guess you Update the app with these languages in the near future? :)
 

templar701

Active Member
Newcomer
Joined
Jul 20, 2015
Messages
43
Trophies
0
XP
1,010
Country
This is a very cool homebrew
Like what @lordelan said, it would be great to track hombrew NSP play stats.
I enabled the user select screen on some hombrew NSPs hoping to track play stats per user and here’s what I found:

EMUMMC - Firmware 9.0.1 - Atmosphere 10.2 - Hekate

I edited some homebrew NSP’s control.nspd files and enabled the user select screen, and play log policy, hoping that would be enough to activate play stats per user.

<StartupUserAccount>Required</StartupUserAccount>
<PlayLogPolicy>All</PlayLogPolicy>

Unfortunately, only global play stats were enabled (which I confirmed via Goldleaf).
Next, in case I overlooked a setting, I tried to alter a hombrew control.nspd to closely match it to a retail nspd, but no luck. Obviously there is more to it than just simply forcing the user select screen to appear.

I observed a curious difference:

(1) On a retail game, with user select start-up, if you press the home button mid game, you get a message displayed on the game icon stating, “PLAYING” along with a small thumbnail of your user.

(2) On the homebrew NSP I tested, with user select enabled, if you press the home button mid game, you just the “PLAYING” message displayed on the game icon with NO user thumbnail.

Interestingly, in the example of (1) above if you load the retail game using atmosphere homebrew override, when you press the home button, the game icon just has the message “PLAYING” displayed with NO user thumbnail, which is odd because that thumbnail would appear if you booted the retail game normally.
----------
Short answer is: No – even if you enabled user select on a homebrew NSP it seems your play stats are only logged globally at the most (as explained in the piece above), unlike of course retail games.
@The-4n , @re.lax I’ve been using your excellent tools which has made self-isolating a breeze. Don’t suppose you have any pointers on how to get a homebrew NSP running under a user account to achieve per user play logs like a retail game? I have a feeling it's probably more complicated than adjusting a few flags in control files. Thanks
 

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
I can translate it to brazilian portuguese, ping me up once everything is ready so I can start working in it.

EDIT: oops, I suppose it's inside "romfs/lang" right? I'll take a look at it and submit a pull request soon! I suppose you're following the iso and the filename will need to be pt-BR.json, right?
Yep you had it all right, thanks for the translation :)

Oh, German is done already. Hehe. Ehm... I guess you Update the app with these languages in the near future? :)
Yep I've just realised I probably should have added other features before mentioning translations as they'll need to be updated before next release :P

Is there a way to backup / restore this play time data?
Not yet, while it should be trivial to add backup functionality I don't think it would be quite possible to restore within the app as the file is 'locked' (unwritable) by Horizon the whole time the OS is running. But I don't really want to mess around with this on my own switch so I probably won't add it. (Restoring would also be more difficult as everything is tied to user ids, etc)

This is a very cool homebrew
Like what @lordelan said, it would be great to track hombrew NSP play stats.
I enabled the user select screen on some hombrew NSPs hoping to track play stats per user and here’s what I found:


----------
Short answer is: No – even if you enabled user select on a homebrew NSP it seems your play stats are only logged globally at the most (as explained in the piece above), unlike of course retail games.
@The-4n , @re.lax I’ve been using your excellent tools which has made self-isolating a breeze. Don’t suppose you have any pointers on how to get a homebrew NSP running under a user account to achieve per user play logs like a retail game? I have a feeling it's probably more complicated than adjusting a few flags in control files. Thanks
Thanks for looking into it, seems it may be more complex than I had hoped. Maybe it has to do with how the game/nro selects a user. For example I've noticed in Brain Training that everytime you select your user's profile it's counted as a launch. Maybe the user select applet is just used to provide a user to the nsp and whether or not they're "logged in" is up to game/nro?
 

templar701

Active Member
Newcomer
Joined
Jul 20, 2015
Messages
43
Trophies
0
XP
1,010
Country
Thanks for looking into it, seems it may be more complex than I had hoped. Maybe it has to do with how the game/nro selects a user. For example I've noticed in Brain Training that everytime you select your user's profile it's counted as a launch. Maybe the user select applet is just used to provide a user to the nsp and whether or not they're "logged in" is up to game/nro?

Thanks, I think you might be right, hopefully it can be confirmed.

Just going to fire off a curios guess - for the play stat records available , I'm guessing the fields that can be queried are something like - date stamp - title id - user id - app start or exit - For games that don't have user select at start up, e.g. Snipper Clips Demo, is the user id just left blank or is there some other recording method?

Interestingly, I note that Goldleaf title viewer makes a clear distinction between global and user play stats. If you view Snipper Clips Demo in Goldleaf title viewer it will just give you a global statistic play stat as expected since the game doesn't let you log in. BUT if you try to view it while logged into Goldleaf as a user, it will give you a crazy statistic for both user and global stats thinking you played the game 20 years ago (please see attached).
 

Attachments

  • GL - snipper clips demo - crazy stat.jpg
    GL - snipper clips demo - crazy stat.jpg
    95.3 KB · Views: 166

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
Thanks, I think you might be right, hopefully it can be confirmed.

Just going to fire off a curios guess - for the play stat records available , I'm guessing the fields that can be queried are something like - date stamp - title id - user id - app start or exit - For games that don't have user select at start up, e.g. Snipper Clips Demo, is the user id just left blank or is there some other recording method?

Interestingly, I note that Goldleaf title viewer makes a clear distinction between global and user play stats. If you view Snipper Clips Demo in Goldleaf title viewer it will just give you a global statistic play stat as expected since the game doesn't let you log in. BUT if you try to view it while logged into Goldleaf as a user, it will give you a crazy statistic for both user and global stats thinking you played the game 20 years ago (please see attached).
Since it gives a crazy value when a user is selected I'd say it's a Goldleaf issue, as you can either query for a user or the 'system' (and you don't use a user id for the system query). I'm not sure about the system stats yet but the Switch simply saves the timestamp of a launch/exit/etc and a separate user event (which I've used for the recent activity stats). Without having a proper look I'd say it's just not writing that user event to the log and thus it's being ignored.

Attached is a snippet of my play log - you can see the user is selected/'logged in' after the game is launched and then 'logged out' before it's closed:
(if you want to experiment the .nro that generates this file can be found here: https://github.com/tallbl0nde/PlayEventParser)
 

Attachments

  • playlog.png
    playlog.png
    10.5 KB · Views: 136
  • Like
Reactions: templar701

templar701

Active Member
Newcomer
Joined
Jul 20, 2015
Messages
43
Trophies
0
XP
1,010
Country
Since it gives a crazy value when a user is selected I'd say it's a Goldleaf issue, as you can either query for a user or the 'system' (and you don't use a user id for the system query). I'm not sure about the system stats yet but the Switch simply saves the timestamp of a launch/exit/etc and a separate user event (which I've used for the recent activity stats). Without having a proper look I'd say it's just not writing that user event to the log and thus it's being ignored.

Attached is a snippet of my play log - you can see the user is selected/'logged in' after the game is launched and then 'logged out' before it's closed:
(if you want to experiment the .nro that generates this file can be found here: https://github.com/tallbl0nde/PlayEventParser)

That's great, will have a play with this for sure, thanks!
 
  • Like
Reactions: tallbl0nde

phalk

Handheld Maniac
Member
Joined
Apr 23, 2009
Messages
588
Trophies
1
Age
36
XP
2,083
Country
Brazil
Hey @tallbl0nde
I was thinking about coding a replacement for the friends module since we can't access it on CFW due to ban issues.

What I mean is: We can already replace the profile with this app, so I was thinking about developing a homebrew to replace the "friends" module of the original FW so we can add and see when our CFW friends are online and what they are playing.

What do you think about this idea? I don't think it would be too complicated, we would just need a relay to pass information...
 

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
Hey @tallbl0nde
I was thinking about coding a replacement for the friends module since we can't access it on CFW due to ban issues.

What I mean is: We can already replace the profile with this app, so I was thinking about developing a homebrew to replace the "friends" module of the original FW so we can add and see when our CFW friends are online and what they are playing.

What do you think about this idea? I don't think it would be too complicated, we would just need a relay to pass information...
That would be great! Yeah there would need to be some sort of server that manages everything. You could use each person's user ID or generate one for them and then have a sysmodule or something that pings the server every so often to indicate they're online. I'm not sure if just the friends applet (or whatever it is) can be replaced though. I mean you could even go all out and add a messaging feature to improve it over Nintendo's... with homebrew (almost) anything is possible! :P

I'm just chucking ideas out though - but it would be cool and helpful for those of us stuck with using lan-play! :)
 

1basti1

Well-Known Member
Member
Joined
Jun 30, 2019
Messages
215
Trophies
0
Age
33
XP
953
Country
Germany
Hey, another Suggestion. :)

Im on
Default Screen - Recent Activity
Default Sort method - by Most recently Played
Default View type - by month

If I change View on the Mainscreen to by day, it Starts at the 1st of the month, it would be much better If it would be on Today. :)
 

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
Hey, another Suggestion. :)

Im on
Default Screen - Recent Activity
Default Sort method - by Most recently Played
Default View type - by month

If I change View on the Mainscreen to by day, it Starts at the 1st of the month, it would be much better If it would be on Today. :)
I get what you mean - I'll add this before next release if I remember :P
 
  • Like
Reactions: 1basti1

kornjaca200

Well-Known Member
Newcomer
Joined
Mar 2, 2017
Messages
57
Trophies
0
Age
37
XP
982
Country
Netherlands

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
Hey all, apologies for the delay in releasing the update but it's finally here! It most importantly brings support for 10.0.0, but also supports more languages and adds custom theme support among other things. There shouldn't be any major bugs I've missed this time :P

https://github.com/tallbl0nde/NX-Activity-Log/releases/tag/v1.3.0
 

mc6415

Active Member
Newcomer
Joined
Sep 3, 2007
Messages
28
Trophies
0
Website
Visit site
XP
179
Country
I seem to have something funky going on with my game time for some reason it seems to think I'm pretty much maxed out the whole of 2021, and it seems to end in July 2022 after tailing off seemingly halving the hours to 672 for Feb 2022, and the others at 720 and 744.... any ideas what's going on as I'm stumped haha!

J3PgGg2.jpg
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BigOnYa @ BigOnYa:
    Damn that's cheap.
  • K3Nv2 @ K3Nv2:
    Slower speeds for gen4
  • K3Nv2 @ K3Nv2:
    I'll reformat and have a 3tb raid0 m. 2 at least
    +1
  • K3Nv2 @ K3Nv2:
    Lmao that sold out fast
    +1
  • Veho @ Veho:
    Yeet the cat.
    +1
  • K3Nv2 @ K3Nv2:
    Good idea
    +1
  • The Real Jdbye @ The Real Jdbye:
    i thought everybody knew cocktails are like 75% ice
  • Veho @ Veho:
    Yeah but not like this.
  • Veho @ Veho:
    It's not like they're complaining that their Slurpee is 99% ice or something, but if the cocktail calls for "shot of vodka, shot of vermouth, shot of gin, shot of Campari, three shots of juice, squirt of lemon" and ends up being a thimbleful of booze, that's a problem.
  • The Real Jdbye @ The Real Jdbye:
    the funny thing is cocktails in norway are only allowed to have 1 20ml shot of booze
  • The Real Jdbye @ The Real Jdbye:
    so..... yeah
  • The Real Jdbye @ The Real Jdbye:
    we're used to only having a thimbleful of booze
  • Veho @ Veho:
    Booo.
  • The Real Jdbye @ The Real Jdbye:
    same thing if you want whisky on the rocks or something, you can't get a double
  • The Real Jdbye @ The Real Jdbye:
    but you could buy as many shots of whisky (or anything else) as you want and ask for a glass of ice and pour them in
  • The Real Jdbye @ The Real Jdbye:
    it's dumb
  • Veho @ Veho:
    Maybe.
  • Veho @ Veho:
    There was a comparison of the number of Ibuprofen poisonings before and after they limited the maximum dosage per box or per pill (i'll look that up). No limit on the number of boxes you can still buy as many as you want, so people argued it was pointless.
  • Veho @ Veho:
    But the number of (accidental) poisonings dropped because drinking an entire package of ibuprofen pills went from "I need a new liver" to "I need a new box of Ibuprofen".
  • Veho @ Veho:
    Here we have ketoprofen that used to be prescription-only because of the risk of toxic dosages, but then they halved the dose per pill and sell them in bottles of six pills apiece instead of twenty and it doesn't need a prescription any more. Yes you can buy more than one bottle but people simply don't.
  • Psionic Roshambo @ Psionic Roshambo:
    Usually accidentally overdose of ibuprofen here is from people taking like cold medicine then ibuprofen for a headache and the combination is over what they need
    Psionic Roshambo @ Psionic Roshambo: Usually accidentally overdose of ibuprofen here is from people taking like cold medicine then...