Cubeia Poker Cloud Scalability
Introduction
Would you want some cloud with your game server?Cubeia Firebase was initially build for real money gambling and for deployment on dedicated hardware. It makes sense to control your hardware when you're dealing with monetary systems but as gambling focus has shifted the last couple of years towards social gaming cloud based deployments makes much more sense. In this article we'll present Cubeia Poker running on Amazon AWS and our initial load tests and evaluation.
Firebase from Scratch, pt IX: Custom Authentication
In a series of posts we’ll do “Firebase From Scratch”, an introduction to Firebase and its concepts and ideas. Hopefully, reading this series will give you a firm grasp of what Firebase is and what it can do.
- Part 1: Introduction
- Part 2: Diving In
- Part 3: A Maven Interlude
- Part 4: Games, Services and Tournaments
- Part 5: What’s In a Server Game Anyway?
- Part 6: Activating Games
- Part 7: Actions On The Table
- Part 8: Services
- Part 9: Custom Authentication
Cubeia Firebase 1.9.0
Today we release Firebase 1.9.0-CE (and of course also EE for our enterprise customers). It's been 6 months since 1.8.0 and we've been using 1.9 internally for approximately 2 months now, including within a very active development project. This release can be described in two acronyms: JPA and JNDI. By adding JNDI within the server and removing JPA we've made it significantly easier to actually use JPA. The king is dead! Long live the king!
Firebase from Scratch, pt VIII: Services
In a series of posts we’ll do “Firebase From Scratch”, an introduction to Firebase and its concepts and ideas. Hopefully, reading this series will give you a firm grasp of what Firebase is and what it can do.
- Part 1: Introduction
- Part 2: Diving In
- Part 3: A Maven Interlude
- Part 4: Games, Services and Tournaments
- Part 5: What’s In a Server Game Anyway?
- Part 6: Activating Games
- Part 7: Actions On The Table
- Part 8: Services
- Part 9: Custom Authentication
Games & Aynchronous Integrations
When a game network attaches external integrations, such as remote wallets, asynchronous communications becomes important. This can be any kind of integration, but in this blog post we'll assume it's a wallet we're talking with. So, what's our problem?
- If the network has several operators no operator must block players from another operator. If the wallet operation is synchronous, one call to an integration may lock the entire table. It is more acceptable if there is only one operator, but when there's several, we must make sure no-one is penalized by another players operator.
- Similarly, we may have other integrations that takes time even for a single operator and don't want to block game play during it's operation. This might include interactions with national gambling authorities, etc.
- Send buy-in information to player
- On buy-in request from player, set player state to "buy-in in progress"
- Hand-off buy-in operation from the game to a wallet service
- When buy in is complete, wallet service notifies game
- Game sets player as "in game" and notifies the same
Totally TicTacToe
TicTacToe is one of the classic examples when it comes to multiplayer games. The rules and interactions are simple enough to make it a good example. We have now amassed a few examples. A few
Functional Bots in 5 Minutes
Sound like a dream? At Cubeia we often need to write bots, either to test a new aspect of Firebase, or to help customers quality test their products. So, naturally we've extracted a little framework for quickly writing bot AI
Firebase from Scratch, pt VII: Actions On The Table
In a series of posts we’ll do “Firebase From Scratch”, an introduction to Firebase and its concepts and ideas. Hopefully, reading this series will give you a firm grasp of what Firebase is and what it can do.
- Part 1: Introduction
- Part 2: Diving In
- Part 3: A Maven Interlude
- Part 4: Games, Services and Tournaments
- Part 5: What's In a Server Game Anyway?
- Part 6: Activating Games
- Part 7: Actions On The Table
- Part 8: Services
- Part 9: Custom Authentication
You should never keep references to table instances in your game or activator.
The above rule is because Firebase is build to transparently scale across multiple servers: Firebase needs to be able to "move tables" between different servers and will do so to make sure there's no data loss even if servers are crashing.It’s Alive!
Finally, after 6 months of active development, three release candidates and untold liters of developer blood and sweat: Firebase 1.8.0-CE is now released! This release brings HTML5 support in the form of WebSockets and Comet right into the Firebase server. The
Firebase from Scratch, pt VI: Activating Games
In a series of posts we’ll do “Firebase From Scratch”, an introduction to Firebase and its concepts and ideas. Hopefully, reading this series will give you a firm grasp of what Firebase is and what it can do.
- Part 1: Introduction
- Part 2: Diving In
- Part 3: A Maven Interlude
- Part 4: Games, Services and Tournaments
- Part 5: What's In a Server Game Anyway?
- Part 6: Activating Games
- Part 7: Actions On The Table
- Part 8: Services
- Part 9: Custom Authentication