Commit Graph

159 Commits

Author SHA1 Message Date
Ray Koopa
17b0edf67f Push current additions to Worms 2 server with test proxy. 2020-07-08 23:48:28 +02:00
Ray Koopa
ebdf7f5168 Add Worms2 server. 2020-07-07 00:46:30 +00:00
Ray Koopa
a308ae49b1 Add quick Worms 2 server PoC. Makes BinaryStream FixedString extensions globally available. 2020-07-07 02:45:00 +02:00
Ray Koopa
420810fad2 Remove old TODOs from BinaryStreamExtensions, they're not relevant. 2020-07-03 21:09:19 +02:00
Ray Koopa
b44ae666b6 Armageddon: Read and write signature as unsigned integer instead of string. 2020-07-03 13:57:34 +02:00
Ray Koopa
6d2864e6f7 Loading and saving extended options no longer needs to be unsafe. Remove unused "ClearExtendedOptions". 2020-07-03 13:48:18 +02:00
Ray Koopa
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.
2020-07-03 11:50:26 +02:00
Ray Koopa
4454cb1496 Merge branch 'master' of https://gitlab.com/Syroot/Worms 2020-07-02 05:29:15 +02:00
Ray Koopa
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.
2020-07-02 05:28:59 +02:00
Ray Koopa
08703b6c12 Add initial Blazor-based scheme editor. 2020-07-02 01:25:35 +02:00
Ray Koopa
9548855a8e Update README.md 2020-07-01 17:36:34 +00:00
Ray Koopa
7e13af88d1 Update README.md 2020-07-01 17:32:29 +00:00
Ray Koopa
ed4b69d4ad Update README.md 2020-07-01 17:22:17 +00:00
Ray Koopa
cc0ccaae7d Remove temporary code storing test files to disk. 2020-07-01 15:23:52 +02:00
Ray Koopa
bf0c60659a Fix several XML summaries. 2020-07-01 13:54:22 +02:00
Ray Koopa
ebba11bd59 Update project file. 2020-07-01 13:54:16 +02:00
Ray Koopa
f8b1b84f21 Archive: Ensure o call private directory directly while loading and saving. 2020-07-01 13:54:07 +02:00
Ray Koopa
b89ea5d7e9 Add WA archives to test. 2020-07-01 13:53:16 +02:00
Ray Koopa
c62d4a7551 Release v4.
- Fixes remaining ProjectX issues and failing tests.
- Relaxes dependencies on other libraries.
2020-07-01 13:31:02 +02:00
Ray Koopa
5321dfb49a Overhaul implementations and documentation. 2020-07-01 02:09:36 +02:00
Ray Koopa
8b92e6a8be Fix detection of SchemeSaveFormat when calling Save for file names. 2020-06-29 03:03:09 +02:00
Ray Koopa
861d5ea585 Implement W:A V3 schemes. 2020-06-28 23:22:08 +02:00
Ray Koopa
1d06fbd578 Setting RubberWorm version override transfers to extended options. 2020-06-28 19:52:11 +02:00
Ray Koopa
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.
2020-06-28 19:06:40 +02:00
Ray Koopa
10008eaf6e Rename FileTester to Tools and allow testing of single Streams. 2020-06-28 19:00:57 +02:00
Ray Koopa
66d4d15305 Relax NuGet package dependencies where possible. 2020-06-27 17:08:56 +02:00
Ray Koopa
7e3fcb766c Fix saving TeamContainer instances and add local test files for them. 2020-06-27 16:58:34 +02:00
Ray Koopa
fabc3e98b2 Properly leave open streams when saving to them for GeneratedMap and LandData instances. 2020-06-27 16:57:39 +02:00
Ray Koopa
ad2a7c79e1 Replace all inherited interface XML summaries with inheritdoc marker. 2020-06-27 16:35:11 +02:00
Ray Koopa
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.
2020-06-27 16:30:49 +02:00
Ray Koopa
378d2474b1 Release 3.1.0 for affected packages. 2020-06-27 14:19:37 +02:00
Ray Koopa
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.
2020-06-27 12:36:20 +02:00
Ray Koopa
e2b41157db Rename MEMBERS separator comments to FIELDS. 2020-06-27 12:31:43 +02:00
Ray Koopa
e72f6041e3 Release 3.0.1.
- Simplify scheme object count usage.
- Fix saving files.
- Uniquely leave open Stream instances when saving into them.
2020-06-26 19:05:46 +02:00
Ray Koopa
26a9125f0a Rewrite logic of parsing Scheme object count and type.
Mirrors frontend logic more closely now without the need for static lookup arrays.
2020-06-26 19:00:55 +02:00
Ray Koopa
57815e9072 Get rid of DisposableGCHandle.
Use Span functionality instead. This introduces some copies for .NET Standard 2.0 builds.
2020-06-26 18:57:01 +02:00
Ray Koopa
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.
2020-06-26 18:54:53 +02:00
Ray Koopa
ed2785e339 Fix several issues when saving new files.
- Fix writing raw bytes.
- In case of saving into Stream instances, uniquely leave them open everywhere.
2020-06-26 18:53:25 +02:00
Ray Koopa
84ba8c56a0 Update readme. 2020-06-18 16:04:52 +02:00
Ray Koopa
c51f67dc46 Update copyright. 2020-06-18 16:04:42 +02:00
Ray Koopa
0ce2ce387e Publish split game-related NuGet packages. 2020-06-18 15:52:14 +02:00
Ray Koopa
717da50d80 Remove Discord link. Please use Issues for support. 2020-03-28 14:21:05 +00:00
Ray Koopa
e57c593efa Review code, update code standards and NuGet packages. 2019-09-27 20:13:24 +02:00
Ray Koopa
c5391c3d66 Add LevelInfo. 2019-03-02 10:32:59 +01:00
Ray Koopa
bd3d40245b Merge branch 'master' of https://gitlab.com/Syroot/Worms 2019-03-02 10:32:50 +01:00
Ray Koopa
93f9481dc9 Add Shell project. 2019-03-02 10:32:46 +01:00
Ray Koopa
0145636dc0 Delete desktop.ini 2019-03-02 09:29:19 +00:00
Ray Koopa
c7d7f5cb3e Move projects into specific sub-folders. 2019-01-28 06:30:58 +01:00
Ray Koopa
95b68d63c6 Add ChatMessageQuery/Reply. 2019-01-22 21:46:41 +01:00
Ray Koopa
5c84357edb Implement AddFriendQuery/Reply 2019-01-22 21:22:38 +01:00