Age | Commit message (Collapse) | Author |
|
Woops! Thanks Uncrafted for reporting this.
|
|
|
|
I will probably forget to do this every year.
|
|
|
|
|
|
Suggested by bill. Having something semantically pointer-sized that's
only ever used for stuff that's always 32-bit doesn't really make sense.
Note that I intentionally did not add a copyright line for myself in
hud.c because, I mean, come on. I'll just say I waive any claim to that
tiny trivial change.
|
|
|
|
Currently only supports Orange Box and Left 4 Dead branches. There's
quite a large amount of gamedata involved in making this work, and
figuring it out for the likes of Portal 2 doesn't seem like a major
priority at the moment.
|
|
Of course, this has only been used at build time for quite a while now.
Silly oversight!
The linker would have dropped it anyway so this will just avoid some
wasted effort.
|
|
Avoids spurious and confusing fast-forward behaviour in the event of
resetting a run, then disconnecting early and deciding to load some
other map.
Also fixes a stupid typo (s/propand/propane/).
|
|
|
|
This complicates things greatly! Therefore, it's a separate commit to
the baseline fast-forward functionality, to keep the confusing stuff
relatively contained.
|
|
|
|
|
|
Also done with quite a lot of RE help from bill - thanks again!
|
|
This fixes a crash in later L4D2 versions caused by the fact we were
unknowingly hooking Key_Event already. Now we hook it all the time on
purpose.
|
|
Thanks bill for spotting this issue. It was causing crashes on unload,
which is obviously no good.
|
|
This will be mostly useful for skipping cutscenes in Left 4 Dead games.
It may work in other games, but probably won't really be as useful.
Committer's note: this was adapted a fair bit from woz's original code,
hence the joint copyright, but he did most the hard work of figuring out
how to get this deep into the engine's call stack. Thanks!
bill also provided a fair bit of help figuring out missing gamedata and
fixing compatibility with L4D2 2147 and later. Also thanks!
|
|
|
|
Because why not.
|
|
|
|
|
|
- Add a couple of overdue -Werrors that make life easier
- Reshuffle cc/ld flags a bit, mainly around -fuse-ld=lld
|
|
|
|
This will save users having to install the VS runtime in order to load
the plugin. Turns out there was very little to implement to make this
work.
Turning off stack probing might cause spooky outcomes further down the
line but we'll burn that bridge when we get there.
|
|
Reminder not to actually use any of the code I write until it's at least
been included in a few releases of something. :^)
|
|
Nothing really works yet, but at least test.h and fastspin are fixed and
some of the issues with RTTI and libdl and stuff are maybe kind of
sorted, subject to more testing later.
The main issue now seems to be the cvar interface not quite lining up
and crashing pretty much immediately. That'll probably take a lot more
debugging to figure out, which likely still won't be a priority for
quite a while.
|
|
Thinks, bill.
|
|
Apparently there's slightly longer code for whatever reason which made
32 too conservative of a search window. Easy fix!
|
|
|
|
|
|
|
|
A lot of this is random WIP from a while back, at least a month ago, and
is being committed now to get it out of the way so that other patches
can be brought in and integrated against it without causing headaches.
Also rolled into this commit is a way to distinguish plugin_unload from
exiting the game. This is required for another soon-to-be-integrated
feature to avoid crashing on exit, and could in theory also be used to
speed up unloading on exit in future. While we're at it, this also
avoids the need to linearly scan through the plugin list to do the
old branch unloading fix, because we can.
Rough summary of the other smaller stuff I can remember doing:
- Rework bitbuf a bit
- Add some cryptographic nonsense in ac.c (not final at all)
- Introduce the first couple of "chunklets" libraries as a sort-of
subproject of this one
- Tidy up random small bits and bobs
- Add source for a small keypair generation tool
- Rework democustom to be very marginally more useful
|
|
Basically for documentation purposes and to ensure it exists outside of
my own server; this was a VERY write-only script and is already in
fairly wide use so I don't expect to edit it very much.
|
|
Absolutely no idea how long this has been broken for!
|
|
|
|
|
|
It's very very likely to actually get used in the next release, I swear.
This reverts commit 7893ef46f85eb5a6021d6ab763ca84e382e64954.
|
|
There's a solid chance this actually gets used this time. Plus, there's
breaking changes, so it makes sense to update before writing any actual
code for it.
The RNG module is also manually fixed up; upstream wasn't moved to the
new Monocypher APIs which might be because the authors don't seem to
think it's even a good idea to use anything other than arc4random().
Maybe I'd kind of agree with that if not for both Linux and Windows not
having arc4random(), and none of SSTs use cases requiring it either
(none of the crypto code is gonna be multithreaded and certainly none of
it is gonna fork).
|
|
|
|
That sorting function was a bit wonky, so make it just a little bit
wonky instead. chibicc would produce confusing lex errors if given a
stray single quote somewhere, so make it give non-confusing errors.
Also get rid of canonicalize_newline() because it's unnecessary for SST
so long as Windows Git isn't left in its default misconfigured state.
|
|
|
|
This was actually breaking deferred initialisation in 0.5, the main
observable effect being that the L4D1 console spam fix stopped working.
Committer's note: woopsy!
|
|
This was clumsily added in 1c4318331663b152b0b298bd2c9e5c971506a86b as a
test case for code I was writing at some point but has not been included
in the repository yet. This means the 0.6 tag is broken for anyone
trying to build from source unless this change is cherry-picked on top.
Lesson learned: keep the working tree clean!
|
|
|
|
This also tidies up library handle grabbing with more os.h stuff, and
improves the VDF creation logic - since we no longer store a couple of
paths which makes it necessary to change that a bit anyway.
|
|
It's not being used in the 0.5 release; this will be reverted
some time after the release is tagged and uploaded.
|
|
Of course, Portal doesn't actually check this properly, and it was never
tested well enough until just now. This fixes it, albeit in a really
stupid way. C'est la vie.
|
|
The zip date is tomorrow as that's the expected release date pending
some testing and hearing back from Portal people re official approval
for use in runs. With any luck it won't need to be bumped further.
|
|
There's absolutely no reason these ever wouldn't be there.
|