Local Game Testing Progress

Categories: Bingo Game Server, Flash Bingo Games, Site Updates

I’m almost done with the local game testing. Here are the latest changes/additions:

  • Best players page has been updated.
  • Catch mysql data truncation potential errors, so it doesn’t kill the game server abruptly. Ideally, this error shouldn’t be happening at all, but just for precautionary measures, the error will now be logged and the game server will continue to run normally.
  • For 75/80/90 ball bingo games, card limit selection in the Flash bingo games is now working. Each room has a predefined card limit that can be played, with higher level rooms allowing up to 36 bingo cards at a time. The 3 Flash bingo games now interpret this properly.
  • Added Twitter links in some pages (as additional support medium other than e-mail).
  • Finalize all the game rooms and corresponding setups (e.g. maximum number of cards, timer limits, levels required, default pot amounts etc). Initially, I will only open 3 rooms per bingo game, however all future rooms are already shown.
  • Changes in Table codes, minor CSS changes for some site page updates as well.
  • Home game pages have been re-organized. Preview graphic has been moved to the left side. Minimum pots and jackpots are now being shown. Also removed some unnecessary spaces/texts so the bingo game room listing can be viewed immediately with less page scrolling needed.
  • Fixed a Flash/PHP message parsing bug (plus sign not being parsed properly in some messages).
  • Fixed some bugs in the creation of test accounts for the game server stress testing application. Make sure some tables are properly updated to better simulate web-based connections, and also link as friend to the main test account (so friends-related pages/areas can also be tested).
  • Fixed a major bug in the code confirmation screen, where it fails to go to the chat area after signing in (instead it shows an error). This happens when the player is coming from the sign in screen and not from the registration screen. Good thing I was able to catch and correct the error now, as most players will likely encounter this.
  • Fixed e-mail guidelines link not working in the Flash registration area.
  • Fixed game window not resizing properly depending on the player’s monitor screen resolution (instead it incorrectly uses default sizes always).
  • Added codes so the site can display a “Site under maintenance” message properly as necessary.
  • Strip out illegal characters in chat messages prior to parsing. This shouldn’t really be an issue as there are existing filters in the Flash bingo games. However, since the stress test application doesn’t implement filters, this is also now being done in the bingo game servers for better security.
  • The Best Players links (header, footer) will now point to the currently active bingo game. So if you are currently on a Spin Bingo page (main game page or game rules page), if you click on a Best Players link it will now show the appropriate list for that game properly (less clicks and page reloads required).
  • Fixed javascript e-mail validation bug (should be case-insensitive).

While doing some stress testing on the game servers, I encountered a mysql data truncation issue again as mentioned above. I think I’ve seen similar issues before, but I have not been able to pinpoint the cause, as it’s very hard to replicate (it only happens like once every 100 stress tests, and each stress test happens for hours). Thankfully, I had a clear head when I encountered the issue again so I was able to track the real cause.

The problem is thread synchronization related, which is really a complex issue on its own. Without going into too much details, I think this has now been fixed properly.

Anyway, unless I encounter more issues with the local game testing, I will be moving the tests to the production servers already.

Tags: , ,


Local Testing Final Stages

Categories: Bingo Game Server, Flash Bingo Games

I am now doing more extensive local testing. This means tests outside the Flash IDE, but on an actual web server instead (but not the production servers yet). There are some bugs that only appear when playing games from a web browser, so these are the potential issues that I am focusing on.

Here are some of the latest updates that are in my notes:

  • If a player signs in during a game intermission and he played the last game, his name is now highlighted in the player list (which is the expected outcome).
  • The XP progress bar was previously being measured by current XP against the next target XP. This made the progress bar appear like it’s almost always full even after a level up. This has been changed now so the progress bar is measured differently, in such a way that it goes empty (after a level up) then goes full as the next target XP is reached.
  • Some client/server variables used for testing purposes are now finalized for production usage.
  • Banner links have been fixed. Apparently I have been using the wrong links the past 6 months or so (how did I miss this??)
  • Due to Flash security restrictions, banners aren’t showing properly when being test in my test web environment. Made some changes so this part can be tested prior to moving everything to the production servers.
  • Some sounds are not being heard at all when playing games on a web browser (even if it works in the Flash IDE). Looks like one of those things that the Flash player is inconsistent about. Fixed now.
  • Fixed a critical bug in the bingo game servers that’s causing strange things. This was apparently due to some changes I made earlier to improve packet parsing. One of those silly mistakes that took me hours to figure out.
  • Adjusted XP calculations for better balance between games. Jackpot XP has been increased significantly (since it’s hard to get a jackpot). Spin Bingo XP has also been tweaked, since some players can get rather low scores at times which translates to lower XP that looks imbalance compared to the other bingo games.
  • 90-Ball Bingo: Fix a potential auto-dab issue when playing the second/third patterns.

The following updates are specific to the Spin Bingo game:

  • Bonus scores are now awarded for finishing the game early. This is based on the number of seconds left, which also serves as a tiebreaker in case some players’ end game scores are the same.
  • Patterns that take up a lot of squares have been removed from the list. This should make it easier to complete the patterns in general, thereby increasing the player’s chances of getting higher scores as well.
  • Increased chances of getting a Free Square or Free Column icons.
  • If a player won the game (any rank), game points are now awarded right before the intermission screen appears. This makes it consistent with the rest of the bingo games. Also, this means any game points awarded during the game intermission will be because of level up bonus points. Previously, game win points are added to level up bonus points, so it’s not very obvious when a player is leveling up already.
  • Fixed some Flash game bugs when resuming an unfinished game, where the Spin button keeps on being highlighted, when it should be disabled already. This happens in 2 cases when the game is about to end, both have been fixed now.
  • Make sure all server variables are being copied over when resuming interrupted games.
  • When there aren’t enough players, make sure a player with zero score can’t win the game (but still award XP for joining).

That’s a decent list. I am focusing on fixing bugs/issues, rather than introducing new features, though I did add some things (as long as it’s easy enough to do). After extensive tests in a local web environment, the next (final) step is to do tests on the production servers already.

Tags: , ,


Bingo Game Server Updates

Categories: Bingo Game Server

The Flash policy server has been live for 2 days now. I have just uploaded a new version which separates the table updates per server. Previously the updates were being overwritten, so it’s not possible to know if any of the bingo game servers is acting up.

Some general improvements have also been made, which also affect the bingo game servers:

  • Catch any general error that may happen with client-driven data processing, this prevents abrupt server crashing.
  • Server monitoring application now has a time-out so it can terminate immediately and report a server issue. This more effectively handles the case of the bingo game servers still accepting connections properly, but for some reason unable to communicate further with the clients.
  • Server monitoring application now properly detects if the bingo game server it tries to connect to has terminated the connection, so it can also do the proper clean ups.

The policy server has actually been very stable (no unnecessary restarts needed), so there is a very good chance that the bingo game servers will not have major issues as well.


Search Blog