Commit graph

134 commits

Author SHA1 Message Date
ChillerDragon d4332ce6b0 Disconnect on invalid snap item
Do not leave a timeouted tee on the server if the snap is
parsed wrong
2022-11-20 10:24:56 +01:00
ChillerDragon c28bcd15e8 Never silently crash on invalid snap item 2022-11-20 10:22:39 +01:00
ChillerDragon 1e829c0eaf Fix crash on server messages and add tests for it 2022-11-20 10:13:07 +01:00
ChillerDragon ec92b073e8 Added tune params but wasn't able to test it yet
So this code does not work 100% but I will continue
when i figure out how to make the server actually send it
2022-11-20 09:44:42 +01:00
ChillerDragon 1794051342 Add images to gui client 2022-11-19 13:19:22 +01:00
ChillerDragon dc72204140 Add simple gui client to examples 2022-11-19 12:39:58 +01:00
ChillerDragon ad7ef13926 More snap item support 2022-11-19 11:28:45 +01:00
ChillerDragon dd714e51aa Add first snap event sound world 2022-11-19 10:39:29 +01:00
ChillerDragon e203f09fe4 Add projectile snap item 2022-11-19 10:25:31 +01:00
ChillerDragon 738e9effda Cleaner snap item annotations 2022-11-19 10:17:37 +01:00
ChillerDragon 0bcd7bb960 Add player info snap obj 2022-11-19 10:16:00 +01:00
ChillerDragon d4ccfc24e1 Inherit from snap item base class 2022-11-19 10:09:45 +01:00
ChillerDragon 3c42b64a7b Move all snap stuff to snapshot folder 2022-11-19 09:59:00 +01:00
ChillerDragon 6fdaf3be90 I think this snap item format is okayish 2022-11-18 10:59:59 +01:00
ChillerDragon 2da6b01738 Start snap item refactor (break everything) 2022-11-18 10:34:47 +01:00
ChillerDragon 396b539cca Overengineer snap items (but not in a good way) 2022-11-18 09:57:43 +01:00
ChillerDragon cb48c1028d First draft of snap obj class 2022-11-18 09:25:08 +01:00
ChillerDragon 34ebe75d54 Move snapshot to new file (still not cleaned up) 2022-11-17 16:11:34 +01:00
ChillerDragon 948aafb749 First workin snap item parser
Thanks a lot to @Learath2 for explaining in irc
And for the awesome libtw2 docs by @heinrich5991

48a2573af6/doc/snapshot.md
2022-11-17 15:43:27 +01:00
ChillerDragon f98ad6ae30 Try hard to parse the first snap item 2022-11-17 14:57:39 +01:00
ChillerDragon 45189d0217 part size = chunk num 2022-11-17 11:19:31 +01:00
ChillerDragon ac23f5911f There is more header in the payload, not that it helps 2022-11-17 11:14:47 +01:00
ChillerDragon 5971704b44 Its not like more annotations could save me now 2022-11-17 10:39:54 +01:00
ChillerDragon e477b19e9c I am about to mental breakdown 2022-11-17 10:28:04 +01:00
ChillerDragon 9b24347533 Got correct game start tick 2022-11-17 09:56:10 +01:00
ChillerDragon 2da59a6406 Still wrong but different 2022-11-17 08:39:18 +01:00
ChillerDragon 544396ca40 Some random snap item prints 2022-11-16 18:15:57 +01:00
ChillerDragon b118d37ebe Forgot chunk num in snap header 2022-11-16 17:33:35 +01:00
ChillerDragon d4fbc12b49 Who does not understand snap header with this output
can not be saved
2022-11-16 15:55:25 +01:00
ChillerDragon c119d393fc Go crazy with colored hexdump 2022-11-16 15:45:04 +01:00
ChillerDragon 2d4dc6dc65 Print fixed snap fields 2022-11-16 14:27:14 +01:00
ChillerDragon 3c53e66fdf One int per line in snap dump 2022-11-16 14:15:34 +01:00
ChillerDragon 804b3c87a2 Fix hexdump color crash 2022-11-16 14:13:29 +01:00
ChillerDragon 7697e5f451 color annotate hexdumps
Thanks to the legend @Learath2
2022-11-16 12:40:52 +01:00
ChillerDragon 59c2886046 hexdump snaps 2022-11-16 11:30:13 +01:00
ChillerDragon 616e14be1f Verbose snap data printing on client side 2022-11-16 10:57:49 +01:00
ChillerDragon 653ee661e9 Fix english cancle -> cancel ty swarfey and rcon 2022-11-16 10:50:54 +01:00
ChillerDragon 4a12262ad3 Move all network payload classes to messages/ 2022-11-16 09:37:47 +01:00
ChillerDragon 0f4646e011 Add sanitize cc 2022-11-15 18:26:49 +01:00
ChillerDragon db56a97e8c String unpacker should sanitize by default 2022-11-15 18:15:27 +01:00
ChillerDragon 07eb3841d2 Print emotes on the server side
thanks to @AlexIsTheGuy for brainstorming emote names
2022-11-15 17:48:56 +01:00
ChillerDragon 6283648964 Use SvClientDrop on the client side 2022-11-15 12:55:43 +01:00
ChillerDragon c11a7ae2d2 Generate SvClientDrop
twnet g sv SvClientDrop client_id:int reason:str silent:bool
2022-11-15 12:43:23 +01:00
ChillerDragon 3ab4fc61d1 Regenerate input timing with correct order
also remove the boolean placeholder if there is no bool field
2022-11-15 11:44:20 +01:00
ChillerDragon 3a219f406b Change context api! And add input timing msg
Remove the client attribute from the Context class
The block that exposes a Context class has to be called on a client
anyways so also passing it to the block args is redundant.

Replace it by a parsed version of the chunk which has yet to be properly
named current working title is: todo_rename_this
2022-11-15 10:39:44 +01:00
ChillerDragon fa08043968 First generated code pog
I ran this

	twnet g sp InputTiming intended_tick:int time_left:int
2022-11-15 10:10:45 +01:00
ChillerDragon 86a306664c Continue with packet generate script 2022-11-14 18:52:25 +01:00
ChillerDragon fe3e581f86 Make client callbacks arrays
Allows to setup multiple on_* hook blocks as a lib user

closed #10
2022-11-14 10:25:28 +01:00
ChillerDragon 2bec19ff21 rage quit on snap single 2022-11-13 17:24:13 +01:00
ChillerDragon 26fa55c428 Do not crash server on emotes 2022-11-13 15:54:27 +01:00