Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
1c5db80272 | |||
375c99e313 | |||
4ded313998 |
@ -39,22 +39,17 @@
|
||||
<ItemGroup>
|
||||
<PackageReference Include="DalamudPackager" Version="2.1.12"/>
|
||||
<PackageReference Include="Dalamud.Extensions.MicrosoftLogging" Version="2.0.0"/>
|
||||
<PackageReference Include="Google.Protobuf" Version="3.25.0" />
|
||||
<PackageReference Include="Grpc.Net.Client" Version="2.59.0"/>
|
||||
<PackageReference Include="GitInfo" Version="2.3.0">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Grpc.Tools" Version="2.59.0">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.13" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.13">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.Extensions.Logging" Version="7.0.0"/>
|
||||
<PackageReference Include="System.Security.Cryptography.ProtectedData" Version="7.0.1"/>
|
||||
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.0" />
|
||||
<PackageReference Include="System.Net.Http.Json" Version="8.0.0" />
|
||||
<PackageReference Include="System.Security.Cryptography.ProtectedData" Version="8.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
@ -63,12 +58,6 @@
|
||||
<ProjectReference Include="..\vendor\LLib\LLib.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Protobuf Include="..\Pal.Common\Protos\account.proto" Link="Protos\account.proto" GrpcServices="Client" Access="Internal"/>
|
||||
<Protobuf Include="..\Pal.Common\Protos\palace.proto" Link="Protos\palace.proto" GrpcServices="Client" Access="Internal"/>
|
||||
<Protobuf Include="..\Pal.Common\Protos\export.proto" Link="Protos\export.proto" GrpcServices="Client" Access="Internal"/>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<!--You may need to adjust these paths yourself. These point to a Dalamud assembly in AppData.-->
|
||||
<Reference Include="Dalamud">
|
||||
|
@ -23,28 +23,6 @@
|
||||
"resolved": "2.3.0",
|
||||
"contentHash": "LdnsKNdwQvdDvpPYQuoGjXML75dY7NybKRe+qlkPPQaTY4dE5Fy8VCrD8YBhXO0fH/5xnmvKeSq4yztzg5KY0Q=="
|
||||
},
|
||||
"Google.Protobuf": {
|
||||
"type": "Direct",
|
||||
"requested": "[3.25.0, )",
|
||||
"resolved": "3.25.0",
|
||||
"contentHash": "pIEkH1IqZV1iK8J5MYdG1kOyY0EoQLB6yEKvBq12RYNtvGXwCvnQg5zQsFmcqAEPtIZvSqPozIbUZaEd5a2gCg=="
|
||||
},
|
||||
"Grpc.Net.Client": {
|
||||
"type": "Direct",
|
||||
"requested": "[2.59.0, )",
|
||||
"resolved": "2.59.0",
|
||||
"contentHash": "I2CP5aLTek9mz7OwmM8T94pzvuV2Jib91KqzHh+vohazx/rL0ks1GCsUrwf+7866UsSsOznaWRKqFxWPEYstpg==",
|
||||
"dependencies": {
|
||||
"Grpc.Net.Common": "2.59.0",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "6.0.0"
|
||||
}
|
||||
},
|
||||
"Grpc.Tools": {
|
||||
"type": "Direct",
|
||||
"requested": "[2.59.0, )",
|
||||
"resolved": "2.59.0",
|
||||
"contentHash": "LzL71SCmx62zh6YMBOAEYxzK7LlhHYsBADnawyn8u3n/HL6qntZtGN2ep69T734zBQKWPBQVbVdiIaqaqOfhXg=="
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Sqlite": {
|
||||
"type": "Direct",
|
||||
"requested": "[7.0.13, )",
|
||||
@ -66,40 +44,40 @@
|
||||
},
|
||||
"Microsoft.Extensions.Logging": {
|
||||
"type": "Direct",
|
||||
"requested": "[7.0.0, )",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "Nw2muoNrOG5U5qa2ZekXwudUn2BJcD41e65zwmDHb1fQegTX66UokLWZkJRpqSSHXDOWZ5V0iqhbxOEky91atA==",
|
||||
"requested": "[8.0.0, )",
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "tvRkov9tAJ3xP51LCv3FJ2zINmv1P8Hi8lhhtcKGqM+ImiTCC84uOPEI4z8Cdq2C3o9e+Aa0Gw0rmrsJD77W+w==",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection": "7.0.0",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "7.0.0",
|
||||
"Microsoft.Extensions.Options": "7.0.0"
|
||||
"Microsoft.Extensions.DependencyInjection": "8.0.0",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "8.0.0",
|
||||
"Microsoft.Extensions.Options": "8.0.0"
|
||||
}
|
||||
},
|
||||
"System.Net.Http.Json": {
|
||||
"type": "Direct",
|
||||
"requested": "[8.0.0, )",
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "48Bxrd6zcGeQzS4GMEDVjuqCcAw/9wcEWnIu48FQJ5IzfKPiMR1nGtz9LrvGzU4+3TLbx/9FDlGmCUeLin1Eqg==",
|
||||
"dependencies": {
|
||||
"System.Text.Json": "8.0.0"
|
||||
}
|
||||
},
|
||||
"System.Security.Cryptography.ProtectedData": {
|
||||
"type": "Direct",
|
||||
"requested": "[7.0.1, )",
|
||||
"resolved": "7.0.1",
|
||||
"contentHash": "3evI3sBfKqwYSwuBcYgShbmEgtXcg8N5Qu+jExLdkBXPty2yGDXq5m1/4sx9Exb8dqdeMPUs/d9DQ0wy/9Adwg=="
|
||||
},
|
||||
"Grpc.Core.Api": {
|
||||
"type": "Transitive",
|
||||
"resolved": "2.59.0",
|
||||
"contentHash": "n0QpwXqri/Uu7pXWbE6PWVANEhKggC6QRX7qsSR4vyzZRDN2jBPoUNvrJP7RBw7g8Dgg8e2bWYuGKq4ph6VXeA=="
|
||||
},
|
||||
"Grpc.Net.Common": {
|
||||
"type": "Transitive",
|
||||
"resolved": "2.59.0",
|
||||
"contentHash": "9j1wKAeCzjnx/j8CC8chXRoLCuzJ9VhhlhwMkbW37mS1Ox4vv0i2pcefpDY5INIeE1BmPNIuPtqFLOUktkiKrQ==",
|
||||
"dependencies": {
|
||||
"Grpc.Core.Api": "2.59.0"
|
||||
}
|
||||
"requested": "[8.0.0, )",
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "+TUFINV2q2ifyXauQXRwy4CiBhqvDEDZeVJU7qfxya4aRYOKzVBpN+4acx25VcPB9ywUN6C0n8drWl110PhZEg=="
|
||||
},
|
||||
"Humanizer.Core": {
|
||||
"type": "Transitive",
|
||||
"resolved": "2.14.1",
|
||||
"contentHash": "lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw=="
|
||||
},
|
||||
"MessagePack.Annotations": {
|
||||
"type": "Transitive",
|
||||
"resolved": "2.5.140",
|
||||
"contentHash": "JE3vwluOrsJ4t3hnfXzIxJUh6lhx6M/KR8Sark/HOUw1DJ5UKu5JsAnnuaQngg6poFkRx1lzHSLTkxHNJO7+uQ=="
|
||||
},
|
||||
"Microsoft.Data.Sqlite.Core": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.13",
|
||||
@ -190,16 +168,16 @@
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "elNeOmkeX3eDVG6pYVeV82p29hr+UKDaBhrZyWvWLw/EVZSYEkZlQdkp0V39k/Xehs2Qa0mvoCvkVj3eQxNQ1Q==",
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "V8S3bsm50ig6JSyrbcJJ8bW2b9QLGouz+G1miK3UTaOWmMtFwNNNzUf4AleyDWUmTrWMLNnFSLEQtxmxgNQnNQ==",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0"
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "h3j/QfmFN4S0w4C2A6X7arXij/M/OVw3uQHSOFxnND4DyAzO1F9eMX7Eti7lU/OkSthEE0WzRsfT/Dmx86jzCw=="
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "cjWrLkJXK0rs4zofsK4bSdg+jhDLTaxrkXu4gS6Y7MAlCvRyNNgwY/lJi5RDlQOnSZweHqoyvgvbdvQsRIW+hg=="
|
||||
},
|
||||
"Microsoft.Extensions.DependencyModel": {
|
||||
"type": "Transitive",
|
||||
@ -212,22 +190,25 @@
|
||||
},
|
||||
"Microsoft.Extensions.Logging.Abstractions": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "kmn78+LPVMOWeITUjIlfxUPDsI0R6G0RkeAMBmQxAJ7vBJn4q2dTva7pWi65ceN5vPGjJ9q/Uae2WKgvfktJAw=="
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "arDBqTgFCyS0EvRV7O3MZturChstm50OJ0y9bDJvAcmEPJm0FFpFyjU/JLYyStNGGey081DvnQYlncNX5SJJGA==",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0"
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Options": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "lP1yBnTTU42cKpMozuafbvNtQ7QcBjr/CcK3bYOGEMH55Fjt+iecXjT6chR7vbgCMqy3PG3aNQSZgo/EuY/9qQ==",
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "JOVOfqpnqlVLUzINQ2fox8evY2SKLYJ3BV8QDe/Jyp21u1T7r45x/R/5QdteURMR5r01GxeJSBBUOCOyaNXA3g==",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
|
||||
"Microsoft.Extensions.Primitives": "7.0.0"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
|
||||
"Microsoft.Extensions.Primitives": "8.0.0"
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Primitives": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "um1KU5kxcRp3CNuI8o/GrZtD4AIOXDk+RLsytjZ9QPok3ttLUelLKpilVPuaFT3TFjOhSibUAso0odbOaCDj3Q=="
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g=="
|
||||
},
|
||||
"Mono.TextTemplating": {
|
||||
"type": "Transitive",
|
||||
@ -279,15 +260,15 @@
|
||||
},
|
||||
"System.Text.Encodings.Web": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "OP6umVGxc0Z0MvZQBVigj4/U31Pw72ITihDWP9WiWDm+q5aoe0GaJivsfYGq53o6dxH7DcXWiCTl7+0o2CGdmg=="
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ=="
|
||||
},
|
||||
"System.Text.Json": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "DaGSsVqKsn/ia6RG8frjwmJonfos0srquhw09TlT8KRw5I43E+4gs+/bZj4K0vShJ5H9imCuXupb4RmS+dBy3w==",
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "OdrZO2WjkiEG6ajEFRABTRCi/wuXQPxeV6g8xvUJqdxMvvuCCEk86zPla8UiIQJz3durtUEbNyY/3lIhS0yZvQ==",
|
||||
"dependencies": {
|
||||
"System.Text.Encodings.Web": "7.0.0"
|
||||
"System.Text.Encodings.Web": "8.0.0"
|
||||
}
|
||||
},
|
||||
"ecommons": {
|
||||
@ -297,7 +278,10 @@
|
||||
"type": "Project"
|
||||
},
|
||||
"pal.common": {
|
||||
"type": "Project"
|
||||
"type": "Project",
|
||||
"dependencies": {
|
||||
"MessagePack.Annotations": "[2.5.140, )"
|
||||
}
|
||||
}
|
||||
},
|
||||
"net7.0-windows7.0/win-x64": {
|
||||
@ -308,8 +292,8 @@
|
||||
},
|
||||
"System.Text.Encodings.Web": {
|
||||
"type": "Transitive",
|
||||
"resolved": "7.0.0",
|
||||
"contentHash": "OP6umVGxc0Z0MvZQBVigj4/U31Pw72ITihDWP9WiWDm+q5aoe0GaJivsfYGq53o6dxH7DcXWiCTl7+0o2CGdmg=="
|
||||
"resolved": "8.0.0",
|
||||
"contentHash": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ=="
|
||||
}
|
||||
}
|
||||
}
|
||||
|
13
Pal.Common/Net/Models/Account/CreateAccountError.cs
Normal file
13
Pal.Common/Net/Models/Account/CreateAccountError.cs
Normal file
@ -0,0 +1,13 @@
|
||||
namespace Pal.Common.Net.Models.Account;
|
||||
|
||||
public sealed class CreateAccountError
|
||||
{
|
||||
public ECreateAccountError Error { get; set; }
|
||||
}
|
||||
|
||||
public enum ECreateAccountError
|
||||
{
|
||||
Unknown,
|
||||
UpgradeRequired,
|
||||
InvalidHash
|
||||
}
|
6
Pal.Common/Net/Models/Account/CreateAccountReply.cs
Normal file
6
Pal.Common/Net/Models/Account/CreateAccountReply.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace Pal.Common.Net.Models.Account;
|
||||
|
||||
public sealed class CreateAccountReply
|
||||
{
|
||||
public required Guid AccountId { get; init; }
|
||||
}
|
9
Pal.Common/Net/Models/Account/CreateAccountRequest.cs
Normal file
9
Pal.Common/Net/Models/Account/CreateAccountRequest.cs
Normal file
@ -0,0 +1,9 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Pal.Common.Net.Models.Account;
|
||||
|
||||
public sealed class CreateAccountRequest
|
||||
{
|
||||
[Required]
|
||||
public Version? Version { get; set; }
|
||||
}
|
13
Pal.Common/Net/Models/Account/LoginError.cs
Normal file
13
Pal.Common/Net/Models/Account/LoginError.cs
Normal file
@ -0,0 +1,13 @@
|
||||
namespace Pal.Common.Net.Models.Account;
|
||||
|
||||
public sealed class LoginError
|
||||
{
|
||||
public required ELoginError Error { get; init; }
|
||||
}
|
||||
|
||||
public enum ELoginError
|
||||
{
|
||||
Unknown,
|
||||
InvalidAccountId,
|
||||
UpgradeRequired,
|
||||
}
|
6
Pal.Common/Net/Models/Account/LoginReply.cs
Normal file
6
Pal.Common/Net/Models/Account/LoginReply.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace Pal.Common.Net.Models.Account;
|
||||
|
||||
public sealed class LoginReply
|
||||
{
|
||||
public required string AuthToken { get; init; }
|
||||
}
|
12
Pal.Common/Net/Models/Account/LoginRequest.cs
Normal file
12
Pal.Common/Net/Models/Account/LoginRequest.cs
Normal file
@ -0,0 +1,12 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Pal.Common.Net.Models.Account;
|
||||
|
||||
public sealed class LoginRequest
|
||||
{
|
||||
[Required]
|
||||
public Guid? AccountId { get; set; }
|
||||
|
||||
[Required]
|
||||
public Version? Version { get; set; }
|
||||
}
|
7
Pal.Common/Net/Models/Account/Version.cs
Normal file
7
Pal.Common/Net/Models/Account/Version.cs
Normal file
@ -0,0 +1,7 @@
|
||||
namespace Pal.Common.Net.Models.Account;
|
||||
|
||||
public sealed class Version
|
||||
{
|
||||
public int Major { get; set; }
|
||||
public int Minor { get; set; }
|
||||
}
|
13
Pal.Common/Net/Models/Export/ExportFloor.cs
Normal file
13
Pal.Common/Net/Models/Export/ExportFloor.cs
Normal file
@ -0,0 +1,13 @@
|
||||
using MessagePack;
|
||||
|
||||
namespace Pal.Common.Net.Models.Export;
|
||||
|
||||
[MessagePackObject]
|
||||
public sealed class ExportFloor
|
||||
{
|
||||
[Key(0)]
|
||||
public required ETerritoryType TerritoryType { get; init; }
|
||||
|
||||
[Key(1)]
|
||||
public required List<ExportObject> Objects { get; init; }
|
||||
}
|
20
Pal.Common/Net/Models/Export/ExportObject.cs
Normal file
20
Pal.Common/Net/Models/Export/ExportObject.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using MessagePack;
|
||||
using Pal.Common.Net.Models.Palace;
|
||||
|
||||
namespace Pal.Common.Net.Models.Export;
|
||||
|
||||
[MessagePackObject]
|
||||
public sealed class ExportObject
|
||||
{
|
||||
[Key(0)]
|
||||
public required EObjectType Type { get; init; }
|
||||
|
||||
[Key(1)]
|
||||
public required float X { get; set; }
|
||||
|
||||
[Key(2)]
|
||||
public required float Y { get; set; }
|
||||
|
||||
[Key(3)]
|
||||
public required float Z { get; set; }
|
||||
}
|
6
Pal.Common/Net/Models/Export/ExportRequest.cs
Normal file
6
Pal.Common/Net/Models/Export/ExportRequest.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace Pal.Common.Net.Models.Export;
|
||||
|
||||
public sealed class ExportRequest
|
||||
{
|
||||
public required string ServerUrl { get; init; }
|
||||
}
|
22
Pal.Common/Net/Models/Export/ExportRoot.cs
Normal file
22
Pal.Common/Net/Models/Export/ExportRoot.cs
Normal file
@ -0,0 +1,22 @@
|
||||
using MessagePack;
|
||||
|
||||
namespace Pal.Common.Net.Models.Export;
|
||||
|
||||
[MessagePackObject]
|
||||
public sealed class ExportRoot
|
||||
{
|
||||
[Key(0)]
|
||||
public required Guid ExportId { get; init; }
|
||||
|
||||
[Key(1)]
|
||||
public required int ExportVersion { get; init; }
|
||||
|
||||
[Key(2)]
|
||||
public required string ServerUrl { get; init; }
|
||||
|
||||
[Key(3)]
|
||||
public required DateTime CreatedAt { get; init; }
|
||||
|
||||
[Key(4)]
|
||||
public required List<ExportFloor> Floors { get; init; }
|
||||
}
|
6
Pal.Common/Net/Models/Palace/DownloadFloorsError.cs
Normal file
6
Pal.Common/Net/Models/Palace/DownloadFloorsError.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class DownloadFloorsError
|
||||
{
|
||||
|
||||
}
|
7
Pal.Common/Net/Models/Palace/DownloadFloorsReply.cs
Normal file
7
Pal.Common/Net/Models/Palace/DownloadFloorsReply.cs
Normal file
@ -0,0 +1,7 @@
|
||||
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class DownloadFloorsReply
|
||||
{
|
||||
public required List<PalaceObject> Objects { get; init; }
|
||||
}
|
10
Pal.Common/Net/Models/Palace/EObjectType.cs
Normal file
10
Pal.Common/Net/Models/Palace/EObjectType.cs
Normal file
@ -0,0 +1,10 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public enum EObjectType : int
|
||||
{
|
||||
Unknown = 0,
|
||||
Trap = 1,
|
||||
Hoard = 2,
|
||||
|
||||
Debug_NotSynchronized = 3,
|
||||
}
|
6
Pal.Common/Net/Models/Palace/MarkObjectsSeenError.cs
Normal file
6
Pal.Common/Net/Models/Palace/MarkObjectsSeenError.cs
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class MarkObjectsSeenError
|
||||
{
|
||||
}
|
5
Pal.Common/Net/Models/Palace/MarkObjectsSeenReply.cs
Normal file
5
Pal.Common/Net/Models/Palace/MarkObjectsSeenReply.cs
Normal file
@ -0,0 +1,5 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class MarkObjectsSeenReply
|
||||
{
|
||||
}
|
7
Pal.Common/Net/Models/Palace/MarkObjectsSeenRequest.cs
Normal file
7
Pal.Common/Net/Models/Palace/MarkObjectsSeenRequest.cs
Normal file
@ -0,0 +1,7 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class MarkObjectsSeenRequest
|
||||
{
|
||||
public required ETerritoryType TerritoryType { get; init; }
|
||||
public required List<Guid> NetworkIds { get; init; }
|
||||
}
|
12
Pal.Common/Net/Models/Palace/PalaceObject.cs
Normal file
12
Pal.Common/Net/Models/Palace/PalaceObject.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class PalaceObject
|
||||
{
|
||||
public required EObjectType Type { get; init; }
|
||||
|
||||
public required float X { get; init; }
|
||||
public required float Y { get; init; }
|
||||
public required float Z { get; init; }
|
||||
|
||||
public Guid NetworkId { get; init; }
|
||||
}
|
5
Pal.Common/Net/Models/Palace/StatisticsError.cs
Normal file
5
Pal.Common/Net/Models/Palace/StatisticsError.cs
Normal file
@ -0,0 +1,5 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class StatisticsError
|
||||
{
|
||||
}
|
13
Pal.Common/Net/Models/Palace/StatisticsReply.cs
Normal file
13
Pal.Common/Net/Models/Palace/StatisticsReply.cs
Normal file
@ -0,0 +1,13 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class StatisticsReply
|
||||
{
|
||||
public required List<FloorStatistics> Floors { get; init; }
|
||||
|
||||
public sealed class FloorStatistics
|
||||
{
|
||||
public required ETerritoryType TerritoryType { get; init; }
|
||||
public required uint TrapCount { get; init; }
|
||||
public required uint HoardCount { get; init; }
|
||||
}
|
||||
}
|
5
Pal.Common/Net/Models/Palace/UploadFloorsError.cs
Normal file
5
Pal.Common/Net/Models/Palace/UploadFloorsError.cs
Normal file
@ -0,0 +1,5 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class UploadFloorsError
|
||||
{
|
||||
}
|
6
Pal.Common/Net/Models/Palace/UploadFloorsReply.cs
Normal file
6
Pal.Common/Net/Models/Palace/UploadFloorsReply.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class UploadFloorsReply
|
||||
{
|
||||
public required List<PalaceObject> Objects { get; init; }
|
||||
}
|
7
Pal.Common/Net/Models/Palace/UploadFloorsRequest.cs
Normal file
7
Pal.Common/Net/Models/Palace/UploadFloorsRequest.cs
Normal file
@ -0,0 +1,7 @@
|
||||
namespace Pal.Common.Net.Models.Palace;
|
||||
|
||||
public sealed class UploadFloorsRequest
|
||||
{
|
||||
public required ETerritoryType TerritoryType { get; init; }
|
||||
public required List<PalaceObject> Objects { get; init; }
|
||||
}
|
@ -9,4 +9,8 @@
|
||||
<PathMap Condition="$(SolutionDir) != ''">$(SolutionDir)=X:\</PathMap>
|
||||
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="MessagePack.Annotations" Version="2.5.140" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
@ -1,65 +0,0 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package account;
|
||||
|
||||
service AccountService {
|
||||
// Accounts are a way to distinguish different players.
|
||||
//
|
||||
// Their primary purpose is tracking who has seen a trap/coffer appear to ensure reliability,
|
||||
// as well as allowing some basic protection against garabage data.
|
||||
//
|
||||
// We never store any character data/xiv account data in an account.
|
||||
rpc CreateAccount(CreateAccountRequest) returns (CreateAccountReply);
|
||||
|
||||
rpc Login(LoginRequest) returns (LoginReply);
|
||||
|
||||
// Ensures that the auth token we use is valid in calls.
|
||||
rpc Verify(VerifyRequest) returns (VerifyReply);
|
||||
}
|
||||
|
||||
message CreateAccountRequest {
|
||||
Version version = 1;
|
||||
}
|
||||
|
||||
message CreateAccountReply {
|
||||
bool success = 1;
|
||||
string accountId = 2;
|
||||
CreateAccountError error = 3;
|
||||
}
|
||||
|
||||
enum CreateAccountError {
|
||||
CREATE_ACCOUNT_ERROR_NONE = 0;
|
||||
CREATE_ACCOUNT_ERROR_UNKNOWN = 1;
|
||||
CREATE_ACCOUNT_ERROR_UPGRADE_REQUIRED = 2;
|
||||
CREATE_ACCOUNT_ERROR_INVALID_HASH = 3;
|
||||
}
|
||||
|
||||
message LoginRequest {
|
||||
string accountId = 1;
|
||||
Version version = 2;
|
||||
}
|
||||
|
||||
message LoginReply {
|
||||
bool success = 1;
|
||||
string authToken = 2;
|
||||
reserved 3; // expiresAt
|
||||
LoginError error = 4;
|
||||
}
|
||||
|
||||
enum LoginError {
|
||||
LOGIN_ERROR_NONE = 0;
|
||||
LOGIN_ERROR_UNKNOWN = 1;
|
||||
LOGIN_ERROR_INVALID_ACCOUNT_ID = 2;
|
||||
LOGIN_ERROR_UPGRADE_REQUIRED = 3;
|
||||
}
|
||||
|
||||
message VerifyRequest {
|
||||
}
|
||||
|
||||
message VerifyReply {
|
||||
}
|
||||
|
||||
message Version {
|
||||
int32 major = 1;
|
||||
int32 minor = 2;
|
||||
}
|
@ -1,58 +0,0 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package export;
|
||||
|
||||
import "google/protobuf/timestamp.proto";
|
||||
|
||||
service ExportService {
|
||||
rpc Export(ExportRequest) returns (ExportReply);
|
||||
}
|
||||
|
||||
message ExportRequest {
|
||||
string serverUrl = 1;
|
||||
}
|
||||
|
||||
|
||||
message ExportReply {
|
||||
bool success = 1;
|
||||
ExportRoot data = 2;
|
||||
ExportError error = 3;
|
||||
}
|
||||
|
||||
enum ExportError {
|
||||
EXPORT_ERROR_NONE = 0;
|
||||
EXPORT_ERROR_UNKNOWN = 1;
|
||||
}
|
||||
|
||||
message ExportRoot {
|
||||
string exportId = 1;
|
||||
|
||||
// Only increases if the export format changes, in case of backwards-incompatible changes.
|
||||
int32 exportVersion = 2;
|
||||
|
||||
string serverUrl = 3;
|
||||
|
||||
// Server MAY decide not to send any markers older than this.
|
||||
google.protobuf.Timestamp createdAt = 4;
|
||||
|
||||
repeated ExportFloor floors = 5;
|
||||
}
|
||||
|
||||
message ExportFloor {
|
||||
uint32 territoryType = 1;
|
||||
repeated ExportObject objects = 2;
|
||||
}
|
||||
|
||||
message ExportObject {
|
||||
ExportObjectType type = 1;
|
||||
float x = 2;
|
||||
float y = 3;
|
||||
float z = 4;
|
||||
//string networkId = 5;
|
||||
}
|
||||
|
||||
enum ExportObjectType {
|
||||
EXPORT_OBJECT_TYPE_UNKNOWN = 0;
|
||||
EXPORT_OBJECT_TYPE_TRAP = 1;
|
||||
EXPORT_OBJECT_TYPE_HOARD = 2;
|
||||
}
|
@ -1,72 +0,0 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package palace;
|
||||
|
||||
service PalaceService {
|
||||
rpc DownloadFloors(DownloadFloorsRequest) returns (DownloadFloorsReply);
|
||||
rpc UploadFloors(UploadFloorsRequest) returns (UploadFloorsReply);
|
||||
rpc MarkObjectsSeen(MarkObjectsSeenRequest) returns (MarkObjectsSeenReply);
|
||||
rpc FetchStatistics(StatisticsRequest) returns (StatisticsReply);
|
||||
}
|
||||
|
||||
message DownloadFloorsRequest {
|
||||
uint32 territoryType = 1;
|
||||
}
|
||||
|
||||
message DownloadFloorsReply {
|
||||
bool success = 1;
|
||||
repeated PalaceObject objects = 2;
|
||||
}
|
||||
|
||||
message UploadFloorsRequest {
|
||||
uint32 territoryType = 1;
|
||||
repeated PalaceObject objects = 2;
|
||||
}
|
||||
|
||||
message UploadFloorsReply {
|
||||
bool success = 1;
|
||||
repeated PalaceObject objects = 2;
|
||||
}
|
||||
|
||||
message StatisticsRequest {
|
||||
}
|
||||
|
||||
message StatisticsReply {
|
||||
bool success = 1;
|
||||
repeated FloorStatistics floorStatistics = 2;
|
||||
}
|
||||
|
||||
message FloorStatistics {
|
||||
uint32 territoryType = 1;
|
||||
uint32 trapCount = 2;
|
||||
uint32 hoardCount = 3;
|
||||
}
|
||||
|
||||
message PalaceObject {
|
||||
ObjectType type = 1;
|
||||
float x = 2;
|
||||
float y = 3;
|
||||
float z = 4;
|
||||
|
||||
// Ignored for uploaded markers.
|
||||
string networkId = 5;
|
||||
}
|
||||
|
||||
message MarkObjectsSeenRequest {
|
||||
uint32 territoryType = 1;
|
||||
repeated string networkIds = 2;
|
||||
}
|
||||
|
||||
message MarkObjectsSeenReply {
|
||||
bool success = 1;
|
||||
}
|
||||
|
||||
enum ObjectType {
|
||||
OBJECT_TYPE_UNKNOWN = 0;
|
||||
OBJECT_TYPE_TRAP = 1;
|
||||
OBJECT_TYPE_HOARD = 2;
|
||||
|
||||
// Objects only really used for debugging, may not return any objects at any point in time.
|
||||
// Semi-Permanent: Not saved locally, but saved on the server.
|
||||
reserved 3;
|
||||
}
|
@ -1,6 +1,13 @@
|
||||
{
|
||||
"version": 1,
|
||||
"dependencies": {
|
||||
"net7.0": {}
|
||||
"net7.0": {
|
||||
"MessagePack.Annotations": {
|
||||
"type": "Direct",
|
||||
"requested": "[2.5.140, )",
|
||||
"resolved": "2.5.140",
|
||||
"contentHash": "JE3vwluOrsJ4t3hnfXzIxJUh6lhx6M/KR8Sark/HOUw1DJ5UKu5JsAnnuaQngg6poFkRx1lzHSLTkxHNJO7+uQ=="
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
2
Server
2
Server
@ -1 +1 @@
|
||||
Subproject commit 299069b57b2d47f47ddd4b5069827c09ac17e66e
|
||||
Subproject commit 0bb9e247ff94e9b9ea80fbc39e60f015f43bd53c
|
Loading…
Reference in New Issue
Block a user