1. Hey Guest, is it this your first time on the forums?

    Visit the Beginner's Box

    Introduce yourself, read some of the ins and outs of the community, access to useful links and information.

    Dismiss Notice

Devlog KAG Build 2509 - "60FPS Build" - Unlimited Render Framerate, Optimisations, New Maps and More

Discussion in 'Announcements' started by Geti, Mar 1, 2018.

  1. Geti

    Geti Please avoid PMing me (poke a mod instead) THD Team Administrator Global Moderator

    Messages:
    3,730
    Hey folks - it's been a bit of a wait on this one, I know, but hopefully the payload makes up for it!

    [​IMG]

    60FPS!

    It's finally here! Asu has gotten serious work done on this feature and after ironing out some issues in testing, it should be ready for public consumption. There might still be issues with it, so it's not on by default - yet. If all goes smoothly in production, we will enable this by default - so if you haven't already, now is the time to give it a look and report any issues.

    If you enable Uncapped Framerate (in the video settings), the game will now render "in-between" frames. The game logic still runs at 30 ticks per second, but the rendering is now decoupled from that limit. This makes the game's motion a lot smoother in the eyes of most people, without increasing the game's processing cost proportionally. You can keep the framerate capped if you prefer 30fps for whatever reason.

    We recommend you keep vsync on (as it is by default) to prevent wasted processing on frames that aren't displayed. For most players, this leads to a smooth rendered framerate of 60fps, though those with higher frequency monitors or graphics cards the support "special" vsync modes (freesync, gsync etc) will of see higher framerates.

    This feature works with most mods out of the box (including TC, pictured above), but if they do any tricky custom rendering, camera updating or similar, then they will need to use a few new functions to smooth out their motion. It's probably best to ask about it on a case-by-case basis in #modding on Discord, but we'll look at doing a forum writeup to help you understand the changes as well.

    New Maps

    The maps team have continued to review and integrate new community map content, to help keep the mapcycles fresh. We hope you enjoy what they've come up with this time around.

    Both CTF and TDM have new maps in the rotation this build.
    Code:
    CTF changes:
        Added/Modified: highlands, princesscity, gloryhill2, lech_walesa
        Removed: kaggen, antqueen, snitchmerk, passfest, paradox
    
    TDM changes:
        Added: watery, reaver, neringa, cursedwell, virgo
        Removed: peanut
    
    More Translations

    The translation contributors have continued to provide, with the Russian translation being extended to support the server browser and the Polish translation being upgraded from a placeholder to parity with the Russian team. Please let us know if you have any feedback, and you can always contribute modifications or corrections on github! French will catch up soon, Asu has had enough on his plate with this release!

    Community News

    The Official Discord has continued to flourish since the giveaway around new years, to celebrate hitting a thousand members - we hope this continues through 2018! Congrats and thanks to Mazey, Galen, and the rest of the discord crew.

    Github has slowed down a little over the New Year, but we'll be updating the repository with contributor guidelines soon - watch that space if you're looking to get your feet wet with KAG dev! A chinese translation may also be in the works, and the Russian, French and Polish translators are waiting on some further extensions to the translation system. Terracraft also contributed optimised image files to the space taken by the game on disk.

    Eluded released his KAGLadder site for ranked 1v1. I believe discussion should be directed here.

    The official servers have experimentally had the chat filter enabled serverside. We don't expect that this will have much of an effect on gameplay or on the majority of chat, but it will hopefully send a message that we want to encourage a more friendly atmosphere on the official servers. You can discuss this in more detail here - we're open to feedback, including suggestions for different filtering criteria or behaviour.

    There was also a disruption to several THD web servers as a result of issues with some planned maintenance - the game was unable to be played online for a few hours as a result. Joe, our main sysadmin, is looking into options for redundency or failover to prevent a single point of failure from taking out the API, which is used for the server list and logins. More news on that as things develop.

    We hope you enjoy the build!

    Max

    Code:
    Full Changelog:
    
    60FPS Related
    
    [added] uncapped framerate interpolates frames, allowing >30fps (thanks and congrats Asu)
    [modified] graphics flash updated on render, changed logic and new time param
    [added] interpolation support to many rendered objects
    [fixed] various script issues with >30fps
    [added] fps diagnostic graph for inspecting render deltatimes /v_deltatime_diag
    
    Modding Related
    
    [added] getInterpolationFactor, getRenderDeltaTime, getRenderSmoothDeltaTime, getRenderExactDeltaTime, getRenderApproximateCorrectionFactor functions for enhanced >30fps support in scripts.
    [added] CCamera::getInterpolationOffset() bind (for fixing edge-case flickery world->screenspace conversions)
    [added] anim_timer to CParticle (thanks Vamist and Mazey for being insistent)
    [added] console print with color (thanks Asu and Eluded)
    [removed] tile noise variable (watch out tilemap modders)
    
    Hosting Related
    
    [added] config variable for customising ban length if a player leaves while frozen (default 30, no ban if set to 0)
    [added] disable file sending logs by default, can be changed with g_verbosefilesending
    [added] nolauncher option to the dedicatedserver.bat for windows
    [modified] some hosting-related properties (port, slots, etc) are now constant at runtime and must be set in the config or command line arguments, to prevent abuse/price tier escalation at shared hosting.
    
    Localisation related
    
    [added] changes required for server browser translation
    
    Optimisation
    
    [modified] significantly improved client performance with a lot of blobs
    [modified] <cmap:update> subtasks are more accurate
    [modified] optimized lighting code
    [modified] inlined cmap stuff for performance
    [modified] optimised flood layers (fire, water)
    [modified] optimised image files (thanks Terracraft)
    
    Other
    
    [fixed] soft-crash when disabling smooth shader
    [fixed] tcpr calling hooks before connection authentication
    [removed] many of the Engine namespace functions (thanks for the reminder TFlippy)
    [fixed] gramatically incorrect noswears correction (thanks for the reminder Paralogia)
    [fixed] irc button goes to thd channel (discord is majority now though)
    [modified] bombs in inventory don't kill non-player objects (eg war boats, storages)
    [modified] updated TDM, CTF mapcycle.cfg (thanks Panky, Ni, Map Team, Map Authors)
    [removed] longboat challenge that caused crashes
    
     
    Last edited: Mar 1, 2018
  2. Lava

    Lava Former Lag King Staff Alumni Donator Tester

    Messages:
    230
    now make my ping 60, good luck.
     
    l3afysamz, Biurza and Magmus like this.
  3. neil58

    neil58 Bison Rider Staff Alumni
    1. Zen - [Zen] - (Invite Only)

    Messages:
    99
    Why didn't you do this sooner? It's amazing.
     
  4. Koi_

    Koi_ Bison Rider

    Messages:
    16
    Last edited: Mar 1, 2018
  5. epsilon

    epsilon Assonist THD Team Forum Moderator Donator Tester
    1. Gather Oceania
    2. KAG World Cup 2018

    Messages:
    506
    I'm not a fan of the slow zoom in when you die. Idk if that was a thing in 30fps but was barely visible.

    Just noticed that seeds aren't centred when held.
    upload_2018-3-1_15-7-55.png
     
    Last edited: Mar 1, 2018
    SirDangalang, Pineapple and Magmus like this.
  6. Geti

    Geti Please avoid PMing me (poke a mod instead) THD Team Administrator Global Moderator

    Messages:
    3,730
    A few people have asked this - basically because it was a fair bit of work, and back in the day MM and I honestly didn't "believe" in increased framerate being a benefit :) I've changed camps there in the almost 7 years the game has been out, but it was mostly Asu's work and push to make this a reality and find a solution that wouldn't involve huge, sweeping changes or an extra 100% CPU hit.

    The current implementation lays good foundations but there's a few issues like slightly increased visual latency in some cases and it's possible to cause transitions that interpolate badly - we'll look at improving that as we look at rendering optimisation too.

    A lot of people seem to be noticing the zoom for some reason, but I don't think it's actually changed? Might be something to revisit but seems like a pretty minor thing!

    Yeah i've been thinking about this, for people in your circumstances. Might be worth looking into, though I imagine it'll still have issues with dropped frames if it's not vsynced, or if it's not an exact multiple of your vsync frequency. Its less trivial than it sounds to add, funnily enough :)

    we aren't miracle workers, though check back in a couple of months ;)
     
  7. PooManCHU

    PooManCHU Shopkeep Stealer

    Messages:
    93
    wait THD actually recommends v-sync i will have to try in again, might just be me but when i turn it on the frames tank as does my K/D
     
  8. epsilon

    epsilon Assonist THD Team Forum Moderator Donator Tester
    1. Gather Oceania
    2. KAG World Cup 2018

    Messages:
    506
    I don't dare to enable v-sync again. For the longest time it was lagging my cursor until I realised the cause.
     
  9. PooManCHU

    PooManCHU Shopkeep Stealer

    Messages:
    93
    that doesn't sound very fun, it that a known bug or unique to you
     
  10. epsilon

    epsilon Assonist THD Team Forum Moderator Donator Tester
    1. Gather Oceania
    2. KAG World Cup 2018

    Messages:
    506
    v-sync causes cursor lag even in osu! so i think its a common issue.
     
  11. PooManCHU

    PooManCHU Shopkeep Stealer

    Messages:
    93
    don't know why THD recommends it then, do you?
    --- Double Post Merged, Mar 1, 2018, Original Post Date: Mar 1, 2018 ---
    other thing i find funny is that v sync means vertical sync and stops vertical tears in your games, but kag is played on a horizontal planes the camera hardly ever moves vertically it only zooms in and out, maybe it's different if you don't have fixed camera on but why would you do that
     
  12. Asu

    Asu THD Team THD Team Forum Moderator

    Messages:
    1,580
    Yes, there's obviously some lag induced by vertical sync because of what it does, but it might be better or worse on your implementation (i.e. graphics driver) also depending on your settings. IIRC FreeSync and GSync monitors (assuming you have a compatible GPU) suffer less from this.
    VSync will also prevent from rendering more frames than needed. You can easily push over 400fps on some machines but your monitor will have a 60Hz refresh rate or at best 120Hz or 144Hz, so that wastes CPU and GPU power, leading to more heating (edit: note that rendering KAG is pretty lightweight for a GPU, you're certainly CPU-bound when playing KAG). It also may cause some timing issues with this release but it shouldn't be too noticeable.

    Tearing is actually pretty noticeable when the camera moves horizontally, especially at high speed (bombjumping, catapult, etc).
     
  13. PooManCHU

    PooManCHU Shopkeep Stealer

    Messages:
    93
    maybe it just doesn't bother me,in KAG, i don't notice it unlike in my other games, but i deffs notice v sync. btw thanks asu you made the uncap button actually work it's awesome
     
  14. Eluded

    Eluded Haxor Official Server Admin

    Messages:
    132
    Great work Asu & Geti. Seems like a really exciting update.
     
    bunnie, Asu and Biurza like this.
  15. Basshunter

    Basshunter of course i like your t-shirt Staff Alumni Donator Tester Official Server Admin

    Messages:
    91
    great job, it feels much smoother when playing
     
  16. Achillios

    Achillios Pilgrim
    1. Gather Oceania

    Messages:
    156
    Still waiting for official modded servers......
     
    enderzilla747 and epsilon like this.
  17. PooManCHU

    PooManCHU Shopkeep Stealer

    Messages:
    93
    Please make an official AUS modded server for Territory Control, i love the game mode but i just cant stand the 300-500 ping i get on the EU server, TFlippy doesn't seem very keen on anyone hosting his mod over here down under, but maybe he wouldn't have a problem if it was hosted on an an official modded server
     
  18. kaizokuroof

    kaizokuroof Agkubuk|'Kaizokuroof' Cilobakil, Roofpointy Global Moderator Forum Moderator Donator Tester
    1. PumpkinStars - [Pk#] - Inactive

    Messages:
    909
    Well done guys, I don't play all that much anymore, but this progress is amazing, big congrats.

    That's a shame, it's attitudes like this that do damage to the community but I guess the concern could be with retaining server player base? :huh?:
     
    FuzzyBlueBaron likes this.
  19. AgentHightower

    AgentHightower Ballista Bolt Thrower Tester Official Server Admin
    1. Aphelion's Roleplay

    Messages:
    84
    Flippy allowed to host TC before, and it ended badly, the playerbase for TC ended up splitting, and it was hard to have the staff list from vamist's TC server into other TC servers, and the people that were banned from vamist's TC server would be able to play on the unofficial TC servers, which is extremely bad. That's why Flippy is not allowing people to host TC anymore. Hope that explains it. :wink:
     
    Basshunter likes this.
  20. Achillios

    Achillios Pilgrim
    1. Gather Oceania

    Messages:
    156
    I feel like if geti setup a server that was official it would work well. We could have aus admins carried over from the normal servers, so flippy wouldn't have to worry about that. If people that are banned try to muck around in the aus server, they would learn their lesson not to fuck around with aus mods.
    unnamed (1).gif
    I totally understand if flippy doesn't want random people to host, and I can see the issues surrounding that, but if it was an official server, than it would be completely different. Honestly I would love to play these amazing mods without 3rd world Nigerian latency, and it would be so much fun to play with my Australian buddies.
    Also the server wouldn't have to just host one mod. It could rotate on a weekly basis, or have a vote system. I'd love to play attack and defense, chars ctf and mabye even some aphelion role play or future war mods (remember that....).
    Of course this would cost money and require effort from the thd team, and also people to actually play it, but I would love to see it happen one day.
     
    Last edited by a moderator: Mar 6, 2018
    Magmus, PooManCHU and AgentHightower like this.