Commit Graph

  • 914acc2e1b Zero-terminate Data to prevent client-side bugs. - Fixes chat messages displaying stale memory as the client discards the data length. master Worms2.GameServer_1.1.1 Ray 2024-05-16 21:30:35 +02:00
  • b4e6433545 Fix deprecation and nullability warnings. Ray 2024-05-16 12:02:48 +02:00
  • 63691f897b Update app target framework to .NET 8. Ray 2024-05-16 12:02:01 +02:00
  • b509d7bdaf Update test dependencies. Ray 2024-05-16 12:01:56 +02:00
  • 046033bba7 Update platform toolset. Ray 2024-05-16 12:01:14 +02:00
  • 6dc2de2445 Update dependencies (same major version only). Ray 2024-05-16 12:00:51 +02:00
  • 48f1f91be3 Update copyright. Ray 2024-05-16 11:58:06 +02:00
  • cbe1388fb0 Fix typo. Ray 2021-09-12 16:56:41 +02:00
  • b68503e609 Release 4.0.4 Ray 2021-09-12 16:54:04 +02:00
  • 5fdd97c5ad Add missing StrikeClusterDamage field. Ray 2021-09-12 16:53:19 +02:00
  • 6a418e84ae Update release notes. Ray 2021-09-12 13:18:07 +02:00
  • 8eb0a971e8 Release 4.0.3: Fix StackOverflowException when using legacy .NET versions. Sadly requires all packages to update due to fixed version ProjectReferences. Ray 2021-09-12 13:14:23 +02:00
  • 6cba058138 Fix StreamShims Read method to not call itself. Ray 2021-09-12 12:30:17 +02:00
  • 03095916f1 MSBuild: Change common target paths in project files to fix building for DocFX. Ray 2021-03-24 19:27:22 +01:00
  • 9a218549e7 Mention new module folder. Ray Koopa 2020-07-21 21:08:41 +02:00
  • a99a883f6f Move WormKit loaders, modules, and libraries to module sub folder. Add signature scanning and import replacing. Ray Koopa 2020-07-21 21:06:03 +02:00
  • 518207b7e6 Add AllowMultiInstance. Ray Koopa 2020-07-20 20:17:20 +02:00
  • 2b94e09e39 Move FrontendKitLib to WormKitTools to reuse it for other modules. Ray Koopa 2020-07-20 18:38:10 +02:00
  • a314377c13 Move reusable FrontendKitWS code into own library. Fix small issue when determining fkNetcode INI path. fkNetcode_1.0.1 Ray Koopa 2020-07-16 16:01:27 +02:00
  • 4e251959b3 Prevent trailing 0-bytes at the end of some sent Packet.Data. Worms2.GameServer_1.1.0 Ray Koopa 2020-07-14 21:21:49 +02:00
  • 2ea6af0324 Remove semaphores. Ray Koopa 2020-07-14 21:11:05 +02:00
  • 730b14cdfa Change version to 1.1.0 due to new features. Ray Koopa 2020-07-14 21:00:28 +02:00
  • bb2b7e72b5 Rewrite server netcode to be asynchronous and support timeouts. Allow multiple proxy connections. Ray Koopa 2020-07-14 20:53:11 +02:00
  • 65522b6af5 Merge branch 'master' of https://gitlab.com/Syroot/Worms Ray Koopa 2020-07-12 21:27:43 +02:00
  • 4c27eb415c Read packets more strictly to prevent crashes from bogus data. Ray Koopa 2020-07-12 21:27:32 +02:00
  • e9ba6895b8 Add FrontendKitWS and fkNetcode. Ray Koopa 2020-07-12 18:37:31 +00:00
  • 48e6988083 Use original logic if there's no fallback and / or webservice failed. Ray Koopa 2020-07-12 20:20:32 +02:00
  • f242a6b745 Add versioning. FrontendKitWS_1.0.0 Ray Koopa 2020-07-12 18:27:59 +02:00
  • d0a01c6a13 Do not drop clients reporting unparsable IP addresses. Ray Koopa 2020-07-12 17:40:36 +02:00
  • 180a61a147 Extend fkNetcode with settings and better error handling. Ray Koopa 2020-07-12 17:40:11 +02:00
  • 71c8f33ea7 Add FrontendKitWS and fkNetcode. Ray Koopa 2020-07-12 02:19:51 +02:00
  • db3a49539f Fix color output on Linux and Mac OS X, log time stamps with packets, allow configuring local end point with command line parameter. Ray Koopa 2020-07-11 05:12:32 +02:00
  • 4e1f9b17a8 Prepare game server to be published easily. Ray Koopa 2020-07-11 03:14:57 +02:00
  • c97ef5deb2 Send message to users trying to host with bad IP. Ray Koopa 2020-07-11 02:07:42 +02:00
  • 0cfbc5b675 Fix rooms not being closed when last game is closed. Ray Koopa 2020-07-11 01:50:25 +02:00
  • 20d7c3c743 Fix game packets. Ray Koopa 2020-07-10 23:00:16 +02:00
  • 02a644abe9 Finish Worms 2 server (so far). Ray Koopa 2020-07-10 21:01:09 +02:00
  • 0fee2e1e13 Implement room chat and leaves. Ray Koopa 2020-07-10 18:45:10 +02:00
  • 9aad0faf6b Implement real packet handling. Ray Koopa 2020-07-10 02:15:06 +02:00
  • ac2d12c1b6 Handle additional packets. Ray Koopa 2020-07-09 17:06:37 +02:00
  • 17b0edf67f Push current additions to Worms 2 server with test proxy. Ray Koopa 2020-07-08 23:48:28 +02:00
  • ebdf7f5168 Add Worms2 server. Ray Koopa 2020-07-07 00:46:30 +00:00
  • a308ae49b1 Add quick Worms 2 server PoC. Makes BinaryStream FixedString extensions globally available. Ray Koopa 2020-07-07 02:45:00 +02:00
  • 420810fad2 Remove old TODOs from BinaryStreamExtensions, they're not relevant. Ray Koopa 2020-07-03 21:09:19 +02:00
  • b44ae666b6 Armageddon: Read and write signature as unsigned integer instead of string. Ray Koopa 2020-07-03 13:57:34 +02:00
  • 6d2864e6f7 Loading and saving extended options no longer needs to be unsafe. Remove unused "ClearExtendedOptions". Ray Koopa 2020-07-03 13:48:18 +02:00
  • dd2e67eab9 Arnageddon - Make Scheme.Extended a field rather than an uncommon ref property. Set ObjectCount to 8 by default. - Make ExtendedOptions.Default public. - Simplify comparison of ExtendedOptions instances. Ray Koopa 2020-07-03 11:50:26 +02:00
  • 4454cb1496 Merge branch 'master' of https://gitlab.com/Syroot/Worms Ray Koopa 2020-07-02 05:29:15 +02:00
  • 5b69f82a35 Syroot.Worms.Armageddon 4.0.1: Optimize WA v3 schemes to store only non-default extended options. - Adds SchemeVersionExtensions.GetWeaponCount(), returning how many weapons are stored by the corresponding SchemeVersion. - Adds ExtendedOptions.AsSpan() to return the unmanaged representation of the extended settings. - Optimize usage of .NET Standard 2.0 Span backports. Ray Koopa 2020-07-02 05:28:59 +02:00
  • 08703b6c12 Add initial Blazor-based scheme editor. Ray Koopa 2020-07-02 01:25:35 +02:00
  • 9548855a8e Update README.md Ray Koopa 2020-07-01 17:36:34 +00:00
  • 7e13af88d1 Update README.md Ray Koopa 2020-07-01 17:32:29 +00:00
  • ed4b69d4ad Update README.md Ray Koopa 2020-07-01 17:22:17 +00:00
  • cc0ccaae7d Remove temporary code storing test files to disk. Ray Koopa 2020-07-01 15:23:52 +02:00
  • bf0c60659a Fix several XML summaries. Ray Koopa 2020-07-01 13:54:22 +02:00
  • ebba11bd59 Update project file. Ray Koopa 2020-07-01 13:54:16 +02:00
  • f8b1b84f21 Archive: Ensure o call private directory directly while loading and saving. Ray Koopa 2020-07-01 13:54:07 +02:00
  • b89ea5d7e9 Add WA archives to test. Ray Koopa 2020-07-01 13:53:16 +02:00
  • c62d4a7551 Release v4. - Fixes remaining ProjectX issues and failing tests. - Relaxes dependencies on other libraries. Ray Koopa 2020-07-01 13:31:02 +02:00
  • 5321dfb49a Overhaul implementations and documentation. Ray Koopa 2020-07-01 02:09:36 +02:00
  • 8b92e6a8be Fix detection of SchemeSaveFormat when calling Save for file names. Ray Koopa 2020-06-29 03:03:09 +02:00
  • 861d5ea585 Implement W:A V3 schemes. Ray Koopa 2020-06-28 23:22:08 +02:00
  • 1d06fbd578 Setting RubberWorm version override transfers to extended options. Ray Koopa 2020-06-28 19:52:11 +02:00
  • 13583a6971 Prepare support for W:A 3.8 V3 schemes. - Add all new V3 extended options. These will be moved to their own struct soon. - Renames several existing properties and enums to be more concise. - Convert RubberWorm probabilities to V3 values. - Add test testing against a dump of all schemes uploaded to WSDB as of this commit. Ray Koopa 2020-06-28 19:06:40 +02:00
  • 10008eaf6e Rename FileTester to Tools and allow testing of single Streams. Ray Koopa 2020-06-28 19:00:57 +02:00
  • 66d4d15305 Relax NuGet package dependencies where possible. Ray Koopa 2020-06-27 17:08:56 +02:00
  • 7e3fcb766c Fix saving TeamContainer instances and add local test files for them. Ray Koopa 2020-06-27 16:58:34 +02:00
  • fabc3e98b2 Properly leave open streams when saving to them for GeneratedMap and LandData instances. Ray Koopa 2020-06-27 16:57:39 +02:00
  • ad2a7c79e1 Replace all inherited interface XML summaries with inheritdoc marker. Ray Koopa 2020-06-27 16:35:11 +02:00
  • 88d07a1ff1 Fix remaining Scheme bugs. - Implement IEquatable. - Fix RoundTimeSeconds not properly being parsed. - Uniquely throw ArgumentOutOfRangeException even for rounding properties. - Fix FallDamage not being stored properly. - Add tests for rounding properties and local scheme test files. - Implement equality operations for SchemeWeapon. Ray Koopa 2020-06-27 16:30:49 +02:00
  • 378d2474b1 Release 3.1.0 for affected packages. Ray Koopa 2020-06-27 14:19:37 +02:00
  • b46cdadb89 Simplify Scheme usage. - SchemeWeapon enum has been renamed to SchemeWeaponName. - SchemeWeaponSetting has been renamed to SchemeWeapon. - Scheme.FallDamage and Scheme.WaterRiseRate are now integral values, rounding down to the nearest valid setting. - Static Scheme.ValidXxx properties were added to retrieve a list of valid fall damage, water rise, and object count values. - Scheme properties uniquely throw ArgumentOutOfRangeExceptions if a value is outside of the allowed bounds. Ray Koopa 2020-06-27 12:36:20 +02:00
  • e2b41157db Rename MEMBERS separator comments to FIELDS. Ray Koopa 2020-06-27 12:31:43 +02:00
  • e72f6041e3 Release 3.0.1. - Simplify scheme object count usage. - Fix saving files. - Uniquely leave open Stream instances when saving into them. Ray Koopa 2020-06-26 19:05:46 +02:00
  • 26a9125f0a Rewrite logic of parsing Scheme object count and type. Mirrors frontend logic more closely now without the need for static lookup arrays. Ray Koopa 2020-06-26 19:00:55 +02:00
  • 57815e9072 Get rid of DisposableGCHandle. Use Span functionality instead. This introduces some copies for .NET Standard 2.0 builds. Ray Koopa 2020-06-26 18:57:01 +02:00
  • b4cf309156 Update target framework for most projects. - Test projects now run on .NET Core 3. - NuGet packages additionally target .NET Standard 2.1 to use Span functionality. Ray Koopa 2020-06-26 18:54:53 +02:00
  • ed2785e339 Fix several issues when saving new files. - Fix writing raw bytes. - In case of saving into Stream instances, uniquely leave them open everywhere. Ray Koopa 2020-06-26 18:53:25 +02:00
  • 84ba8c56a0 Update readme. Ray Koopa 2020-06-18 16:04:52 +02:00
  • c51f67dc46 Update copyright. Ray Koopa 2020-06-18 16:04:42 +02:00
  • 0ce2ce387e Publish split game-related NuGet packages. Ray Koopa 2020-06-18 15:52:14 +02:00
  • 717da50d80 Remove Discord link. Please use Issues for support. Ray Koopa 2020-03-28 14:21:05 +00:00
  • e57c593efa Review code, update code standards and NuGet packages. Ray Koopa 2019-09-27 20:13:24 +02:00
  • c5391c3d66 Add LevelInfo. Ray Koopa 2019-03-02 10:32:59 +01:00
  • bd3d40245b Merge branch 'master' of https://gitlab.com/Syroot/Worms Ray Koopa 2019-03-02 10:32:50 +01:00
  • 93f9481dc9 Add Shell project. Ray Koopa 2019-03-02 10:32:46 +01:00
  • 0145636dc0 Delete desktop.ini Ray Koopa 2019-03-02 09:29:19 +00:00
  • c7d7f5cb3e Move projects into specific sub-folders. Ray Koopa 2019-01-28 06:30:58 +01:00
  • 95b68d63c6 Add ChatMessageQuery/Reply. Ray Koopa 2019-01-22 21:46:41 +01:00
  • 5c84357edb Implement AddFriendQuery/Reply Ray Koopa 2019-01-22 21:22:38 +01:00
  • e9c88caadc Try to fix failing connects. Ray Koopa 2019-01-22 18:32:31 +01:00
  • 1b527a3f20 Implement CmdFindUser Ray Koopa 2019-01-22 18:22:01 +01:00
  • 38035742d6 Dynamically implement channel commands. Ray Koopa 2019-01-22 01:23:20 +01:00
  • a8073367f4 Delegate packet handling to IPacketFormat. Ray Koopa 2019-01-22 00:47:53 +01:00
  • cc84ed3d5f Typo Ray Koopa 2019-01-21 20:09:53 +01:00
  • e4104b8309 Implement propret channel join. Ray Koopa 2019-01-20 20:49:20 +01:00
  • 629103fce5 Implement proper disconnection from channel. Ray Koopa 2019-01-20 03:19:49 +01:00
  • 441648da6a Implement ChannelCmdPacket. Ray Koopa 2019-01-20 00:14:22 +01:00
  • b527021df4 Implement ChannelList and ChannelLoginQuery Ray Koopa 2019-01-19 15:38:48 +01:00
  • 587ac06330 Implement WWPA packets, update OW ones to Span parsing, rename encodings. Ray Koopa 2019-01-19 02:17:20 +01:00