Commit graph

15 commits

Author SHA1 Message Date
Resaec 75baaa52e8 update JVM to latest LTS 2025-08-26 21:52:33 +02:00
Resaec 5b9b85142e nope, not the link is missing, it does not pack sbt at all
does switching to sbt proper work?
2025-08-26 20:22:54 +02:00
Resaec a128754459 switch to sbtn command, seems like no sbt -> sbtn link is provided anymore
might just work like is...
2025-08-26 20:19:09 +02:00
Resaec bb4ceb1f22 update github workflow to fix broken pipeline 2025-08-26 19:52:15 +02:00
Jakob Gillich 56db0f76e4
switch to coursier action 2023-05-30 13:19:45 +02:00
Jakob Gillich 1b367c455f
formatting 2023-04-15 19:02:46 +00:00
Fate-JH 72ff7067cd
Merge pull request #908 from psforever/renovate/olafurpg-setup-scala-13.x
Update olafurpg/setup-scala action to v13
2021-11-01 11:19:24 -04:00
Mazo 4e93dacc54 Pin postgres version to 12.8 during CI test run 2021-10-02 12:17:37 +01:00
Renovate Bot 994b4c37f2
Update olafurpg/setup-scala action to v13 2021-08-30 21:09:34 +00:00
Mazo 3ab5b12fbe Split out actions, only run them as required, fix GITHUB_SHA under PR context 2021-06-13 23:26:47 +01:00
Renovate Bot 542c39fe91
Update olafurpg/setup-scala action to v12 2021-06-01 09:23:05 +00:00
Renovate Bot 4722f76e8a
Update olafurpg/setup-scala action to v10 2020-10-20 16:56:21 +00:00
Jakob Gillich 407429ee21 Networking
The game uses a UDP-based protocol. Unlike TCP, UDP does not guarantee that
packets arrive, or that they arrive in the correct order. For this reason,
the game protocol implements those features using the following:

* All packets have a sequence number that is utilized for reordering
* Important packets are wrapped in a SlottedMetaPacket with a subslot number
* RelatedA packets ae used to request lost packets using the subslot number
* RelatedB packets are used to confirm received SlottedMetaPackets

All of these go both ways, server <-> client. We used to only partially
implement these features: Outgoing packet bundles used SMPs and could be
resent, but not all packets were bundled and there was no logic for requesting
lost packets from the client and there was no packet reordering, which resulted
in dire consequences in the case of packet loss (zoning failures, crashes and many
other odd bugs). This patch addresses all of these issues.

* Packet bundling: Packets are now automatically bundled and sent as
  SlottedMetaPackets using a recurring timer. All manual bundling functionality
  was removed.

* Packet reordering: Incoming packets, if received out of order, are stashed and
  reordered. The maximum wait time for reordering is 20ms.

* Packet requesting: Missing SlottedMetaPackets are requested from the client.

* PacketCoding refactor: Dropped confusing packet container types. Fixes #5.

* Crypto rewrite: PSCrypto is based on a ancient buggy version of cryptopp.
  Updating to a current version was not possible because it removed the
  MD5-MAC algorithm. For more details, see Md5Mac.scala.
  This patch replaces PSCrypto with native Scala code.

* Added two new actors:
  * SocketActor: A simple typed UDP socket actor
  * MiddlewareActor: The old session pipeline greatly simplified into a
    typed actor that does most of the things mentioned above.

* Begun work on a headless client

* Fixed anniversary gun breaking stamina regen

* Resolved a few sentry errors
2020-09-26 23:58:09 +02:00
Jakob Gillich 06e63dd960 Fix psadmin, artifact upload 2020-08-26 20:04:00 +02:00
Jakob Gillich 67f6287a2b Build docker image on push only 2020-08-26 06:19:00 +02:00
Renamed from .github/workflows/ci.yaml (Browse further)