Diablo® III

BATTLE.NET - SDK (Diablo 3/World of Warcraft)

Project Description
http://battlenetsdk.codeplex.com/

This SDK provides the ability to use the Battle.net (Blizzard) Services for all supported Games.
  • Diablo 3
  • World of Warcraft (Comming Soon...)

Regions
  • United States
  • Europe
  • Korea
  • Taiwan
  • China

Languages
  • English - United States
  • Spanish - Mexico
  • Portuguese - Brazil
  • English - United Kingdom
  • Spanish - Spain
  • Russian - Russia
  • German - Germany
  • Portuguese - Portugal
  • Korean - Korea
  • Chinese - Taiwan
  • Chinese - China

Implementation Process
This is a list of functions that have been implemented.

Diablo 3
  • Profile
  • Hero
  • Item
  • Follower
  • Artisan

World of Warcraft
  • Coming Soon...

Technology Information
Based on WCF technology, so it is a very advanced and fast implementation of the Battle.net Services.
All functions are available in synchronous and asynchronous mode.

Supports .NET Framework Version
  • 4
  • 4.5

Performance Test (Synchronous)
All tests include the average time for 100 requests with serialization.
  • GetProfile: 78,92 milliseconds.
  • GetHero: 102,03 milliseconds.
  • GetItemInformation: 61,28 milliseconds.
  • GetFollowerInformation: 64,28 milliseconds.
  • GetArtisanInformation: 116,68 milliseconds.

Code Sample


/// Set Caching Mode
D3ServiceClient.CacheSetting = System.ServiceModel.CacheSetting.AlwaysOn;

/// Create D3 Service Client
using (D3ServiceClient serviceClient = new D3ServiceClient(Regions.EU, Localizations.de_DE))
{
/// Request a Profile
Profile profile = serviceClient.GetProfile("Asesjix", 2766);
/// Request a Hero
Hero hero = serviceClient.GetHero("Asesjix", 2766, profile.Heroes[0].Id);
/// Request Item Information
ItemInformation itemInformation = serviceClient.GetItemInformation(hero.Items.MainHand.TooltipParams);
/// Request Follower Information
FollowerInformation followerInformation = serviceClient.GetFollowerInformation(FollowerTypes.enchantress);
/// Request Artisan Information
ArtisanInformation artisanInformation = serviceClient.GetArtisanInformation(ArtisanTypes.blacksmith);
}
Edited by Asesjix#2766 on 9/9/2012 9:05 AM PDT
Reply Quote
Update

Little Performance Test
  • GetProfile: Average request time of 100 query with serialization: 78,92 milliseconds.
  • GetHero: Average request time of 100 query with serialization: 102,03 milliseconds.

Note: This relates to the complete data set can be accessed via the battle.net api.

New Infos:
- Add Documentations on http://battlenetsdk.codeplex.com/
Edited by Asesjix#2766 on 9/9/2012 8:51 AM PDT
Reply Quote
Update - Release 0.9
Add Artisan Information Implementation

More Documentation on: http://battlenetsdk.codeplex.com/
For Example (Complete Sample):


/// Set Caching Mode
D3ServiceClient.CacheSetting = System.ServiceModel.CacheSetting.AlwaysOn;

/// Create D3 Service Client
using (D3ServiceClient serviceClient = new D3ServiceClient(Regions.EU, Localizations.de_DE))
{
/// Request a Profile
Profile profile = serviceClient.GetProfile("Asesjix", 2766);
/// Request a Hero
Hero hero = serviceClient.GetHero("Asesjix", 2766, profile.Heroes[0].Id);
/// Request Item Information
ItemInformation itemInformation = serviceClient.GetItemInformation(hero.Items.MainHand.TooltipParams);
/// Request Artisan Information
ArtisanInformation artisanInformation = serviceClient.GetArtisanInformation(ArtisanTypes.blacksmith);
}


Another Perofrmance Test
  • GetItemInformation: Average request time of 100 query with serialization : 61,28 milliseconds.
  • GetArtisanInformation: Average request time of 100 query with serialization : 116,68 milliseconds.
Edited by Asesjix#2766 on 9/9/2012 8:52 AM PDT
Reply Quote
Update - Release 1.0
Add Follower Information Implementation
Fixes
More Documentation
Final Performance Test

This release describes the complete implementation of the battle.net D3 Api.
Show on: http://battlenetsdk.codeplex.com/
Edited by Asesjix#2766 on 9/9/2012 9:03 AM PDT
Reply Quote
wwoppps wrong thread!
Edited by corroded#6950 on 9/17/2012 9:33 AM PDT
Reply Quote

Please report any Code of Conduct violations, including:

Threats of violence. We take these seriously and will alert the proper authorities.

Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.

Harassing or discriminatory language. This will not be tolerated.

Forums Code of Conduct

Report Post # written by

Reason
Explain (256 characters max)
Submit Cancel

Reported!

[Close]