Go Back   Smogon Community > Pokémon > Smogon Metagames
Register FAQ Social Groups Calendar Search Today's Posts Mark Forums Read

Closed Thread
 
Thread Tools
Old Sep 4th, 2011, 1:30:37 PM   #401
BTzz
don't be scared homie
is a Contributor Alumnus
 
BTzz's Avatar
 
Join Date: May 2011
Posts: 688
Canada
Default

I think Machamp's time in OU might be done. I haven't seen one in so long...
BTzz is offline  
Old Sep 4th, 2011, 2:37:57 PM   #402
GtM
 
GtM's Avatar
 
Join Date: Jun 2009
Posts: 720
The Gastronomicon
Default

I use Machamp on my team, the Substitute set is one of the most threatening responses to Tyranitar in the game, and with Payback + Ice Punch it's only really dealt with by stuff like Reuniclus and Volcorona, and it can deal significant damage to both if it gets a free hit. It's not as good a tank as Conkeldurr, but it can get around Gliscor, Dragonite, and gives the opponent a 50% chance of being screwed up in most circumstances.
__________________
Triple Double! Gyarados + Salamence RMT
Red Skull's Army! Latias RMT
I Burrascusi Italiani! Gyarados + Jolteon RMT

"How does this team fare against Sun teams? I would give Scizor Aqua Jet over Bug Bite so he can pick off those fire pokemon."
GtM is offline  
Old Sep 6th, 2011, 4:01:17 PM   #403
TickingSeedotBomb
 
TickingSeedotBomb's Avatar
 
Join Date: Sep 2010
Posts: 236
Default

Quote:
Originally Posted by Fat Chieliee View Post
Whimsicott wil fall a lot. tbh, I haven't seen it once during my battles (but that could be because I was so high up the ladders all the time :D)

no seriously:
50% of the people with a rating of 900 or lower use whimsicott
1% of the people above a rating of 900 use whimiscott

o.o
Wow really? I hate to say this but.... Whimsicott is clearly the 5th gen "E-vire" (as in, overhyped but isn't as good as we thought) :p

Anyway, If P2 drops to UU. Hopefully Machamp drops down too. P2 + Dusclops cores anyone? Beaten by Knock Off but whatever.
__________________
Complete with gravy, stuffing, mash potatoes, sweet potatoes, cream corn, fruitcake, and mincemeat pie

Favorite OU pokemon: Reuniclus. I don't care if Scizor shuts him down, he's still good.
Peak on the NU tier: 14 / 1734
Favorite NU mon to use: Torterra
TickingSeedotBomb is offline  
Old Sep 6th, 2011, 4:05:23 PM   #404
SHUCKLE MAN
 
Join Date: Apr 2006
Posts: 1,084
Default

Quote:
Originally Posted by Fat TickingSeedotBomb View Post
Wow really? I hate to say this but.... Whimsicott is clearly the 5th gen "E-vire" (as in, overhyped but isn't as good as we thought) :p

Anyway, If P2 drops to UU. Hopefully Machamp drops down too. P2 + Dusclops cores anyone? Beaten by Knock Off but whatever.
To be fair, Porygon 2 and Dusclops aren't too bad without their hold items. Not too much worse than other Pokemon are without their hold items. I know it's different generations and everything, but Porygon 2 and Dusclops were OU in Generation III, before they evolved, so they are capable without Eviolite. Although I know Generation III isn't the same as Gen V, but you know that I mean.
__________________
Shedinja fainted!
SHUCKLE MAN is offline  
Old Sep 6th, 2011, 4:06:36 PM   #405
UltiMario
 
UltiMario's Avatar
 
Join Date: Aug 2009
Posts: 820
Default

Whimsicott is getting Electivire syndrome, when it doesn't deserve it.

Whimsicott was overhyped at the start of the Gen, so everyone is saying that it's ass now to counteract that hype. But in reality, while Whimsicott isn't amazing, it's still certainly the best Momentum stealer in the entire game. That in itself is a quality of an OU Pokemon, and actually takes insane prediction to use at Maximum potential, particularly the set Stun Spore/Tailwind/Encore/U-Turn, which can steal momentum in nearly any situation.
__________________
Quote:
Originally Posted by Fat Diesel View Post
Move over Scizor, Luvdisc just got Aqua Jet.
UltiMario is offline  
Old Sep 6th, 2011, 4:11:12 PM   #406
lordkira
 
lordkira's Avatar
 
Join Date: Jul 2009
Posts: 994
won't
Default

I'm expecting to see politoed rise even more...as well as haxorus.
I'm also surprised to see so many freaking SD Garchomps in Ubers.
It is weird as fuck.
lordkira is offline  
Old Sep 6th, 2011, 4:14:03 PM   #407
GtM
 
GtM's Avatar
 
Join Date: Jun 2009
Posts: 720
The Gastronomicon
Default

Whimsicott has a 75% chance of stopping any possibility of an Excadrill sweep, regardless of how many attack boosts so long as you have something that can OHKO it after, thanks to Stun Spore. I wouldn't say that it's useless, and I believe it deserves to be OU. This thing can dismantle stall with Subseed and cripple offense with Stun Spore, and it's a great big fluffball! What's not to like. :P
__________________
Triple Double! Gyarados + Salamence RMT
Red Skull's Army! Latias RMT
I Burrascusi Italiani! Gyarados + Jolteon RMT

"How does this team fare against Sun teams? I would give Scizor Aqua Jet over Bug Bite so he can pick off those fire pokemon."
GtM is offline  
Old Sep 6th, 2011, 4:17:15 PM   #408
Olijolly
 
Join Date: Feb 2010
Posts: 139
Default

Quote:
Originally Posted by Fat lordkira View Post
I'm expecting to see politoed rise even more...as well as haxorus.
I'm also surprised to see so many freaking SD Garchomps in Ubers.
It is weird as fuck.
politoed yeah haxorus no
while it's true haxorus is obviously far better than what everyone said about him a few months ago after the hype died out, i see haxorus as a pokemon of usage rank of around 20-30
sd chomp...yeah that shit fucking sucks imo
scarfchomp>>sdchomp
Olijolly is offline  
Old Sep 6th, 2011, 4:26:56 PM   #409
TickingSeedotBomb
 
TickingSeedotBomb's Avatar
 
Join Date: Sep 2010
Posts: 236
Default

Whimsicott has big problems with Gyro Ball Ferrothorn which is THE stall pokemon. and imo he's not all that amazing against offense because he cripples one pokemon, and if they have Lum Berry (Dnite) you're screwed. Imo Whimsicott is usually death fodder. though he's AWESOME with memento and tailwind! (Though, Tailwind isn't as amazing as it is in doubles / triples)
__________________
Complete with gravy, stuffing, mash potatoes, sweet potatoes, cream corn, fruitcake, and mincemeat pie

Favorite OU pokemon: Reuniclus. I don't care if Scizor shuts him down, he's still good.
Peak on the NU tier: 14 / 1734
Favorite NU mon to use: Torterra
TickingSeedotBomb is offline  
Old Sep 6th, 2011, 4:28:18 PM   #410
UltiMario
 
UltiMario's Avatar
 
Join Date: Aug 2009
Posts: 820
Default

Quote:
Originally Posted by Fat GtM View Post
Whimsicott has a 75% chance of stopping any possibility of an Excadrill sweep, regardless of how many attack boosts so long as you have something that can OHKO it after, thanks to Stun Spore.
Not to mention the chance of coming in on an SD and Encoring it, allowing another team member to take it out.
__________________
Quote:
Originally Posted by Fat Diesel View Post
Move over Scizor, Luvdisc just got Aqua Jet.
UltiMario is offline  
Old Sep 6th, 2011, 9:48:24 PM   #411
skitz0phrenic
 
Join Date: Feb 2011
Posts: 289
Default

I was hoping for these to be compiled sooner given the lack of stats from last month (I know the server was down a lot, but still).

Given the fact this is 2011, the stats should be available for anyone to view at any time on a daily updated basis, because technology makes life easier and it exists, but I guess we're a bit primitive?

Anyway, I don't want to come off as offensive. It just seems motivation to get things done around Smogon is certainly not a high priority (in all areas, not just this matter).
skitz0phrenic is offline  
Old Sep 6th, 2011, 10:36:22 PM   #412
DetroitLolcat
It's Great! To Be! A Michigan Wolverine!
is a Tiering Contributor
 
Join Date: Apr 2010
Posts: 1,795
Default

Quote:
Originally Posted by Fat skitz0phrenic View Post
I was hoping for these to be compiled sooner given the lack of stats from last month (I know the server was down a lot, but still).

Given the fact this is 2011, the stats should be available for anyone to view at any time on a daily updated basis, because technology makes life easier and it exists, but I guess we're a bit primitive?

Anyway, I don't want to come off as offensive. It just seems motivation to get things done around Smogon is certainly not a high priority (in all areas, not just this matter).
Remember, it's only one person collecting the stats. And running constantly updated stats like PO does would make it harder for Rising_Dusk (the stats dude) to create more detailed statistics (like Doug did in Gen 4), which Rising_Dusk wants to do in the future IIRC.

It seems pretty difficult for R_D to compile these stats that we have already, so taking it a step further is probably not going to happen soon.
__________________
Favorite Pokemon-Swampert- formerly OU and staying that way.


Cats are awesome, the best kind of cat is the Detroit Lion!
Lolcat Nuzlocke Story
http://www.pokemonshowdown.com/replay/ou11556879
DetroitLolcat is offline  
Old Sep 6th, 2011, 10:42:41 PM   #413
skitz0phrenic
 
Join Date: Feb 2011
Posts: 289
Default

Quote:
Originally Posted by Fat DetroitLolcat View Post
Remember, it's only one person collecting the stats. And running constantly updated stats like PO does would make it harder for Rising_Dusk (the stats dude) to create more detailed statistics (like Doug did in Gen 4), which Rising_Dusk wants to do in the future IIRC.

It seems pretty difficult for R_D to compile these stats that we have already, so taking it a step further is probably not going to happen soon.
Yea, I completely understand how it can be hard for one guy to compile all the stats. I guess I just don't know why we have one guy doing it and not just software doing it with one guy maintaining it.

This process could be made easier for those behind the curtains and be made more efficient for the community, and that's not happening. I just don't quite understand the lack of logic here.
skitz0phrenic is offline  
Old Sep 6th, 2011, 10:45:35 PM   #414
Antar*
That's Dr. Antar to you
is a Battle Server Administratoris a Super Moderatoris a Programmeris a Community Contributor
 
Antar's Avatar
 
Super Moderator
Join Date: Feb 2010
Posts: 2,050
DC Metro Area
Default

Would it be possible to make the raw data public? I'm a grad student--distilling data sets is kinda what I do, and I'd be really interested in seeing if I could develop some tools to help streamline the process / make things easier for R_D.

Quote:
Originally Posted by Fat skitz0phrenic View Post
I guess I just don't know why we have one guy doing it and not just software doing it with one guy maintaining it.
I assume because someone would have to write the software...
__________________
Codes and Hacks I Use
PBR FC: 4898-8739-8815 (See here)
Black FC: 4040 5386 0128 / White 2 FC: 4771 3664 7215
My Narrated PBR & Gen V Battles
My Trade Thread
Convert any sim team to pkms
Pokemetrics: A Blog
Antar is offline  
Old Sep 7th, 2011, 12:25:44 PM   #415
Darkon
 
Darkon's Avatar
 
Join Date: Apr 2009
Posts: 71
Default

There is no way to do Smogon server statistics like that: http://stats.pokemon-online.eu/ ?

Pokémon Online server got they own statistics updated every day (probably every day or every week...)

It's really bad that smogon server statistics don't be disponible since june, i understand that it's very hard to got the statistics and make the all topic, etc, but something should be done to make those statistics come to the players more fast x_x
Darkon is offline  
Old Sep 7th, 2011, 1:13:42 PM   #416
SHUCKLE MAN
 
Join Date: Apr 2006
Posts: 1,084
Default

Quote:
Originally Posted by Fat Darkon View Post
There is no way to do Smogon server statistics like that: http://stats.pokemon-online.eu/ ?

Pokémon Online server got they own statistics updated every day (probably every day or every week...)

It's really bad that smogon server statistics don't be disponible since june, i understand that it's very hard to got the statistics and make the all topic, etc, but something should be done to make those statistics come to the players more fast x_x
No. I think it's fine the way it is. As long as we get told if we're not going to get them, or as long as they tell us if they're having issues with getting them.

It's only the 7th. In 4th gen we usually got them around the 10th I think, so this isn't a big deal.

In terms of getting them to us faster, you could offer to help out somehow, if you have the time. They should be happy for people to help them. :)
__________________
Shedinja fainted!
SHUCKLE MAN is offline  
Old Sep 7th, 2011, 1:56:01 PM   #417
skitz0phrenic
 
Join Date: Feb 2011
Posts: 289
Default

Quote:
Originally Posted by Fat SHUCKLE MAN View Post
No. I think it's fine the way it is. As long as we get told if we're not going to get them, or as long as they tell us if they're having issues with getting them.

It's only the 7th. In 4th gen we usually got them around the 10th I think, so this isn't a big deal.

In terms of getting them to us faster, you could offer to help out somehow, if you have the time. They should be happy for people to help them. :)
There are actually a lot of people that want to help and are totally competent and capable of doing so...but their offers for help don't reach anyone if they aren't part of the smogon cliques.

Realistically though, the raw data should at least be available for download on the first of every month and the members that know how to use it should be free to do so.
skitz0phrenic is offline  
Old Sep 7th, 2011, 4:37:03 PM   #418
TickingSeedotBomb
 
TickingSeedotBomb's Avatar
 
Join Date: Sep 2010
Posts: 236
Default

Quote:
Originally Posted by Fat GtM View Post
I use Machamp on my team, the Substitute set is one of the most threatening responses to Tyranitar in the game, and with Payback + Ice Punch it's only really dealt with by stuff like Reuniclus and Volcorona, and it can deal significant damage to both if it gets a free hit. It's not as good a tank as Conkeldurr, but it can get around Gliscor, Dragonite, and gives the opponent a 50% chance of being screwed up in most circumstances.

I used the same moveset recently with an adamant nature and Maxt attack / HP ev's and... It's amazing! Even Reuniclus has trouble with confusion and he's quite bulky! I love Sub Machamp especially because he's "immune" to Ferrothorn and T-tar!
__________________
Complete with gravy, stuffing, mash potatoes, sweet potatoes, cream corn, fruitcake, and mincemeat pie

Favorite OU pokemon: Reuniclus. I don't care if Scizor shuts him down, he's still good.
Peak on the NU tier: 14 / 1734
Favorite NU mon to use: Torterra
TickingSeedotBomb is offline  
Old Sep 7th, 2011, 7:13:37 PM   #419
DetroitLolcat
It's Great! To Be! A Michigan Wolverine!
is a Tiering Contributor
 
Join Date: Apr 2010
Posts: 1,795
Default

Quote:
Originally Posted by Fat Darkon View Post
There is no way to do Smogon server statistics like that: http://stats.pokemon-online.eu/ ?

Pokémon Online server got they own statistics updated every day (probably every day or every week...)

It's really bad that smogon server statistics don't be disponible since june, i understand that it's very hard to got the statistics and make the all topic, etc, but something should be done to make those statistics come to the players more fast x_x
I believe we don't do the stats like PO does because Rising Disk has expressed interest in more detailed statistics (teammates, move usage) which the Pokemon Online program is not capable of generating. Whether it's worth it is debatable, but it doesn't look like it's going to change...
__________________
Favorite Pokemon-Swampert- formerly OU and staying that way.


Cats are awesome, the best kind of cat is the Detroit Lion!
Lolcat Nuzlocke Story
http://www.pokemonshowdown.com/replay/ou11556879
DetroitLolcat is offline  
Old Sep 7th, 2011, 8:53:27 PM   #420
Destiny Warrior
also known as Darkwing_Duck
is a Contributor to Smogon Media
 
Destiny Warrior's Avatar
 
Join Date: Dec 2009
Posts: 3,043
Location: Andromeda Galaxy
Default

I thought it was known that PO's usage statistics added rated and non-rated battles together with no differentiation for each in stats?

This might be outdated, but I remember RD talking about that.
__________________
CAP ASB and Battle Arcade
Destiny Warrior is offline  
Old Sep 7th, 2011, 9:49:15 PM   #421
Antar*
That's Dr. Antar to you
is a Battle Server Administratoris a Super Moderatoris a Programmeris a Community Contributor
 
Antar's Avatar
 
Super Moderator
Join Date: Feb 2010
Posts: 2,050
DC Metro Area
Default

I downloaded the PO server package and started playing around with it a bit. It looks like that PO stats page is automatically generated, but, as people are saying, it's EXTREMELY lacking, not even differentiating between rated and unrated battles.

What would be ideal, I guess, is if the server kept a full log of each and every battle. Then anyone with access to the data could literally do any kind of analysis he or she wanted. For example, I've always been curious about what would happen if usage stats were weighted by ranking. Or what if you could look the "average kills per battle" for each pokemon? (of course, there's the stuff people ACTUALLY care about, like lead rankings, teammate usage, etc. etc.)

Of course, the flip side of this is that the dataset would be HUGE--if an average battle log is 10KB, and there are a million battles per month (there were 300K OU battles alone for June--not unreasonable), then that's 10 gigs of raw data per month to sift through. And, looking at a battle log file, it's not actually what you'd want--what you really want is a header that gives the full movesets of every pokemon on each team IN ADDITION to the log of the actual battle.

What's my point? It's that this is a huge freaking project. Clearly we want more than the very bare-bones usage stats that come built in to PO, but it's not clear to me, at least, what's actually OBTAINABLE given the current software. And the current software is kinda what we're stuck with. I don't think Smogon really has a dedicated enough community to do a complete (or even partial) rewrite of the PO code, nor do we really WANT to fork with PO and lead to the same compatibility problems that took out the server for most of July.

And with that, I'm going to shut up about this and stop theorizing until someone provides more information about what the situation is actually like, in terms of the raw data the PO software generates.
__________________
Codes and Hacks I Use
PBR FC: 4898-8739-8815 (See here)
Black FC: 4040 5386 0128 / White 2 FC: 4771 3664 7215
My Narrated PBR & Gen V Battles
My Trade Thread
Convert any sim team to pkms
Pokemetrics: A Blog
Antar is offline  
Old Sep 8th, 2011, 3:02:37 AM   #422
SHUCKLE MAN
 
Join Date: Apr 2006
Posts: 1,084
Default

Quote:
Originally Posted by Fat skitz0phrenic View Post
There are actually a lot of people that want to help and are totally competent and capable of doing so...but their offers for help don't reach anyone if they aren't part of the smogon cliques.
I know... I've been here for years, and seen that sort of thing time and time again. But it is better than it used to be, to be fair.

But put yourself in the position of those in the cliques. As I keep saying, a lot of them probably have jobs, etc, and don't have time to devote 6 hours a day to Smogon or whatever. So if they let people on this website who DO have a lot of spare time to help out, they'll end up taking over, so to speak.

It sounds a bit selfish and power-hungry, but at the same time, if I were in their situation, I'd probably be scared about letting other people help for the same reason, so I can't blame them.

Quote:
Originally Posted by Fat Antar View Post
I don't think Smogon really has a dedicated enough community to do a complete (or even partial) rewrite of the PO code.
I think you'd be pleasently surprised.
__________________
Shedinja fainted!
SHUCKLE MAN is offline  
Old Sep 8th, 2011, 3:42:03 AM   #423
kejective
 
kejective's Avatar
 
Join Date: May 2010
Posts: 8
Default

Missingno at number 31 in ubers.
Golf clap....
800 battles, really?
kejective is offline  
Old Sep 8th, 2011, 9:45:57 AM   #424
PK Gaming
Quiet Thunder God
is a member of the Smogon Site Staffis a Forum Moderatoris a Smogon IRC AOpis a Community Contributoris a Tiering Contributoris a Contributor to Smogonis a Smogon Premier League defending champion
 
PK Gaming's Avatar
 
Moderator
Join Date: Aug 2009
Posts: 4,525
Izanagi
Default

We ARE working on getting usage stats, so all hope isn't loss. Don't take this as a guarantee but we're doing everything in our power to find a solution.
__________________
PK Gaming is offline  
Old Sep 8th, 2011, 2:11:09 PM   #425
Antar*
That's Dr. Antar to you
is a Battle Server Administratoris a Super Moderatoris a Programmeris a Community Contributor
 
Antar's Avatar
 
Super Moderator
Join Date: Feb 2010
Posts: 2,050
DC Metro Area
Default

I just started digging in the PO source code. There's a really interesting little file in there called usagestats.cpp:

Code:
#include <cstdio>
#include "usagestats.h"
#include "../Server/playerinterface.h"
#include "../PokemonInfo/battlestructs.h"

ServerPlugin * createPluginClass() {
    return new PokemonOnlineStatsPlugin();
}

PokemonOnlineStatsPlugin::PokemonOnlineStatsPlugin()
    : md5(QCryptographicHash::Md5)
{
    QDir d;
    d.mkdir("usage_stats");
    d.mkdir("usage_stats/raw");
    d.mkdir("usage_stats/formatted");
}

QString PokemonOnlineStatsPlugin::pluginName() const
{
    return "Usage Statistics";
}

inline int norm(int ev) {
    return (ev/4)*4;
}

/*
 * From here onward C functions are used in order to optimize
 * speed for that crucial problem, because we access files a lot.
 */

QByteArray PokemonOnlineStatsPlugin::data(const PokeBattle &p) const {
    QByteArray ret;
    ret.resize(bufsize);

    /* Constructs 28 bytes of raw data representing the pokemon */
    qint32 *a = (qint32*)ret.data();
    
    a[0] = (p.num().toPokeRef());
    a[1] = (p.item());
    a[2] = (p.ability() << 16) + (p.gender() << 8) + p.level();
    a[3] = (p.nature() << 24) + (norm(p.evs()[0]) << 16) + (norm(p.evs()[1]) << 8) + norm(p.evs()[2]);
    a[4] = (norm(p.evs()[3]) << 16) + (norm(p.evs()[4]) << 8) + norm(p.evs()[5]);
    a[5] = (p.dvs()[0] << 25) + (p.dvs()[1] << 20) + (p.dvs()[2] << 15) + (p.dvs()[3] << 10) + (p.dvs()[4] << 5) + p.dvs()[5];

    /* Here the moves are sorted because we don't want to have different
       movesets when moves are in a different order */
    quint16 *moves = (quint16*) (a + 6);
    moves[0] = p.move(0).num();
    moves[1] = p.move(1).num();
    moves[2] = p.move(2).num();
    moves[3] = p.move(3).num();
    qSort(&moves[0], &moves[4]);

    return ret;
}

void PokemonOnlineStatsPlugin::battleStarting(PlayerInterface *p1, PlayerInterface *p2, int mode, unsigned int &clauses, bool)
{
    /* We only keep track of battles between players of the same tier
       and not CC battles */
    if (clauses & ChallengeInfo::ChallengeCup)
        return;

    QString tier = p1->tier();

    if (p1->tier() != p2->tier()) {
        tier = QString("Mixed Tiers Gen %1").arg(p1->team().gen);
    }

    if (!existingDirs.contains(tier)) {
        QDir d;
        d.mkdir(QString("usage_stats/raw/%1").arg(tier));
        existingDirs[tier] = QString("usage_stats/raw/%1/").arg(tier);
    }

    PlayerInterface *players[2] = {p1, p2};

    for (int i = 0; i < 2; i++) {
        const TeamBattle &team = players[i]->team();

        for (int j = 0; j < 6; j++) {
            bool lead = false;

            if (mode == ChallengeInfo::Singles) {
                lead = j == 0;
            } else if (mode == ChallengeInfo::Doubles) {
                lead = j <= 1;
            } else if (mode == ChallengeInfo::Triples) {
                lead = j <= 2;
            }

            savePokemon(team.poke(j), lead, existingDirs[tier]);
        }
    }
}

/* Basically, we take the first 2 letters of the hash of the pokemon's raw data,
   and we open that file. We then put the pokemon if it isn't already in, and
   we also open another file with those two letters + _count, in which we write
   two numbers: the usage and the lead usage of the set.

   The reason for using low level functions is because this is a pretty critical
   section in my opinion for big servers, and C++ file management systems are
   pretty slow.
*/
void PokemonOnlineStatsPlugin::savePokemon(const PokeBattle &p, bool lead, const QString &d)
{
    QByteArray data = this->data(p);

    QByteArray file = (d + QCryptographicHash::hash(data, QCryptographicHash::Md5).toHex().left(3)).toUtf8();

    FILE *raw_f = fopen(file.data(), "r+b");

    if (!raw_f) {
        raw_f = fopen(file.data(), "w+b");
    }

    char buffer[bufsize];

    /* We look for the pokemon in the file. Read 28 bytes, compare, skip 8 bytes, read 28 bytes, ... */
    while (!feof(raw_f) && fread(buffer, sizeof(char), bufsize/sizeof(char), raw_f) == signed(bufsize) ) {
        if (memcmp(data.data(), buffer, bufsize) == 0) {
            break;
        }
        /* Not being interested by the count, so we seek forward */
        fseek(raw_f, 2*sizeof(qint32), SEEK_CUR);
    }

    qint32 usage(0), leadusage(0);

    /* The pokemon was never used before? */
    if (feof(raw_f)) {
        fseek(raw_f, 0, SEEK_END);
        fwrite(data.data(), sizeof(char), bufsize/sizeof(char), raw_f);
    } else {
        /* The pokemon was used before so there's already a count,
            so we read the count and then move back */
        fread(&usage, sizeof(qint32), 1, raw_f);
        fread(&leadusage, sizeof(qint32), 1, raw_f);
        /* Seek back to the place where the count is... */
        fseek(raw_f, -2*sizeof(qint32), SEEK_CUR);
    }

    usage += 1;
    leadusage += int(lead);

    /* Write the final counts */
    fwrite(&usage, sizeof(qint32), 1, raw_f);
    fwrite(&leadusage, sizeof(qint32), 1, raw_f);

    fclose(raw_f);
}

bool PokemonOnlineStatsPlugin::hasConfigurationWidget() const {
    return false;
}
Basically, what it does is, every time a pokemon is used in battle, a file is opened on the server for that pokemon (in that tier). In that file, the program looks for the pokemon's moveset. If the set already exists, the program ++'s its count. If not, it creates an entry for that set. In addition, the program ++'s the pokemon's usage count and (if relevant) lead usage count.

The end result, it looks like, is a raw file and a formatted web page like this.

This seems to me to be all that we would want and need. The question is whether this plugin (it looks like it's a plugin) is implemented on the Smogon PO server. From the comments in the source code, it looks like there could be good reason NOT to use it--it might be fairly taxing on the server, which might not be up to the task.

Anyway, it's interesting.
__________________
Codes and Hacks I Use
PBR FC: 4898-8739-8815 (See here)
Black FC: 4040 5386 0128 / White 2 FC: 4771 3664 7215
My Narrated PBR & Gen V Battles
My Trade Thread
Convert any sim team to pkms
Pokemetrics: A Blog
Antar is offline  
Closed Thread Smogon Community > Pokémon > Smogon Metagames

« Previous Thread | Next Thread »
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT -4. The time now is 8:36:38 PM.