Posts on Sep 2013

Script Changes for Next Build

We’ve been promising ourselves to be more forthcoming about changes like this before a release is out, since although modding is not officially supported, we can appreciate that those who have already undertaken some work would prefer that not to break :^)

Big Changes that might break mods next build:

  • Random(range) as a global function is removed, use XORRandom(range) instead.
  • There is no direct equivalent of Random(seed, val) any more – for the simple reason that such a function doesn’t really make sense anyway. Create a random object with your seed and call NextRanged() on it.
  • Random(seed) creates a RNG object, use Next(), NextRanged(range) and NextFloat() to get values out of it
  • Noise(seed) creates a 2d noise map, use Sample(x,y) or Sample(vec) and Fractal(x,y) and Fractal(vec) to get values out of it. Values for the noise map are between zero and one, we’re considering allowing specifying the range in constructor.

Hopefully the change is worth it, Random objects like this allow much more stable generation of values, you can have a random generator for each tree or all the trees on the map, instead of sharing the state between every object in the game, and between play sessions. Overall this should allow us to make map generators where the seed actually matters, which is pretty important :^)

As a side note, this has lead to changes in a very large many of the vanilla scripts, some 57 individual scripts were affected, most of them in multiple places, producing over 500 lines of compiler error spew – please understand that for any change that breaks the interface, we very likely have to make more code changes than the entire modding community combined – we always have a rationale for making changes that break the interface, and we’ll try to explain them as best we can as we make them in the future – ideally giving you a few days notice if we can.


CTF Day 9 – First Day of Testing and Feature Roundup

I didn’t report on Day 8 due to it just being bug stomping, but today CTF went into private testing. Although there were and continue to be hiccups along the way, the game plays more or less how it should, with some push and shove between teams with the game ultimately being decided by who makes the better plays for the flag.

Only major issue is materials drought, which will be solved by extending the resupply mechanic into the game.

I thought I should do a roundup of the bigger things that should please some of the older players as well as be exciting and new to any greenies, so you know what’s what.

  • Coins for playing well to spend how you please.
    This is the main one for veterens, I feel. We’re happy to give you what you want with simple coin operated shops, and coins for kills and building. We’re in the process of balancing the costs of items to give even new/rubbish players access to some items, while effectively preventing spam of higher tier stuff.
  • Gold required for Siege and Boat shops, and Transport Tunnels – this ensures that gold remains something to seek out in the map, particularly late game where you may need a siege engine to help buckle the enemy defenses.
  • Multiple captures from multiple flags to allow recouping after a loss without a change of map – while still allowing a decisive multi-unit play to win the game.
  • Spawn separated from Flags – while this may seem like a no brainer, classic’s CTF has been plagued by flag-on-tent since day one. No longer will you have to cut your way through every member of their team spawning on top of you with strange teleporty spawn immunity just to get a slice of their flag – they’ll have to defend them separately.
  • Flag captured at other flags – means that you must keep your flags accessible to stand a chance at winning.
  • Unlimited spawns – a feature of arguably the most well populated Classic CTF server, winning relies on capturing the flag, not killing 100 (flithy) reds. While I’m sure people will happily re-add the ticket mechanic, we’re happy to see a simplification of the mechanics.
  • Resupply on Tent – as I mentioned earlier we’ll be expanding this aspect to help fill in the materials drought, but basically players can resupply on the tent a few times each minute, netting free resources around the base. Currently, this is used to good effect in implementing a fair, abuse resistant “infinite materials” system during the build phase of the game, it should extend naturally into a generic resupply. Another gripe with the mechanic’s equivalent in classic has been fixed – the time until your next available resupply is clearly stated.

I’ll get some gifs of gameplay tomorrow if possible – for now, its 2am and I really need to sleep :^)


B878 – New Cooperative Challenges!

This build introduces the new singelplayer/cooperative gamemode called Challenges.

You will play with a team of friends (or single) on very small maps with a particular objective like:

  • Kill all the red
  • Get to the other side of the map (KAG parkour)
  • Escape the flood!

I made other modes but they weren’t as fun as those so – not included. We have more ideas and will introduce new challenges as time comes. We just want this first batch to come out quick so you can play it.

All of these challenges have a max. 1 minute time limit. This means fast gameplay, even if you lose or die, in a couple seconds the next challenge is loaded.

Some maps have randomized classes to keep things interesting and coop. If you spawn as builder be sure to help out your team!

High scores are stored and shown at the end of each round:

  • Most individual/team kills
  • Fastest times


We want more Challenges!

This gamemode needs like 50 maps to be awesome. But we don’t have that much time to do it ourselves. This is where you can help. Making maps for this mode is quite easy. Just check Base/Maps/Challenge/Missions to see how the map + config looks like. Make your map, put it there and then add it to the mapcycle to play: Base/Rules/Challenge/mapcycle.cfg

Post on forums and we’ll pick the best ones and include them in the game with proper credits for the author!


How to run a Challenge server

In your autoconfig.cfg file set the following things:

sv_gamemode = Challenge  
sv_mapcycle =   (leave blank)
sv_mapcycle_shuffle = 1
sv_maxplayers = 4 


Archer changes

We’ve thought a lot about the archer and we want him to be more fun and more distinct from the knight class. I felt like removing 1 heart from health was a step in the right direction but it needed more. Here’s what changed for archer:

  1. The arrow gravity arc is practically removed until about half screen distance when it starts to drop
  2. Firing a max charge arrow is 2x faster
  3. The Legolas triple shot takes much longer to charge
  4. Charged (and Legolas) shots break knight shields within slash distance

We’re kind of biased about the triple shot and it might change in future versions. The other changes should be real good.

Stay tuned for news from Geti, CTF should be released next week.


Changelog B872-B878:

[modified] set default map cycle to mini challenges for Challenge

[modified] out of box config settings are that of Challenges

[fixed] unable to cap hall in Challenges

[fixed] server browser to use Challenges as coop

[removed] archer cam and slightly faster arrow

[fixed] arrows sticking to ceiling on Amarok

[dev] fixed various issues with loading non-default maps on network

[fixed] out of date menuhelp.png

[modified] grapple appearance

[fixed] builder building on self and teleporting

[added] grappling hook help

[added] button for Challenges in Solo menu

[modified] tweaks to princess mode meta

[modified] adjusted arrow speeds (slightly faster mid-pull; even faster load)

[added] default suicide icon for kill feed

[added] killing bots adds to scores

[added] /BaseJeep - an example of a full KAG modification

CTF Day 7 – GUI, Tent Mats and Bugs

Today I worked on the GUI of CTF, and fixed as many bugs as possible in the gamemode. Overall it was quite productive, if a little underwhelming in screenshots :^)

As you can see, the GUI is very minimal. The screenshot above shows that Blue is winning, Red have had one flag captured and have one flag that is currently in danger. This appears where the TTH “shields” appear.

I also got warmup tent materials working, which i’m sure all the veterans will know is important for good pregame castles. I also decided to give some coins to each player on each new game, so everyone can afford a few bombs or a special arrow at the start of the game to set things going with a bang. We’ll see how that plays out, haha.

The bugs fixed were mostly just annoying internal things, like the spawns being managed ineffectively or the warmup phase with red barrier not triggering properly. The majority of ones blocking playtesting have been sorted out, so testing will go ahead fairly soon (MM wants to release the Challenge stuff first so that it can be tested in public).


CTF Days 5 and 6 – Shops!

Hey guys, while progress on CTF was stalled by other commitments, it’s back on track and cruising along nicely!

All of the CTF shops are drafted in-game and fully constructable. Everything in that screenshot was built by that builder, no !commands.

…Apologies for the awful example base layout, needed to cram all of them into the screenshot and it’s getting late ;^)

The shops function more or less as in classic, taking coins gained from combat to produce ammo.

At the moment, MM and I want to trial a flat upgrade structure – instead of getting scrolls etc, in CTF you will just need gold to build the more fancy shops, and special ammos will cost many more coins.

This is intended to keep CTF as simple to learn and as focussed on enjoyable competition as possible. If it proves to be too spammy or not provide enough strategic depth, we’ll probably resort to per-shop upgrades for special ammo.

I also want to talk quickly about CTF Maps.

While designing the mode I’ve had two experiences in mind – the fast and furious CTF of soldat, quake, tribes etc, as well as the more long term, epic, team dependent type like the Action! Unlimited server in classic.

The good news is, both of these experiences should be possible in the one new CTF mode with some clever map design.

The current map I’m using to test CTF can be found here – this is quite a bit smaller than your average CTF map in classic. However, it should be suitable for around 4v4 to 8v8 CTF.

Astute members will note that there are 3 flags per side on this map.

Larger maps with more flags give a natural way for server owners to scale their experience up or down. We’ll likely be taking submissions for well designed CTF maps once the mode is public.

That’s all for now, know that things with CTF are ticking along and should tentatively be ready for play in a week or two.


More News on CTF coming Next Week + Shop Sneak Peek

Day 5 went ahead yesterday after a long long day of uni.

I realise making a post about news coming is a little anticlimactic, but I’m snowed in with university work at the moment and MM is preoccupied with giving a talk this weekend, so I’ll do it justice once my schedule is more clear.

Synopsis is that CTF Shops are under way, with most of the art and probably 40% of the code for them done. After they’re working and integrated with the builder there will just be the GUI production, Map making and lots of playtesting to do before it’s public. :^)

Here’s the shop art so far – Knight, Builder, Archer, Boat and Vehicle shops shown. The transport tunnel will also be present.

I’m considering leaving technology progression out of CTF entirely to keep the mode as simple as possible, I’d be interested to know people’s opinions on that approach. Otherwise tech progression would be based on “upgrading” each shop with one special tech item with no “research” building.


Franek’s Invented Constructions

KAG Forums member franek123 has been building some exciting constructions as builder recently, here’s a video of his trampoline powered door defense and arrow cannon


It’s exciting to see this kind of stuff happen in kag – we knew arrows could bounce off trampolines but didn’t know you could use that for such clever mechanisms!

Good work franek! You can see more of his mad inventions here on the forums

We’re very keen to see what the community does next!


B872 – Nice spectator camera + arrows lag fix

This build hopefully (we need to test with this release) fixes the choppiness of arrows and other projectiles. It also should improve performance significantly when there’s lots of arrow rain action.

Use mouse cursor or WASD to move it around
Left Click – to change view to first teammate to the left

Right Click – to change view to first teammate to the right

Changes 870-872

[removed] dinghy damage (again, hopefully correct)
[re-added] minimap (but wont show for maps smaller than 128 width)
[fixed] archer camera twitching on triple arrow shot
[modified] some significant delta sending changes/improvements/fixes
[modified] smoothed and fixed singelplayer issues
[modified] projectiles don't use box2d bullet physics
[fixed] camera not set in the middle on join game
[fixed] snapping when team member near edge of map
[removed] post processing with uncapped framerate (and fixed related bugs)
[added] smooth mouse scroll for spectator + swapping team mates RMB/LMB
[fixed] bots not doing anything unless they see enemy
[fixed] difficult bots double slashing badly
[fixed by Furai] typo in console logs when receiving server's list
[fixed] builder can't break own workbench

Have fun!

B870 – Block Hitting Fixed and others

Quick one so that I can work on CTF tonight.

Block hitting has been fixed (meaning you can break doors again), that annoying archer “jammed” arrow after spawning has been fixed, and some console spam is gone.

Full Changelog:

[fixed] cannot "hit" map blobs with hitinfos
[fixed] knight can hit through doors, boats
[fixed] archer "jammed" shoot for a while after spawn
[fixed] type mismatch in vehicleconvert (spam in console property type wrong)

There have also been some behind the scenes changes to improve the stability of the build server by FliesLikeABrick.


Something broke

Shadlington here again.
We’re not quite sure what happened yet, but when Geti pushed B869, something broke in our build system. As a result, the windows build is no longer working (linux/mac are fine). We’re trying to resolve that now.

EDIT: Fixed it. Restart to update your game and it should all be fine. If you’re still having any issues please post in the forums, as usual.

Social Media

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