Blog

B893 – Automatic Mod Downloading

This update introduces automatic mod file downloading from the server you join.

I hope this will show how easy KAG + modding is. Making a mod on your server is really as simple now as:

  1. Say you want to add bunnies on your server.
  2. Go to this thread and download this bunny rabbit mod by Skinnet from the modding forums.
  3. Unpack the bunny into {KAG}/Mods/Bunny
  4. Open {KAG}/mods.cfg and add the line Bunny at the bottom of the file
  5. Start your dedicated server
  6. Wait for people to join (it will autodownload the bunny for them)
  7. Spawn bunnies for them with the chat command !bunny

That’s all, I really hope we see some awesome modded servers in a while. 
Be sure to check “Modded” button in the server browser because by default it filters them out (so the game is noob friendly).

 

Changes 890-893:

[added] automatic mod downloading on join server

[fixed] coin drop sounds

[script][added] MapFlags.as for convenient setting of tilemap flags from script

[fixed] wall run on doors and trap blocks

[fixed] archer continues to grapple after going through tunnel

[modified] smoothened the fixed camera very much

[fixed] bugs with flag base sector not being in the right place 

(doesn't vanish completely any more, but gets much smaller to prevent "flag cases" from being really hard to break)

[fixed] doors and trap doors wall running

[fixed] idle server pausing broken

 

What’s next?

Challenges? check

CTF? check

What are we working on next?

Of course:

  • tweaking gameplay
  • fixing bugs
  • making the game run faster
  • adding new maps

But you know us? We have fire in our bellies and can’t just stop. The major things you should expect this week are:

  • Mod downloading
    This means any mod used by the server in the Mods folder and specified in mods.cfg will be automatically downloaded for everyone on joining the server. Awesome! We are doing this in a no bullshit manner. I’m just providing file download functionality and the rest is handled by you, humble server owners, mod makers and players.
  • Faster patcher
    We all know autoupdating is too god damn slooow. Geti fixed this by making the patcher threaded. There’s still a bug that needs fixing but should be ready along with mod downloading (which is nearly done, just needs testing)
  • Steam integration
    We are heading full force towards the biggest milestone – launching KAG on Steam. Existing players will be able to launch KAG from Steam and automatically login and bind their existing accounts. New Steam customers will be able to join the game in the same manner from Steam without the need of creating an account on kag2d.com
  • Steam launch
    This will happen next month.
  • Zombies?
    We (main devs) aren’t directly creating this. I can say they are coming along. The sprites are already done by Geti and they look sweet. Zombies should come in some way or the other after the Steam launch.

Have fun!

MM

Hotfix for B890

Just quick fixes without changing the build number. Update your servers please.

[fixed] can select invisible heads

[fixed] princess03 map having wrongly placed end

[fixed] possibly the osx collapse crash

[modified] reduced fall damage by half

[modified] lowered wave respawn in TTH to 8

[added][server] sv_gamemode = TTH switches to WAR automatically

[added] specific crate unpack help
[added] help message for help messages :p

[removed] competetitive/cooperative buttons from servers browser
[added] sorting by player count as default in servers browser

B890 – Tweak-a-doodle-doo!

(I’m not sure what the chicken joke is about)

New build! tl;dr is it fixes a bunch of stuff, runs faster, new heads, should be a bit easier for newbies.

Knights can destroy all solid wood blocks.

Just jab or slash at the blocks. We removed the requirement that the blocks were “cracked” because it seemed to confuse a lot of players. Wood is now quite the liability, get stone structures up where possible.

Potential optimisations to Config File operations, and to the Help Text.

These aren’t 100% complete yet – you if you used to get a lot of lag in the beta, that will hopefully be fixed or decreased with this change – if it still lags for you, we’d appreciate it if you could press F1 to disable help and report to the forums if this does or does not make your game run faster. If it does help, then we’ll put more work into optimising the help interface.

New player experience improvements (thanks Contrary).

These are mainly fixes and tweaks to Princess mode. If you encountered the bug where you couldn’t play the last level it is time to play it again!

Particle optimizations

The particle collisions (mainly used for picking up coins at the moment, may be properly exposed later) are now much, much faster, and completely ignore any non-pickable particles. This means that picking up coins is much faster on both client and server. A bug was identified in the server particle update code as well, and the coin drops are now partly synced (not 100% for bandwidth reasons), so picking up coins from the ground should work, at least most of the time

CTF fixes and improvements

Some of the funnier bugs with CTF are now fixed, like “capturing” the flag with a circular saw. Other issues are on their way to being fixed – wood doors and structures are now more vulnerable, catapult rocks now do some serious damage to stone doors, fire arrows will burn things down with much less of a delay, the flag returns faster when it’s near team-mates, and the messages in the chat console have your name attached to them if you picked up or captured the flag.

New Heads!

7 new heads (more if you count per-gender) have been added to the game. This includes the 2 community choice heads chosen by the community, as well as some miscellaneous heads and the migrant heads.

All in all it’s a bunch of changes that make the game run faster, play better, and hopefully reduce the overall number of bugs. Be sure to report any new bugs on the forums

Changes 886-890:

[modified] more cache friendly particle update
[added] blob gibs have random timeout - means they vanish in sequence rather than all at once.
[added] new base png loader from jackitch
[added] some sync to coins drop
[fixed] minimap outlines
[modified] minimap uses 100% same code for creation and per tile update - fixes consistency issues
[modified] water and fire are overlayed on map, not 100% alpha
[fixed] water and fire minimap sync on net
[fixed] terms of use being tricky
[fixed] config files not saving properly (helps reduction broken)
[added] further optimizations for helps
[added] blinks for helps when they happen
[modified] knights can destroy all wood blocks
[modified] knight can chop through wood door faster
[modified] spikes are destructible by knight
[modified] a bit more aggressive beginner mooks
[added] reintroduced grain from grain plant as edible food
[modified] more respawn time in Princess mode
[added] princess mode: on next map you start as previous class
[modified] archer AI sometimes stops when retreating
[modified] polished the trap level in princess more
[fixed] last level of princess mode not appearing
[fixed] chat text on hover being unreadable
[added] more damage from catapult to stone doors
[fixed] fire arrows not showing in air
[fixed] camera scrolling when mouse of window
[added] kills and scores to challenge
[fixed] time highscores formatting in challenges
[fixed] slam dunk to saw captures (lol)
[added] archer grapple help icon
[fixed] fire arrow teleporting to 0,0 on client when hit door
[modified] tweaks to improve netcode
[fixed] competetive button not pressed from start
[added] chomp sound to shark
[fixed] password appearing way below browser
[added] fire arrow burn time is 5 secs
[added] ctf flag returns faster near teamies
[added] catapult rocks die from too much smashing
[fixed] archer can always get arrows from tent, even if he dies during resupply time
[fixed] archer "drops" an arrow at end of legolas
[fixed] wierd flag doesn't capture bug
[modified] new community maps
[added] 7 new heads

Fan made trailers/videos of KAG Beta

Hey,

Few weeks ago Kouji held a competition. Its aim was to create the best trailer/video of KAG Beta. The winners were announced a week ago and it’s only now that I got some time to make a devlog post about it. 

The rankings were as follows (click on name to see the video):

  1. 8x’s Video
  2. TheDr’s Video
  3. Crabmaster’s Video

Congratulations to all the winners and big thanks to all the participants. We hope to see more amazing videos like those listed above. 🙂

Cheers,
Furai/Lucas

A Note about Server Performance

Just wanted to mention about the server performance issues causing slowdown of bombs and similar.

This week we’ll be addressing modding issues where possible and doing and optimisation and bug fix run – no game features and probably not too much balance fiddling.

Reason being that as I’m sure you’ve noticed, 20 player CTF is too taxing on servers. One of the main reasons for this is the coins code – on top of being less than reliable for pickups, it’s also very badly optimised for the new engine with lots of game objects. The config files are also used in a very badly performant way in a few places in the game, which will need to be addressed.

Overall, next week should bring back 32 player games as a possibility for both client and server if we can deal with all the issues in a suitable way. We’ll also be fixing any glaring issues with CTF in a larger context.

For now, it might be best if server hosts would stick to 16 player CTF games at most to avoid the slowdown bugs.

Enjoy your weekend!
Max/Geti

Build 886 – CTF and Back to Basics

If you haven’t “got into” beta yet, this is probably the build you have been waiting for.

It’s still a little rough around the edges, but we need public testing to go further at any sensible rate. Prepare to get your testing hats on (and hopefully your flag-capturing boots as well).

This build adds (Among other things)

  • CTF MODE
    Obviously this is the big one. Capture the enemy’s flag, take it to one of yours, do that till the enemy is out of flags. Simple stuff. Lots of fun.
  • Coin Operated Workshops
    Another big one that I know a lot of classic veterans have been holding out for – CTF sees the return of plinky plonky coins and all the bombs your money can buy. The coin gathering mechanics have changed slightly, but it’s more of the same.
  • KAGGen Map Generator
    This was actually done as a demo of a procedural map, but turned out fun enough to include in the CTF map cycle. We’ll be adding more to the creatively-named KAGGen as time goes by, but for now it’s easy to configure, quick, and gives a good example of how to build a map with just code.
  • New Wall Run Controls
    This new, easy to perform maneuver lets you get around terrain with much less frustration, while not giving builders as much of a headache and still leaving a lot of room for creative parkour. If you find yourself missing the easy (if counter-intuitive) notch running from classic, you’ll probably like the wall run.

There have been a lot of other neat additions and a few optimisations under the hood, and we’ve identified a major bottleneck on some machines (but not yet addressed it) – if your game runs oddly slow for your machine specs, keep an eye on this space as we’ll be fixing it up as soon as possible!

This is partly a back to basics build – bringing back some of the tried and true tropes of classic with a that new KAG smell. Or something. (It’s late, give me a break :^)

Remember the script changes have happened, you can read about them here

There’ll very likely be more updates coming early next week to patch any issues that rear their heads over the weekend (door forts probably), but we’ve played many games of CTF in the process of getting this out so that at least should be fairly stable.

I’ll collate a list of changes next week as well, there’s some convoluted branching in the repository to take into account.

Have fun!

Max/Geti

Edit: as a side note, the build might take a while, please don’t literally hold your breath for fear of hypoxia.

CTF Day 10 and 11

We’re nearing the release of CTF at the moment!

Day 10 (yesterday) went fairly well with one major snag – during the start of the game, sometimes players would spawn infinitely and accumulate a huge pile of corpses at the tent. Naturally that wasn’t any good, but it should be fixed now, and we are testing thoroughly to make sure such a strange bug doesn’t come back.

The kill counts in scoreboard have been fixed – they were being logged for kills of objects that weren’t owned by players due to an oversight.

Some community sourced maps have been added and are undergoing more polish as we speak. Old CTF maps won’t quite work “out of the box”, but require only minimal changes like the addition of a flag and moving the spawns down 1 tile so the tents aren’t floating. This means old CTF server owners that had specific maps shouldn’t have too hard a time porting their maps over.

All that remains now is to balance the costs a little squash a few more minor bugs, then playtest endlessly to catch as many bugs as possible before release.

Release is planned for this Friday, surprises not withstanding :^)

Max/Geti

Wall Running Experiments

We’re dissatisfied with the current wall run due to the strain it puts on people’s hands and keyboards, and the infinite wall climbing it gives knights. We’ve been looking into fun, no nonsense, no keymashing alternatives.

Here’s one I came up with today:

Note that I wasn’t mashing the keys the whole time, and the distance from contact with the wall to not being able to run any more is finite – around 3 blocks (give or take vaulting).

At the end, when I fall into the spikes, I hit the wall too early and ran out of steam before I could make it to safety – while I could have walljumped at that point, I didn’t think of it in time :^)

Happily, this makes chimneying a breeze, even with funny corners. As long as you remember to keep swapping sides, you can chimney up anything – you have to swap sides because of the height limitation, but thankfully you can do this by tapping A and D as you hold W.

You know sometimes you just miss the edge of a jump, and get that sour taste in your mouth of knowing your dude could have clambered the extra tile if he just put his back into it? Well, if you’re making a somewhat sensible jump, that works with this new type of wallrunning:

Overall its a lot more predictable than the older walljump and wallrun system, involves no mashing of keys and is pretty consistent between classes – no more infinite jumping up walls as knight, but you can use slash to get a few extra tiles of height and maybe catch that pesky archer.

I’ll be working on it more after fixing some “interesting” spawn bugs in CTF – I’m not sure about the rotation but if it’s not there, it’ll probably need a dedicated animation. Thoughts on all this are welcome :^)

Max/Geti

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.

Max/Geti

Social Media

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