Aller au contenu

Photo

So, I made a thing... (a manifest completion badge)


  • Veuillez vous connecter pour répondre
529 réponses à ce sujet

#476
mykejm

mykejm
  • Members
  • 578 messages
Is this broken now?

#477
Blennus

Blennus
  • Members
  • 703 messages
It's stopped updating for me too. Strange.

#478
GuyBlade

GuyBlade
  • Members
  • 235 messages
It was broken. Seems like Bioware added an age gate to the N7HQ. I just updated it to work with the change.

#479
GuyBlade

GuyBlade
  • Members
  • 235 messages

N172 wrote...

I found a bug in the Promotion Distribution badge:
The Vanguard Portion is too large.

For example, I currently got:
82 times Adept
78 times Infiltrator
75 times Soldier
73 times Engineer and Sentinel
71 times Vanguard

But on the badge the Vanguard portion is the same size as the Adept portion (larger than the others), it is worse on the uber badge, where Vanguard is the largest.
I think it might be some kind of rounding issue.

Aside from that: Nice Job!


Yeah, that's a quantization problem. Once you get that many promotions, the differences should be non-existent in the graphics. There are only 70-100 pixels to represent the data. The actual problem seems to be that I always round down and then fill up the remaining space with the last one. I don't really see an easy fix, though.

#480
Blennus

Blennus
  • Members
  • 703 messages
It's working again! Awesome!

#481
Shinobu

Shinobu
  • Members
  • 4 369 messages
Thanks, Guyblade! Still haven't had a chance to play with you though you're on my FL.

#482
mykejm

mykejm
  • Members
  • 578 messages

GuyBlade wrote...

It was broken. Seems like Bioware added an age gate to the N7HQ. I just updated it to work with the change.


Thanks!

#483
GuyBlade

GuyBlade
  • Members
  • 235 messages

GuyBlade wrote...

N172 wrote...

I found a bug in the Promotion Distribution badge:
The Vanguard Portion is too large.

For example, I currently got:
82 times Adept
78 times Infiltrator
75 times Soldier
73 times Engineer and Sentinel
71 times Vanguard

But on the badge the Vanguard portion is the same size as the Adept portion (larger than the others), it is worse on the uber badge, where Vanguard is the largest.
I think it might be some kind of rounding issue.

Aside from that: Nice Job!


Yeah, that's a quantization problem. Once you get that many promotions, the differences should be non-existent in the graphics. There are only 70-100 pixels to represent the data. The actual problem seems to be that I always round down and then fill up the remaining space with the last one. I don't really see an easy fix, though.


I've just pushed a change that should make this a little better, though perhaps not a lot. Take a look and see if it seems more reasonable.

#484
N172

N172
  • Members
  • 945 messages
It is much better now (promotion/uber):
85 times Adept => 23 / 13 px
80 times Infiltrator => 20 / 12 px
77 times Soldier => 21 / 12 px
74 times Engineer => 19 / 11 px
74 times Sentinel => 19 / 10 px
72 times Vanguard => 18 / 11 px

Soldier (promotion) and Sentinel+Vanguard (uber) are slightly off, but only by 1px.
My suggestion whould have been to round down and fill up with background color, but since it is only 1px off it is not really an issue anymore.

#485
mybudgee

mybudgee
  • Members
  • 23 050 messages
Thanks for the upkeep man!

#486
GuyBlade

GuyBlade
  • Members
  • 235 messages

N172 wrote...

It is much better now (promotion/uber):
85 times Adept => 23 / 13 px
80 times Infiltrator => 20 / 12 px
77 times Soldier => 21 / 12 px
74 times Engineer => 19 / 11 px
74 times Sentinel => 19 / 10 px
72 times Vanguard => 18 / 11 px

Soldier (promotion) and Sentinel+Vanguard (uber) are slightly off, but only by 1px.
My suggestion whould have been to round down and fill up with background color, but since it is only 1px off it is not really an issue anymore.


What I ended up doing is rounding down and then putting the remaining pixels in the largest categories. It isn't quite right, but filling in with the background color doesn't look quite right (especially if someone is wearing a badge that doesn't match the page background).

Now to actually go play some ME3 multiplayer since I've only played about 2 games in the last 2 months.

Modifié par GuyBlade, 08 juin 2013 - 11:24 .


#487
GuyBlade

GuyBlade
  • Members
  • 235 messages
So, if anyone wanders by, the badges will be down for the foreseeable future. I'm changing jobs and moving to a new town. Until I get a new place, I won't have anywhere reliable from which to host them. They will be back, eventually. Probably no later than November...possibly earlier depending on how things go.

#488
Squire Rudi

Squire Rudi
  • Members
  • 360 messages
Thank you for putting them up in the first place.

However - if you hadn't made those nice completion badges, I could've kept my OCD under control. Would've saved me from spending many hours completing all of the Silver challenges ;-)

#489
Shinobu

Shinobu
  • Members
  • 4 369 messages
Thanks, GuyBlade! Good luck with your new job and move!

#490
MzAdventure

MzAdventure
  • Members
  • 1 847 messages

GuyBlade wrote...

So, if anyone wanders by, the badges will be down for the foreseeable future. I'm changing jobs and moving to a new town. Until I get a new place, I won't have anywhere reliable from which to host them. They will be back, eventually. Probably no later than November...possibly earlier depending on how things go.



These have been truly awesome - I hope your move & new job go great, and even if you don't get it back up and running,
thank you so much!

Posted Image

#491
LePetitRobot

LePetitRobot
  • Members
  • 717 messages
I'm gonna miss my little Pacmen!

#492
Das Rouse

Das Rouse
  • Members
  • 3 518 messages

LePetitRobo wrote...

I'm gonna miss my little Pacmen!


Me too, actually they were circles.  Nonetheless, I was using the white bar to check my progress on completing all the challenges.  Oh well, at least I don't have to do 600 waves of Volus anymore B)

#493
dcal31

dcal31
  • Members
  • 574 messages
Thanks for the update. Noticed mine wasn't connecting and decided to check the thread. On a personal note, you should be really proud of yourself for creating these. They've become such a fixture on BSN I really didn't notice how pervasive they are until the disappeared. I look forward to their return.

PS- You might want to drop a note at the end of the OP to let people know as well, if you still edit a year old post.

#494
dcal31

dcal31
  • Members
  • 574 messages
So, any luck getting it rigged back up? I still miss the circles at the bottom of my sig. Just wondering where things stand.

#495
XPMUser

XPMUser
  • Members
  • 585 messages
Missing the badge as well D:

#496
GuyBlade

GuyBlade
  • Members
  • 235 messages
So, I'm working on getting badges working again. You may have seen a few of them working sporadically over the last few days. It looks like the statistics servers on the Bioware side may not be up to the task, though.

After leaving things be for about a day, it completely killed my internet connection. It seems the problem is the sheer amount of time it takes for me to pull each user's data from the BW server. To get a feel for it, I killed the web server and manually ran a script to update the last 1000 users's information:

Posted Image

As you can see, it is taking something between 50 and 60 seconds per user to pull data. Although I had scripts written to help handle multiple simultaneous requests for the same users data, they all assumed relatively good turn around time for pulling the six pages that it takes to generate all of the user stats.

What this means for badges is that I'm going to have to completely rewrite the code that handles user polling so that multiple accesses don't kill my network. With any luck, I can get that done this weekend.

#497
GuyBlade

GuyBlade
  • Members
  • 235 messages
Forgive me for a moment while I wax about the technical challenges of this little toy.

Initially, the challenge was just getting data. That ended up being easier than expected using some handy tools for doing automated html parsing (thanks to Mojolicious for their wonderful static DOM parsing library). Once the data was in a usable format, the first few badges were relatively obvious: just draw whatever we've got in some way that is sensible. I initially created this thread, then. That's when the technical challenges started.

I knew before I made it available that I couldn't have every badge access go out and pull data from Bioware. That would be too bandwidth intensive and is frankly just a bit rude. As such, I had some caching that would keep data around for a while before requesting more. This ended up being fine when there was only one badge, but quickly broke down once I added additional badges.

If a person had two badges in their signature, that would cause two requests to my server which would be fine if the data was cached. If the data wasn't cached, though, each of those requests would result in my scripts trying to go out and pull the data again because neither of the requests would know that there was already a fetch in progress--it was a classic race condition. The problem was even worse for posters who were prolific. They might have 3, 4 or 5 posts on the same page which might end up meaning as many as 15 requests would come in almost simultaneously per user who happened to hit the page during the refresh period.
That sort of multiplicative effect was the first real technical challenge. I ended up handling it by creating per-user lock files so that only one request for a user's data would be in flight at a time.

The next trouble came at the redesign of the N7HQ webpage. The big trick there was that most of the pages had been renamed and I needed to add additional 'boilerplate' to get to any of them. This was annoying and required lots of mucking about to see what was required to get past the age gate, but ultimately it also opened up a lot more data, so I probably shouldn't complain too much.

The new problem, though, is a bit trickier. The exceedingly slow poll rate that I now have for N7HQ data has broken my old lock-file system. The long lifetimes of file polls can sometimes bump up against the max running times set for the processes. Worse, I'm ending up with hundreds of open connections while data is trying to load. I think, ultimately, I'm going to have to set up a single master poller to limit the total number of connections and also limit the pain that happens when many users want to update at once. Hopefully that will be enough to keep it running for the next 15 months.

#498
Slother93

Slother93
  • Members
  • 583 messages
Thanks for working on this again!

#499
GuyBlade

GuyBlade
  • Members
  • 235 messages
This might be working now. Might being the operative word.

#500
GuyBlade

GuyBlade
  • Members
  • 235 messages
So, I'll bump this one last time. After leaving my new management scripts running, things seem to working relatively well. If you run into any problems, send me a PM.