King Arthur's Gold cover
King Arthur's Gold screenshot
Linux PC Mac Steam Gog
Genre: Platform, Strategy, Tactical, Indie

King Arthur's Gold

Build 2796 - Heaps of Quality of Life Tweaks, 3D Mods, Community Accolades and more!

Hey Folks!

This is quite a big build to get out before Christmas, but there's a lot to enjoy over the holidays!

There's heaps of quality of life changes - check out the full changelog for all of them, but some highlights include:


  • Class-Change and Flip buttons on enemy siege engines
  • Flags that fall into the void are instantly returned
  • Trampolines can bounce more items/players simultaneously
  • Grain plants can be "cut" by archers by hitting the tile at the base of the plant with an arrow
  • Players can only report a player once per round (avoids spam/abuse)
  • Fireplace Improvements for TDM (voted by community in #democracy channel)
  • Arrows become fire arrows when passing through fire.
  • Extra commands for sandbox/testing: !allmats, !woodstone, !stonewood
  • New brighter and more descriptive hover messages for killstreaks and resources - let us know if the colours need tuning!


Big thanks to all the github contributors that made this such a busy month, for everyone who voted in #democracy, and everyone involved in discussions over on Discord - your involvement is what makes this game so great!



3D rendering capabilities have been added for custom scripts. This can be used for in-world animated 3d objects, but also for fully 3d modded servers. Community member GoldenGuy has started working on a Doom/Wolfenstein inspired FPS mod using the changes - youtube preview here. We look forward to seeing what else the community does with these new capabilities.



Several tournaments worth of accolades have been added, and some extra community and moderation accolades have been assigned. Congratulations to everyone, and thanks to the community for getting behind this system!

We'll be trying to get another update out before we enter a mead-infused hibernation over the new year period, but hopefully this sates your hunger til then!

Let me know if I've missed anyone's changes in the changelog, it was a big one - and as always, Have Fun!
Max

Full Changelog:

Misc:

[added] New hover messages
[modified] trampoline logic: configurable cooldown limit + less drastic safety protocol + simplified cooldown timer check (thanks makmoud98)
[modified] holiday script; improved efficiency by only syncing when necessary (thanks makmoud98)
[fixed] removed chance for string hash collisions to cause problems with command ids
[modified] string hash function for something a little less likely to involve collisions
[added] kag_clap emote sprite (not implemented ingame)
[added] "g_locale_warnings" variable to log missing translations (thanks asu)
[added] Grain plants can be 'cut' by arrows when shot at the block below (thanks epsilon)
[fixed] emote menu disappears when you die (thanks epsilon)
[modified] Arrows pass through migrants (thanks epsilon)
[added] raycast check for vehicle seats (thanks epsilon)
[added] Normal arrows are ignited when passing through flames (thanks epsilon)
[fixed] unique player can only report another unique player once per round (thanks vik)
[added] Instantly return flags that fall into the void (thanks epsilon)
[fixed] bug where dead player isn't detached from quarters when sleeping (thanks epsilon)
[added] fireplace improvements for tdm - lights arrows, cooks fish, can be extinguished (thanks epsilon)
[added] archers don't auto-switch to special arrows (prevents accidentally wasting them) (thanks epsilon)
[added] !allmats, !stonewood, !woodstone commands (thanks blubahub)
[added] better crouch code (thanks epsilon)
[added] sponge handling tweaks
[added] placeholder support tier info + new extra.dat file for storing it
[added] better saw collision filter (thanks epsilon)
[fixed] emitsound for spectators (thanks monkey_feats for the report)
[added] flip and change class buttons on enemy siege engines (thanks epsilon)
[added] extra criteria for gold auto-pickup (less inventory clutter unless you are already collecting gold) (thanks epsilon)

Localisation:

[removed] guidelines from steam_content_ru file
[renamed] store_content_en.txt -> steam_content_en.txt
[added] Missing flags from the fotw steampage list (both eng/ru) (thanks biurza)

Accolades:

[added] moderation accolade support
[added] shield accolade badge
[modified] accolades_data.cfg with OKSA/Forum/Discord staff + more tournaments (thanks bunnie, paralogia)

Modding:

[fixed] bad condition in script Render::SetTransform error check
[added] new render transform functions
[added] copy operator for Random objects (thanks ShadowBlitz16 for the report)
[added] script-visible string::getHash() function
[added] join processing hooks
if present, should return -1 for "don't care", 1 for "force-join", 0 for "force-kick"
first meaningful result is used (ie, script order matters)
`int onProcessPreJoin(CRules@ this, const string &in username)`
called after token auth and banflags, before anything else is checked (even slots)
`int onProcessFullJoin(CRules@ this, const string &in username)`
called if the server's slots are full, allows bypassing the slot restriction
`int onProcessJoin(CRules@ this, const string &in username)`
called if all other checks passed, can be used to deny entry at that stage
(including to override onProcessPreJoin result)
note: the CPlayer is NOT created at this stage - you only have the username to work from
the user's token _is_ authorised, so "they are who they say they are"
[added] Matrix script namespace for generating/manipulating matrix contents into float arrays
void Matrix::Multiply(const array &in a, const array &in b, array &inout into)
void Matrix::MultiplyImmediate(const array &inout a, const array &in b)
void Matrix::SetScale(const array &inout a, float x, float y, float z)
void Matrix::SetTranslation(const array &inout a, float x, float y, float z)
void Matrix::SetRotationRadians(const array &inout a, float x, float y, float z)
void Matrix::SetRotationDegrees(const array &inout a, float x, float y, float z)
void Matrix::MakeIdentity(const array &inout a)
void Matrix::MakeOrtho(const array &inout a, f32 w, f32 h, f32 d)
void Matrix::MakePerspective(const array &inout a, f32 fov_rad, f32 aspect, f32 znear, f32 zfar)
[added] Render::ClearZ
[added] extra comments for scriptrenderexample
[added] 3d example to ScriptRenderExample
[modified] vertex normals exposed to script (Vertex nx, ny, nz properties)

Build 2760 - Balance Tweaks, Recognition, Maps and Modding

Hey Folks!

This build brings a wide host of changes! Many of them are the result of community development or community voting. If you'd like to be involved with either, please join the official discord server, and check the #democracy and #development channels!

The knight cursor now indicates your slash charge status, same as the archer cursor. This is a community voted and community developed feature paid for by our bounty program.

There was some discussion about exactly when the sprite should go away. It was decided that for now, the modified sprite should stay until you return to a "normal" state; as this gives more information to the player than the cursor returning to normal as soon as the attack starts. This is still up for discussion, and the alternative has been implemented in a ready-to-switch way.

Thanks to Andresian for implementing this change! You can see a preview from him on youtube here.

The in-game accolades system has been further extended!
There are now badges for tournaments, badges for community, github, and mapmaking contribution, and indication badges for how long a player has been playing, as well as a cake for their "KAG Birthday" each year.



As part of the accolades system, there are also 3 month (per-win) custom heads available to "significant" tournament winners. We hope that this drives some tournament participation. The community is more or less in charge of what "significant" means - if you want to be part of that discussion, jump on the discord and hit up the other community organisers.

Other important changes this build, in no particular order:

  • Extra 1 tile "no build" area at the top of the map as a result of a community vote. This means that saw jumping will be a serious problem again, and will probably have to have some alternative countermeasures proposed.
  • Four CTF maps have been removed, and some new ones will be added soon (they're currently being voted on).
  • Dinghy costs 150 wood, no coins (thanks Shy).
  • More useful timekeeping and rendering functions for modders
  • More guidance on github for making issues and pull requests
  • More russian translations and community visible templates for steam translators.


Special thanks to everyone from the community involved with proposing, discussing, deciding, developing, and testing the features in this build!

Have Fun!
Max

Full Changelog:


Misc
[added] knight cursor charge sprite (thanks Andresian!)
[modified] extra no build 1 tile lower as result of #democracy vote
[modified] dinghy cost (thanks Shy)
[added] registration time to player delta, so it's accessible on both server and client (thanks Furai/MM for bouncing ideas)
[added] Galen head (<3)
[removed] leftover debug print in votecore (thanks Potatobird for the report)
[added] chickens can be stored in inventory (thanks Blubahub)

Accolades
[added] accolade-alike badge rendering in scoreboard, based on registration time
[added] new accolades (thanks bunnie)
added blue_tiger head, updated homek head
[added] notes for adding accolades to cfg file
[fixed] a few inconsistencies in the accolade data file
[added] new accolades badges
[renamed] Medals_.png -> Badges.png

Maps
[modified] gamblersden map; smaller gambling area, less arrow-spam friendly
[removed] 4 ctf maps (thanks potatobird)
- monsterictf1
- monsterictf2
- punk123_cryingdemon
- ej_bluesunset

Modding
[modified] contributing help docs, a little extra info/formatting
[added] issues and pull request templates (thanks vik)
[added] code of conduct (thanks vik)
[added] scriptrender transform functions and backface cull functions
[updated] scriptrenderexample with screenspace example and docs for transform functions
[fixed] missing AK_EAT bind
[modified] time functions take/give signed int now (avoids overflow surprises)
[added] input-time versions of time_month/year/monthdate/yeardate

Translations
[added] steam store content file for translators (thanks Diprog for nagging)
[updated] russian translation (thanks Diprog)
Update steam_content_ru.txt
Russian: translated Steam content.
Russian: emotes, edits, removed duplicates.

Bounties for October - Quality of Life Tweaks

Hi Folks!



The Contributor Bounties for October have been voted on - a little later than usual! These are two straightforward changes that community members voted would be a good fit. They shouldn't take too much implementation effort, making them appealing to bounty hunters.


  • Add back charging cursor for Knight slashes - $30

    "(...) Make learning Knight (especially fast slashes) easier for new players - (...) bring back charging cursor from Classic."

    More info here

  • Make trampolines support multiple objects bouncing at once - $30

    "Trampolines behave very strangely since they have a cooldown for bouncing something. For example, if you and a teammate both attempt to bounce on a trampoline at the same time, only one person will bounce. This is very frustrating in TDM."

    More info here


As always, if you're intending on undertaking a bounty, it's good form to let people know on github and ask folks in #development about any implementation details or possible variations!

3 other proposals were voted on but did not garner enough support to warrant bounties. We've decided to treat both these bounties as "medium" and reallocate remaining $40 funds to be paid out for the development of the new community accolades system, to share the love.

We'd like to see more proposals that both the team and the community can get behind - huge proposals are hard for the team to justify because they require far too much work for even the largest bounty to cover, and super niche proposals are hard for the community to justify because they only service a small number of players. This is a hard thing to get right, but we had to "overrule" a proposal that would have been at least multiple months of work.

Also: there is a good amount of github contribution going on - but not enough input on the github pitch+voting side of things. Even if you're not interested in code, but you are interested in the future direction of the game, please spend some time each week or so going through and voting support for ideas that you like, and maybe even pitching ideas that you think would improve the game. It really makes a difference in the quality of the pitches that make it through, we'd love to see more participation there!

There will be a writeup coming to ease confusion about the system soon - but the tl;dr version is:

  • Pitches happen on github as described here.
  • Preliminary votes with +1 reacts on github.
  • Then a further voting round on discord to get a wider population sample.


Have fun!

Max

Build 2731 - Maps, Bounties, Democracy, and Accolades - Something for Everyone!

Hey Folks!

This build has been a couple of months coming due to some finicky engine changes and a few of the bounties running long, but it should be worth it. Lets get stuck into the changes! :kag_yes:



Accolades:

There is now an accolades system in-game for recognising player contributions.

This system not only recognises tournament wins, but also community contribution through github, moderation work, map making, or organisation. We're still working on getting these all displayed (only tournament wins are displayed currently), but we look forward to giving a little emblem to show off to everyone who has helped out in some way.

The accolade badges currently appear in the scoreboard - the appearance of each is subject to change.



The accolades system is also used for assigning the newly introduced tournament-won custom heads. They will still take some integration work, but this system may also be used for assigning other supporter rewards as well, so it's well worth having.

Huge thanks to Rayne and Shy who were instrumental in implementing this system, and Bunnie for spearheading the competitive organisation and performing the data entry for each accolade!

Dev Updates:

This build has two months of bounties in it, as well as a lot of other community development. This includes paid bounties such as the In-Game Report system, Holidays fix, Anti-anti-grief, and item momentum on death. The bounties are pitched, voted for, and developed by the community, but funded by THD. Other community development is on a volunteer basis and very much appreciated.

A lot of these are simple quality of life changes that should improve your experience. The Report system will be getting hooked up to discord at some point in the next month or so as well. There are a lot of minor/miscellaneous changes; check the changelog for the details and credits!

Thanks to all the contributors!

#Democracy:

We've been running intermittent voting through the discord channel. If you would like to vote for bounties, help make decisions about controversial balance or map changes, and take place in other polls, then please jump on the discord and check the #democracy channel for any active votes.

We'll be writing up a primer on the whole system soon, now that it is relatively stable.

Map Changes:

Some TDM Map Changes were voted on in Discord.

  • Vertigo was removed
  • Spelunca and Corruptio were added
  • GamblersDen was kept


New Internal Contributor:

We'd also like to publicly welcome our latest internal contributor, Vik. He will be able to help out with minor engine-side changes after developing a good track record of public contribution through github. Be sure to bother him if you need anything on discord :kag_wink:

Enjoy!

That's it for this time, Have Fun!

Max


Full Changelog:

Bounties

[fixed] fixed holiday.as not removing the scripts properly (thanks makmoud98)
[added] held items now have momentum when dropped as you die (thanks makmoud98)
[added] in-game moderator report system (thanks Vik)
- say "!report USERNAME" in chat to report a user
- you can use tab-completion to save typing
- todo: translation friendly report notification in chat
[modified] removed various "grief protection" measures that were annoying players (thanks Shy)
- explosions can destroy friendly structures
- fire still lights near friendly structures
- platform background walls are no longer destroyed by explosions
- backwalls are no longer destroyed when a door or trap block is on top of them

Maps

[modified] applied tdm map vote results from discord (thanks Ni + map authors + everyone who voted!)
[removed] ferre_vertigo
[added] vans_spelunca
[added] vans_corruptio

Accolades

[added] accolades system for recognising player contributions in-game (thanks Rayne and Shy)
[modified] refactored + optimised accolades system and integrated custom head information to config (see accolade_data.cfg)
[added] new accolade data (thanks Bunnie + Mazey)

Misc

[added] totally script-side emote menu (work in progress for emote bounty) (thanks Asu)
[modified] Autopickup to player before crate if possible (thanks Potatobird)
[added] list of spectators now shows usernames (thanks Vik)
[added] random exit velocity to crates + boats + players (thanks Shy)
[modified] randomexitvelocity uses random object and floats instead of XORRandom and ints (smoother output)

Engine Side

[fixed] Time_DaysSince for negative days (changed datatype to int from u32)
[modified] map/rules actually remove script filename on script removal
(prevents new clients getting removed scripts, eg for holidays.as)
[removed] call logging for script functions, which was basically never used
[modified] optimized hasTag (thanks Asu)
[modified] improved water performance when there is no water or when the client is too far from water (thanks Asu)
[modified] batched map border draw calls for performance (thanks Asu)
[added] batching for HUD panes (optimisation) (thanks Asu)
[modified] optimized profiler globally, significantly reduced overhead at idle (thanks Asu)
[added] profiler probes for console and text rendering (thanks Asu)
[fixed] items fly out of inventory with a previously set "ghost" velocity (thanks Asu)
[fixed] missing ping on linux/mac (thanks Asu)
[fixed] crash issue (thanks Asu)



Edit: small fix pushed for linux/mac crashes on some gamemodes - thanks for your patience :kag_yes:

Bounties for September - New Builder Gamemode, Holiday Events, and a Common Sense Tweak - What do you want next?

Hey Folks!

The previous month's bounties are mostly filled, and a build containing them and a handful of engine fixes should be out in the next few weeks.



This month's bounties have been voted via the #democracy channel on the Official Discord. We got just under 500 votes total across the 6 proposals - the results have been recorded here: https://i.imgur.com/7yKYDMX.png
We've ordered the bounties (in terms of payout) by difficulty rather than popularity, as all of them were within 20% popularity by votes and the first bounty in particular is much more work than the others. We feel this is more fair than paying out half as much for four times the work, and hope you'll agree.


  • Bounty 1: Builder Wars - $50 - New Gamemode / High Difficulty
    "When mechanisms got announced, they were going to be used for single player content and potentially a "builder wars" multiplayer gamemode. I'd like to see this implemented." - Mazey
    More Info: https://github.com/transhumandesign/kag-base/issues/122

  • Bounty 2: Fix Holiday Scripts - $30 - Fix / Medium Difficulty
    "Holidays were a very fun addition to KAG, fixing the currently disabled holiday script would allow for the old holidays (like halloween with the gregs) to be revived and new holidays to be added, which would add some diversity to the game and allow for fun stuff that normally wouldn’t fit KAG." - Mazey
    More Info: https://github.com/transhumandesign/kag-base/issues/191

  • Bounty 3: Held Items Should Have Momentum When Dropped As You Die - $20 - Tweak / Low Difficulty
    "That is, for example, when getting killed by an archer while you're thrown from a catapult and holding a keg. When you die, the keg should keep going forward, rather than falling straight vertically." - Asu
    More Info: https://github.com/transhumandesign/kag-base/issues/159


If you're going to pursue a bounty, it is good form to post on the github issue ahead of time, to avoid doubling up work.

We happily accept joint submissions and people sharing the bounties, and want to encourage a collaborative, rather than competitive, contribution environment.

Congratulations to those who got their bounties through. It seems that people were at least somewhat interested in all of the bounties that made it to the voting stage. We'll be revisiting some of those who didn't make it next month, for another round of voting.

As has become normal, the bounties are pitched through the issues page on github. They are discussed and voted on with upvotes, and often discussed further in the #development channel on discord. The pitches that seem promising are taken to discord for a wider, more accessible vote, and the top 3 have cash bounties placed on them, which are paid out by paypal at completion.

Anyone is allowed to pitch, so please, share your good ideas on github. Making an account there is free, and posting pitches requires no code - it's similar to posting on a forum.

If you would like to get involved with development, check out the github for the code, and get in touch over discord for help getting started and channeling your efforts somewhere helpful.

Finally, as always, everyone is encouraged to be involved in the discussion and voting for features. That way, the community can decide the direction of the game.

Have Fun!

Max

August Sale - 50% Off!

Discount Details:

KAG will be on sale for 50% off on Steam - 9 days starting this weekend (from Saturday the 18th of August), until after the following weekend.

✨ Both single and 4 pack purchases are discounted for the sale ✨

It's the perfect time to tell your friends, or pick up the game for yourself!

Community news:

The 2v2 Open is also officially underway in all regions. EU has progressed far more quickly than the other two regions though - if you're participating be sure to schedule your matches! :kag_yes:

There's also an EU 2v2 Knight Tourney hosted by deynarde, bunnie and Homek coming for those interested in more jolly competition!
This one is a single weekend (25-26 August) 16-team event, so scheduling should be a lot simpler. See here for details. :kag_flex:

For those more creative than competitive, there's also a CTF map making contest being hosted by Basshunter, Mazey, and Mehwaffle - there's game prizes to be had including KAG DLCs, and the maps will be included in the official CTF pool for some time.

Join the dedicated discord server or check the post on the official forums here for more information.

Bounties for August - Taunts, Trust, and Emotes Bindings - What do you want to see next month?

Hey folks; the bounties for August have been decided!



It's taken a little longer than the last few times as we wanted to verify the "top" bounties on discord according to the community priorities. This lets us get better voting coverage than on github alone. There were also 2 related pitches that we decided to roll into one bounty, to get even more features into this round.

As always you can read more on the bounty system and getting involved here, discuss and vote on the pitches and contributions in in in #development and #feature_pitches on discord, and get involved with development on github. We'll be doing continuous voting through discord as well but github still works as a yardstick for potential interest, and pitches are still made through github.

Here's the bounties for August:

Bounty 1 - Add Back Taunts and Binding Emotes from In-Game - $50

    Taunts were a feature in classic that allowed quickly sending pre-configured phrases for both team communication and taunting the enemy.
    Binding different emotes to the number keys has long been possible through a config file, but would be much more accessible through an in-game menu.

    Asu has started working on both of these features, as well as some refinements to the behaviour of the emote menu itself. Rather than dedicate two separate bounties to something already mostly "claimed" by an established contributor, they have been "combined" into one task.

Bounty 2 - Remove Grief "Protection" - $30

    Dont worry - this isn't as scary as it sounds! There are a number of anti-griefing mechanics in-game that lead to inconsistent effects. This is better addressed through moderation than code where possible, and a number of the anti-grief measures have been identified as good candidates for modification or removal. This bounty has no "active" participants so far, but a lot of community interest from frustrated players.

Bounty 3 - Chat based Moderation/admin Interface - $20

    Players will be able to report other players directly via chat, and moderators will be able to jump into spectator to follow a reported player to check if intervention is necessary. This is more faster, more convenient, and more "natural" to players than jumping into a mouse-based admin menu. Vik has made good headway on this popular pitch - a prototype has already been prepared, to be fleshed out through the month.


Thanks to all the contributors and the community members who voted on these bounties. This system only works with participation, so please, get involved, vote on the pitches you want to see in-game, and consider contributing if you are able.

Have Fun!
Max

Build 2661 - Stutter Fix, Crates Fix, Misc Cleanup - Plus DLC Actually Available!

Hey Folks,

First off - the DLC review took longer than expected this weekend, but the heads pack is now out and available here. The pack provides 34 new exclusive heads and you can pick it up for 20% off during release week.



This build is mostly cleanup of a few issues that slipped through on the last build:

  • Performance "stutter" on next map fixed
  • Stray pixels for one fantasy head fixed
  • Double outline on minimap gold against background fixed.
  • Removed the apparently unpopular red barrier no build buffer
    The barrier will have moved by 3 pixels back to "where it was" and has no extra no build zone added.
    The "un-bouncy" behaviour is preserved.
  • Minimap icons also disappear when minimap disappears on mouse hover
  • Added CBlob::checkInventoryAccessibleCarefully
    Control whether or not isInventoryAccessible hook called for various inventory cmds
    Used only for crates at the moment. Defaults false.
  • Some issues in TTH brought on by inventory handling changes fixed.
  • Fixed "stealing" packed vehicle crates (team converts correctly)


As always keep the feedback coming, and keep an eye on discord for final voting on next month's bounties!

Have Fun!
Max

Build 2657 - Fantasy Heads, Bounties Cleared, Crates, Map, Fixes, Spanish, Saw Jump changes, Red Barrier tweaks... and much more!

Hey Folks!

Quite a big build this time around!

This build coincides pretty closely with the release of the Fantasy Heads Pack DLC, as voted by the community! This pack will be available on steam here from 8pm PST on the 27th of July if all goes well with valve release certification - it may become visible before then for pre-orders if it gets certified earlier.

The pack provides 34 new exclusive heads; 17 for each gender. We hope you will enjoy these new customisation options, and welcome any feedback on the pack!



All the bounties that the community voted for this month were filled very quickly, thanks to PotatoBird, Pirate-Rob, and GoldenGuy - and everyone who pitched and voted for the bounties! The bounty system is ongoing, and you can participate in voting through github and discord.

The crates are probably the star of the show, with numerous changes made; mostly by PotatoBird with some collaboration with Pirate-Rob. They can be purchased from the builder shop, hidden inside, provide protection from some explosions, contain booby traps, and can conveniently pick up resources en masse. They also provide a valuable avenue for teamwork, with archers or knights carrying builders safely in crates to the front. There's plenty more to note in the changelog for the curious. We are quite excited for the amount of attention the crates have gotten to make them an interesting, viable addition to the game! tl;dr: "I r8 cr8/8 m8"



The other big bounty was the addition of visible gold to the minimap. Gold now appears as a yellow area with a subtle outline, which should prevent it being missed on some maps, and avoids the need for silly workarounds like saving the map for competitive play. This was somewhat contentious in the community discussion, so there is a config file which allows disabling the gold rendering completely. The code also serves as a very good example of a minimap handling script for mods to build on. Thanks to Pirate-Rob and GoldenGuy for this contribution!



The final bounty was a fix for inconsistent bomb arrow damage in some edge cases. This may still have some rough edges, but it seems more stable now and Rob is happy to follow up as needed on any further fixes. Thanks to Pirate-Rob for this contribution. Looking forward to seeing it tested out in "prime time".

Thanks again for your contribution to all those who took on bounty work!

There have also been some important in-house developments, as well as some other contributions and reports from the community.


  • A spanish translation from Vikhenzo was added. We welcome feedback and any revision on this addition! Vikhenzo also fixed an issue with the vote kick message appearing in the chat box.
  • A minor changes to the quarry from Mazey that got missed last time - rounding the output to the nearest 5 units - was added.
  • Farming for coins with wooden structures is less viable now, as it gives the same income as wooden blocks. This should prevent unsporting platform-spam at the tent while not much affecting "normal" builder play very much.
  • The red barrier during build time has had some synchronisation issues sorted out. It no longer pushes players as much and there is a few tiles of no build zone at the edge, to prevent builders being tempted to touch it so much. The no build area has been adjusted slightly to accomodate this change, so maps should not require editing in response. Thanks to Bunnie and Franek for their thorough reporting of this issue.
  • The female voice pitch modifier on several sounds has been reduced slightly - the sounds should actually be audible most of the time now! It may still need adjusting in one direction or the other, feedback is welcome.


Thanks to all the community members involved in developing, discussing, reviewing, and revising these changes!

Engine side, there are also a few changes:

  • An important performance improvement has been added thanks to Asu: batched rendering of sprites and particles. The rendering is not really the slowest part of KAG, but this batching will speed things up a little more, especially for people with underpowered integrated graphics. Nothing should look different, it'll just perform a little better.
  • Mod download speed may be improved, and the joining protocol has been sorted out to avoid potential double downloads and timeouts for big complicated mods. Some security aspects of mod downloading have also been improved.
  • The top of map collision has been brought down one tile further which prevents easy clearance of towers that reach as high as possible. This is likely to somewhat curb saw jumping to the enemy tent, at least if they have proper defenses established. Bombs can still be tossed through the 1-high gap between the top of the map and the top of the buildable area, and saw jumping still works.
  • Minimap updates can be triggered from scripts per-tile, which may be useful for custom minimap implementations.


I think that's everything of note, but please let me know if something slipped under the radar!



Have Fun!
Max

Full Changelog

[added] huge crate rework + crates in CTF (see below) (thanks PotatoBird and Pirate-Rob)
[added] gold visible on minimap (thanks Pirate-Rob and GoldenGuy)
Bonus: configurable serverside for gold or no gold, see Rules/MinimapSettings.cfg
[fixed] bomb arrow damage consistent (thanks Pirate-Rob)
[modified] bomb arrows "hit through shield" fix (thanks Franek for the report)
[added] spanish translation (thanks Vikhenzo)
[added] quarry remainder change (quarry gives resources in multiples of 5)
[fixed] the message for vote kicking (thanks Vikhenzo)
[added] support for fantasy heads DLC
[added] runnerheads script automatically supports new dlcs via engine-side heads pack definitions
[added] red barrier sync (fixes desync on levels with custom red barriers)
[modified] red barrier aligned to a tile boundary
[modified] top border collision moved down 1 tile
[modified] widened fade border on map
[modified] female pitch modifier reduced (less "shrill" sound)
[added] isInventoryAccessible checked on server before putting stuff in/taking stuff out of inventory
[added] void CMap::EditMiniMap(int x, int y) function to trigger a minimap pixel update
(for custom minimap special cases)
[added] forced a periodic sync that may help with "infinite stun on join" glitch
(or may not - please report if you notice any change in the frequency of the bug)
[fixed] various script download issues + double download of mods (thanks Asu)
[fixed?] timeout on joining servers with big mods
[added] official sandbox server port numbers (so they are gold in the server list)
[added] batched rendering (thanks Asu)
[modified] increased number of particles available
[added] better net graph (thanks Asu)
[added] raised snapshot cap (relevant for some mods with extreme packet numbers possible)
[added] n_file_simultaneous console variable for setting maximum simultaneous mod file downloads
[modified] default simultaneous mod file downloads lifted to 8
[modified] default n_file_chunk_size lifted to 32k (ATTN admins: update this variable for faster mod downloads)

Crate Changes:

[added] Crate to builder shop: either 150 wood or 20 coins

[added] Players autopickup most items into carried crates

[added] Crate autopickup when touching most items
[added] Activate held crates w/ spacebar to dump items
[modified] Logs now stack to 2 (and crates pick them up)
[modified] Crates yield 100 wood on hitting a saw
[dev] Crates make thud noise when storing an item

[added] Crates can be booby-trapped with mines

[added] Crate hiding: hold crate and press E to get in / out

[fixed] You can now use emotes from inside crates
[modified] Crate w/ hidden player breaks + stuns an enemy that tries to interact
[added] Players hidden in exploding crates are launched + damaged
[modified] You can remove allies from crates by pressing E near them
[modified] You can enter a crate that has other items
[modified] On entering crate, some items pop out if necessary to make room

[modified] Crates break on player exit, not when last item removed
[modified] Entering/leaving crate keeps momentum
[modified] Players jump up out of crates they were hidden in
[modified] Players/corpses are 2x2 in inventory, to fit more in crates
[fixed] Attacking out of crate: now get brief stun
[added] half of the explosion damage taken by crates will also be taken by player inside
[added] Kegs kill crates and the players inside them
[added] When getting out of crate, players say hullo

Crate properties:

[modified] Crates more team-specific, accessibility tweaks (can put item into occupied crate)
[modified] Crates can only store 9 items (3x3 inventory)
[modified] Crates are now heavier when there's a keg inside
[modified] Crates have less drag for better throwing
[modified] Crates have 2x health, take 4x builder damage
[modified] Crates cannot be stored in any inventory
[modified] Now you should be able to mill people in crates with saws somewhat more consistently
[modified] Kegs can't be launched as far as other items out of crates by dumping them
[modified] Crates with lit kegs in them are even heavier

Fixes / Minor:

[fixed] No more perpetual screaming from crates (cured claustrophobia)
[fixed] Opening own inventory while inside crate
[fixed] Taking players into own hand/inventory, etc
[fixed?] Entering dead crates to vanish/levitate
[dev] Normal crates appear carried on the back
[dev] Crate tweaks: can't jump out of fast falling crate
[fixed] Crate destruction sprite
[dev] Crate item popout velocity tweaks
[fixed] Bombs/items stashed in crate keep original team/owner
[fixed] Translatable crate buttons
[fixed] Explosions destroy crates from inside + fling items further
[fixed] Items now pop out of dying crates consistently
[fixed] Players can't use pickup key to escape crate without breaking it


//EDIT by Furai:

Released a hotfix addressing issues with:

  • red barrier not being there
  • void not killing when dropped into
  • minimap not showing up (can still happen occasionally)
  • script downloading issues for modded servers

July Bounties - Gold Map, Sneaky Crates, and Fixed Bombarrow Damage - What would you like to see next?

Hey Folks!



The bounties last month were filled quickly. This month's bounties have been voted on in the same way as last time, but we've reordered the bounty payouts by approximate amount of work/value rather than the voting priority this time around. You can read more about how the bounty system works if you are unfamiliar here and check out the public github page for submissions here.

Without further ado, here are the selected bounties:


  • Bounty 1 ($50) - Make gold blocks visible on minimap
    This pitch has had quite a lot of discussion both on the official forums and on github. As a result, we will require any submissions to provide an easy way to disable the behaviour serverside for those that feel strongly about it, and will definitely be vetting for code quality.

  • Bounty 2 ($30) - Feature Pitch: Entering Crates
    This is a historical feature that will require minimal code changes to reintroduce, but clearly has public support. As a result, we'll be requiring that submissions also bring some additional utility to crates if they are to be added to CTF - they aren't currently.

  • Bounty 3 ($20) - Make bombarrows deal consistent damage
    This is a bug fix bounty and should reduce archer anxiety when using bomb arrows for combat somewhat if tracked down.


As always, discussion of bounties is best undertaken in #development on the official discord.

We're looking for ways to get more voting participation to make the system more democratic, as there have been concerns that the system is "dangerously" susceptible to vote manipulation at the current population levels. We've got a few ideas for this for the coming month, but for the moment, we'll go by the same github +1 system, augmented with occasional polls on discord.

If you have any suggestions on changes to voting, we're interested in your thoughts as well - particularly on what has been preventing you getting involved with the current github voting system. Please let us know below.

Have fun!
Max