jump.tf Forums
Welcome B)

TAS Plugin

nolem · 97 · 103644

nolem

  • Proficient
  • ****
    • Posts: 262
    • Frags: +3/-0
    • View Profile
    • Youtube
A recent update broke the plugin, here's a link to the fixed version: https://drive.google.com/file/d/0B3PhHB4Z67zRUHpSV0t2Q3BLN2c/view?usp=sharing&resourcekey=0-SfrW2WYFCcWD8s4aPCdymQ. I'll update the main post with the new link as well. Let me know if you run into any other issues with this version.

Thanks to Ninja Cookie for letting me know it was broken!

Sorry about the lack of other updates - hasn't been something that I've had much time to work on unfortunately :/


nolem

  • Proficient
  • ****
    • Posts: 262
    • Frags: +3/-0
    • View Profile
    • Youtube
Hello!

I've had my yearly burst of motivation to work on the plugin and I actually have a fair bit of progress to report this time  :)

The new version of the plugin includes:
  • Sticky rewinding. I would describe it as more of a beta, though. Charge state of the sticky launcher does not rewind, and I don't think weapon switching/clip management works, although those are next up on my list. But stickies that are out during a save frame should respawn as you'd expect. Huge thanks to AI for pointing me in the right direction here!
  • A couple of new commands. Let me know what you think of them!
  • Some tweaks to the HUD, and fixes for the cl_showpos interaction. Let me know if there's a way that the HUD could become clearer/more useful!
  • Fix for the bottom bug in this post https://jump.tf/forum/index.php/topic,1350.msg27453.html#msg27453. The issue was that on the final frame of the ghost ticks the recorded command might not be played back and instead the current user's command would, and it would skip blocking the attack
  • New file format. The plugin _should_ still load old files, but new files will be saved with a new format. It should be more accurate and more compact, although the file does contain a bit more information than it used to.
  • A workaround for https://jump.tf/forum/index.php/topic,1350.msg26543.html#msg26543. Issue here seems to be related to tf_clamp_airducks. My workaround for this is to disable that cvar while ghosting, and then re-enable it when recording resumes. Not great, but hopefully it works  8)
  • Probably a lot more that I've since forgotten about

I've also shuffled around a ton of the internal workings of the plugin which for a while resulted in crashes while I ironed out the bugs. As of this evening, though, I've resolved all crashes that I'm aware of. If you can get the game to crash via any means (command, projectile interaction, whatever), please let me know!

I'll go ahead and update the link in the main post shortly. As you can see, there are a bunch of changes, so I'm sure some bugs snuck in. If anything seems off, reply here or shoot me a message and I'll take a look


nolem

  • Proficient
  • ****
    • Posts: 262
    • Frags: +3/-0
    • View Profile
    • Youtube
Hello again! I've kept working on the plugin and have another version ready for release. This version includes:

- Configurable # of ghost ticks. You can now resume after as little as 2 ghost ticks instead of waiting 30 ticks like before (if you want)
- Generally overhauled weapon resetting logic, working for most (hopefully all) weapons. Should be much more reliable now
- Improved sticky rewinding, including sticky launcher charge state
- Added a frame-by-frame/tick advance mode (more on this below)
- Pipe rewinding
- Improved crouch state rewinding. The plugin no longer relies on tf_clamp_airducks, and instead restores a bunch of attributes relating to player crouch state. Many bugs where the player would clip into things or teleport weirdly during playback should be resolved as a result of this
- JSON export/import of recording data. (more on this below)
- 9 sticky det behavior (more on this below)
- Projectiles (except pipes) spawn on the first possible ghost tick instead of the last.
- Cowmangler projectile support
- Some tweaks/changes to the hud and `show_path`/`show_projectiles`
- Fix for the setang inconsistency discussed earlier by ondkaja and Larry
- Gravity rewinding
- Renamed control_ammo to replay_ammo, and defaulted it on (more on this below)
- Descriptions for each command in the help menu
- Misc other fixes

A lot of the goal with this release was to fix logical inconsistencies that could result in playback that doesn't match what was recorded. Most of the issue here was with respect to weapon and crouch state, so I hope that you'll find this build makes things much more reliable. Note that projectiles and lag can cause the game to be nondeterministic, and hammer logic/targetname/etc are not accounted for, but ignoring those the plugin _should_ always produce logically consistent recordings now. In many cases, I've been able to record entire runs as soldier and play them back without force_teleport and it never desyncs.

Recordings from the original version and from the previous release should be compatible with this build, although much of the crouch state & weapon logic will be effectively ignored for the portions of the recording from an older version of the plugin.

I'm also planning to make a video tutorial for the plugin at some point covering everything from the basic commands all the way through the advanced ones. I have added descriptions to the commands in the help menu, though, so hopefully that helps in the meantime. I will also update the main post with that info. Here's a (not great) preview of the new tick advance mode and some of the path/projectile stuff for now:
Spoiler (click to show/hide)

DL Link

As always, let me know if you run into any bugs/issues/crashes/whatever, or if you have any suggestions for tweaks/features.

Here are some additional details about the topics from the above list with "(more on this below)":
Spoiler (click to show/hide)

« Last Edit: August 30, 2022, 09:32:06 PM by nolem »


cowboyana

  • Newbie
  • *
    • Posts: 25
    • Frags: +0/-0
    • View Profile
this seems amazing, havent bothered with tas until now, but have always wanted good demoman tas tools which seems real now? will try it out soon if im not lazy and let you know if i find something broke


osplo

  • Newbie
  • *
    • Posts: 14
    • Frags: +0/-0
    • View Profile
God doing demo TASes is so fun now, can't wait to see the goofy stuff people are going to pull off!!

I found a minor bug where if you shoot a pipe and save at the same time, it spawns 2 pipes when you rewind, and shooting stickies and saving makes you just keep charging.


nolem

  • Proficient
  • ****
    • Posts: 262
    • Frags: +3/-0
    • View Profile
    • Youtube
Recent game update seems to have broken the plugin, fixed version is uploaded at the same link, so please redownload if you're seeing issues. Here's the link in any case: https://drive.google.com/file/d/0B3PhHB4Z67zRUHpSV0t2Q3BLN2c/view?usp=sharing&resourcekey=0-SfrW2WYFCcWD8s4aPCdymQ

Not sure if updating metamod/sourcemod is necessary too, but might be worth doing that anyways  :)


nolem

  • Proficient
  • ****
    • Posts: 262
    • Frags: +3/-0
    • View Profile
    • Youtube
Larry has been making a bunch of changes to the plugin to get things in better shape, so we have a beta update to share here.

Most notably, the plugin no longer has a dependency on Metamod:Source, and instead it runs as a Valve Server Plugin (https://developer.valvesoftware.com/wiki/Server_plugins), similar to how MM:S itself runs.

These changes shouldn't actually impact anything behaviorally, but the plugin now loads a little differently, with `plugin_load addons/tas` instead of the old metamod commands. This also needs to be run _before_ loading into a map. Larry also bundled in a vdf file which should cause the plugin to auto load on startup as well.

This is still a 32 bit plugin unfortunately, but it's now in a better spot to move toward 64 bit support.

I'm not going to update the main post quite yet (I'll leave the existing metamod version as-is), but feel free to download this one and let me or Larry know if you run into any issues.

Download: https://drive.google.com/file/d/17zV8ZMUCRRG9efcscTAuQ14dYLZF9uPy/view?usp=sharing

!! If you have issues with the game crashing, try removing the vdf file and loading the plugin manually !!

Big thanks to Larry here!
« Last Edit: August 10, 2024, 07:38:23 AM by nolem »