pianoverse/pianoverse.proto

148 lines
2.3 KiB
Protocol Buffer
Raw Normal View History

2024-11-25 08:45:17 +00:00
// PV version = 6202927ae53e43bafd8b8fd3be1ffcaaa45426a3
2024-07-16 20:54:30 +00:00
syntax = "proto3";
package pianoverse;
message ClientMessage {
enum EventType {
2024-08-27 17:39:18 +00:00
CHOWN = 0;
PING = 1;
ROOM = 2;
PROFILE = 3;
CHAT = 4;
MOVE = 5;
MUTE = 6;
UNMUTE = 7;
KICK = 8;
PRESS = 9;
RELEASE = 10;
SUSTAIN = 11;
HEARTBEAT = 12;
BAN = 13;
IPBAN = 14;
MOD = 15;
UNMOD = 16;
2024-07-16 20:54:30 +00:00
}
2024-08-27 17:39:18 +00:00
string chown = 1;
EventType event = 2;
Heartbeat ping = 3;
Room room = 4;
2024-07-16 20:54:30 +00:00
message Room {
string room = 1;
bool private = 2;
}
2024-08-27 17:39:18 +00:00
Profile profile = 5;
string chat = 6;
Move move = 7;
string mute = 8;
string unmute = 9;
string kick = 10;
Press press = 11;
Release release = 12;
bool sustain = 13;
Heartbeat heartbeat = 14;
Ban ban = 15;
string ipban = 16;
string mod = 17;
string unmod = 18;
2024-07-16 20:54:30 +00:00
message Heartbeat {}
message Ban {
string id = 1;
2024-07-18 07:20:23 +00:00
uint32 minutes = 2;
2024-07-16 20:54:30 +00:00
}
}
enum Role {
USER = 0;
MODERATOR = 1;
DEVELOPER = 2;
}
2024-07-16 20:54:30 +00:00
message ServerMessage {
enum EventType {
2024-08-27 17:39:18 +00:00
CLEAR = 0;
PONG = 1;
CHAT = 2;
ROOMS = 3;
WELCOME = 4;
MOVE = 5;
PRESS = 6;
RELEASE = 7;
SUSTAIN = 8;
PROFILE = 9;
JOIN = 10;
LEAVE = 11;
RATELIMIT = 12;
MESSAGE = 13;
CHOWN = 14;
2024-07-16 20:54:30 +00:00
}
2024-08-27 17:39:18 +00:00
Profile clear = 1;
EventType event = 2;
Profile pong = 3;
Chat chat = 4;
2024-07-16 20:54:30 +00:00
message Chat {
string id = 1;
string content = 2;
string name = 3;
string color = 4;
}
2024-08-27 17:39:18 +00:00
repeated Room rooms = 5;
2024-07-16 20:54:30 +00:00
message Room {
string room = 1;
uint32 count = 2;
}
2024-08-27 17:39:18 +00:00
Welcome welcome = 6;
2024-07-16 20:54:30 +00:00
message Welcome {
string id = 1;
string name = 2;
string color = 3;
string room = 4;
string owner = 5;
repeated Chat chat = 6;
2024-07-18 05:15:51 +00:00
Role role = 7;
2024-07-16 20:54:30 +00:00
}
2024-08-27 17:39:18 +00:00
Move move = 7;
Press press = 8;
Release release = 9;
2024-07-16 20:54:30 +00:00
2024-08-27 17:39:18 +00:00
Sustain sustain = 10;
2024-07-16 20:54:30 +00:00
message Sustain {
string id = 1;
bool enabled = 2;
}
2024-08-27 17:39:18 +00:00
Profile profile = 11;
Profile join = 12;
string leave = 13;
uint32 ratelimit = 14;
string message = 15;
string chown = 16;
2024-07-16 20:54:30 +00:00
}
message Profile {
string id = 1;
string name = 2;
string color = 3;
Role role = 4;
2024-07-16 20:54:30 +00:00
bool muted = 5;
float x = 6;
float y = 7;
}
message Move {
string id = 1;
float x = 2;
float y = 3;
}
message Press {
2024-07-17 12:36:38 +00:00
string id = 1;
2024-07-16 20:54:30 +00:00
uint32 key = 2;
uint32 vel = 3;
}
message Release {
string id = 1;
uint32 key = 2;
}