Released Combu 1.5.4

Combu 1.5.4 has been released on Asset Store, though it isn’t a regular update since no files were modified but it has been released only to share the Release Candidate version of the new incoming Combu 2.0 so you can start playing with its new great features and way of programming. You will find here more informations about the differences from 1.x system and learn the new improvements, more will be released with the final release of Combu 2.

Combu 2 Beta access

Combu 2 is almost ready for the public release, and we’re all excited with the improvements and with the new tiny code styling and direct integration with Unity Social!

To familiarize with the new system, that has been refactored, we have created a page where you can request the password to download Combu 2.0 Beta (available only to current customers, no external testers are allowed).

If you want to participate in this beta, please fill the form on this page and wait for our response, after we will check your account (and Invoice No./Bill To, if you purchased from Asset Store) you will receive the password to download the beta version for free.

Meanwhile you may want to take a look at our new API documentation, it’s referred to the current beta so you can preview the changes to port your project to the incoming version.

Combu 2.0 Preview

Combu 2.0 is in Release Candidate stage and currently under our testing review process. The 2nd generation of Combu features a complete refactoring of the Unity classes and management, making it much easier to learn for both newbies and expert programmers thanks to the fact that it’s built on top of the Unity ISocialPlatform interface, so most of the current features will work the same or similar way of Unity Social.

First of all we organized all the core classes in our own namespace Combu, mainly for compatibility reasons (we found that some libraries also used “CBManager” class name in their assemblies, for example ChartBoost package).

You will find a new property Dont Destroy On Load of the component CombuManager (formerly known as CBManager) by default set to true, usually you will need only one instance of CombuManager along your app lifetime.

Under CombuManager you will find platform (CombuPlatform inherits from ISocialPlatform and also adds custom methods) and localUser (that is a shortcut to CombuManager.platform.localUser, our new User class inherits from Profile that implements IUserProfile).

Basically most of the documentation is the same/similar to the standard ISocialPlatform, except few custom features and methods overload. Let’s see few examples of the incoming changes.

Login example

Here is the new v2.x code to authenticate a user:

CombuManager.platform.Authenticate ( "username", "password",
(bool success, string error) => {

      if (success)
      {
         Debug.Log(CombuManager.localUser.id);
      }
      else
      {
         Debug.LogError("Login failed: " + error);
      }
});

Send score to leaderboard

Here is the new v2.x code to send a score to a leaderboard:

CombuManager.platform.ReportScore(100, leaderboardId,
(bool success) => {

      if (success)
      {
         Debug.Log("Score registered");
      }
      else
      {
         Debug.LogError("Score failed to register");
      }
});

Get online state of a user

With the new API you can now retrieve the UserState of a User by accessing the property state. You know that we’re working in an asynchronous system, so the user state (as all other data) is not automatically refreshed and you may want to check the state inside a callback to Load is you know the data were loaded too much time ago.

CombuManager has two new properties: onlineSeconds (compared to the last action time registered from the user) and playingSeconds (compared to understand if he’s playing, if you want to manage yourself the playing state then you can set this value to zero).

Get server version and time

We created a web service for convenience, it returns some generic data of the server like the Combu version installed, current date/time etc:

CombuManager.instance.GetServerInfo( (bool success, CombuServerInfo info) => {
   if (success)
   {
      Debug.Log("VERSION: " + info.version + " | TIME: " + info.time.ToShortDateString() + " " + info.time.ToShortTimeString());
   }
   else
   {
      Debug.LogError("Score failed to register");
   }
});

Conclusions

Lesser code easier to read and understand, isn’t it? 🙂

Of course, you can still pass void functions to the methods instead of the inline delegate syntax, it’s up to your coding style.

Other new features will be released when Combu 2.0 will be officially released, but we will talk later in the release notes!

For now you can take a look at the new documentation.

Combu 1.5.3

Combu 1.5.3 has been released and it’s already available both on this website and on Unity Asset Store. It features the following bug-fixes and implementations.

Server

  • Fixed SQL statement filters in CB_UserFilesActivity::Load, CB_Mail::Load, CB_Mail::LoadUnread, CB_UserGroupAccount::Load
  • Logged users cannot send more than one Like to a UserFile
  • Web admin console: you can now see and change Email in Player Info

Unity

  • Fixed date/time conversion of CBNews.date from JSON

Database

  • Added the field Views (INT, NOT NULL) into the table CB_UserFilesActivity

Execute the following SQL statement to add the field in your installation:

ALTER TABLE `CB_UserFilesActivityADD COLUMN `ViewsINT NOT NULL;

 

Released Combu 1.5.2

Combu 1.5.2 has been released in February implementing new features. We missed to send a newsletter for the announcement of the new version, so you will find here the list of features implemented.

 

VERSION 1.5.2

Updated Combu web files, latest was missing the webservice handler for mail count.

 

VERSION 1.5.1

Server:

  • Fixed define SECURITY_ENABLED in api.php to re-enable the security
  • New web service “users/search” to make a search in the user accounts table
  • New web service “mail/count” to get the number of read and unread messages
  • Web service “mail/read” now accept parameter Id to be -1 so that it can mark as read all messages received by the logged user

Unity:

  • Added new method CBManager/LoadUsers to search users
  • Added new method CBManager/CountMail to get the numbers of read and unread messages received by the logged user
  • Added new class CBMailCount to handle the results from CBManager/CountMail
  • Added overload CBManager/ReadMail without any parameters to mark as read all messages received by the logged user

 

Released Combu 1.5

Version 1.5 is already out for our website clients in your My Downloads page, the update has already been sent to Unity Asset Store and it’s under their reviewing process right now.

The content of this update is pretty huge and can open a bunch of new features in the future. The first new feature is the support for User Groups: your users can now build their own lists of friends, family, coworkers etc just like you do on Facebook. Another great addition is the support for multiple recipients in-game messages: you can now send an in-game message to more users or to user groups.

Few other additions are more for developer’s pleasure: you can now call LoadUser by passing username, UpdateUser now sends also Username to be changed.

The support for the C++ client code has been discontinued by the current release since it seems there isn’t much interest on that by any client, anyway we are thinking to some other extra implementations so may be it will pop up again later in another form.

Happy New Year with Combu Cloud!

Hey folks, we hope you’ll have an awesome New Year!

The New Year 2015 has begun with a new exciting challenge for us at Skared Creations, a new arrow in the quiver of Combu: we’re launching Combu Cloud, a hosting service for your apps and games particularly designed for who of you needs just an online space for logins, leaderboards, achievements and what else is offered by the standard version of Combu. By activating a subscription you will be able to maintain your Applications data on our cloud servers and don’t need to host your own server, we will add new Combu features as soon as they’ll be released.

Combu Cloud is coming up! Click here to learn more

Released Combu 1.4.5

Combu IconCombu 1.4.5 has been released right now, access to your Purchase History (if you purchased from this website) or Asset Store (if you purchased from Unity) and download the new package. We submitted the update to Unity store today, so it will take some days (up to 1 week) to be published officially on Asset Store. We missed to send out the notification of the release 1.4.4 few weeks ago, so you’ll find below here the release notes of both versions.

Version 1.4.4:

  • Added new Score Types for Leaderboards: Replace the best score per user; Replace the same score per user
  • Added new flag Allow anonymous for Leaderboards to allow old-style arcade games not requiring user registration/login
  • Added support to integrate GameCenter (Unity built-in Social) and Facebook SDK asset
  • Added new section Newsletters in the admin web site to send an email to all registered players (if they provided an email address)
  • Minor bug fixes

Version 1.4.5:

  • Added new method CBManager.ResetPassword to send a code to the user’s email to reset/change the password
  • Added override method CBManager.ChangePassword that accepts Username
  • CBManager.UpdateUserFile now sets the data in the passed object when it receives the response from the webservice
  • The web folder contains few samples of how your web pages can interact with our API
  • Minor fixes and changes

In the package you will find also the file update_db_from_1-4-4.sql that you can run to upgrade your database from version 1.4.4 to 1.4.5 (added a new column to the table Account).

Also we have recently released some sample integrations with third party assets (GameCenter, Facebook SDK, Photon PUN), you can find them at the product page.

Released Combu 1.4.3

Combu 1.4.3 has been released, it features a small bug fix for PHP versions older than 5.4 related to the Account Custom Data and Inventory Custom Data incorrectly saved on the above versions of PHP.

If you missed the release notes of the previous version 1.4.2, here is what it featured:

  • Fixed CustomData save/load when a value contains a JSON encoded string
  • Fixed dates read from Mail when the hours are past 12AM
  • Fixed inventory’s custom data store/read when name or value are enclosed within double quotes
  • Added new method LoadRandomUsers to retrieve a random list of users
  • Added new method ChangePassword to change the password of the currently logged account
  • Added new feature to share a UserFile with friends/everyone and possibility to increment fields View and Like for each one
  • Changed the method LoadUserFiles to filter shared files and added pagination

To upgrade the database from a version older than 1.4.2 to the latest then you’ll need to run the following queries (the SQL file included in the package is always used to create a new database, not to upgrade):

ALTER TABLE `CB_UserFile` 
ADD COLUMN `Name` VARCHAR(45) NOT NULL,
ADD COLUMN `ShareType` TINYINT(1) NOT NULL,
ADD COLUMN `Likes` INT(11) NOT NULL,
ADD COLUMN `Views` INT(11) NOT NULL;
CREATE TABLE `CB_UserFilesActivity` (
 `Id` bigint(20) NOT NULL AUTO_INCREMENT,
 `IdFile` bigint(20) NOT NULL,
 `IdAccount` bigint(20) NOT NULL,
 `Likes` tinyint(1) NOT NULL,
 `LastActivity` datetime NOT NULL,
 PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

If you have issues or questions, please use the official forum.

Released Combu 1.4

Combu 1.4 has been released, in the new release we focused our attention to security so now it implements One-Time Token and Password encryption over the net to fight spoofing attacks for the customers who don’t have secure SSL connections. Also it provides new methods to complete the accounts management from your game/application:

  • LoadUser(): loads an account info and returns a CBUser object
  • UserExists(): verifies the existence of an account with the specified username or email
  • DeleteUser(): deletes a user by passing its username and password (for security reason)
  • LeaderboardHighscoreForAccount(): loads the high score for an account in a leaderboard

This update is already available to our customers both on our website (if you purchased from skaredcreations.com) and on Unity Asset Store (if you purchased from Asset Store). The update is, as ever, free of charge to all our Combu customers.