Skip to content

Commit 715c79f

Browse files
committed
Add project link
1 parent a0785bb commit 715c79f

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

data/projects.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,12 @@ export default [
8888
desc: "An API/sandbox to run untrusted JavaScript/TypeScript scripts.",
8989
to: "/sandboxing-javascript-code",
9090
},
91+
{
92+
name: "compressing-cs2-demos",
93+
link: "https://github.com/healeycodes/compressing-cs2-demos",
94+
desc: "An example of compressing Counter-Strike 2 demo data.",
95+
to: "/compressing-cs2-demos",
96+
},
9197
{
9298
name: "file-share-cli",
9399
link: "https://github.com/healeycodes/file-share-cli",

posts/compressing-cs2-demos.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,4 +263,4 @@ I could also encode position data using [bit arrays](https://en.wikipedia.org/wi
263263

264264
Instead of storing a map with a `uint8` as a key, and a list of `int8` for the change events. I can compress the data into a bit array where each value is: a player id (4 bits) and an add or remove event (5 bits) for 9 bits total. A frame's equipment change field can just be a list of those (repeating the player id is actually okay because it's rare that multiple piece of equipment are acquired on the same frame).
265265

266-
It's fun to theorize but a protobuf schema is as far as I need to go for now.
266+
It's fun to theorize but a protobuf schema is as far as I need to go for now. View the source code for this toy compression program [on GitHub](https://github.com/healeycodes/compressing-cs2-demos).

0 commit comments

Comments
 (0)