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
ChillerDragon
24fa105f66
Do not spawn a thread by default
...
This allows users to implement better multi threading than me.
Or if someone just wants to fire and forget a client that should just
use the provided hooks then not detaching takes away the effort
of keeping the program running.
Imo it is an easier and more fun problem to have:
"My client connects fine but my other ruby code does not run"
than
"My program just quits when I run it"
2022-11-01 15:32:47 +01:00
ChillerDragon
f7486c353f
Spawn thread for connection
2022-11-01 15:27:39 +01:00
ChillerDragon
618ac5f5e3
Was not sure if lib or full client
...
I guess we go for library now
2022-11-01 14:26:40 +01:00
ChillerDragon
9fc83cb327
Allow hooking in custom chat code
2022-11-01 14:25:56 +01:00
ChillerDragon
517107a4ad
Wannabe lib dev not knowing how to use procs
2022-11-01 14:11:11 +01:00
ChillerDragon
390840e6f0
Fixing drunk coders mess
2022-11-01 13:56:19 +01:00
ChillerDragon
01915a5629
Remove hacks and break everything in the process
2022-11-01 10:52:48 +01:00
ChillerDragon
cd0d5da9fa
Working send_chat() poggers
2022-11-01 10:37:24 +01:00
ChillerDragon
07ac2e07b8
Joining public servers works pretty good
2022-10-31 08:54:13 +01:00
ChillerDragon
9ae89fa173
Chat readable by default and debug opt in
2022-10-31 08:45:43 +01:00
ChillerDragon
c9495dd293
Display chat messages
2022-10-31 08:35:13 +01:00
ChillerDragon
5e02155230
Not acking resent packets did the trick
2022-10-31 08:22:21 +01:00
ChillerDragon
9903508d0b
Ah no nvm it seems to work
...
I managed to stay on a default config vanilla server
until inactive kick
2022-10-30 20:07:08 +01:00
ChillerDragon
e3bda9a3e6
Still timeouts but looks good in wireshark
2022-10-30 19:58:51 +01:00
ChillerDragon
97a44b183f
Still wrong ack but getting a tee in the world again
2022-10-30 19:44:49 +01:00
ChillerDragon
292bbf5fe0
Fixes in the header not sure if it works tho
2022-10-30 19:19:10 +01:00
ChillerDragon
b7a2cfb5c3
Start working on proper packet header
2022-10-30 19:00:13 +01:00
ChillerDragon
f75eaebcee
Print info packet when sending it
2022-10-30 11:18:15 +01:00
ChillerDragon
1ef6abf377
A bit of cleanup
2022-10-30 10:13:18 +01:00