Commit graph

127 commits

Author SHA1 Message Date
ChillerDragon 45d1361408 Server send game and server info 2022-11-11 13:42:11 +01:00
ChillerDragon 1baf3fcad0 Start working on server side map packet 2022-11-11 10:21:48 +01:00
ChillerDragon 0a04af1cb6 Parse client info on the server side 2022-11-09 16:46:04 +01:00
ChillerDragon ddc6a1ad17 Fix server 100% CPU usage in idle 2022-11-09 13:55:09 +01:00
ChillerDragon d013656ffb Remove packer debug msg 2022-11-09 13:50:15 +01:00
ChillerDragon 6c005497d4 Layout server control msg structure
Thus closed #5
By deciding to support server as well.

This is rebranding from teeworlds-client to teeworlds_network
And thus also including a bunch of file renames
2022-11-09 08:56:18 +01:00
ChillerDragon 3a39d3f9f8 Start working on the server side 2022-11-08 16:20:46 +01:00
ChillerDragon fff2e9efb0 First draft of sending inputs
Thanks a lot to @Swarfey for his tw-chatonly typescript package
https://www.npmjs.com/package/teeworlds

His simple calculation of the pred time was saving me a lot of time!
2022-11-06 20:15:47 +01:00
ChillerDragon ffbc433b67 Add rcon support 2022-11-06 18:26:14 +01:00
ChillerDragon 2db8b7058d All packer tests passing and verified 2022-11-06 16:43:32 +01:00
ChillerDragon cca183818e Fix tests and packer (multi negative still broken) 2022-11-06 16:26:00 +01:00
ChillerDragon 01d8f8d8e6 Single byte negative int unpacks wrong 2022-11-06 13:57:53 +01:00
ChillerDragon 0479e7f07e Add packer tests 2022-11-06 13:35:10 +01:00
ChillerDragon 11a7e9629d Unpacker should be fully working now
Covered by good test coverage.
Parts of the tests are commented out because they depend on the
currently borken packer to work.
2022-11-06 13:18:26 +01:00
ChillerDragon cafbd79fe9 Mess w packer (no actual progress) 2022-11-06 12:11:54 +01:00
ChillerDragon a248ae1ed8 Properly versioned documentation 2022-11-05 19:33:08 +01:00
ChillerDragon 672e05a16e Fix data docs 2022-11-05 19:02:11 +01:00
ChillerDragon d810597892 Add integration test (closed #4) 2022-11-05 18:58:53 +01:00
ChillerDragon a3f28aaf37 Make flag bits string mutable (unfreeze) 2022-11-05 18:01:04 +01:00
ChillerDragon 39389ae379 Add rubocop to CI (closed #2) 2022-11-05 17:57:12 +01:00
ChillerDragon 742b665f26 rubocop -A 2022-11-05 17:48:47 +01:00
ChillerDragon 28477ab90d Manually fix netbase 2022-11-05 17:47:47 +01:00
ChillerDragon 2b4f7335f3 rubocop -A examples/ 2022-11-05 17:27:54 +01:00
ChillerDragon 70a03dc88f rubocop -A lib/packet.rb 2022-11-05 17:27:13 +01:00
ChillerDragon e7f1d82e2d rubocop -A lib/packer.rb 2022-11-05 17:26:08 +01:00
ChillerDragon 940cc4269f Fix ugly rubocop if and silent disconnect 2022-11-05 17:23:35 +01:00
ChillerDragon ddef46991b rubocop -a 2022-11-05 17:19:05 +01:00
ChillerDragon 0be954538c Add tests (closed #3) 2022-11-05 17:13:23 +01:00
ChillerDragon 00f2c89d93 Opsi logic error 2022-11-05 16:40:00 +01:00
ChillerDragon 6ad64d7a2d Always knew i did not fully understand procs
Still not sure if I do

closed #1
2022-11-05 16:38:54 +01:00
ChillerDragon 3810a333f7 Opsi mixup in example (i should start testing those) 2022-11-05 12:00:49 +01:00
ChillerDragon db106ba70e Add on_client_drop() 2022-11-05 11:59:36 +01:00
ChillerDragon 8fe595b0a6 Client info is actually used to display join msgs
Looked at the c++ client code and it actually does that.
The entergame message is only used in demos. Yeet on those.
2022-11-05 11:34:34 +01:00
ChillerDragon d71a198219 opsi 2022-11-05 11:08:19 +01:00
ChillerDragon 771bdfe859 Holy sh*t this lib is actually usable 2022-11-05 11:07:16 +01:00
ChillerDragon 7689d2725a Strong control over lib using Context objects 2022-11-05 10:35:40 +01:00
ChillerDragon 1d3076e34b Break api hook_chat -> on_chat 2022-11-05 09:39:16 +01:00
ChillerDragon 57dfc76588 Stabilize api yikes 2022-11-04 16:57:50 +01:00
ChillerDragon 0f9c9a0804 Proper chat message support 2022-11-04 16:26:24 +01:00
ChillerDragon 316a24852e Enough unpacker to be dangerous 2022-11-04 15:35:54 +01:00
ChillerDragon b36df089ff Bunch of failing tests 2022-11-04 15:21:48 +01:00
ChillerDragon 831a9b6452 Start working on unpacker 2022-11-04 13:58:19 +01:00
ChillerDragon 875132a03a Document more samples 2022-11-04 13:22:29 +01:00
ChillerDragon 794915942c Close connection on ctrl+c 2022-11-04 13:07:34 +01:00
ChillerDragon effa00b001 Disconnect before connecting 2022-11-04 13:04:51 +01:00
ChillerDragon 0e42839e74 Fix reconnecting 2022-11-04 12:55:01 +01:00
ChillerDragon 57a8f0bcc7 Unhardcode the last packet (startinfo)
Also support bigger integers than 63 :)
2022-11-04 12:31:42 +01:00
ChillerDragon 2c8e6aeb8f Unhardcode startinfo
Thanks a lot to @Learath2 for explaining the int packer to me <3
2022-11-04 11:39:41 +01:00
ChillerDragon 2919feb529 Unhardcode more chunk headers 2022-11-04 10:12:23 +01:00
ChillerDragon 68e8cb6dd0 Alert on empty payload instead of crashing 2022-11-04 09:27:36 +01:00