This is probably the biggest update to the API since it was introduced. Scratch that, this is the biggest update. Most of the changes have been structural. I have created several classes for different content types, split classes into their own files and created a proper class hierarchy. As far as usable features, I added award information (ribbons and medals) and server information. An unfortunate side effect of the cached language file (used for ribbons, medals, etc) is that the size of the API has increased from 5KB to 153KB (zipped sizes), but I think a larger file size is better than querying Battlelog for the language file every time (though the API allows you to so that too, albeit experimentally).
Hit up the project page for more information and the download link. Let me know if there are any issues with this release.
Small warning: When getting friends data (by invoking $soldier['friends']), note that the ID is not the nine-digit soldier ID. It is the main Battlelog user ID. I will be working on a way to remedy this situation if possible.
I made a few quick changes that should help those of you who are running versions of PHP less than 5.3. Specifically, the ternary operator (without the middle parameter) and DateTime::setTimestamp() were causing problems.
Since I don’t have any servers running anything older than PHP 5.3.0, I’ll need you guys to point out any further problem areas. Maybe I’ll see if I can find an old server I can throw PHP 5.2 on for testing.
In the meantime, feel free to head over to the project page and grab the latest copy.
It looks like Battlelog has gone public and there are already a number of servers up and running. Unfortunately, the game does not unlock here for another 10 hours or so.
It seems EA updated the authentication system slightly. This caused the API to not get proper credentials when logging into Battlelog. Fortunately, the fix was relatively painless. The image locations on the Battlelog CDN have also changed slightly, and those helper methods have been updated accordingly.
This is simply a bugfix release, but I plan to explore Co-op and other additions to the API when I actually have access to Battlefield 3. (Oh looky, longest headshot is actually being recorded now!)
Head over to the project page to see the specifics and download the updated API.
A little update about my Battlelog API: the Battlefield 3 Open Beta has ended. Stats are now unavailable—not to mention wiped—until game is actually released. I will update the API if it needs one when the game releases on October 25th.
As suggested by Luiz, I have added a method to grab a user’s friends list. It returns their online status and whether or not they’re in a game. Additionally, if they’re in a Battlefield 3 server it will return the server ID and the server’s name so you can easily create a link to join the same server. I can imagine how nifty this would be if properly implemented in a clan form or something similar.
Head over to the project page to see the specifics and download the updated API.
Maybe this Battlelog thing isn’t so bad after all?
I have created a PHP API for Battlefield 3′s Battlelog soldier stats system. If you’re interested in making a signature generator, integrating BF3 stats into your forum or other PHP/BF3 goodness check out the project page.
//---------------------------------------------------------
// Zombies should scream continuously while burning, so long
// as they are alive... but NOT IN GERMANY!
//---------------------------------------------------------
Well, it looks like Counter-Strike: Global Offensive is real. First-hand accounts have been mixed, but I can’t wait to see where Valve takes one of my first favorite FPS titles.
In a rather stunning turn of events, I have managed to completely rewrite BlakeTV in under 3 days. After professing my love of frameworks, I decided that it was time to start using them in my personal projects more often. Specifically, Zend Framework. Transferring and fixing up an old project seemed like the best way to focus on the setup of Zend Framework and less on the project itself. Which is not to say I didn’t put any effort into the rewriting of BlakeTV—because I did. Besides a massive amount of bug squashing, the core API code didn’t change a whole lot. This allowed me to focus on creating a personal Zend Framework toolset that can I can use between all of my Zend Framework projects in the future.
In addition to moving over to Zend Framework, I’m going to start logging all major and some minor changes to BlakeTV. I’ll also be tracking a rough version number.
Changelog (v2.0.11)
New Features:
Timezone settings
Password and email address changing
Account recovery
The “All Shows” page will distinguish between shows you’re personally following and things everyone else is following
Changes:
New website design
Password hashing has changed from MD5 to SHA2—all old accounts will need to reset their password to gain access again
Admin back-end has been completely redesigned
Removed “TBA” and “Season x, Epsiode y” from episode names because… they’re not episode names
Time to air is shown in minutes if the show airs in less than 2 hours
Bugfixes:
Logical error was causing shows to appear in the wrong time category
Inaccuracies in time calculations
Planned Future Additions:
RSS Feeds
Faster TV show searching (current search queries an external server—will change to an on-site database)
Categorize your shows
Notifications (Txt, Twitter, …)
Time display settings
Now that I’ve spent all this time and effort updating BlakeTV, you should sign up for an account and use it.
Do it.
If you have any questions, comments, suggestions or find any problems with BlakeTV, please leave a comment here.