✨ Done with social credits
This commit is contained in:
83
DysonNetwork.Shared/Proto/leveling.proto
Normal file
83
DysonNetwork.Shared/Proto/leveling.proto
Normal file
@@ -0,0 +1,83 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package proto;
|
||||
|
||||
option csharp_namespace = "DysonNetwork.Shared.Proto";
|
||||
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/empty.proto";
|
||||
import "google/protobuf/field_mask.proto";
|
||||
|
||||
// ====================================
|
||||
// Message Definitions
|
||||
// ====================================
|
||||
|
||||
// SocialCreditRecord represents a record of social credit changes for an account
|
||||
message SocialCreditRecord {
|
||||
string id = 1; // UUID string
|
||||
string reason_type = 2;
|
||||
string reason = 3;
|
||||
double delta = 4;
|
||||
string account_id = 5; // UUID string
|
||||
google.protobuf.Timestamp created_at = 6;
|
||||
google.protobuf.Timestamp updated_at = 7;
|
||||
}
|
||||
|
||||
// ExperienceRecord represents a record of experience points gained by an account
|
||||
message ExperienceRecord {
|
||||
string id = 1; // UUID string
|
||||
string reason_type = 2;
|
||||
string reason = 3;
|
||||
int64 delta = 4;
|
||||
double bonus_multiplier = 5;
|
||||
string account_id = 6; // UUID string
|
||||
google.protobuf.Timestamp created_at = 7;
|
||||
google.protobuf.Timestamp updated_at = 8;
|
||||
}
|
||||
|
||||
// ====================================
|
||||
// Request/Response Messages
|
||||
// ====================================
|
||||
|
||||
// Social Credit Requests/Responses
|
||||
message AddSocialCreditRecordRequest {
|
||||
string reason_type = 1;
|
||||
string reason = 2;
|
||||
double delta = 3;
|
||||
string account_id = 4; // UUID string
|
||||
}
|
||||
|
||||
message GetSocialCreditRequest {
|
||||
string account_id = 1; // UUID string
|
||||
}
|
||||
|
||||
message SocialCreditResponse {
|
||||
double amount = 1;
|
||||
}
|
||||
|
||||
// Experience Requests/Responses
|
||||
message AddExperienceRecordRequest {
|
||||
string reason_type = 1;
|
||||
string reason = 2;
|
||||
int64 delta = 3;
|
||||
string account_id = 4; // UUID string
|
||||
}
|
||||
|
||||
// ====================================
|
||||
// Service Definitions
|
||||
// ====================================
|
||||
|
||||
// SocialCreditService provides operations for managing social credit scores
|
||||
service SocialCreditService {
|
||||
// Adds a new social credit record for an account
|
||||
rpc AddRecord(AddSocialCreditRecordRequest) returns (SocialCreditRecord);
|
||||
|
||||
// Gets the current social credit score for an account
|
||||
rpc GetSocialCredit(GetSocialCreditRequest) returns (SocialCreditResponse);
|
||||
}
|
||||
|
||||
// ExperienceService provides operations for managing experience points
|
||||
service ExperienceService {
|
||||
// Adds a new experience record for an account
|
||||
rpc AddRecord(AddExperienceRecordRequest) returns (ExperienceRecord);
|
||||
}
|
Reference in New Issue
Block a user