AniDB O'Matic - mIRC script for statistics
# Made By AnimeNeko Thx to PetriW For this Option # # Enable statwhoring in aom # # Replace e:\aom\MyStats.ini to the correct Directory and filename. But choose INI in aom. # # You can use it in the ChatChannel and PM # menu channel,query { - AniDb Mystats: mystats } alias mystats { var %aom.file e:\aom\MyStats.ini if ($exists(%aom.file)) { var %username $readini(%aom.file, anidb, username) var %anidbepcount $readini(%aom.file, anidb, episodecount) var %animecount $readini(%aom.file, mylist, animecount) var %totaleps $readini(%aom.file, mylist, episodecount) var %Tfilescount $readini(%aom.file, mylist, filecount) var %fileswatched $readini(%aom.file, mylist, fileswatched) var %mylistsize $readini(%aom.file, mylist, size) var %epswatched $readini(%aom.file, mylist, episodeswatched) var %watchedsize $readini(%aom.file, mylist, watchedsize) say %username has %animecount Animes, %totaleps Episodes, %Tfilescount files, Total $bytes(%mylistsize,g).suf $+ ( $+ $round($calc(%totaleps / %anidbepcount * 100 ),3) $+ % $+ ) of AniDB, %username Watched %epswatched Eps, $round($calc(%epswatched / %totaleps * 100 ),3) $+ % of mylist $+ , $bytes(%watchedsize,g).suf $+ , %fileswatched files, Which is $round($calc(%epswatched / %anidbepcount * 100 ),3) $+ % Of AniDB } }
Copy the text and put it in notepad or so and name it StatWhoreing.mrc or a othername.mrc then do /load -rs othername.mrc to load it. After you copy the file into your mIRC directory.
If you want your MyList size in GB. and not that it automatic converts to mb,gb,tb change $bytes(%mylistsize).suf into $bytes(%mylistsize,g).suf then it will only show the size of your mylist in GB's
- Update/debug
fixed a small calculating error in the stats part.
edit: Adjusted the script for AOM 0.5.10+ and higher. Cleaned the code a little bit also Thx to light
# Made By AnimeNeko Thx to PetriW For this Option # # Enable statwhoring in aom Use version 0.5.10.x or higher # # v0.2 # # Replace e:\aom\MyStats.ini to the correct Directory and filename. But choose INI in aom. # # Works In chat Channel and in Private Message. # # Note in the Partially Watched status if you have everything seen and none partially seen it # # will only show Partially seen. The script hides the types where you don't have anything # # partially seen in. # menu channel,query { - AOM Stats .Mystats: mystats .Watched: watched .AnimeType ..TV Series: AnimeTypetv ..Specials: AnimeTypesp ..Movies: AnimeTypem ..Ova's: AnimeTypeova ..Web: AnimeTypeweb ..Other: AnimeTypeot ..Unknown: AnimeTypeun .Storage: storage .AniDB Stats: anidbstats } alias Anidbstats { var %aom.file e:\aom\MyStats.ini if ($exists(%aom.file)) { var %animecountt $readini(%aom.file, anidb, animecount) var %totalepst $readini(%aom.file, anidb, episodecount) var %Tfilescountt $readini(%aom.file, anidb, filecount) var %group $readini(%aom.file, anidb, groupcount) var %sizet $readini(%aom.file, anidb, size) var %length $readini(%aom.file, anidb, length) var %tvtotal $readini(%aom.file, animetypeTVSeries, total) var %specialstotal $readini(%aom.file, animetypeTVSpecials, total) var %movietotal $readini(%aom.file, animetypeMovies, total) var %ovatotal $readini(%aom.file, animetypeOVAs, total) var %webtotal $readini(%aom.file, animetypeWeb, total) var %othertotal $readini(%aom.file, animetypeOther, total) var %unknowntotal $readini(%aom.file, animetypeUnknown, total) var %year $int($calc( (%length ) / (60*60*24*365) )) var %weeks $int($calc( (%length )/ ( 60*60*24*7) - (%year * 365/7) )) var %days $int($calc( (%length )/ (60*60*24) - (%year *365 ) - (%weeks *7) )) var %hour $int($calc( (%length ) / (60*60) - (%year *365*24) - (%weeks *7*24) - (%days *24) )) var %mins $int($calc( (%length ) / (60) - (%year *365*24*60) - (%weeks *7*24*60) - (%days *24*60) - (%hour *60)) ) say Anidb Stats: %animecountt Animes( $+ %tvtotal Series, %specialstotal Specials, %movietotal Movies, %ovatotal OVAs, %webtotal Web, %othertotal Other, %unknowntotal Unknown $+ ), %totalepst Episodes, %Tfilescountt Files, %group Groups, size $bytes(%sizet,g).suf To watch it all it takes %year Year %weeks Weeks %days Days %hour Hour and %mins Minutes } } alias mystats { var %aom.file e:\aom\MyStats.ini if ($exists(%aom.file)) { var %username $readini(%aom.file, anidb, username) var %anidbepcount $readini(%aom.file, anidb, episodecount) var %animecount $readini(%aom.file, mylist, animecount) var %totaleps $readini(%aom.file, mylist, episodecount) var %Tfilescount $readini(%aom.file, mylist, filecount) var %mylistsize $readini(%aom.file, mylist, size) var %animewatched $readini(%aom.file, mylist, animewatched) var %animepartw $readini(%aom.file, mylist, animepartiallywatched) var %epswatched $readini(%aom.file, mylist, episodeswatched) var %fileswatched $readini(%aom.file, mylist, fileswatched) var %watchedsize $readini(%aom.file, mylist, watchedsize) var %tvmylist $readini(%aom.file, animetypeTVSeries, inmylist) var %specialsmylist $readini(%aom.file, animetypeTVSpecials, inmylist) var %moviemylist $readini(%aom.file, animetypeMovies, inmylist) var %ovamylist $readini(%aom.file, animetypeOVAs, inmylist) var %webmylist $readini(%aom.file, animetypeWeb, inmylist) var %othermylist $readini(%aom.file, animetypeOther, inmylist) var %unknownmylist $readini(%aom.file, animetypeUnknown, inmylist) say I have %animecount Animes( $+ $iif(%tvmylist = 0,,%tvmylist Series $+ $chr(44)) $iif(%specialsmylist = 0,,%specialsmylist Specials $+ $chr(44)) $iif(%moviemylist = 0,,%moviemylist Movies) $+ $iif(%ovamylist = 0,,$+ $chr(44) %ovamylist OVA's) $+ $iif(%webmylist = 0,,$+ $chr(44) %webmylist Web) $+ $iif(%othermylist = 0,,$+ $chr(44) %othermylist Other) $+ $iif(%unknownmylist = 0,,$+ $chr(44) %unknownmylist Unknown) $+ ), %totaleps Episodes, %Tfilescount files, Total $bytes(%mylistsize,g).suf $+ ( $+ $round($calc(%totaleps / %anidbepcount * 100 ),3) $+ % $+ ) of AniDB. } } alias watched { var %aom.file e:\aom\MyStats.ini if ($exists(%aom.file)) { var %username $readini(%aom.file, anidb, username) var %anidbepcount $readini(%aom.file, anidb, episodecount) var %animecount $readini(%aom.file, mylist, animecount) var %totaleps $readini(%aom.file, mylist, episodecount) var %Tfilescount $readini(%aom.file, mylist, filecount) var %mylistsize $readini(%aom.file, mylist, size) var %animewatched $readini(%aom.file, mylist, animewatched) var %animepartw $readini(%aom.file, mylist, animepartiallywatched) var %epswatched $readini(%aom.file, mylist, episodeswatched) var %fileswatched $readini(%aom.file, mylist, fileswatched) var %watchedsize $readini(%aom.file, mylist, watchedsize) var %tvw $readini(%aom.file, animetypeTVSeries, allwatched) var %spw $readini(%aom.file, animetypeTVSpecials, allwatched) var %mw $readini(%aom.file, animetypeMovies, allwatched) var %ovaw $readini(%aom.file, animetypeOVAs, allwatched) var %webw $readini(%aom.file, animetypeWeb, allwatched) var %otw $readini(%aom.file, animetypeOther, allwatched) var %unw $readini(%aom.file, animetypeUnknown, allwatched) var %tvpw $readini(%aom.file, animetypeTVSeries, partwatched) var %sppw $readini(%aom.file, animetypeTVSpecials, partwatched) var %mpw $readini(%aom.file, animetypeMovies, partwatched) var %ovpw $readini(%aom.file, animetypeOVAs, partwatched) var %wpw $readini(%aom.file, animetypeWeb, partwatched) var %otpw $readini(%aom.file, animetypeOther, partwatched) var %unpw $readini(%aom.file, animetypeUnknown, partwatched) say i have seen $iif(%tvw = 0,,%tvw Series $+ $chr(44)) $iif(%spw = 0,,%spw Specials $+ $chr(44)) $iif(%mw = 0,,%mw Movies) $+ $iif(%ovaw = 0,,$+ $chr(44) %ovaw OVA's) $+ $iif(%webw = 0,,$+ $chr(44) %webw Web) $+ $iif(%otw = 0,,$+ $chr(44) %otw Other) $+ $iif(%unw = 0,,$+ $chr(44) %unw Unknown) $+ , Partially seen $iif(%tvpw = 0,,%tvpw Series $+ $chr(44)) $iif(%sppw = 0,,%sppw Specials $+ $chr(44)) $iif(%mpw = 0,,%mpw Movies) $+ $iif(%ovpw = 0,,$+ $chr(44) %ovpw OVA's) $+ $iif(%wpw = 0,,$+ $chr(44) %wpw Web) $+ $iif(%otpw = 0,,$+ $chr(44) %otpw Other) $+ $iif(%unpw = 0,,$+ $chr(44) %unpw Unknown) $+ . Total $calc(%animewatched + %animepartw) Animes, %epswatched Episodes( $+ $round($calc(%epswatched / %totaleps * 100 ),3) $+ % of Mylist), %fileswatched Files, $bytes(%watchedsize,g).suf $+ , Which is $round($calc(%epswatched / %anidbepcount * 100 ),3) $+ % Of AniDB } } alias storage { var %aom.file e:\aom\MyStats.ini if ($exists(%aom.file)) { var %StateUnknownc $readini(%aom.file, statusUnknown, count) var %StateUnknowns $readini(%aom.file, statusUnknown, size) var %StateUnknownw $readini(%aom.file, statusUnknown, watched) var %Statehddc $readini(%aom.file, statusOnHDD, count) var %Statehdds $readini(%aom.file, statusOnHDD, size) var %Statehddw $readini(%aom.file, statusOnHDD, watched) var %Statecdc $readini(%aom.file, statusOnCD, count) var %Statecds $readini(%aom.file, statusOnCD, size) var %Statecdw $readini(%aom.file, statusOnCD, watched) var %Statedelc $readini(%aom.file, statusDeleted, count) var %Statedels $readini(%aom.file, statusDeleted, size) var %Statedelw $readini(%aom.file, statusDeleted, watched) say State: Unknown: %StateUnknownc File's, $bytes(%StateUnknowns).suf $+ , Episodes Watched %StateUnknownw $+ , On HDD: %Statehddc File's, $bytes(%Statehdds).suf $+ , Episodes Watched %Statehddw $+ , On CD/DVD: %Statecdc File's, $bytes(%Statecds).suf $+ , Episodes Watched %Statecdw $+ , Deleted: %Statedelc File's, $bytes(%Statedels).suf $+ , Episodes Watched %Statedelw $+ . } } alias AnimeTypetv { AnimeTypeSay TVSeries animetypeTVSeries } alias AnimeTypesp { AnimeTypeSay TVSpecials animetypeTVSpecials } alias AnimeTypem { AnimeTypeSay Movies animetypeMovies } alias AnimeTypeova { AnimeTypeSay OVAs animetypeOVAs } alias AnimeTypeweb { AnimeTypeSay Web animetypeWeb } alias AnimeTypeot { AnimeTypeSay Other animetypeOther } alias AnimeTypeun { AnimeTypeSay Unknown animetypeUnknown } alias AnimeTypeSay { var %aom.file e:\aom\MyStats.ini if ($exists(%aom.file)) { var %total $readini(%aom.file, $2, total) var %m $readini(%aom.file, $2, inmylist) var %w1 $readini(%aom.file, $2, allwatched) var %pw1 $readini(%aom.file, $2, partwatched) say $$1: In AniDB: %total - In Mylist: %m - Watched: %w1 - Partially Watched: %pw1 return 0 } }
- v0.2 : fixed script so it will work with older mIRC versions
Here I added a menu to show the AniDB stats, your own stats, and the state of the files. Like X files unknown on HDD on CD and deleted. Might still have bugs or so :P