GOKZ Dev Log

Discussion in 'KZTimer & Other Plugins' started by DanZay, Jul 18, 2017.

  1. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    aka SimpleKZ

    Repository Link

    Hey. Just wanted to keep the CS:GO KZ fire going.

    GOKZ is my first larger project for SourceMod. It's not perfect, and there's a bunch of great timer plugins out there, but I'm pretty happy with how far I have got so far. At the very least, we have something which has some nice advantages over KZTimer. Maybe someone will improve upon it some day.

    Modes
    There was a while where people were talking about introducing a 300 speed cap to KZTimer. From what I remember it came out pretty 50/50. I definitely was in favour of things changing, but you gotta respect that percentage of players. There were valid concerns for the times being reset, KZ becoming less enjoyable etc. Ultimately, and in despite of concerns of splitting the community, implementing selectable modes seemed to be the best solution. And so, with GOKZ, you can switch between the now standard KZTimer movement, my new SimpleKZ movement, and I've even chucked in Vanilla CS:GO movement.

    The modes are written as separate plugins, and there is a new feature associated with that. You can run the mode plugin without the GOKZ Core plugin and it will apply it's movement mechanics (excluding enforcing convars) to all players on the server. For example, you could run a HnS server with the HnS plugin and the GOKZ KZTimer Mode plugin and have a HnS server with familiar KZ settings.

    Bonuses
    GOKZ supports additional courses you can have in your map. I don't really like the word bonuses but it's probably the most familiar name to members of movement communities. I'd like to point out how maps in Kreedz Climbing work - they can have multiple courses, and each course has records. This is incredibly powerful - you can provide so much more content in one map, appeal to more players with different styled courses, and not require map changes. For example, I could easily combine all of my space themed maps into one. I guess this is not really anything new or revolutionary, but for CS:GO KZ, it is.


    Anyway, I hope to continue pushing towards parity with KZTimer (recently completed Prev/Next CP) and then hopefully get global records going in due time, especially seeing how the new KZ Global API is in beta. I will always welcome and appreciate advise and contributions to the project. Please also feel free to make suggestions or ask questions here.
     
    AzaZPPL, sneaK, xq_ and 12 others like this.
  2. zer0.k

    zer0.k REGULAR

    Joined:
    Jan 10, 2017
    Messages:
    46
    Likes Received:
    81
    Will it support GOTV just like old kztimer? It does not work in the current simplekz plugin I'm using now.
     
    Ocelot and GameChaos like this.
  3. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    Could've sworn I had GOTV confirmed tested and working. Might be a configuration issue.
     
    GameChaos and Mephistofles-NIM like this.
  4. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    Jump Beam

    Untitled.png

    I reckon I've used this thing in KZTimer for maybe like 5 minutes total. But hey it's pretty fun jumping around backwards and seeing the line getting drawn. Really, though, it's nice to see your air path. In GOKZ, the line will be a different colour when you are crouched in midair to give you an idea of how early you're crouching. This is something I remember seeing in a 1.6 plugin. I guess it's not as important in CS:GO, but crouch strafing is still slightly worse than standing.

    Ever wondered where your feet are in midair, and what happens when you crouch? Of course you have.
    Untitled.png
    You can really see how the player's feet gets pulled up.

    Check this next one out too.
    Untitled.png

    I don't know if I'll be using the jump beam more, but hopefully it's more useful with these options.
     
    xq_, tony, Gwooky and 6 others like this.
  5. Zpamm

    Zpamm Hold Tight Staff Member KZGlobalAdmin

    Joined:
    Jan 15, 2016
    Messages:
    1,328
    Likes Received:
    1,037
    Did you add a longer time frame for how long it lasts ? I find it goes away too quick to really analyze in kztimer
     
  6. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    I thought so too but only increased it to 4.0 seconds (from 2.5).
     
    Ocelot and GameChaos like this.
  7. Dicky

    Dicky TRAINEE

    Joined:
    Oct 6, 2016
    Messages:
    50
    Likes Received:
    49
    love it
     
    GameChaos likes this.
  8. Ballistic Bacon

    Ballistic Bacon EXPERT

    Joined:
    May 20, 2016
    Messages:
    61
    Likes Received:
    159
    █▀█ █▄█ ▀█▀
     
    GameChaos likes this.
  9. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    Start Positions for Nerds

    As you know, you can hit the start button while running. I used to grind some maps where I needed to get some prestrafe going at the very start of the map to start off some bhops. I ended up getting in a loop of teleporting back to the start, stepping back and lining up a prestrafe, then running forward, missing the timer, teleport to start again, move back, reset my mouse, run forward, start timer, miss the perf I need on the second block, teleport to start, move back, reset my mouse, notlikethis, repeat hundreds of times because I suck.

    Untitled.png

    Anyways, I added a command !setstartpos (or !ssp) which will save your current position as where you will get teleported when you press your start bind. You can clear it out with !clearstartpos (or !csp). Beware - teleporting to your custom start position will end your timer.
     
  10. GameChaos

    GameChaos perfect jump ratio: 86.60% Official Map Tester Mapper

    Joined:
    Feb 20, 2016
    Messages:
    451
    Likes Received:
    689
    fuck yea
     
  11. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    Updated version of GOKZ is on HoC servers for beta testing.

    NA: 167.114.222.84:27015
    EU: 137.74.224.230:27015

    A list of commands may be found here.

    You can post detailed feedback here, or send a Discord message for small things.
     
    xq_, Nthng, Joshua and 5 others like this.
  12. xq_

    xq_ ( ͡° ͜ʖ ͡°) Mapper

    Joined:
    May 22, 2016
    Messages:
    42
    Likes Received:
    103
    first of all: i really like the jump beam! great work :O

    i've noticed that the jump beam gets cut off or to put it differently, has tiny gaps when spectating someone.
    that's for all jumpbeam modes and it doesn't matter if the person has the beam enabled or disabled on their side.
    it's fine when i watch my own beam. it's only while spectating.

    i know it's still in beta and what i am reporting isn't really an issue, since you can still see the jumpbeam cleary enough, but i still wanted to let you know.

    i've asked 2 other people and they reported the same when spectating me.
    the cutting off doesn't always happen though. sometimes the jump beam will look completely fine, but most of the times its cut off a bit. here are 2 pictures so you can see what i mean in case it doesn't happen for you.
    and no, the person that performed the longjumps didn't jump 10 times within a jump in case someone is thinking that xd
    [​IMG]
    [​IMG]
     
    Last edited: Jul 31, 2017
    DanZay and GameChaos like this.
  13. zer0.k

    zer0.k REGULAR

    Joined:
    Jan 10, 2017
    Messages:
    46
    Likes Received:
    81
    im 50% of them yeahh
     
    GameChaos likes this.
  14. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    Thanks for the jump beam bug report. Also noticed bonus timers have stopped and non-traditional (e.g. trigger_multiple) timers have stopped working. I will also work on adding basic jumpstats (probably won't include strafe stats until a later update).
     
    zer0.k, Ocelot, Café and 2 others like this.
  15. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    Jumpstats Milestone 1

    Jumpstats was also rewritten from scratch. What we've got so far is tracking of pretty much every jump you make. As long as you don't touch anything else (world, surf ramps) or anything fishy goes on (teleports, boosters) than that jump's stats will be available.

    [​IMG]

    This implementation of jumpstats has some key differences to KZTimer, including the removal of drop b-hop jump type. It really wasn't offering anything meaningful over b-hop.

    Bunnyhop pre-speed in the SimpleKZ mode is dependent on your landing speed of the previous jump. This means that drop b-hops/multi b-hops would result in higher pre-speeds and bigger jumps. This had to be limited and this is done by enforcing all jumps leading up to the b-hop/multi b-hop to be 0 vertical offset e.g.the entire b-hop chain leading up to multi b-hop must be along flat ground. The b-hop pre-speed cap has also been removed.

    Weirdjump has had it's pre-speed cap removed, and an arbitrary fall distance cap has been selected as the limiting factor (currently, 64).

    The ladderjump offsets you can get away with in KZTimer is a pretty laughable. To be fair, it is difficult to accurately measure the exact height of the top of the ladder. However, I found that I could reduce the offset allowed to 2 whilst still allowing properly performed ladderjumps to be measured all the time, most of the time.

    Jumpstat tiers (impressive, perfect, godlike) are specified for each mode. 5+ jump types by 3 modes by 5 tiers. These are specified in a .cfg file instead of 70+ convars. The default values are bound to change as we work out the limits of the new modes and jumpstat limitations, not to mention the lack of crouch-jumping/binding.

    To catch up to KZTimer, we still need individual strafe stats, sound effects and a polished console stats output. Hopefully we can go further than that with a customisable stats report in chat, and invalid, vertical jumps and falls (the thing before weird jumps) getting some stats output.
     
    Last edited: Aug 31, 2017
    xq_, Joshua, Ocelot and 9 others like this.
  16. Jeremyiah

    Jeremyiah Person

    Joined:
    Jul 17, 2017
    Messages:
    72
    Likes Received:
    98
    I feel like with the perf speed changes and height restriction of gokz, weirdjumps are going to be awkwardly small.

    But that might just be me.
     
    GameChaos likes this.
  17. GameChaos

    GameChaos perfect jump ratio: 86.60% Official Map Tester Mapper

    Joined:
    Feb 20, 2016
    Messages:
    451
    Likes Received:
    689
    best wj height is 38
     
  18. Jeremyiah

    Jeremyiah Person

    Joined:
    Jul 17, 2017
    Messages:
    72
    Likes Received:
    98
    What's the longest jump you can do with that like 270?
     
    GameChaos likes this.
  19. GameChaos

    GameChaos perfect jump ratio: 86.60% Official Map Tester Mapper

    Joined:
    Feb 20, 2016
    Messages:
    451
    Likes Received:
    689
    288 probably or more
     
  20. DanZay

    DanZay PRO Staff Member KZGlobalAdmin Programmer

    Joined:
    Jun 2, 2015
    Messages:
    575
    Likes Received:
    1,559
    Measure for Nerds

    unknown.png

    Measure lets you pick two points e.g. A and B and returns you the distance between them

    Jumpstats takes the centre of your 32x32 player at the start and end of your jump and calculates the distance between those. After that, 32 is added to give the resulting distance, which should be equivalent to the longest LJ block you would've been able to jump (if you jumped straight across the gap).

    From the above diagram, you can probably appreciate that the length of the green line is probably not simply the length of the blue line + 32. With that said, you can say that !measure is a bit misleading, because it doesn't really tell you how far you need to jump along a diagonal such as this.

    To solve this, we got an algorithm to calculate the length of the blue line, and add 32.0 so that it matches the actual jumpstat distance you would need. There's an extra check too to see if you don't need to travel along one or both of the axis (your player is 32.0 fat, so you can jump a 32.0 gap for free).

    I'll be showing both numbers with the new one in brackets for now.

    Untitled.png
     
    xq_, Joshua, Gwooky and 7 others like this.

Share This Page