Angel Persistence Engine
Angel Persistence Engine
Since we specialize in writing games, we also specialize in writing game-related software. Our Angel project is a perfect example of a software-as-a-service which will be useful to the game development industry. Client libraries are being developed in the C, .NET, and Java languages. Writing your game in a different language? No problem, although we don't have a client library for other languages (yet), you can download our WSDL and write one up yourself if you feel up to it. The web-service is built so that client libraries need very little programming and almost no updating when patches come out. That means if we update something, your client library has instant access to the new functionality--the WSDL will almost never change. Any web-service compatible language can harness the Angel web services.
Â
What is Angel?
Angel is a web-services based persistence and statistical engine for video games. It allows game developers and/or publishers to track player data or persist character information in their games; much like how a role playing game will keep 'tabs' on progress and experience points.
Â
How does Angel work?
Angel is web-services based, which means the service is published on the Internet. The service is 'hooked' by a video game and then the data is sent via the HTTP protocol to our databases, where it can be managed and reported on via a web site. The 'hooks' that are required for the game developer come in the form of very small web-service client libraries written specifically to consume the Angel web services. They exist in three flavors: C (which is C++ compatible), .NET (VB.NET or C#), and Java (JDK 1.6).
Â
What kind of data can Angel store?
Angel can store virtually any amount and any type of data. Access to the administrative website (given to you or your company after you open an account) allows you to add/remove/change trackable fields. These fields can be anything from simple scalar values, such as total kills, total deaths, total captures, experience points, total playtime, all the way to more complex data such as last death location (3d coordinates) and player avatars (binary).
Â
What do I do with the data that Angel stores?
Angel will generate reports and statistics on the data that you send it. With this data, you as a game developer or designer, can make better decisions about how to balance gameplay by adjusting difficulty levels of your AI, changing the damage dealt by the weapons, seeing how often players are playing your game, where they are going in the world, etc.
Â
Does it cost anything?
As of yet, there has been no cost structure identified for Angel. It is currently in closed beta testing. We have been thinking about charging a simple subscription-based fee for the service, or charging a certain amount per transaction (fractions of a dollar). We will post an update when a cost structure has been defined--please keep checking back!
Â
Can I get a demo version?
Yes you can! The access to the service is controlled by a client ID and access key. We can give out temporary (or development-only) access keys that allows your game to consume the service for a period of time so you can see how it works and figure out if it is right for you. Once your demo access key expires, Angel will no longer be accepting data from your game--although your game will still run depending on how "deeply" Angel has been embedded into your game.
Â
Case Example / ScreenshotsÂ
With the power of Angel, game developers and/or publishers have a method of off-loading the storage of their player's character data. This means they do not have to worry about coming up with an expensive solution to storing things like player avatars, experience points, configuration data, etc. Angel will store and manage this information automatically. All it takes is a couple of calls into a shared library (*.dll or *.so) from the game's binary and that's it!
Â
For example, company XYZ is developing a role playing game. Most if not all RPG's persist their player's character. This is unlike first person shooters where when the player leaves the server (if playing multiplayer), they lose their progress. Since company XYZ needs to store this information, they'll need to spend more time and more development dollars on coming up with a solution. If they use Angel, they simply obtain a copy of the binaries (*.dll or *.so), configure it, package it with their game's server software, and make a few calls into it during game play for storing and retrieving data. Once they've done that, they can use this data however they please. There is no limit to what can be stored so any game for the PC can use this technology. This saves company XYZ a lot of money on things like database licensing costs, hardware costs, development costs, and even co-location costs if their data center is not located on-site.
Â
Last Updated ( Friday, 13 March 2009 17:34 )


