We have been moving fast. We are at beta 51 now. I also made a discord for my projects https://discord.gg/6XwvKF3UCB to get or see the updates, I don't plan to keep this thread updated. There is no point and would do nothing but inflate my post count. I could make a profile for the project and post from that profile, but I'm not doing that manually, and you guys don't like LLM posts so, just not doing it as easy as it would be to make a tool for it. If you want to stay updated right now, you will need to do a little work checking the github, or joining the discord.
| Account Details | |
|---|---|
| SteamID64 | 76561198017160815 |
| SteamID3 | [U:1:56895087] |
| SteamID32 | STEAM_0:1:28447543 |
| Country | United States |
| Signed Up | September 10, 2012 |
| Last Posted | October 25, 2026 at 5:47 PM |
| Posts | 113 (0 per day) |
| Game Settings | |
|---|---|
| In-game Sensitivity | 2.41 |
| Windows Sensitivity | 1 |
| Raw Input | 1 |
DPI |
900 |
Resolution |
1024x768 |
Refresh Rate |
85hz |
| Hardware Peripherals | |
|---|---|
| Mouse | G9x |
| Keyboard | 6Gv2 |
| Mousepad | Vespula |
| Headphones | X11 |
| Monitor | Dell |
Doughy
Aware, realized after calming down, which took making the stupid post. I apologized, and I'm going to make sure it doesn't happen again, because it is embarrassing.
Zesty
I apologize, especially for saying you obviously haven't lived it. I still do not think it was appropriate to bring up in a discussion, but I went too far, I was legitimately angry. I will not be bringing up my history here, you can message me on steam if you really want to know, but vaguely and simply, I've lost too much, but that doesn't excuse me letting my anger cloud my argument. On your claim about the industrial revolution, the average living standards took off in the 1800s, when nations got steam power and more open markets. There were some slowdowns here and there, but over time everyone increased, it really can't be argued we are worse off in material possessions today than we were before. Yes obviously not everyone gets raised at once, nor raised the same amount.
I should specifically apologize for that "ahistorical nonsense" sentence too, it wasn't a good argument, frankly contributed nothing meaningful, and was needlessly mean.
This situation is the main reason I enjoy throwing thoughts into an LLM though, I calm down after writing them, talking through them, and don't go off the rails. Not a reason for anyone else to do it, but it helps me translate my thoughts.
Oh I forgot to let you know one thing about my/our (I don't know if i should use a plural for ownership because its me and Claude or not) tool though, it doesn't really "fix demos." it just plays them, at least all the ones I have come across, although there is a ~2 week period we can never get back because Valve literally destroyed STV demo recording and regular POV demo recording in like 2012, maybe it was 2013, if I remember right, I'd go ask the AI so I know the dates and span for certain, but I don't want to make anyone else mad.
Zesty On a very real note, AI is the only thing that has ever made me seriously contemplate suicide. I don't have any desire to die now, but in most of the futures that it could bring that feel plausible to me, it just seems like the rational decision would be to not exist in that world. I'm obviously going to wait and see what happens and hope that I'm wrong. Maybe this will be a wonderful technology that will bring a better future, but a better future for who?
This is insulting, and completely tone deaf. You don't get to use something people have actual medical struggles with, that require the person to have to fight that crap day in and day out, as a rhetorical tool. You don't understand it, you obviously have never lived it, and you immediately lose the argument by even attempting to pull this emotionally manipulative BS.
The whole rest of your post was ahistorical nonsense too. Tech improvements have never taken "centuries" to increase the conditions of the regular person. They take about 1 to 2 decades to completely settle on average. You're parroting propaganda without any actual understanding of history or what you are attempting to critique, which is why your whole post was emotionally manipulative garbage with no real substance. People, not you particularly, want to talk about being respectful but BS like this doesn't get called out immediately, fuck your respect, if this is the sort of respect you support.
edit for myself so i never do this shit again:
*BAD PINKUSHIN don't say dumb shit again because you are mad, THINK MARK THINK*
minicircle
I wasn't trying to post in this thread but my project was mentioned, and I wanted to show appreciation. I also wasn't trying to be disrespectful, despite my lack of any love or nostalgia for this forum, or its community.
I made a project that I wanted to exist. I also kinda figured the demo decode into a kind of "quake script/asm" like the quake demo parser used to verify speed-runs, might be helpful to the anti-cheat teams. That's not up to me though, so it isn't something I will concern myself with, unless they ask for something specific.
I don't really care one way or another if anyone uses my project, likes my project, or thinks I should burn in hell for using AI. I posted it so it was easily findable for anyone who wanted to view old demos in 3d or decode demos to a readable format. The AI use is not hidden and no attempt was ever made to hide it. There is a Claude file in the repo, and basically every commit shows co-written by a Claude model, because I basically do everything through Claude Code, with some manual build and test verification periodically in VS2026. If someone can't do their simple due diligence, but wants to have a strong opinion of LLM, that's on them. I will tag if it's available, but am not going out of my way to mention a million times "THIS PROJECT USES AI." It is blatantly obvious with 1 minute of looking.
A doesn't and can't apply, I make nothing from the project, I use it as a portfolio piece at best, and I am not really doing that because I am not a professional software developer. No one in professional software engineering recruitment is going to care about my unused, AI coded, niche project. It will never lead to money. I posted most of what you would need to copy my workflow and IMO get decent clean code, from Opus at least, in my last reply. The rest of my setup is very basic, TDD, mutation testing, fuzz testing. I picked the use of Win Forms, and MVP, DX11, Dear ImGUI and Vulkan when we get to Linux, and other underlying architectural decisions, Opus deals with the Ghidra usage, making era demos so they are comparable and so I'm not having to remember a script and attempt to time it, and the code generation, the most time consuming parts. I obviously speak and write English and am literate, so B doesn't apply.
On your argument C, the first paragraph of my earlier post was drafted by Claude from my notes, I specified the mention of Bacon and Popper. I know my project, I simply found it easier to let the LLM speak for the project itself, because I view the LLM agent as the project's voice. Knowing my own workflow and figuring out anything in the code is not difficult, it's time consuming when I work a full time job. C assumes I didn't think deeply, and it certainly doesn't apply when I've made the decisions about the project I have, it is frankly just insulting with the amount of thought I put into everything, anyone who has ever talked to me in mumble and steam about stuff outside of TF2 can vouch for that I'd imagine.
This post uses no AI, unless you consider red squiggles in the post body, and a grammar checker, AI. I can't vouch that the forum back end, Florp's client, or my grammar plugin don't use AI, I don't care one way or the other.
GazAs for the vibecoding projects ban, there should be clear rules to it. I'd disagree to ban every project with AI code outright. I believe projects that serve a clear, useful purpose should stay, as they might've not existed in the first place without AI.
So a good example is this: https://www.teamfortress.tv/66710/tf2-demo-salvage
A good counterexample for something that is lowkey nonsensical but was only made because of AI is this: https://www.teamfortress.tv/66658/im-building-tf2-in-rust-and-javascript-in-the-brow
Nobody would even tackle that project without AI, there is just no reason to.
Thanks Gaz, appreciate it.
Since this came up, I can explain how I interact with all LLMs, because I don't trust them. I run them on the scientific method as laid out by Bacon and refined by Popper. In this specific project, Valve is the authority, not me and not the AI, and my own guesses are hypotheses like anyone's. Every claim gets tested, more than once, and every ported rule cites the SDK or a binary address. A flaky test is a defect, not noise: code is deterministic, so a test that isn't deterministic means something underneath is wrong, and we chase it until it isn't. I have the AI attack my conclusions as hard as I attack its, and hooks enforce all of it so we can't forget or quietly weaken the rules.
You're right that the project probably wouldn't be done without AI either, because the time it would take me to do by hand would be unrealistic. I know C# decently, I've been hobby coding and self learning for 20+ years, but I don't know Valve's conventions and haven't done much Ghidra or Cheat Engine work, so the time needed to trace variables, functions/methods, and loops in Ghidra, trace the assembly in Cheat Engine, learn Valve's conventions, look up C/C++ syntax, look up the C# syntax I always forget, check Microsoft docs to see if there's an easier or better way of doing it, and write the code, would mean the project would take years and never be done. There is zero possibility I keep my depression and motivation under control for years doing this project by hand, alone. Possible, sure, but not realistic.
capnnofapnhow ya doin!
Doing decent enough, alive, good to see you're still around. Hope you've been doing well, I miss playing with all you guys. Probably a few apologizes I should make though, because I was such an asshole back then. I mean I'm still one now, but not in the same ways lol. Still if anyone from back then reads this who I was shitty too, because I had a bad attitude when losing a silly video game, I do sincerely apologize, I took this game far to seriously.
ArieWell, I think it's neat. Playing such old demos is a rather niche thing and without someone willing to point their Claude subscription at the problem, it would probably never exist.
Take it or leave it.
Also, it's hilarious how Claude will insist calling projects like this a "clean-room" implementation after ingesting all human knowledge including the HL2 and TF2 source code leaks.
Thanks, "clean-room" was the wrong word. It was my own early phrasing and it stuck around in the READ-ME. It's fixed now. What I've actually set up is built for 100% parity with how TF2 itself reads and draws a demo, so nothing is guessed. Behavior comes from Valve's published Source SDK 2013, the game's own data, and disassembly of the shipped engine and client binaries in Ghidra for the parts the SDK doesn't cover. Every ported rule is cited in the code, an SDK file and line or a binary address. No leaked source is used, at least knowingly. It's all out of date anyway, and it's easier to just grab a real archived client from archive.org. Surprisingly, in my prompting and corrections to the agents, getting it to decomp and read Ghidra has been much easier than getting it to look up engine leaks and use that information.
Also on the sub topic, yea I'm pointing literally all of it to this project, and this project is the only reason I'm even keeping it, because the money could be spent elsewhere, in arguably better places, but I really wanted TF2 players and ex-players, like me, to be able to still watch old demos like the ESEA season 8 Finals between Check 6 and EMG, that season was crazy, and those finals were peak tf2 before scout super dominance. I still haven't found those demos yet, but I'm still hopeful. If anyone has old ESEA/ETF2L/CEVO demos lying around, I'd love them for testing
hpqoeuyou dont post for 8 years and come back with this ai generated shit. fuck you
I didn’t really post when I was playing, so I’m not sure why you’d expect me to post after stopping. If you have an issue with a specific part of the code, point to it. If not, your complaint is noted and ignored.
TF2 Demo Salvage — open beta: play the demos TF2 can't open anymore
TF2 Demo Salvage is a standalone demo viewer and parser for Team Fortress 2. It reads .dem files from any point in TF2's history, 2007 to today, including the ones the current client refuses to load.
It works because every demo carries a description of its own entity data, and Salvage decodes each demo against that, rather than against whatever today's game expects.
Where it's at
- Decoding is solid. Tested on 441 real demos — ETF2L, ESEA, CEVO, LAN SourceTV, POVs and pugs, from TF2's launch build to this year. Every one decodes, including demos cut off mid-write, old Speex and Steam Voice audio, and the 2007 SourceTV demos whose schema was truncated at record time.
- The viewer plays them back in 3D:
- Uses your own TF2 install for maps and models.
- Reads your config, so your binds work.
- Scrub, free camera, or POV — where the recorder's movement is predicted the way the game does it.
- Uses your own TF2 install for maps and models.
- Export to text and back: File > Export assembly turns a demo into readable text; Compile assembly turns that text back into a byte-identical demo.
It's a beta. The viewer still looks different from the game in places — the release notes list where. I'm pushing fixes constantly; there have already been several releases since launch. If you want something polished, wait. If you want to help shape it, try it now.
Download
Latest release on GitHub
- Windows x64. Unzip and run
— nothing else to install.viewer\tf2demoview.exe
- Needs TF2 installed (for maps and models).
- 8 GB RAM minimum, 16 GB recommended.
What helps most
- Old demos. Early CEVO, CAL, ETF2L and ESEA demos, LAN POVs, frag-movie source demos — especially anything from 2008–2012. Rare eras are where the edge cases hide.
- Bug reports with the log. Logs are in
— tell me the demo and the tick.%LOCALAPPDATA%\Tf2DemoSalvage
Repo
github.com/PinKushin/Tf2DemoSalvage
If you want to contribute, test, or just watch the chaos, go for it.
SetsulPinKushinI think it's some kind of fruit.Setsulfunhaver1998depends on what you mean by 'true'Non-alternative facts.
Define "facts."
So that's a "I don't know how to define truth or facts." Nothing really wrong with that. it is the great philosophical question and it's practically unanswerable in a general sense but that is why it's important to define words before discussing them. It's like how capitalism is defined as voluntary exchange in economics but ask a Marxist to define it and they will give a nebulous and random answer.
Setsulfunhaver1998depends on what you mean by 'true'Non-alternative facts.
Define "facts."
his chat asked him to turn lmaobox on less then 5 mins after i got there so I very much don't think hes quit hacking. It's kinda funny to me your willing to forgive a hacker of that caliber though especially after only a few months. Do what you will if you wanna let this game be a joke even after MM comes out that's your right.
The marketer for LMAOBox, Maxbox has a stream. It was actually on the steam list on TF2's main menu. lets get this dude off twitch. It doesn't look good for the game when a known and blatant hacker has his stream being promoted on the stream page in game. https://www.twitch.tv/OfficialMaxBox report the fuck out of him on twitch and steam http://steamcommunity.com/id/officialmaxbox. thank you.
Damn it mustard beat me too it. I was gonna say his aim wasn't even near that good when he played with x6. S8 Finals were the first match I ever watched and I wondered how he was invite.