Posts on Jun 2012

Maintenance complete

The planned database maintenance is complete – the extra time, planning and optimizations led to it only taking 5 minutes to execute.

There will likely be more maintenances like this over the next few months as KAG’s infrastructure is improved and expanded to support future growth.


Database Maintenance is starting

The database maintenance I wrote about last week will be beginning shortly (behind schedule).  Please re-read the details of that post and spread the word 🙂

I will post back here when the maintenance is complete.


Progress, setbacks, boats and ropes.

This week has been long.

Well, long for me as I had my final exam as well as a lot of work to do. Very glad to have that out of the way.

Tom and Ryan have made fantastic work on a new, more secure, less annoying installer that can be easily rebuilt each build so that no patching is needed after an install.

Ryan has worked on more API code and a lot of in-game sanity checking (more stability, less console output spam, less data loss…) as well as proper quick join functionality and the client/server understanding what maintenance mode means.

Michal and I have worked a lot on the scripting side of stuff. We want to get this as stable as possible before releasing it to you guys so we’re holding it while we make sure the design is solid and re-implement a lot of the existing content as purely scripted content – this makes it easier for us to track down bugs and makes sure that you guys have some solid examples to work off while the documentation for the scripting API is lacking.

We’re also discussing whether a physics reimplementation is a good idea at this point – currently the objects themselves don’t have mass or drag, just velocity caps and radii – which can lead to a lot of weird stuff and makes configuring new objects and emergent behaviours hard. Its a lot of re-work though which eats into other development time.

Michal got a quick video together of him testing rope attachments out. It’s going to be interesting seeing how rope physics sync over the network, but you can also already do excellent things like swing from ropes attached to pulleys above, and (with some quick modding) water ski as a knight shielding down behind a speed-boat! This is a really exciting time, as it’s going to open up all sorts of possibilities – both for modding and for the vanilla game.

Watch it here: can’t embed, sorry

There’s been some talk of these new “menus” and how some people are unhappy about them – we personally think that the pie menus are incredibly obtrusive and break up gameplay a lot, and hate the disconnect between picking something up when there’s only one thing and picking something up when there are many things. This new icon-based interaction system means you’re never pulled out of the action when trying to grab something quickly, or quickly buy bombs.

We know that it’ll be met by some opposition, but as it allows for custom, scripted interaction points on a per-object basis, we don’t think you’ll mind too much 🙂

Discuss here!


Hotfix on 428

This is a small hotfix build which does the following:

– Adds client/server understanding of a ‘maintenance mode’ for the KAG API

– general error message improvement around certain API calls

– Fixes #606

– join-related API calls in the client and server now use persistent connections; server joins should be noticeably faster

A reminder – please read the previous post regarding Monday’s planned downtime to everything.


edit: one more patch being pushed out that does the following:

– fixes a regression from the #606 fix above, this will be addressed more next week

– Server browser favorites now work again

– Quickjoin has been completely revamped.  this post explains the logic in the new one.  I know I’ll be using the quickjoin all the time now, it prefers favorite servers but has decent logic for selecting others as well.

– Fixed (workaround) sv_goldonly spam in server console in non-gold servers as well as the issue with wood blocks showing up for builders in non-gold servers.  A better fix for this will come next week (requires a netcode change so it will come with a build number change)

Important: Planned maintenance 09:00 UTC Monday, June 25th

Hello all,

The aborted maintenance from earlier this week has been rescheduled for Monday, June 25th at 09:00 UTC and should be expected to take up to 3 hours.  During this period, the following systems will be down:

  • The King Arthur’s Gold API including client logins, server listing, server joins, minimaps and other server/player status information.  During this time the API will respond 503 Temporarily Unavailable; calls will not hang or time out so all systems should fail gracefully.
  • The King Arthur’s Gold homepage including registration and account access
  • The King Arthur’s Gold forums will be taken offline
  • The King Arthur’s Gold bugtracker
  • The King Arthur’s Gold wiki may be available but slow to respond

This maintenance is primarily to update indexes on a few key tables in our database to aid in future growth without performance concerns.

If you participate in any community sites, please spread awareness of this planned downtime to help reduce impact.

Please direct any questions, comments or concerns to this forum thread.


Map/Server Ingenuity by OnR

The guys at OnR have done something very interesting with a map in their server, [FR] OnR Server – 24 Slots (click to join, gold only), that really tests how well you understand the details of how movement and jumping work in King Arthur’s Gold.

You can see from the minimap above that this is not your typical gold server – but rather a maze which relies on very precise and calculated moves to get through all of the obstacles.  I saw this while scrolling through the server browser and decided to join, and before long 3 of the 4 devs were on there grunting and groaning and trying to get through it all (Geti surely would have joined us but he just went to sleep).

Kudos to the person who took the time to design this map, and we look forward to seeing more of this as we release features over the next month which further enable custom game modes and server configurations/modifications.  

(Side note: the new server browser properly deals with custom game modes – so if you have a modification on an existing one, by all means change the game mode in gamemode.cfg and it will show up as a new filterable game mode in the game mode filter list)

If server side scripting goes as planned, it will enable community developers/server admins to take an idea like this and turn it into a thorough game mode – things like having a timer/race aspect (perhaps with the water slowly rising to penalize those who fall behind), writing to custom log files or a custom API to generate logs/statistics, custom endgame scenarios without having to manipulate flag captures, and so on.

Discuss your dreams about the endless possibilities of server modification/scripting at the forums

edit: It sounds like BlueLuigi, MOLE and possibly others have done something similar in the past – so consider this a hat tip to them as well 🙂

Hotfix on build 428

A hotfix for build 428 is on its way out, a few small changes:

– Fixed issue with big (40+ player) busy servers running out of object IDs (and kicking everyone/being unjoinable) after a few hours

– Some optimizations related to how object IDs are looked up (in theory lower cpu usage on servers with a lot going on, in reality not much of a difference)

– removed ‘Blob Loaded’ log/console messages

– Fixed wood blocks not showing up in gold CTF and zombie modes

Also, we are in the process of generating updated installers for download on the website.

The new Windows installer no longer contains the OpenCandy advertising stuff – we discussed it and decided that any revenue from that is not worth the damage to the game’s reputation and concern that may arise over the safety of installing KAG.  I will post again when the new installers are complete and available for download/linking


Build 428

Build 428 is on its way out with some important (potential) fixes:

– fixed rcon admins/guards crash on certain collapses #267#469

– fixed unable to join busy server (lots of objects)

– fixed crash on camera shake (sometimes)

– Removed use of in-game browser, links now open in normal external browsers

– pressing enter in the username box at login now submits the form 

– slight changes to how ping timing works in the browser, might yield more correct results

It is possible some of these issues are only partially fixed – the nature of these bugs means that they need to be tested in public for a while before we know they are fixed.

It is also likely that these fixes resolved some other bugs.  If you have submitted any bugs to the bug tracker, please test them (even if you submitted a long time ago but the report is still open) and add a new note to your bug report saying if the issue is still present or not.  

Discuss on the forums here


Maintenance Debrief/Lessons Learned

The maintenance referenced in the previous post did not go as planned – it took significantly longer than expected due to load on the database server — KAG has grown quite a bit since this type of work was last done, so my “dry runs” of this work on a test setup did not properly reflect what would happen in production.

This maintenance was cancelled after 1 hour without success and will be reattempted in the near future with the following changes:

– I will  take the forums, homepage, and bugtracker offline for maintenance using a page that will show or link to information explaining what is going on

– The maintenance will be announced repeatedly in the 24-48 hours leading up to it

– I will roll out a KAG update which understands when maintenance is going on based on a signal from the API so that error messages can inform users what is going on instead of timing out

Thanks for your understanding as we work to improve KAG and prepare it for the future 🙂


Ongoing database maintenance

Some maintenance is being done on the main authentication database – you may be unable to log into the game/site/forums or list/join servers until this work is complete – hopefully in the next hour or so.  This is to resolve a performance issue with the KAG API.

Future work will hopefully be scheduled and announced further ahead of time – my apologies for any inconvenience.

This should be completed by 12:15 UTC.

Social Media

Stay up-to-date with our latest news - make sure to follow us on Social Media!