AniDB O'Matic - mIRC script for statistics: Difference between revisions

From AniDB
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 30: Line 30:
If you want your MyList size in GB. and not that it automatic converts to mb,gb,tb  
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
change $bytes(%mylistsize).suf into $bytes(%mylistsize,g).suf
then it will only show the size of your mylist in GB's
then it will only show the size of your MyList in GB's


*Update/debug  
*Update/debug  

Revision as of 10:14, 13 May 2009

#                    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