Skip to content

Commit

Permalink
Update Core, add version range to public server request
Browse files Browse the repository at this point in the history
  • Loading branch information
michael-r-elp committed Jan 12, 2025
1 parent 7df4dda commit 276bce2
Show file tree
Hide file tree
Showing 8 changed files with 14 additions and 10 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using BeatTogether.Core.Enums;
using BeatTogether.DedicatedServer.Kernel.Abstractions;
using System.Diagnostics.CodeAnalysis;
using BeatTogether.Core.Models;

namespace BeatTogether.DedicatedServer.Instancing.Abstractions
{
Expand All @@ -10,6 +11,6 @@ public interface IInstanceRegistry
public bool RemoveInstance(IDedicatedInstance instance);
public bool TryGetInstance(string secret, [MaybeNullWhen(false)] out IDedicatedInstance instance);
public bool TryGetInstanceByCode(string code, [MaybeNullWhen(false)] out IDedicatedInstance instance);
public bool TryGetAvailablePublicServer(InvitePolicy invitePolicy, GameplayServerMode serverMode, SongSelectionMode songMode, GameplayServerControlSettings serverControlSettings, BeatmapDifficultyMask difficultyMask, GameplayModifiersMask modifiersMask, string songPackMasks, [MaybeNullWhen(false)] out IDedicatedInstance instance);
public bool TryGetAvailablePublicServer(InvitePolicy invitePolicy, GameplayServerMode serverMode, SongSelectionMode songMode, GameplayServerControlSettings serverControlSettings, BeatmapDifficultyMask difficultyMask, GameplayModifiersMask modifiersMask, string songPackMasks, VersionRange versionRange, [MaybeNullWhen(false)] out IDedicatedInstance instance);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="BeatTogether.Core" Version="1.2.0-dev.3" />
<PackageReference Include="BeatTogether.Core" Version="1.2.0" />
</ItemGroup>

<ItemGroup>
Expand Down
6 changes: 4 additions & 2 deletions BeatTogether.DedicatedServer.Instancing/InstanceRegistry.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
using System.Diagnostics.CodeAnalysis;
using BeatTogether.Core.Enums;
using System.Linq;
using BeatTogether.Core.Models;

namespace BeatTogether.DedicatedServer.Instancing
{
Expand All @@ -23,7 +24,7 @@ public bool AddInstance(IDedicatedInstance instance){

public bool RemoveInstance(IDedicatedInstance instance) => _instances.TryRemove(instance._configuration.Secret, out _) && _instancesByCode.TryRemove(instance._configuration.Code, out _);

public bool TryGetAvailablePublicServer(InvitePolicy invitePolicy, GameplayServerMode serverMode, SongSelectionMode songMode, GameplayServerControlSettings serverControlSettings, BeatmapDifficultyMask difficultyMask, GameplayModifiersMask modifiersMask, string songPackMasks, [MaybeNullWhen(false)] out IDedicatedInstance instance)
public bool TryGetAvailablePublicServer(InvitePolicy invitePolicy, GameplayServerMode serverMode, SongSelectionMode songMode, GameplayServerControlSettings serverControlSettings, BeatmapDifficultyMask difficultyMask, GameplayModifiersMask modifiersMask, string songPackMasks, VersionRange versionRange, [MaybeNullWhen(false)] out IDedicatedInstance instance)
{
instance = null;
var AvaliableServers = _instances.Values.Where(s =>
Expand All @@ -33,7 +34,8 @@ public bool TryGetAvailablePublicServer(InvitePolicy invitePolicy, GameplayServe
s._configuration.GameplayServerConfiguration.GameplayServerControlSettings == serverControlSettings &&
s._configuration.BeatmapDifficultyMask == difficultyMask &&
s._configuration.GameplayModifiersMask == modifiersMask &&
s._configuration.SongPacksMask == songPackMasks
s._configuration.SongPacksMask == songPackMasks &&
s._configuration.SupportedVersionRange == versionRange
);
if (!AvaliableServers.Any())
return false;
Expand Down
5 changes: 3 additions & 2 deletions BeatTogether.DedicatedServer.Instancing/LayerService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using Serilog;
using System.Net;
using System.Threading.Tasks;
using BeatTogether.Core.Models;

namespace BeatTogether.DedicatedServer.Instancing
{
Expand Down Expand Up @@ -50,10 +51,10 @@ public Task DisconnectPlayer(string InstanceSecret, string PlayerUserId)
return Task.CompletedTask;
}

public Task<IServerInstance?> GetAvailablePublicServer(InvitePolicy invitePolicy, GameplayServerMode serverMode, SongSelectionMode songMode, GameplayServerControlSettings serverControlSettings, BeatmapDifficultyMask difficultyMask, GameplayModifiersMask modifiersMask, string songPackMasks)
public Task<IServerInstance?> GetAvailablePublicServer(InvitePolicy invitePolicy, GameplayServerMode serverMode, SongSelectionMode songMode, GameplayServerControlSettings serverControlSettings, BeatmapDifficultyMask difficultyMask, GameplayModifiersMask modifiersMask, string songPackMasks, VersionRange versionRange)
{
IServerInstance? serverInstance = null;
if (_instanceRegistry.TryGetAvailablePublicServer(invitePolicy, serverMode, songMode, serverControlSettings, difficultyMask, modifiersMask, songPackMasks, out var instance))
if (_instanceRegistry.TryGetAvailablePublicServer(invitePolicy, serverMode, songMode, serverControlSettings, difficultyMask, modifiersMask, songPackMasks, versionRange, out var instance))
{
serverInstance = new ServerInstance(instance, IPEndPoint.Parse($"{_instancingConfiguration.HostEndpoint}:{instance._configuration.Port}"));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@

<ItemGroup>
<PackageReference Include="Autobus.Abstractions" Version="0.1.5" />
<PackageReference Include="BeatTogether.Core" Version="1.2.0-dev.3" />
<PackageReference Include="BeatTogether.Core" Version="1.2.0" />
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="BeatTogether.Core" Version="1.2.0-dev.3" />
<PackageReference Include="BeatTogether.Core" Version="1.2.0" />
<PackageReference Include="BeatTogether.Core.Security" Version="1.2.0" />
<PackageReference Include="BeatTogether.Extensions.Serilog" Version="2.1.0" />
<PackageReference Include="System.Collections" Version="4.3.0" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="BeatTogether.Core" Version="1.2.0-dev.3" />
<PackageReference Include="BeatTogether.Core" Version="1.2.0" />
<PackageReference Include="BeatTogether.Core.Messaging" Version="1.10.0" />
<PackageReference Include="BeatTogether.Extensions.BinaryRecords" Version="1.1.0" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="7.0.0" />
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
Expand Down

0 comments on commit 276bce2

Please sign in to comment.