26 Commits

Author SHA1 Message Date
Nexus
c844d8f17e Update README.md 2022-05-08 23:17:18 +01:00
Nexus
91cb7d5a54 Update README.md 2022-05-08 23:17:07 +01:00
Nexus
f1dfd5ba42 Update README.md 2022-05-08 23:16:52 +01:00
Nexus
938300045c Create README.md 2022-05-08 23:16:19 +01:00
recroom2016
dbfb132d6c Create contextdrops.json 2022-05-07 21:54:42 -04:00
recroom2016
6fe87123b5 Update avatar.txt 2022-05-07 21:16:32 -04:00
recroom2016tutorial
9a86d1d88e Merge branch 'master' of https://github.com/recroom2016/OpenRec 2022-05-07 17:57:58 -04:00
recroom2016tutorial
f39c7cefa3 openrec 0.7.0 2022-05-07 17:57:37 -04:00
recroom2016
1f94738349 Update motd.txt 2022-05-02 21:07:23 -04:00
recroom2016
02e55a3428 Update builds.txt 2022-05-02 21:07:02 -04:00
recroom2016
0137b18e98 Update hotrooms.txt 2022-05-02 21:06:30 -04:00
recroom2016
2a6788cf9d Update builds.txt 2022-05-01 21:01:03 -04:00
recroom2016
d615e009dd Create builds.txt 2022-05-01 20:35:58 -04:00
recroom2016
33540f1a25 Update banned.txt 2022-04-30 17:26:59 -04:00
recroom2016
aae35a6c28 Update banned.txt 2022-04-18 23:16:47 -04:00
recroom2016
e08fb285f8 Update version.txt 2022-04-18 10:12:02 -04:00
recroom2016
1ae28dc203 Update version.txt 2022-04-17 23:05:22 -04:00
recroom2016
e00ac817a1 Update banned.txt 2022-04-10 10:43:38 -04:00
recroom2016
c68360e030 Update rcslideshow.txt 2022-04-06 21:26:35 -04:00
recroom2016
1cc3ad4a0b Rename rcslideshow to rcslideshow.txt 2022-04-05 18:18:15 -04:00
recroom2016
230058717c Create rcslideshow 2022-04-05 18:16:01 -04:00
recroom2016
15e21f6610 Update version.txt 2022-04-03 22:43:32 -04:00
recroom2016
d8a619efcd Update changelog.txt 2022-04-03 22:43:09 -04:00
recroom2016tutorial
02dfb1e409 0.6.1 2022-04-03 22:28:45 -04:00
recroom2016tutorial
001423935c 0.6.0 2022-03-29 22:34:41 -04:00
recroom2016tutorial
c000b151bf new build 2022-03-28 23:12:13 -04:00
33 changed files with 1427 additions and 990 deletions

63
.gitattributes vendored
View File

@@ -1,63 +0,0 @@
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto
###############################################################################
# Set default behavior for command prompt diff.
#
# This is need for earlier builds of msysgit that does not have it on by
# default for csharp files.
# Note: This is only used by command line
###############################################################################
#*.cs diff=csharp
###############################################################################
# Set the merge driver for project and solution files
#
# Merging from the command prompt will add diff markers to the files if there
# are conflicts (Merging from VS is not affected by the settings below, in VS
# the diff markers are never inserted). Diff markers may cause the following
# file extensions to fail to load in VS. An alternative would be to treat
# these files as binary and thus will always conflict and require user
# intervention with every merge. To do so, just uncomment the entries below
###############################################################################
#*.sln merge=binary
#*.csproj merge=binary
#*.vbproj merge=binary
#*.vcxproj merge=binary
#*.vcproj merge=binary
#*.dbproj merge=binary
#*.fsproj merge=binary
#*.lsproj merge=binary
#*.wixproj merge=binary
#*.modelproj merge=binary
#*.sqlproj merge=binary
#*.wwaproj merge=binary
###############################################################################
# behavior for image files
#
# image files are treated as binary by default.
###############################################################################
#*.jpg binary
#*.png binary
#*.gif binary
###############################################################################
# diff behavior for common document formats
#
# Convert binary document formats to text before diffing them. This feature
# is only available from the command line. Turn it on by uncommenting the
# entries below.
###############################################################################
#*.doc diff=astextplain
#*.DOC diff=astextplain
#*.docx diff=astextplain
#*.DOCX diff=astextplain
#*.dot diff=astextplain
#*.DOT diff=astextplain
#*.pdf diff=astextplain
#*.PDF diff=astextplain
#*.rtf diff=astextplain
#*.RTF diff=astextplain

View File

@@ -18,7 +18,7 @@ namespace server
{
try
{
Console.WriteLine("APIServer.cs has started.");
Console.WriteLine("[APIServer.cs] has started.");
new Thread(new ThreadStart(this.StartListen)).Start();
}
catch (Exception ex)
@@ -30,19 +30,21 @@ namespace server
{
try
{
//2 different servers for 2 different stages of the game, the apis change so much idk anymore
//2 different servers for 3 different stages of the game, the apis change so much idk anymore
this.listener.Prefixes.Add("http://localhost:" + start.Program.version + "/");
if (start.Program.version == "2016")
{
for (; ; )
{
this.listener.Start();
Console.WriteLine("APIServer.cs is listening.");
Console.WriteLine("[APIServer.cs] is listening.");
HttpListenerContext context = this.listener.GetContext();
HttpListenerRequest request = context.Request;
HttpListenerResponse response = context.Response;
string rawUrl = request.RawUrl;
string Url = "";
bool image = false;
byte[] imagebyte = null;
if (rawUrl.StartsWith("/api/"))
{
Url = rawUrl.Remove(0, 5);
@@ -61,7 +63,10 @@ namespace server
{
Console.WriteLine("API Requested (rawUrl): " + rawUrl);
}
Console.WriteLine("API Data: " + text);
if (!(Url == "images/v2/profile"))
{
Console.WriteLine("API Data: " + text);
}
if (Url.StartsWith("versioncheck"))
{
s = VersionCheckResponse;
@@ -71,9 +76,9 @@ namespace server
s = Config2.GetDebugConfig();
}
if (Url == "notification/v2")
{
{
s = "[]";
}
}
if (Url == "PlayerReporting/v1/moderationBlockDetails")
{
s = ModerationBlockDetails;
@@ -86,9 +91,14 @@ namespace server
{
s = Amplitude.amplitude();
}
if (Url.StartsWith("players/v1/"))
if (Url == "players/v1/getorcreate")
{
s = getorcreate.GetOrCreate(CachedPlayerID);
s = getorcreate.GetOrCreate((ulong.Parse(text.Remove(0, 32).Remove(7, text.Length - 39))));
}
if (Url.StartsWith("images/v1/profile/"))
{
image = true;
imagebyte = File.ReadAllBytes("SaveData\\profileimage.png");
}
if (Url == "avatar/v2")
{
@@ -124,10 +134,6 @@ namespace server
{
s = File.ReadAllText("SaveData\\avataritems.txt");
}
if (Url == "equipment/v1/getUnlocked")
{
s = File.ReadAllText("SaveData\\equipment.txt");
}
if (Url == "avatar/v2/gifts")
{
s = BracketResponse;
@@ -144,24 +150,26 @@ namespace server
{
s = Activities.Charades.words();
}
if (Url == "gamesessions/v2/joinrandom")
{
s = gamesesh.GameSessions.JoinRandom(text);
}
if (Url == "gamesessions/v2/create")
{
s = gamesesh.GameSessions.Create(text);
}
if (rawUrl == "//api/sanitize/v1/isPure")
{
s = JsonConvert.SerializeObject(Sanitize.GetSanitize());
}
if (Url == "images/v2/profile/") //disabled with a / at the end
{
s = BracketResponse;
int NewLength = text.Length - 50;
File.WriteAllBytes("SaveData\\profileimage.png", Encoding.UTF8.GetBytes(text.Remove(0, 50).Remove(NewLength - 48, 48)));
}
Console.WriteLine("API Response: " + s);
byte[] bytes = Encoding.UTF8.GetBytes(s);
byte[] bytes = null;
if (image == true)
{
bytes = imagebyte;
}
else
{
bytes = Encoding.UTF8.GetBytes(s);
}
response.ContentLength64 = (long)bytes.Length;
Stream outputStream = response.OutputStream;
outputStream.Write(bytes, 0, bytes.Length);
Thread.Sleep(200);
Thread.Sleep(20);
outputStream.Close();
this.listener.Stop();
}
@@ -171,7 +179,7 @@ namespace server
for (; ; )
{
this.listener.Start();
Console.WriteLine("APIServer.cs is listening.");
Console.WriteLine("[APIServer.cs] is listening.");
HttpListenerContext context = this.listener.GetContext();
HttpListenerRequest request = context.Request;
HttpListenerResponse response = context.Response;
@@ -238,10 +246,18 @@ namespace server
{
s = getorcreate.GetOrCreate(CachedPlayerID);
}
if (Url == "players/v1/list")
{
s = BracketResponse;
}
if (Url == "avatar/v2")
{
s = File.ReadAllText("SaveData\\avatar.txt");
}
if (Url == "avatar/v2/saved")
{
s = BracketResponse;
}
if (Url == "avatar/v2/set")
{
//for later 2018 builds compatibility
@@ -302,14 +318,20 @@ namespace server
}
if (rawUrl == "//api/sanitize/v1/isPure")
{
s = JsonConvert.SerializeObject(Sanitize.GetSanitize());
s = "{\"IsPure\":true}";
}
if (Url == "images/v3/profile")
{
s = BracketResponse;
int NewLength = text.Length - 50;
File.WriteAllBytes("SaveData\\profileimage.png", Encoding.UTF8.GetBytes(text.Remove(0, 50).Remove(NewLength - 48, 48)));
}
Console.WriteLine("API Response: " + s);
byte[] bytes = Encoding.UTF8.GetBytes(s);
response.ContentLength64 = (long)bytes.Length;
Stream outputStream = response.OutputStream;
outputStream.Write(bytes, 0, bytes.Length);
Thread.Sleep(200);
Thread.Sleep(20);
outputStream.Close();
this.listener.Stop();
}
@@ -319,7 +341,7 @@ namespace server
for (; ; )
{
this.listener.Start();
Console.WriteLine("APIServer.cs is listening.");
Console.WriteLine("[APIServer.cs] is listening.");
HttpListenerContext context = this.listener.GetContext();
HttpListenerRequest request = context.Request;
HttpListenerResponse response = context.Response;
@@ -433,7 +455,7 @@ namespace server
{
if (CachedVersionMonth == 09)
{
s = File.ReadAllText("SaveData\\storefronts2.txt");
s = BracketResponse;
}
else
{
@@ -448,6 +470,10 @@ namespace server
{
s = File.ReadAllText("SaveData\\avatar.txt");
}
if (Url == "avatar/v2/saved")
{
s = BracketResponse;
}
if (Url == "avatar/v2/set")
{
//for later 2018 builds compatibility
@@ -476,7 +502,14 @@ namespace server
}
if (Url == "avatar/v3/items")
{
s = File.ReadAllText("SaveData\\avataritems.txt");
if (CachedVersionMonth == 09)
{
s = File.ReadAllText("SaveData\\avataritems2.txt");
}
else
{
s = File.ReadAllText("SaveData\\avataritems2.txt");
}
}
if (Url == "equipment/v1/getUnlocked")
{
@@ -506,9 +539,9 @@ namespace server
s = BlankResponse;
}
if (Url == "storefronts/v1/allGiftDrops/2")
{
{
s = BracketResponse;
}
}
if (Url == "objectives/v1/myprogress")
{
s = JsonConvert.SerializeObject(new Objective2018());
@@ -583,27 +616,35 @@ namespace server
}
if (Url == "rooms/v1/clone")
{
s = BracketResponse; //JsonConvert.SerializeObject(c000099.m00000a(text));
s = JsonConvert.SerializeObject(c000099.m00000a(text));
}
if (Url.StartsWith("rooms/v2/saveData"))
{
string text26 = "5GDNL91ZY43PXN2YJENTBL";
string path = c000004.m000007() + c000041.f000043.Room.Name;
File.WriteAllBytes(string.Concat(new string[]
{
c000004.m000007(),
c000041.f000043.Room.Name,
"\\room\\",
text26,
".room"
}), m00005d(list.ToArray(), "data.dat"));
c000041.f000043.Scenes[0].DataBlobName = text26 + ".room";
c000041.f000043.Scenes[0].DataModifiedAt = DateTime.Now;
File.WriteAllText(c000004.m000007() + c000041.f000043.Room.Name + "\\RoomDetails.json", JsonConvert.SerializeObject(c000041.f000043));
s = JsonConvert.SerializeObject(c00005d.m000035());
//string text26 = "5GDNL91ZY43PXN2YJENTBL";
//string path = c000004.m000007() + c000041.f000043.Room.Name;
//File.WriteAllBytes(string.Concat(new string[]
//{
//c000004.m000007(),
//c000041.f000043.Room.Name,
//"\\room\\",
//text26,
//".room"
//}), m00005d(list.ToArray(), "data.dat"));
//c000041.f000043.Scenes[0].DataBlobName = text26 + ".room";
//c000041.f000043.Scenes[0].DataModifiedAt = DateTime.Now;
//File.WriteAllText(c000004.m000007() + c000041.f000043.Room.Name + "\\RoomDetails.json", JsonConvert.SerializeObject(c000041.f000043));
//s = JsonConvert.SerializeObject(c00005d.m000035());
}
if (Url == "presence/v3/heartbeat")
{
if (new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/banned.txt").Contains(File.ReadAllText("SaveData\\Profile\\userid.txt")))
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("You are banned. Using this version of OpenRec will not work, please download OpenRec 0.4.2 or prior.");
Console.ForegroundColor = ConsoleColor.Green;
start.Program.bannedflag = true;
Late2018WebSock.instance.Broadcast(ws.Notification.Reponse.createBannedResponse());
}
s = JsonConvert.SerializeObject(Notification2018.Reponse.createResponse(4, c000020.m000027()));
}
if (Url == "rooms/v1/featuredRoomGroup")
@@ -614,18 +655,36 @@ namespace server
{
s = new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/hotrooms.txt");
}
if (Url.StartsWith("rooms/v4/details/29"))
if (Url.StartsWith("rooms/v2/instancedetails"))
{
s = BracketResponse;
}
if (Url.StartsWith("rooms/v2/search?value="))
{
CustomRooms.RoomGet(Url.Remove(0, 22));
}
if (Url == "rooms/v4/details/29")
{
s = File.ReadAllText("SaveData\\Rooms\\Downloaded\\RoomDetails.json");
Thread.Sleep(100);
}
else if (Url.StartsWith("rooms/v4/details"))
{
s = JsonConvert.SerializeObject(c00005d.m000023(Convert.ToInt32(Url.Remove(0, 17))));
}
if (Url == "images/v1/slideshow")
{
s = new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/rcslideshow.txt");
}
Console.WriteLine("API Response: " + s);
bytes = Encoding.UTF8.GetBytes(s);
response.ContentLength64 = (long)bytes.Length;
Stream outputStream = response.OutputStream;
outputStream.Write(bytes, 0, bytes.Length);
Thread.Sleep(100);
Thread.Sleep(20);
outputStream.Close();
this.listener.Stop();
}
}
}
@@ -633,9 +692,11 @@ namespace server
{
Console.WriteLine(ex4);
File.WriteAllText("crashdump.txt", Convert.ToString(ex4));
this.listener.Close();
new APIServer();
}
}
public static ulong CachedPlayerID = 1;
public static ulong CachedPlayerID = ulong.Parse(File.ReadAllText("SaveData\\Profile\\userid.txt"));
public static ulong CachedPlatformID = 10000;
public static int CachedVersionMonth = 01;
@@ -643,161 +704,15 @@ namespace server
public static string BracketResponse = "[]";
public static string PlayerEventsResponse = "{\"Created\":[],\"Responses\":[]}";
public static string VersionCheckResponse2 = "{\"VersionStatus\":0}";
public static string VersionCheckResponse = "{\"ValidVersion\":true}";
public static string ModerationBlockDetails = "{\"ReportCategory\":0,\"Duration\":0,\"GameSessionId\":0,\"Message\":\"\"}";
public static string ImagesV2Named = "[{\"FriendlyImageName\":\"DormRoomBucket\",\"ImageName\":\"OpenRec\",\"StartTime\":\"2021-12-27T21:27:38.1880175-08:00\",\"EndTime\":\"2043-12-27T21:27:38.1880399-08:00\"}";
public static string ImagesV2Named = "[{\"FriendlyImageName\":\"DormRoomBucket\",\"ImageName\":\"DormRoomBucket\",\"StartTime\":\"2021-12-27T21:27:38.1880175-08:00\",\"EndTime\":\"2025-12-27T21:27:38.1880399-08:00\"}";
public static string ChallengesV1GetCurrent = "{\"Success\":true,\"Message\":\"OpenRec\"}";
public static string ChecklistV1Current = "[{\"Order\":0,\"Objective\":3000,\"Count\":3,\"CreditAmount\":100},{\"Order\":1,\"Objective\":3001,\"Count\":3,\"CreditAmount\":100},{\"Order\":2,\"Objective\":3002,\"Count\":3,\"CreditAmount\":100}]";
public static string Banned = "{\"ReportCategory\":1,\"Duration\":10000000000000000,\"GameSessionId\":100,\"Message\":\"You have been banned. You are probably a little kid and are now whining at your VR headset. If you aren't a little kid, DM me to appeal.\"}";
private HttpListener listener = new HttpListener();
private static byte[] m00005d(byte[] p0, string p1)
{
BinaryReader binaryReader = new BinaryReader(new MemoryStream(p0));
try
{
while (binaryReader.BaseStream.Position != binaryReader.BaseStream.Length)
{
bool flag = true;
bool flag2 = false;
APIServer.c0000a7 c0000a = new APIServer.c0000a7();
while (flag)
{
List<byte> list = new List<byte>();
bool flag3 = true;
while (flag3)
{
byte b = binaryReader.ReadByte();
if (binaryReader.BaseStream.Position != binaryReader.BaseStream.Length)
{
if (b == 13)
{
binaryReader.ReadByte();
flag3 = false;
}
else
{
list.Add(b);
}
}
else
{
flag3 = false;
}
}
string @string = Encoding.ASCII.GetString(list.ToArray());
Console.WriteLine(@string);
if (@string.StartsWith("Content-Length: "))
{
string s = @string.Remove(0, 16);
c0000a.m000017(int.Parse(s));
}
if (@string.Contains(p1))
{
Console.WriteLine("Has file");
flag2 = true;
}
if (binaryReader.BaseStream.Position != binaryReader.BaseStream.Length)
{
if (binaryReader.ReadByte() == 13)
{
flag = false;
binaryReader.ReadByte();
}
else
{
binaryReader.BaseStream.Position -= 1L;
}
}
else
{
flag = false;
}
}
if (flag2)
{
List<byte> list2 = new List<byte>();
for (; ; )
{
if (binaryReader.ReadByte() == 13)
{
if (binaryReader.ReadByte() == 10)
{
if (binaryReader.ReadByte() == 45)
{
break;
}
binaryReader.BaseStream.Position -= 3L;
}
else
{
binaryReader.BaseStream.Position -= 2L;
}
}
else
{
binaryReader.BaseStream.Position -= 1L;
}
byte item = binaryReader.ReadByte();
list2.Add(item);
}
return list2.ToArray();
}
if (binaryReader.BaseStream.Position != binaryReader.BaseStream.Length)
{
binaryReader.ReadBytes(c0000a.m000016());
}
}
}
finally
{
((IDisposable)binaryReader).Dispose();
}
return null;
}
public sealed class c0000a7
{
public string m000001()
{
return this.f00000a;
}
public void m000034(string p0)
{
this.f00000a = p0;
}
public string m000005()
{
return this.f000002;
}
public void m00003f(string p0)
{
this.f000002 = p0;
}
public int m000016()
{
return this.f000020;
}
public void m000017(int p0)
{
this.f000020 = p0;
}
public byte[] m000061()
{
return this.f000084;
}
public void m000062(byte[] p0)
{
this.f000084 = p0;
}
private string f00000a;
private string f000002;
private int f000020;
private byte[] f000084;
}
}
}

View File

@@ -4,192 +4,192 @@ using Newtonsoft.Json;
namespace api
{
// Token: 0x0200000B RID: 11
// Token: 0x02000021 RID: 33
internal class Activities
{
// Token: 0x0200000C RID: 12
// Token: 0x02000069 RID: 105
public class Charades
{
// Token: 0x0600001D RID: 29 RVA: 0x0000410C File Offset: 0x0000230C
// Token: 0x06000322 RID: 802 RVA: 0x0000C5F4 File Offset: 0x0000A7F4
public static string words()
{
List<Activities.Charades.word> value = new List<Activities.Charades.word>
{
new Activities.Charades.word
{
EN_US = "talking ben",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "lemon",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "grape",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "roblox",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "tree",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "cloud",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "iphone",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "your house",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "spaghetti",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "lean",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "bitcoin",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "nft",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "grass",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "recroom2016",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "joker",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "fortnite",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "woman",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "spiderman",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "vr",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "among us",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "coach",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "coach with a gun",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "funny fish",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "skinwalker",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "christmas tree",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "ur mom",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "stick of ram",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "big mac",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "ninetndo switch",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "crescendo",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "boxing",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "angry birds",
Difficulty = 0
}
};
new Activities.Charades.word
{
EN_US = "talking ben",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "lemon",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "grape",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "roblox",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "tree",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "cloud",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "iphone",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "your house",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "spaghetti",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "lean",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "bitcoin",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "nft",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "grass",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "recroom2016",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "joker",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "fortnite",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "woman",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "spiderman",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "vr",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "among us",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "coach",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "coach with a gun",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "funny fish",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "skinwalker",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "christmas tree",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "ur mom",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "stick of ram",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "big mac",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "ninetndo switch",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "crescendo",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "boxing",
Difficulty = 0
},
new Activities.Charades.word
{
EN_US = "angry birds",
Difficulty = 0
}
};
return JsonConvert.SerializeObject(value);
}
// Token: 0x0200000D RID: 13
// Token: 0x02000073 RID: 115
public class word
{
// Token: 0x17000004 RID: 4
// (get) Token: 0x0600001F RID: 31 RVA: 0x000020DC File Offset: 0x000002DC
// (set) Token: 0x06000020 RID: 32 RVA: 0x000020E4 File Offset: 0x000002E4
// Token: 0x170001AA RID: 426
// (get) Token: 0x060003F3 RID: 1011 RVA: 0x0000D196 File Offset: 0x0000B396
// (set) Token: 0x060003F4 RID: 1012 RVA: 0x0000D19E File Offset: 0x0000B39E
public string EN_US { get; set; }
// Token: 0x17000005 RID: 5
// (get) Token: 0x06000021 RID: 33 RVA: 0x000020ED File Offset: 0x000002ED
// (set) Token: 0x06000022 RID: 34 RVA: 0x000020F5 File Offset: 0x000002F5
// Token: 0x170001AB RID: 427
// (get) Token: 0x060003F5 RID: 1013 RVA: 0x0000D1A7 File Offset: 0x0000B3A7
// (set) Token: 0x060003F6 RID: 1014 RVA: 0x0000D1AF File Offset: 0x0000B3AF
public int Difficulty { get; set; }
}
}

View File

@@ -51,7 +51,7 @@ namespace api
return JsonConvert.SerializeObject(new Config2
{
MessageOfTheDay = "Default MOTD",
MessageOfTheDay = new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/motd.txt"),
CdnBaseUri = "http://localhost:20182/",
LevelProgressionMaps = new List<LevelProgressionEntry>
{

177
Consumable.cs Normal file
View File

@@ -0,0 +1,177 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace api
{
class Consumable
{
// Token: 0x040001E4 RID: 484
public static List<Consumable.c00009f> f000026;
// Token: 0x0200009F RID: 159
public class c00009f
{
// Token: 0x1700010B RID: 267
// (get) Token: 0x06000376 RID: 886
// (set) Token: 0x06000377 RID: 887
public long Id
{
get
{
return this.f00002c;
}
set
{
this.f00002c = value;
}
}
// Token: 0x1700010C RID: 268
// (get) Token: 0x06000378 RID: 888
// (set) Token: 0x06000379 RID: 889
public string ConsumableItemDesc
{
get
{
return this.f000002;
}
set
{
this.f000002 = value;
}
}
// Token: 0x1700010D RID: 269
// (get) Token: 0x0600037A RID: 890
// (set) Token: 0x0600037B RID: 891
public DateTime CreatedAt
{
get
{
return this.f00003a;
}
set
{
this.f00003a = value;
}
}
// Token: 0x1700010E RID: 270
// (get) Token: 0x0600037C RID: 892
// (set) Token: 0x0600037D RID: 893
public int Count
{
get
{
return this.f000004;
}
set
{
this.f000004 = value;
}
}
// Token: 0x1700010F RID: 271
// (get) Token: 0x0600037E RID: 894
// (set) Token: 0x0600037F RID: 895
public int InitialCount
{
get
{
return this.f000005;
}
set
{
this.f000005 = value;
}
}
// Token: 0x17000110 RID: 272
// (get) Token: 0x06000380 RID: 896
// (set) Token: 0x06000381 RID: 897
public int UnlockedLevel
{
get
{
return this.f000006;
}
set
{
this.f000006 = value;
}
}
// Token: 0x17000111 RID: 273
// (get) Token: 0x06000382 RID: 898
// (set) Token: 0x06000383 RID: 899
public bool IsActive
{
get
{
return this.f000016;
}
set
{
this.f000016 = value;
}
}
// Token: 0x17000112 RID: 274
// (get) Token: 0x06000384 RID: 900
// (set) Token: 0x06000385 RID: 901
public int? ActiveDurationMinutes
{
get
{
return this.f000081;
}
set
{
this.f000081 = value;
}
}
// Token: 0x040001E6 RID: 486
private long f00002c;
// Token: 0x040001E7 RID: 487
private string f000002;
// Token: 0x040001E8 RID: 488
private DateTime f00003a;
// Token: 0x040001E9 RID: 489
private int f000004;
// Token: 0x040001EA RID: 490
private int f000005;
// Token: 0x040001EB RID: 491
private int f000006;
// Token: 0x040001EC RID: 492
private bool f000016;
// Token: 0x040001ED RID: 493
private int? f000081;
}
}
}

View File

@@ -6,25 +6,30 @@ using Newtonsoft.Json;
using vaultgamesesh;
using System.IO;
using server;
using api;
namespace api
{
class CustomRooms
{
public static void RoomDecode(string roomname, string roomsceneid, string imagename, string datablob)
public static void RoomDecode(string text)
{
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomname.txt", roomname);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\datablob.txt", datablob);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomsceneid.txt", roomsceneid);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\imagename.txt", imagename);
ulong rand = Convert.ToUInt64(new Random().Next(0, 99));
ModernRooms.Root root2 = JsonConvert.DeserializeObject<ModernRooms.Root>(text);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomname.txt", root2.Name);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomid.txt", Convert.ToString(root2.RoomId));
File.WriteAllText("SaveData\\Rooms\\Downloaded\\datablob.txt", root2.SubRooms[0].DataBlob);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomsceneid.txt", root2.SubRooms[0].UnitySceneId);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\imagename.txt", root2.ImageName);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\cheercount.txt", Convert.ToString(root2.Stats.CheerCount));
File.WriteAllText("SaveData\\Rooms\\Downloaded\\favcount.txt", Convert.ToString(root2.Stats.FavoriteCount));
File.WriteAllText("SaveData\\Rooms\\Downloaded\\visitcount.txt", Convert.ToString(root2.Stats.VisitCount));
room = new Room
{
RoomId = rand,
Name = roomname,
RoomId = 29,
Name = root2.Name,
Description = "OpenRec Downloaded Room",
ImageName = imagename,
CreatorPlayerId = APIServer.CachedPlayerID,
ImageName = root2.ImageName,
CreatorPlayerId = Convert.ToUInt64(File.ReadAllText("SaveData\\Profile\\userid.txt")),
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -42,14 +47,14 @@ namespace api
new Scene()
{
RoomSceneId = 1,
RoomId = rand,
RoomSceneLocationId = "a75f7547-79eb-47c6-8986-6767abcb4f92",
RoomId = 29,
RoomSceneLocationId = root2.SubRooms[0].UnitySceneId,
Name = "Home",
IsSandbox = true,
DataBlobName = datablob,
DataBlobName = root2.SubRooms[0].DataBlob,
MaxPlayers = 20,
CanMatchmakeInto = true,
DataModifiedAt = DateTime.Now,
DataModifiedAt = root2.SubRooms[0].DataSavedAt,
ReplicationId = null,
UseLevelBasedMatchmaking = false,
UseAgeBasedMatchmaking = false,
@@ -66,9 +71,9 @@ namespace api
InvitedCoOwners = new List<ulong>(),
Hosts = new List<ulong>(),
InvitedHosts = new List<ulong>(),
CheerCount = 999,
FavoriteCount = 999,
VisitCount = 999,
CheerCount = root2.Stats.CheerCount,
FavoriteCount = root2.Stats.FavoriteCount,
VisitCount = root2.Stats.VisitCount,
Tags = new List<aTag>
{
new aTag()
@@ -82,6 +87,84 @@ namespace api
File.WriteAllText("SaveData\\Rooms\\Downloaded\\RoomDetails.json", JsonConvert.SerializeObject(root));
}
public static void RoomGet(string roomnames)
{
string webdata = new WebClient().DownloadString("https://rooms.rec.net/rooms?name=" + roomnames + "&include=297");
ModernRooms.Root root2 = JsonConvert.DeserializeObject<ModernRooms.Root>(webdata);
room = new Room
{
RoomId = 29,
Name = root2.Name,
Description = "OpenRec Downloaded Room",
ImageName = root2.ImageName,
CreatorPlayerId = Convert.ToUInt64(File.ReadAllText("SaveData\\Profile\\userid.txt")),
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
IsAGRoom = false,
CloningAllowed = false,
SupportsScreens = true,
SupportsWalkVR = true,
SupportsTeleportVR = true,
ReplicationId = null,
ReleaseStatus = 0
};
scene = new List<Scene>
{
new Scene()
{
RoomSceneId = 1,
RoomId = 29,
RoomSceneLocationId = root2.SubRooms[0].UnitySceneId,
Name = "Home",
IsSandbox = true,
DataBlobName = root2.SubRooms[0].DataBlob,
MaxPlayers = 20,
CanMatchmakeInto = true,
DataModifiedAt = root2.SubRooms[0].DataSavedAt,
ReplicationId = null,
UseLevelBasedMatchmaking = false,
UseAgeBasedMatchmaking = false,
UseRecRoyaleMatchmaking = false,
ReleaseStatus = 0,
SupportsJoinInProgress = true
}
};
root = new Root
{
Room = room,
Scenes = scene,
CoOwners = new List<ulong>(),
InvitedCoOwners = new List<ulong>(),
Hosts = new List<ulong>(),
InvitedHosts = new List<ulong>(),
CheerCount = root2.Stats.CheerCount,
FavoriteCount = root2.Stats.FavoriteCount,
VisitCount = root2.Stats.VisitCount,
Tags = new List<aTag>
{
new aTag()
{
Tag = "rro",
Type = 2
}
}
};
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomname.txt", root2.Name);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomid.txt", Convert.ToString(root2.RoomId));
File.WriteAllText("SaveData\\Rooms\\Downloaded\\datablob.txt", root2.SubRooms[0].DataBlob);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\roomsceneid.txt", root2.SubRooms[0].UnitySceneId);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\imagename.txt", root2.ImageName);
File.WriteAllText("SaveData\\Rooms\\Downloaded\\cheercount.txt", Convert.ToString(root2.Stats.CheerCount));
File.WriteAllText("SaveData\\Rooms\\Downloaded\\favcount.txt", Convert.ToString(root2.Stats.FavoriteCount));
File.WriteAllText("SaveData\\Rooms\\Downloaded\\visitcount.txt", Convert.ToString(root2.Stats.VisitCount));
File.WriteAllText("SaveData\\Rooms\\Downloaded\\RoomDetails.json", JsonConvert.SerializeObject(root));
}
public static Room room { get; set; }
public static List<Scene> scene { get; set; }
public static Root root { get; set; }

View File

@@ -1 +1 @@
{"OutfitSelections":"b33dbeee-5bdd-443d-aa6a-761248054e08,,,,1;6d48c545-22bb-46c1-a29d-0a38af387143,,,,2;6d48c545-22bb-46c1-a29d-0a38af387143,,,,3;3757149b-f478-4975-81e5-d808a1bed8d5,,,,1;e15b13a7-9e9a-4b32-ba2c-0cb31ed55a8c,,,,1;3a790be3-2937-44d4-be01-b5d65353bd3d,,,,3;3a790be3-2937-44d4-be01-b5d65353bd3d,,,,2;b861e5f3-fc6d-43b3-9861-c1b45cb493a8,,,,0;61ba3c90-c81e-4deb-bc79-50c0f1fe3e83,,,,0","SkinColor":"2d398478-37c4-4c4a-a471-fbcbe3e5b1f5","HairColor":"5ee30295-b05f-4e96-819e-5ac865b2c63d","FaceFeatures":""}
{"OutfitSelections":"b33dbeee-5bdd-443d-aa6a-761248054e08,,,,1;6d48c545-22bb-46c1-a29d-0a38af387143,,,,2;6d48c545-22bb-46c1-a29d-0a38af387143,,,,3;102c625b-b988-4bf8-a2aa-a31ad7029cdc,bd4a84e2-b67a-4269-a26a-17fb23ddb09e,ccf1ccc1-e229-4157-bb74-f2cdef01e547,,0;d0a9262f-5504-46a7-bb10-7507503db58e,ba6b6e1a-a09a-4ba0-9523-552869f03336,,d461ca71-45c9-415e-8e09-ba93e8d73450,1;193a3bf9-abc0-4d78-8d63-92046908b1c5,,,,0;3a790be3-2937-44d4-be01-b5d65353bd3d,,,,2;3a790be3-2937-44d4-be01-b5d65353bd3d,,,,3;e15b13a7-9e9a-4b32-ba2c-0cb31ed55a8c,,,,1","FaceFeatures":"{\"ver\":3,\"eyeId\":\"AjGMoJhEcEehacRZjUMuDg\",\"eyePos\":{\"x\":0.0,\"y\":0.0},\"eyeScl\":0.0,\"mouthId\":\"FrZBRanXEEK29yKJ4jiMjg\",\"mouthPos\":{\"x\":0.0,\"y\":0.0},\"mouthScl\":0.0,\"beardColorId\":\"befcc00a-a2e6-48e4-864c-593d57bbbb5b\"}","SkinColor":"85343b16-d58a-4091-96d8-083a81fb03ae","HairColor":"befcc00a-a2e6-48e4-864c-593d57bbbb5b"}

View File

@@ -1,3 +1,11 @@
Patch v0.6.1:
-Fixed 2016
-Fixed room issues in 2018
-Added Vault Clothing items to September 2018
-September 2018 slightly more stable
-Improved overall server speed
-Fixed the wrongful ban issue
Fifth public release of OpenRec, and the new biggest update to date.
Supports:

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
0.6.0
0.6.1

View File

@@ -59,7 +59,7 @@ namespace gamesesh
{
return JsonConvert.SerializeObject(new GameSessions.PlayerStatus
{
PlayerId = APIServer.CachedPlayerID,
PlayerId = Convert.ToUInt64(File.ReadAllText("SaveData\\Profile\\userid.txt")),
IsOnline = true,
InScreenMode = false,
GameSession = Config.localGameSession
@@ -110,7 +110,7 @@ namespace gamesesh
{
return new GameSessions.PlayerStatus
{
PlayerId = APIServer.CachedPlayerID,
PlayerId = Convert.ToUInt64(File.ReadAllText("SaveData\\Profile\\userid.txt")),
IsOnline = true,
InScreenMode = false,
GameSession = Config.localGameSession

View File

@@ -15,7 +15,7 @@ namespace server
{
try
{
Console.WriteLine("ImageServer.cs has started.");
Console.WriteLine("[ImageServer.cs] has started.");
new Thread(new ThreadStart(this.StartListen)).Start();
}
catch (Exception ex)
@@ -30,23 +30,54 @@ namespace server
this.listener.Prefixes.Add("http://localhost:20182/");
for (; ; )
{
//image server always send out profile image for now, might cause issues later but ill fix it when I need too
this.listener.Start();
Console.WriteLine("ImageServer.cs is listening.");
Console.WriteLine("{ImageServer.cs] is listening.");
HttpListenerContext context = this.listener.GetContext();
HttpListenerRequest request = context.Request;
HttpListenerResponse response = context.Response;
string rawUrl = request.RawUrl;
string text;
byte[] i = File.ReadAllBytes("SaveData\\profileimage.png");
byte[] i = File.ReadAllBytes("SaveData\\profileimage.png"); //File.ReadAllBytes("SaveData\\profileimage.png");
using (StreamReader streamReader = new StreamReader(request.InputStream, request.ContentEncoding))
{
text = streamReader.ReadToEnd();
}
if (rawUrl.StartsWith("//room/"))
if (rawUrl.StartsWith("/alt/"))
{
i = new WebClient().DownloadData("https://cdn.rec.net/" + rawUrl.Remove(0, 2));
i = File.ReadAllBytes("SaveData\\profileimage.png");
}
else if (rawUrl.StartsWith("/" + File.ReadAllText("SaveData\\Profile\\username.txt")))
{
i = File.ReadAllBytes("SaveData\\profileimage.png");
}
else if (rawUrl.StartsWith("//room/"))
{
i = new WebClient().DownloadData("https://cdn.rec.net" + rawUrl.Remove(0, 1));
}
else
{
try
{
i = new WebClient().DownloadData("https://img.rec.net" + rawUrl);
}
catch
{
Console.WriteLine("[ImageServer.cs] Image not found on img.rec.net.");
}
}
if (rawUrl.StartsWith("/CustomRoom.png"))
{
try
{
i = new WebClient().DownloadData("https://img.rec.net/" + File.ReadAllText("SaveData\\Rooms\\Downloaded\\imagename.txt"));
}
catch
{
Console.WriteLine("[ImageServer.cs] Image not found on img.rec.net.");
i = new WebClient().DownloadData("https://img.rec.net/DefaultRoomImage.jpg");
}
}
Console.WriteLine("Image Requested: " + rawUrl);
Console.WriteLine("Image Data: " + text);
Console.WriteLine("Image Response: ");
@@ -54,7 +85,7 @@ namespace server
response.ContentLength64 = (long)bytes.Length;
Stream outputStream = response.OutputStream;
outputStream.Write(bytes, 0, bytes.Length);
Thread.Sleep(400);
Thread.Sleep(1);
outputStream.Close();
this.listener.Stop();
}

12
ModerationBlockDetails.cs Normal file
View File

@@ -0,0 +1,12 @@
using System;
namespace api
{
public class ModerationBlockDetails
{
public int ReportCategory { get; set; }
public int Duration { get; set; }
public long GameSessionId { get; set; }
public string Message { get; set; }
}
}

71
ModernRooms.cs Normal file
View File

@@ -0,0 +1,71 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace api
{
class ModernRooms
{
public class Stats
{
public int CheerCount { get; set; }
public int FavoriteCount { get; set; }
public int VisitorCount { get; set; }
public int VisitCount { get; set; }
}
public class SubRoom
{
public int SubRoomId { get; set; }
public ulong RoomId { get; set; }
public string UnitySceneId { get; set; }
public string Name { get; set; }
public string DataBlob { get; set; }
public DateTime DataSavedAt { get; set; }
public bool IsSandbox { get; set; }
public int MaxPlayers { get; set; }
public int Accessibility { get; set; }
}
public class Root
{
public ulong RoomId { get; set; }
public bool IsDorm { get; set; }
public int MaxPlayerCalculationMode { get; set; }
public int MaxPlayers { get; set; }
public bool CloningAllowed { get; set; }
public bool DisableMicAutoMute { get; set; }
public bool DisableRoomComments { get; set; }
public bool EncryptVoiceChat { get; set; }
public bool LoadScreenLocked { get; set; }
public int Version { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public string ImageName { get; set; }
public int WarningMask { get; set; }
public object CustomWarning { get; set; }
public int CreatorAccountId { get; set; }
public int State { get; set; }
public int Accessibility { get; set; }
public bool SupportsLevelVoting { get; set; }
public bool IsRRO { get; set; }
public bool SupportsScreens { get; set; }
public bool SupportsWalkVR { get; set; }
public bool SupportsTeleportVR { get; set; }
public bool SupportsVRLow { get; set; }
public bool SupportsQuest2 { get; set; }
public bool SupportsMobile { get; set; }
public bool SupportsJuniors { get; set; }
public int MinLevel { get; set; }
public DateTime CreatedAt { get; set; }
public Stats Stats { get; set; }
public List<SubRoom> SubRooms { get; set; }
public List<object> Tags { get; set; }
public List<object> PromoImages { get; set; }
public List<object> PromoExternalContent { get; set; }
public List<object> LoadScreens { get; set; }
}
}
}

View File

@@ -3,6 +3,8 @@ using System.IO;
using System.Net;
using System.Text;
using System.Threading;
using Newtonsoft.Json;
using start;
namespace server
{
@@ -15,7 +17,7 @@ namespace server
{
try
{
Console.WriteLine("NameServer.cs has started.");
Console.WriteLine("[NameServer.cs] has started.");
new Thread(new ThreadStart(this.StartListen)).Start();
}
catch (Exception ex)
@@ -32,19 +34,38 @@ namespace server
for (; ; )
{
this.listener.Start();
Console.WriteLine("NameServer.cs is listening.");
Console.WriteLine("[NameServer.cs] is listening.");
HttpListenerContext context = this.listener.GetContext();
HttpListenerRequest request = context.Request;
HttpListenerResponse response = context.Response;
string rawUrl = request.RawUrl;
string s = "";
s = "{\"API\":\"http://localhost:2018\",\"Notifications\":\"http://localhost:20161\",\"Images\":\"http://localhost:20182\"}";
if (Program.version == "2019")
{
NSData2 data2 = new NSData2()
{
API = "http://localhost:2018",
Notifications = "http://localhost:20161",
Images = "http://localhost:20182"
};
s = JsonConvert.SerializeObject(data2);
}
else
{
NSData data = new NSData()
{
API = "http://localhost:2018",
Notifications = "http://localhost:20161",
Images = "http://localhost:20182"
};
s = JsonConvert.SerializeObject(data);
}
Console.WriteLine("API Response: " + s);
byte[] bytes = Encoding.UTF8.GetBytes(s);
response.ContentLength64 = (long)bytes.Length;
Stream outputStream = response.OutputStream;
outputStream.Write(bytes, 0, bytes.Length);
Thread.Sleep(400);
Thread.Sleep(1);
outputStream.Close();
this.listener.Stop();
}
@@ -54,7 +75,45 @@ namespace server
public static string BlankResponse = "";
public class NSData
{
public string API { get; set; }
public string Notifications { get; set; }
public string Images { get; set; }
}
public class NSData2
{
// Token: 0x17000013 RID: 19
// (get) Token: 0x06000040 RID: 64 RVA: 0x00002256 File Offset: 0x00000456
// (set) Token: 0x06000041 RID: 65 RVA: 0x0000225E File Offset: 0x0000045E
public string Auth { get; set; }
// Token: 0x17000014 RID: 20
// (get) Token: 0x06000042 RID: 66 RVA: 0x00002267 File Offset: 0x00000467
// (set) Token: 0x06000043 RID: 67 RVA: 0x0000226F File Offset: 0x0000046F
public string API { get; set; }
// Token: 0x17000015 RID: 21
// (get) Token: 0x06000044 RID: 68 RVA: 0x00002278 File Offset: 0x00000478
// (set) Token: 0x06000045 RID: 69 RVA: 0x00002280 File Offset: 0x00000480
public string WWW { get; set; }
// Token: 0x17000016 RID: 22
// (get) Token: 0x06000046 RID: 70 RVA: 0x00002289 File Offset: 0x00000489
// (set) Token: 0x06000047 RID: 71 RVA: 0x00002291 File Offset: 0x00000491
public string Notifications { get; set; }
// Token: 0x17000017 RID: 23
// (get) Token: 0x06000048 RID: 72 RVA: 0x0000229A File Offset: 0x0000049A
// (set) Token: 0x06000049 RID: 73 RVA: 0x000022A2 File Offset: 0x000004A2
public string Images { get; set; }
// Token: 0x17000018 RID: 24
// (get) Token: 0x0600004A RID: 74 RVA: 0x000022AB File Offset: 0x000004AB
// (set) Token: 0x0600004B RID: 75 RVA: 0x000022B3 File Offset: 0x000004B3
public string Commerce { get; set; }
}
// Token: 0x04000192 RID: 402
private HttpListener listener = new HttpListener();
}

View File

@@ -1,102 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
using Newtonsoft.Json;
using vaultgamesesh;
namespace gamesesh2
{
class NewGameSessions
{
public static string JoinRoom(string text)
{
c00006b.c00006c apidata = JsonConvert.DeserializeObject<c00006b.c00006c>(text);
return string.Empty;
}
public class GameSession
{
public int GameSessionId { get; set; }
public string PhotonRegionId { get; set; }
public string PhotonRoomId { get; set; }
public string Name { get; set; }
public int RoomId { get; set; }
public int RoomSceneId { get; set; }
public string RoomSceneLocationId { get; set; }
public bool IsSandbox { get; set; }
public string DataBlobName { get; set; }
public object PlayerEventId { get; set; }
public bool Private { get; set; }
public bool GameInProgress { get; set; }
public int MaxCapacity { get; set; }
public bool IsFull { get; set; }
}
public class Room
{
public int RoomId { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public int CreatorPlayerId { get; set; }
public string ImageName { get; set; }
public int State { get; set; }
public int Accessibility { get; set; }
public bool SupportsLevelVoting { get; set; }
public bool IsAGRoom { get; set; }
public bool CloningAllowed { get; set; }
public bool SupportsScreens { get; set; }
public bool SupportsWalkVR { get; set; }
public bool SupportsTeleportVR { get; set; }
public string ReplicationId { get; set; }
public int ReleaseStatus { get; set; }
}
public class Scene
{
public int RoomSceneId { get; set; }
public int RoomId { get; set; }
public string RoomSceneLocationId { get; set; }
public string Name { get; set; }
public bool IsSandbox { get; set; }
public string DataBlobName { get; set; }
public int MaxPlayers { get; set; }
public bool CanMatchmakeInto { get; set; }
public DateTime DataModifiedAt { get; set; }
public string ReplicationId { get; set; }
public bool UseLevelBasedMatchmaking { get; set; }
public bool UseAgeBasedMatchmaking { get; set; }
public bool UseRecRoyaleMatchmaking { get; set; }
public int ReleaseStatus { get; set; }
public bool SupportsJoinInProgress { get; set; }
}
public class aTag
{
public string Tag { get; set; }
public int Type { get; set; }
}
public class RoomDetails
{
public Room Room { get; set; }
public List<Scene> Scenes { get; set; }
public List<object> CoOwners { get; set; }
public List<object> InvitedCoOwners { get; set; }
public List<object> Hosts { get; set; }
public List<object> InvitedHosts { get; set; }
public int CheerCount { get; set; }
public int FavoriteCount { get; set; }
public int VisitCount { get; set; }
public List<aTag> Tags { get; set; }
}
public class Root
{
public int Result { get; set; }
public GameSession GameSession { get; set; }
public RoomDetails RoomDetails { get; set; }
}
}
}

View File

@@ -41,58 +41,43 @@ namespace ws
}
// Token: 0x0200002B RID: 43
public enum ResponseResult
public enum ResponseResults
{
// Token: 0x04000090 RID: 144
RelationshipChanged = 1,
// Token: 0x04000091 RID: 145
MessageReceived,
// Token: 0x04000092 RID: 146
MessageDeleted,
// Token: 0x04000093 RID: 147
PresenceHeartbeatResponse,
// Token: 0x04000094 RID: 148
SubscriptionListUpdated = 9,
// Token: 0x04000095 RID: 149
SubscriptionUpdateProfile = 11,
// Token: 0x04000096 RID: 150
SubscriptionUpdatePresence,
// Token: 0x04000097 RID: 151
SubscriptionUpdateGameSession,
// Token: 0x04000098 RID: 152
SubscriptionUpdateRoom,
// Token: 0x04000099 RID: 153
SubscriptionUpdateRoom = 15,
ModerationQuitGame = 20,
// Token: 0x0400009A RID: 154
ModerationUpdateRequired,
// Token: 0x0400009B RID: 155
ModerationKick,
// Token: 0x0400009C RID: 156
ModerationKickAttemptFailed,
// Token: 0x0400009D RID: 157
ServerMaintenance = 25,
GiftPackageReceived = 30,
// Token: 0x0400009E RID: 158
ProfileJuniorStatusUpdate = 40,
// Token: 0x0400009F RID: 159
RelationshipsInvalid = 50,
// Token: 0x040000A0 RID: 160
StorefrontBalanceAdd = 60
StorefrontBalanceAdd = 60,
ConsumableMappingAdded = 70,
ConsumableMappingRemoved,
PlayerEventCreated = 80,
PlayerEventUpdated,
PlayerEventDeleted,
PlayerEventResponseChanged,
PlayerEventResponseDeleted,
PlayerEventStateChanged,
ChatMessageReceived = 90
}
// Token: 0x0200002C RID: 44
public class Reponse
{
// Token: 0x1700005F RID: 95
// (get) Token: 0x0600010D RID: 269
// (set) Token: 0x0600010E RID: 270
public int Id { get; set; }
// Token: 0x17000060 RID: 96
// (get) Token: 0x0600010F RID: 271
// (set) Token: 0x06000110 RID: 272
public object Msg { get; set; }
// Token: 0x06000111 RID: 273
public static Notification.Reponse createResponse(int id, object msg)
{
return new Notification.Reponse
@@ -101,6 +86,21 @@ namespace ws
Msg = msg
};
}
public static Notification.Reponse createBannedResponse()
{
return new Notification.Reponse
{
Id = (int)ResponseResults.ModerationKick,
Msg = new api.ModerationBlockDetails()
{
ReportCategory = 1,
Duration = int.MaxValue,
GameSessionId = 100L,
Message = "You have been banned. You are probably a little kid and are now whining at your VR headset. If you aren't a little kid, DM me to appeal."
}
};
}
}
}
}

View File

@@ -5,27 +5,30 @@ using ws;
namespace vaultgamesesh
{
// Token: 0x0200000B RID: 11
// Token: 0x02000005 RID: 5
public class Notification2018
{
// Token: 0x06000025 RID: 37
// Token: 0x06000015 RID: 21 RVA: 0x00002A18 File Offset: 0x00000C18
public static string ProcessRequest(string jsonData)
{
Dictionary<string, object> dictionary = JsonConvert.DeserializeObject<Dictionary<string, object>>(jsonData);
bool flag = dictionary.ContainsKey("api");
string result;
if (dictionary.ContainsKey("api"))
if (flag)
{
string text = (string)dictionary["api"];
string text2 = text;
if (text2 != null)
bool flag2 = text2 != null;
if (flag2)
{
if (text2 == "playerSubscriptions/v1/update")
bool flag3 = text2 == "playerSubscriptions/v1/update";
if (flag3)
{
Console.WriteLine("[18CWS] Game client sent presence update.");
return JsonConvert.SerializeObject(Notification.Reponse.createResponse(12, c000020.m000027()));
}
if (text2 == "heartbeat2")
bool flag4 = text2 == "heartbeat2";
if (flag4)
{
Console.WriteLine("[18CWS] Heartbeat 2 sent by game client.");
return JsonConvert.SerializeObject(Notification.Reponse.createResponse(4, c000020.m000027()));
@@ -41,59 +44,59 @@ namespace vaultgamesesh
return result;
}
// Token: 0x0200003B RID: 59
// Token: 0x02000038 RID: 56
public enum ResponseResult
{
// Token: 0x040000DF RID: 223
// Token: 0x040000A8 RID: 168
RelationshipChanged = 1,
// Token: 0x040000E0 RID: 224
// Token: 0x040000A9 RID: 169
MessageReceived,
// Token: 0x040000E1 RID: 225
// Token: 0x040000AA RID: 170
MessageDeleted,
// Token: 0x040000E2 RID: 226
// Token: 0x040000AB RID: 171
PresenceHeartbeatResponse,
// Token: 0x040000E3 RID: 227
// Token: 0x040000AC RID: 172
SubscriptionListUpdated = 9,
// Token: 0x040000E4 RID: 228
// Token: 0x040000AD RID: 173
SubscriptionUpdateProfile = 11,
// Token: 0x040000E5 RID: 229
// Token: 0x040000AE RID: 174
SubscriptionUpdatePresence,
// Token: 0x040000E6 RID: 230
// Token: 0x040000AF RID: 175
SubscriptionUpdateGameSession,
// Token: 0x040000E7 RID: 231
// Token: 0x040000B0 RID: 176
SubscriptionUpdateRoom,
// Token: 0x040000E8 RID: 232
// Token: 0x040000B1 RID: 177
ModerationQuitGame = 20,
// Token: 0x040000E9 RID: 233
// Token: 0x040000B2 RID: 178
ModerationUpdateRequired,
// Token: 0x040000EA RID: 234
// Token: 0x040000B3 RID: 179
ModerationKick,
// Token: 0x040000EB RID: 235
// Token: 0x040000B4 RID: 180
ModerationKickAttemptFailed,
// Token: 0x040000EC RID: 236
// Token: 0x040000B5 RID: 181
GiftPackageReceived = 30,
// Token: 0x040000ED RID: 237
// Token: 0x040000B6 RID: 182
ProfileJuniorStatusUpdate = 40,
// Token: 0x040000EE RID: 238
// Token: 0x040000B7 RID: 183
RelationshipsInvalid = 50,
// Token: 0x040000EF RID: 239
// Token: 0x040000B8 RID: 184
StorefrontBalanceAdd = 60
}
// Token: 0x0200003C RID: 60
// Token: 0x02000039 RID: 57
public class Reponse
{
// Token: 0x1700008A RID: 138
// (get) Token: 0x06000185 RID: 389
// (set) Token: 0x06000186 RID: 390
// Token: 0x1700007E RID: 126
// (get) Token: 0x06000167 RID: 359 RVA: 0x0000A5EB File Offset: 0x000087EB
// (set) Token: 0x06000168 RID: 360 RVA: 0x0000A5F3 File Offset: 0x000087F3
public int Id { get; set; }
// Token: 0x1700008B RID: 139
// (get) Token: 0x06000187 RID: 391
// (set) Token: 0x06000188 RID: 392
// Token: 0x1700007F RID: 127
// (get) Token: 0x06000169 RID: 361 RVA: 0x0000A5FC File Offset: 0x000087FC
// (set) Token: 0x0600016A RID: 362 RVA: 0x0000A604 File Offset: 0x00008804
public object Msg { get; set; }
// Token: 0x06000189 RID: 393
// Token: 0x0600016B RID: 363 RVA: 0x0000A610 File Offset: 0x00008810
public static Notification.Reponse createResponse(int id, object msg)
{
return new Notification.Reponse

View File

@@ -15,6 +15,10 @@
<Version>0.4.0</Version>
</PropertyGroup>
<ItemGroup>
<None Remove="NewFile1.txt" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
</ItemGroup>

34
ProfieStealer.cs Normal file
View File

@@ -0,0 +1,34 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using Newtonsoft.Json;
using System.IO;
namespace api
{
class ProfieStealer
{
public static void ProfileSteal(string data)
{
List<Root> profile = JsonConvert.DeserializeObject<List<Root>>(data);
File.WriteAllText("SaveData\\Profile\\username.txt", profile[0].username);
byte[] profileimage = new WebClient().DownloadData("https://img.rec.net/" + profile[0].profileImage + "?cropSquare=true&width=192&height=192");
File.WriteAllBytes("SaveData\\profileimage.png", profileimage);
}
public class Root
{
public int accountId { get; set; }
public string username { get; set; }
public string displayName { get; set; }
public string profileImage { get; set; }
public bool isJunior { get; set; }
public int platforms { get; set; }
public int personalPronouns { get; set; }
public int identityFlags { get; set; }
public DateTime createdAt { get; set; }
public string bannerImage { get; set; }
}
}
}

View File

@@ -6,6 +6,8 @@ using api;
using System.Net;
using System.Diagnostics;
using vaultgamesesh;
using System.Collections.Generic;
using Newtonsoft.Json;
namespace start
{
@@ -16,12 +18,53 @@ namespace start
//startup for openrec
Setup.setup();
goto Start;
goto Tutorial;
Start:
Tutorial:
if (Setup.firsttime == true)
{
Console.ForegroundColor = ConsoleColor.Green;
Console.Title = "OpenRec Intro";
Console.WriteLine("Welcome to OpenRec " + appversion + "!");
Console.WriteLine("Is this your first time using OpenRec?");
Console.WriteLine("Yes or No (Y, N)");
string readline22 = Console.ReadLine();
if (readline22 == "y" || readline22 == "Y")
{
Console.Clear();
Console.Title = "OpenRec Tutorial";
Console.WriteLine("In that case, welcome to OpenRec!");
Console.WriteLine("OpenRec is server software that emulates the old servers of previous RecRoom versions.");
Console.WriteLine("To use OpenRec, you'll need to have builds aswell!");
Console.WriteLine("To download builds, either go to the builds channel or use the links below: (these links are also available from the #builds channel)" + Environment.NewLine);
Console.WriteLine(new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/builds.txt"));
Console.WriteLine("Download a build and press any key to continue:");
Console.ReadKey();
Console.Clear();
Console.WriteLine("Now that you have a build, what you're going to do is as follows:" + Environment.NewLine);
Console.WriteLine("1. Unzip the build");
Console.WriteLine("2. Start the server by pressing 5 on the main menu and selecting your version as follows");
Console.WriteLine("3. Run Recroom_Release.exe from the folder of the build you downloaded." + Environment.NewLine);
Console.WriteLine("And that's it! Press any key to go to the main menu, where you will be able to start the server:");
Console.ReadKey();
Console.Clear();
goto Start;
}
else
{
goto Start;
}
}
else
{
goto Start;
}
Start:
Console.Title = "OpenRec Startup Menu";
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("OpenRec - Open source RecNet server software. (Version: " + appversion + ")");
Console.WriteLine("OpenRec - Open source Old RecRoom server software. (Version: " + appversion + ")");
Console.WriteLine("Made and provided by RecRoom 2016.");
Console.WriteLine("Download source code here: https://github.com/recroom2016/OpenRec");
Console.WriteLine("Discord: https://discord.gg/daC8QUhnFP" + Environment.NewLine);
@@ -39,7 +82,8 @@ namespace start
bannedflag = true;
}
}
Console.WriteLine("1) Changelog" + Environment.NewLine +"2) Change Settings" + Environment.NewLine + "3) Modify Profile" + Environment.NewLine + "4) Custom Room Downloader" + Environment.NewLine + "5) Start Server");
Console.WriteLine("//Custom Room Downloader has been moved to the settings tab!" + Environment.NewLine);
Console.WriteLine("(1) What's New" + Environment.NewLine +"(2) Change Settings" + Environment.NewLine + "(3) Modify Profile" + Environment.NewLine + "(4) Build Download Links" + Environment.NewLine + "(5) Start Server");
string readline = Console.ReadLine();
if (readline == "1")
{
@@ -58,7 +102,7 @@ namespace start
Settings:
Console.Title = "OpenRec Settings Menu";
Console.WriteLine("1) Private Rooms: " + File.ReadAllText("SaveData\\App\\privaterooms.txt") + Environment.NewLine + "2) OpenRecNet Info Tab: " + File.ReadAllText("SaveData\\App\\showopenrecinfo.txt") + Environment.NewLine + "3) Reset SaveData" + Environment.NewLine + "4) Go Back");
Console.WriteLine("(1) Private Rooms: " + File.ReadAllText("SaveData\\App\\privaterooms.txt") + Environment.NewLine + "(2) Custom Room Downloader " + Environment.NewLine + "(3) Reset SaveData" + Environment.NewLine + "(4) Go Back");
string readline4 = Console.ReadLine();
if (readline4 == "1")
{
@@ -76,14 +120,23 @@ namespace start
}
else if (readline4 == "2")
{
if (File.ReadAllText("SaveData\\App\\showopenrecinfo.txt") == "Disabled")
Console.Title = "OpenRec Custom Room Downloader";
Console.Clear();
Console.WriteLine("Custom Room Downloader: This tool takes the room data of any room you type in and imports it into ^CustomRoom in September 27th 2018.");
Console.WriteLine("Please type in the name of the room you would like to download: (Case sensitive)");
string roomname = Console.ReadLine();
string text = "";
try
{
File.WriteAllText("SaveData\\App\\showopenrecinfo.txt", "Enabled");
text = new WebClient().DownloadString("https://rooms.rec.net/rooms?name=" + roomname + "&include=297");
}
else
catch
{
File.WriteAllText("SaveData\\App\\showopenrecinfo.txt", "Disabled");
Console.Clear();
Console.WriteLine("Failed to download room...");
goto Settings;
}
CustomRooms.RoomDecode(text);
Console.Clear();
Console.WriteLine("Success!");
goto Settings;
@@ -102,9 +155,20 @@ namespace start
File.Delete("SaveData\\myrooms.txt");
File.Delete("SaveData\\settings.txt");
File.Delete("SaveData\\App\\privaterooms.txt");
File.Delete("SaveData\\App\\showopenrecinfo.txt");
File.Delete("SaveData\\App\\facefeaturesadd.txt");
File.Delete("SaveData\\profileimage.png");
File.Delete("SaveData\\App\\firsttime.txt");
File.Delete("SaveData\\avataritems2.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\roomname.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\roomid.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\datablob.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\roomsceneid.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\imagename.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\cheercount.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\favcount.txt");
File.Delete("SaveData\\Rooms\\Downloaded\\visitcount.txt");
Console.WriteLine("Success!");
Setup.setup();
goto Settings;
@@ -122,7 +186,7 @@ namespace start
Profile:
Console.Title = "OpenRec Profile Menu";
Console.WriteLine("1) Change Username" + Environment.NewLine + "2) Change Profile Image" + Environment.NewLine + "3) Change Level" + Environment.NewLine + "4) Go Back");
Console.WriteLine("(1) Change Username" + Environment.NewLine + "(2) Change Profile Image" + Environment.NewLine + "(3) Change Level" + Environment.NewLine + "(4) Profile Downloader" + Environment.NewLine + "(5) Go Back");
string readline3 = Console.ReadLine();
if (readline3 == "1")
{
@@ -137,7 +201,7 @@ namespace start
else if (readline3 == "2")
{
Console.Clear();
Console.WriteLine("1) Upload Media Link" + Environment.NewLine + "2) Drag Image onto this window" + Environment.NewLine + "3) Go Back");
Console.WriteLine("1) Upload Media Link" + Environment.NewLine + "2) Drag Image onto this window" + Environment.NewLine + "3) Download Rec.Net Profile Image" + Environment.NewLine + "4) Go Back");
string readline4 = Console.ReadLine();
if (readline4 == "1")
{
@@ -147,7 +211,7 @@ namespace start
{
File.WriteAllBytes("SaveData\\profileimage.png", new WebClient().DownloadData(medialink));
}
catch (Exception ex4)
catch
{
Console.Clear();
Console.WriteLine("Invalid Media Link");
@@ -166,6 +230,7 @@ namespace start
byte[] imagefile = File.ReadAllBytes(imagedir);
File.Replace(imagedir, "SaveData\\profileimage.png", "backupfilename.png");
File.WriteAllBytes(imagedir, imagefile);
File.Delete("backupfilename.png");
}
catch (Exception ex4)
{
@@ -178,6 +243,43 @@ namespace start
goto Profile;
}
else if (readline4 == "3")
{
Console.WriteLine("Type a RecRoom @ username and press enter: ");
string username = Console.ReadLine();
if (username.StartsWith("@"))
{
username = username.Remove(0, 1);
}
try
{
string data = "";
try
{
data = new WebClient().DownloadString("https://accounts.rec.net/account/search?name=" + username);
}
catch
{
Console.Clear();
Console.WriteLine("Failed to download profile...");
goto Start;
}
;
List<ProfieStealer.Root> profile = JsonConvert.DeserializeObject<List<ProfieStealer.Root>>(data);
byte[] profileimage = new WebClient().DownloadData("https://img.rec.net/" + profile[0].profileImage + "?cropSquare=true&width=192&height=192");
File.WriteAllBytes("SaveData\\profileimage.png", profileimage);
}
catch
{
Console.Clear();
Console.WriteLine("Unable to download image...");
goto Profile;
}
Console.Clear();
Console.WriteLine("Success!");
goto Profile;
}
else if (readline4 == "4")
{
Console.Clear();
goto Start;
@@ -194,6 +296,33 @@ namespace start
goto Profile;
}
else if (readline3 == "4")
{
Console.Title = "OpenRec Profile Downloader";
Console.Clear();
Console.WriteLine("Profile Downloader: This tool takes the username and profile image of any username you type in and imports it to OpenRec.");
Console.WriteLine("Please type the @ username of the profile you would like:");
string readusername = Console.ReadLine();
if (readusername.StartsWith("@"))
{
readusername = readusername.Remove(0, 1);
}
string data2 = "";
try
{
data2 = new WebClient().DownloadString("https://accounts.rec.net/account/search?name=" + readusername);
}
catch
{
Console.Clear();
Console.WriteLine("Failed to download profile...");
goto Start;
}
ProfieStealer.ProfileSteal(data2);
Console.Clear();
Console.WriteLine("Success!");
goto Start;
}
else if (readline3 == "5")
{
Console.Clear();
goto Start;
@@ -201,28 +330,19 @@ namespace start
}
if (readline == "4")
{
Console.Title = "OpenRec Custom Room Downloader";
Console.Title = "OpenRec Build Downloads";
Console.Clear();
Console.WriteLine("To download builds, either go to the builds channel or use the links below: (these links are also available from the #builds channel)" + Environment.NewLine);
Console.WriteLine(new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/builds.txt"));
Console.WriteLine("Download a build and press any key to continue:");
Console.ReadKey();
Console.Clear();
Console.WriteLine("Please type in the name of the room you would like to download: (Case sensitive)");
string roomname = Console.ReadLine();
Console.WriteLine("Now, please go to the link below and help us gather info about your room for you.");
Console.WriteLine("https://rooms.rec.net/rooms?name=" + roomname + "&include=297");
Console.WriteLine("Please find the string called ImageName and paste it below:");
string imagename = Console.ReadLine();
Console.WriteLine("Please find the string called UnitySceneId and paste it below:");
string roomsceneid = Console.ReadLine();
Console.WriteLine("Please find the string called DataBlob and paste it below:");
string datablob = Console.ReadLine();
CustomRooms.RoomDecode(roomname, roomsceneid, imagename, datablob);
goto Start;
}
if (readline == "5")
{
Console.Title = "OpenRec Version Select";
Console.WriteLine("Please select the version of RecRoom the server should host: (2016, 2017, 2018)");
Console.WriteLine("fuck you all");
//imagine if yall actually look in the code one day and just find a random note signed tucker at the bottom of it and then i go missing for a very long time otherwise known as forever
string readline2 = Console.ReadLine();
if (readline2 == "2016")
{
@@ -244,7 +364,7 @@ namespace start
}
else if (readline2 == "2018")
{
Console.WriteLine("May or September (Beta) 2018: (M, S)");
Console.WriteLine("May, July or September (Beta) 2018: (M, J, S)");
string readline3 = Console.ReadLine();
if ((readline3 == "M") || (readline3 == "m"))
{
@@ -257,7 +377,7 @@ namespace start
new APIServer();
new WebSocket();
}
if ((readline3 == "S") || (readline3 == "s"))
else if ((readline3 == "S") || (readline3 == "s"))
{
Console.Title = "OpenRec September 27th 2018";
version = "2018";
@@ -268,11 +388,22 @@ namespace start
new APIServer();
new Late2018WebSock();
}
else if ((readline3 == "J") || (readline3 == "j"))
{
Console.Title = "OpenRec July 20th 2018";
version = "2018";
Console.Clear();
Console.WriteLine("Version Selected: July 20th, 2018");
new NameServer();
new ImageServer();
new APIServer();
new WebSocket();
}
}
}
}
public static string version = "";
public static string appversion = "0.6.0";
public static string appversion = "0.7.0";
public static bool bannedflag = false;
}

17
README.md Normal file
View File

@@ -0,0 +1,17 @@
# Welcome to OpenRec!
---
OpenRec is a RecRoom server software made by recroom2016!
### Branches
- Master / main
- Nightly
The master branch is the public branch where all the latest updates are published.
The nightly branch is where all the experimental updates that are needed to be tested before release are.
---
### Getting in contact with the community
If you are new to this we recommend you joining our Discord!
Link: https://discord.com/invite/daC8QUhnFP

View File

@@ -8,15 +8,22 @@ namespace start
{
class Setup
{
public static bool firsttime = false;
public static void setup()
{
//sets up all the important files so openrec doesnt crash like lame vaultserver xD
Console.WriteLine("Setting up... (May take a minute to download everything.)");
Directory.CreateDirectory("SaveData\\Images\\");
Directory.CreateDirectory("SaveData\\App\\");
Directory.CreateDirectory("SaveData\\Profile\\");
Directory.CreateDirectory("SaveData\\Images\\");
Directory.CreateDirectory("SaveData\\Rooms\\");
Directory.CreateDirectory("SaveData\\Images\\");
Directory.CreateDirectory("SaveData\\Rooms\\Downloaded\\");
if (!(File.Exists("SaveData\\App\\firsttime.txt")))
{
File.WriteAllText("SaveData\\App\\firsttime.txt", "this text file has no use other than to tell the program whether to bring up the intro or not, so i can just write random shit here. among us balls, you suck mad dick you big fat fa----");
firsttime = true;
}
if (!(File.Exists("SaveData\\avatar.txt")))
{
File.WriteAllText("SaveData\\avatar.txt", new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Download/avatar.txt"));
@@ -29,6 +36,10 @@ namespace start
{
File.WriteAllText("SaveData\\avataritems.txt", new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Download/avataritems.txt"));
}
if (!(File.Exists("SaveData\\avataritems2.txt")))
{
File.WriteAllText("SaveData\\avataritems2.txt", new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Download/avataritems2.txt"));
}
if (!(File.Exists("SaveData\\equipment.txt")))
{
File.WriteAllText("SaveData\\equipment.txt", new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Download/equipment.txt"));
@@ -51,7 +62,7 @@ namespace start
}
if (!(File.Exists("SaveData\\Profile\\username.txt")))
{
File.WriteAllText("SaveData\\Profile\\username.txt", "DefaultUsername");
File.WriteAllText("SaveData\\Profile\\username.txt", "OpenRec User#" + new Random().Next(0, 1000000));
}
if (!(File.Exists("SaveData\\Profile\\level.txt")))
{
@@ -69,6 +80,10 @@ namespace start
{
File.WriteAllText("SaveData\\settings.txt", Newtonsoft.Json.JsonConvert.SerializeObject(api.Settings.CreateDefaultSettings()));
}
if (!(File.Exists("SaveData\\profileimage.png")))
{
File.WriteAllBytes("SaveData\\profileimage.png", new WebClient().DownloadData("https://github.com/OpenRecRoom/OpenRec/raw/main/profileimage.png"));
}
if (!(File.Exists("SaveData\\App\\privaterooms.txt")))
{
File.WriteAllText("SaveData\\App\\privaterooms.txt", "Disabled");
@@ -81,13 +96,16 @@ namespace start
{
File.WriteAllText("SaveData\\App\\facefeaturesadd.txt", new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Download/facefeaturesadd.txt"));
}
if (!(File.Exists("SaveData\\Images\\count.txt")))
{
File.WriteAllText("SaveData\\Images\\count.txt", "0");
goto tryagain;
tryagain:
try
{
api.CustomRooms.RoomGet("gizmoface");
}
if (!(File.Exists("SaveData\\profileimage.png")))
{
File.WriteAllBytes("SaveData\\profileimage.png", new WebClient().DownloadData("https://github.com/OpenRecRoom/OpenRec/raw/main/profileimage.png"));
catch
{
goto tryagain;
}
Console.WriteLine("Done!");
Console.Clear();

View File

@@ -1 +1 @@
[487454, 4701796, 1623123]
[487454, 4701796, 1623123, 1423224]

11
Update/builds.txt Normal file
View File

@@ -0,0 +1,11 @@
September 27th 2018 (UNSTABLE, WILL ONLY WORK FOR SOME PEOPLE):
https://drive.google.com/file/d/13atQRl6Bh_JStPug7GcKLiLYqVaRgUsW/view?usp=sharing
May 30th 2018:
https://drive.google.com/file/d/1jZps2nesIcHsabZo3ueomivq98zfKZzj/view?usp=sharing
October 19th 2017:
https://drive.google.com/file/d/1Noljjg667NzUeOc1P7D7Fq9KmN_6AfeE/view?usp=sharing
December 23rd 2016:
https://drive.google.com/file/d/1mM3VKK7mFK8qMingVkEFQW-PwRe5Wh39/view?usp=sharing

View File

@@ -269,21 +269,6 @@
"SupportsWalkVR": true,
"SupportsTeleportVR": true
},
{
"RoomId": 1,
"Name": "DormRoom",
"Description": "Your private room",
"CreatorPlayerId": 72963398,
"ImageName": "DefaultRoomImage.jpg",
"State": 0,
"Accessibility": 1,
"SupportsLevelVoting": false,
"IsAGRoom": true,
"CloningAllowed": false,
"SupportsScreens": true,
"SupportsWalkVR": true,
"SupportsTeleportVR": true
},
{
"RoomId": 2,
"Name": "RecCenter",

View File

@@ -1 +1,4 @@
Welcome to OpenRec!
BTW IF YOU SEE THIS, SHUT UP
THANK YOU

23
Update/rcslideshow.txt Normal file
View File

@@ -0,0 +1,23 @@
{
"Images": [
{
"SavedImageId": 1,
"ImageName": "1c603274267b4f45858f7506ab48b4fa",
"Username": "Origami",
"RoomName": "forsophie"
},
{
"SavedImageId": 2,
"ImageName": "dRoGHY4JvU-t1L51gbdhqQ",
"Username": "Sublime",
"RoomName": "TheOfficePvP"
},
{
"SavedImageId": 3,
"ImageName": "v9_qfp0bH0a3KL0xGz4Zsg",
"Username": "Jbluna",
"RoomName": "USSCoach"
}
],
"ValidTill": "2024-06-09T19:06:44.927Z"
}

View File

@@ -53,7 +53,7 @@ namespace vaultgamesesh
}
else
{
c000041.f000043 = c00005d.f000050[File.ReadAllText("SaveData\\Rooms\\Downloaded\\roomname.txt")];
c000041.f000043 = c00005d.f000050["DormRoom"];
}
}
int num = 0;
@@ -73,13 +73,20 @@ namespace vaultgamesesh
}
text += c000004.f000003;
bool @private = c00006c.Private;
if (@private)
if (@private)
{
text += string.Format("Pri{0}", server.APIServer.CachedPlayerID);
}
long gameseshid = 20181L;
if (start.Program.bannedflag == true)
{
text += string.Format("Pri{0}", server.APIServer.CachedPlayerID);
gameseshid = 100L;
text += "BANNED";
}
c000041.f000013 = new c000041.c000044
{
GameSessionId = 20181L,
GameSessionId = gameseshid,
PhotonRegionId = "us",
PhotonRoomId = text,
Name = c000041.f000043.Room.Name,

View File

@@ -1,43 +1,61 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
using System.Text;
using Newtonsoft.Json;
using start;
using WebSocketSharp;
using WebSocketSharp.Server;
using System.Net;
using System.IO;
using ws;
namespace vaultgamesesh
{
// Token: 0x02000018 RID: 24
internal class Late2018WebSock
public class Late2018WebSock
{
// Token: 0x06000094 RID: 148 RVA: 0x00006EB0 File Offset: 0x000050B0
public Late2018WebSock()
{
Late2018WebSock.instance = this;
this.WebSock.AddWebSocketService<Late2018WebSock.NotificationWS>("/api/notification/v2");
this.WebSock.AddWebSocketService<Late2018WebSock.HubWS>("/hub/v1");
this.WebSock.Start();
Console.WriteLine("2018 WebSocket server started!");
Console.WriteLine("[LateWebSocket.cs] has started.");
Console.WriteLine("[LateWebSocket.cs] is listening.");
}
// Token: 0x04000047 RID: 71
public void Broadcast(Notification.Reponse res)
{
Console.WriteLine(string.Concat(new string[]
{
"Broadcasting ",
JsonConvert.SerializeObject(res),
" to ",
this.WebSock.WebSocketServices["/api/notification/v2"].Sessions.Count.ToString(),
" clients."
}));
WebSock.WebSocketServices["/api/notification/v2"].Sessions.Broadcast(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(res)));
}
public static Late2018WebSock instance;
public WebSocketServer WebSock = new WebSocketServer("ws://localhost:20161/");
// Token: 0x0200004A RID: 74
public class HubWS : WebSocketBehavior
{
// Token: 0x060001EA RID: 490 RVA: 0x0000C215 File Offset: 0x0000A415
protected override void OnMessage(MessageEventArgs e)
{
Console.WriteLine("LateWebSocket.cs Hub Requested.");
base.Send(JsonConvert.SerializeObject(new Late2018WebSock.Hub()));
}
public HubWS()
{
}
}
// Token: 0x0200004B RID: 75
public class Hub : WebSocketBehavior
{
// Token: 0x060001EC RID: 492 RVA: 0x0000C240 File Offset: 0x0000A440
public Hub()
{
this.accessToken = "AccessDeezNuts";
@@ -46,37 +64,33 @@ namespace vaultgamesesh
this.url = new Uri(string.Format("http://localhost:{0}/", "2018"));
}
// Token: 0x170000B4 RID: 180
// (get) Token: 0x060001ED RID: 493 RVA: 0x0000C290 File Offset: 0x0000A490
// (set) Token: 0x060001EE RID: 494 RVA: 0x0000C298 File Offset: 0x0000A498
public Uri url { get; set; }
// Token: 0x170000B5 RID: 181
// (get) Token: 0x060001EF RID: 495 RVA: 0x0000C2A1 File Offset: 0x0000A4A1
// (set) Token: 0x060001F0 RID: 496 RVA: 0x0000C2A9 File Offset: 0x0000A4A9
public string accessToken { get; set; }
// Token: 0x170000B6 RID: 182
// (get) Token: 0x060001F1 RID: 497 RVA: 0x0000C2B2 File Offset: 0x0000A4B2
// (set) Token: 0x060001F2 RID: 498 RVA: 0x0000C2BA File Offset: 0x0000A4BA
public List<string> SupportedTransports { get; set; }
// Token: 0x170000B7 RID: 183
// (get) Token: 0x060001F3 RID: 499 RVA: 0x0000C2C3 File Offset: 0x0000A4C3
// (set) Token: 0x060001F4 RID: 500 RVA: 0x0000C2CB File Offset: 0x0000A4CB
public int negotiateVersion { get; set; }
}
// Token: 0x0200004C RID: 76
public class NotificationWS : WebSocketBehavior
{
// Token: 0x060001F5 RID: 501 RVA: 0x0000C2D4 File Offset: 0x0000A4D4
protected override void OnMessage(MessageEventArgs p0)
{
Console.WriteLine("LateWebSocket.csNotif Requested.");
bool flag = p0.Data == null;
bool flag2 = flag;
if (flag2)
bool flag = new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/banned.txt").Contains(File.ReadAllText("SaveData\\Profile\\userid.txt"));
if (flag)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("You are banned. Using this version of OpenRec will not work, please download OpenRec 0.4.2 or prior.");
Console.ForegroundColor = ConsoleColor.Green;
Program.bannedflag = true;
Late2018WebSock.instance.Broadcast(Notification.Reponse.createBannedResponse());
}
Console.WriteLine("LateWebSocket.cs Notif Requested.");
bool flag2 = p0.Data == null;
bool flag3 = flag2;
bool flag4 = flag3;
if (flag4)
{
base.Send(string.Empty);
}
@@ -84,13 +98,10 @@ namespace vaultgamesesh
{
base.Send(Notification2018.ProcessRequest(p0.Data));
}
if (new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/banned.txt").Contains(File.ReadAllText("SaveData\\Profile\\userid.txt")))
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("You are banned. Using this version of OpenRec will not work, please download OpenRec 0.4.2 or prior.");
Console.ForegroundColor = ConsoleColor.Green;
start.Program.bannedflag = true;
}
}
public NotificationWS()
{
}
}
}

View File

@@ -1,42 +1,41 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
using start;
using WebSocketSharp;
using WebSocketSharp.Server;
using Newtonsoft.Json;
using server;
using start;
using System.Net;
using System.IO;
namespace ws
{
// Token: 0x02000008 RID: 8
// Token: 0x02000010 RID: 16
internal class WebSocket
{
// Token: 0x06000012 RID: 18 RVA: 0x0000418C File Offset: 0x0000238C
// Token: 0x06000031 RID: 49 RVA: 0x000066D4 File Offset: 0x000048D4
public WebSocket()
{
WebSocketServer webSocketServer = new WebSocketServer(string.Format("ws://localhost:20161"));
WebSocketServer webSocketServer = new WebSocketServer(string.Format("ws://localhost:20161", Array.Empty<object>()));
webSocketServer.AddWebSocketService<WebSocket.NotificationV2>("/api/notification/v2");
webSocketServer.AddWebSocketService<WebSocket.NotificationV2>("/hub/v1");
webSocketServer.Start();
Console.WriteLine("WebSocket.cs has started.");
Console.WriteLine("WebSocket.cs is listening.");
Console.WriteLine("[WebSocket.cs] has started.");
Console.WriteLine("[WebSocket.cs] is listening.");
}
// Token: 0x02000058 RID: 88
public class NotificationV2 : WebSocketBehavior
{
// Token: 0x06000013 RID: 19 RVA: 0x0000209D File Offset: 0x0000029D
// Token: 0x0600023F RID: 575 RVA: 0x0000BDF8 File Offset: 0x00009FF8
protected override void OnMessage(MessageEventArgs e)
{
Console.WriteLine("WebSocket.cs called for.");
base.Send(Notification.ProcessRequest(e.Data));
if (new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/banned.txt").Contains(File.ReadAllText("SaveData\\Profile\\userid.txt")))
bool flag = new WebClient().DownloadString("https://raw.githubusercontent.com/recroom2016/OpenRec/master/Update/banned.txt").Contains(File.ReadAllText("SaveData\\Profile\\userid.txt"));
if (flag)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("You are banned. Using this version of OpenRec will not work, please download OpenRec 0.4.2 or prior.");
Console.ForegroundColor = ConsoleColor.Green;
start.Program.bannedflag = true;
Program.bannedflag = true;
}
}
}

View File

@@ -1,19 +1,20 @@
using System;
using System.IO;
using System.Runtime.CompilerServices;
using server;
namespace vaultgamesesh
{
// Token: 0x02000004 RID: 4
// Token: 0x02000007 RID: 7
internal sealed class c000020
{
// Token: 0x0600000C RID: 12 RVA: 0x0000225C File Offset: 0x0000045C
// Token: 0x0600001A RID: 26 RVA: 0x00002B20 File Offset: 0x00000D20
public static c000020.c000022 m000027()
{
bool flag = c000041.f000013 == null;
bool flag2 = flag;
bool flag3 = flag2;
c000041.c000044 gameSession;
if (flag2)
if (flag3)
{
gameSession = c000041.m00002f();
}
@@ -23,25 +24,20 @@ namespace vaultgamesesh
}
return new c000020.c000022
{
PlayerId = APIServer.CachedPlayerID,
PlayerId = Convert.ToUInt64(File.ReadAllText("SaveData\\Profile\\userid.txt")),
IsOnline = true,
PlayerType = 2,
GameSession = gameSession
};
}
// Token: 0x02000026 RID: 38
public enum enum021
{
}
// Token: 0x02000027 RID: 39
// Token: 0x0200003C RID: 60
public sealed class c000022
{
// Token: 0x17000035 RID: 53
// (get) Token: 0x060000CE RID: 206 RVA: 0x0000B1F8 File Offset: 0x000093F8
// (set) Token: 0x060000CF RID: 207 RVA: 0x0000B210 File Offset: 0x00009410
// Token: 0x17000088 RID: 136
// (get) Token: 0x0600017E RID: 382 RVA: 0x0000A768 File Offset: 0x00008968
// (set) Token: 0x0600017F RID: 383 RVA: 0x0000A780 File Offset: 0x00008980
public ulong PlayerId
{
[CompilerGenerated]
@@ -56,9 +52,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000036 RID: 54
// (get) Token: 0x060000D0 RID: 208 RVA: 0x0000B21C File Offset: 0x0000941C
// (set) Token: 0x060000D1 RID: 209 RVA: 0x0000B234 File Offset: 0x00009434
// Token: 0x17000089 RID: 137
// (get) Token: 0x06000180 RID: 384 RVA: 0x0000A78C File Offset: 0x0000898C
// (set) Token: 0x06000181 RID: 385 RVA: 0x0000A7A4 File Offset: 0x000089A4
public bool IsOnline
{
[CompilerGenerated]
@@ -73,9 +69,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000037 RID: 55
// (get) Token: 0x060000D2 RID: 210 RVA: 0x0000B240 File Offset: 0x00009440
// (set) Token: 0x060000D3 RID: 211 RVA: 0x0000B258 File Offset: 0x00009458
// Token: 0x1700008A RID: 138
// (get) Token: 0x06000182 RID: 386 RVA: 0x0000A7B0 File Offset: 0x000089B0
// (set) Token: 0x06000183 RID: 387 RVA: 0x0000A7C8 File Offset: 0x000089C8
public int PlayerType
{
[CompilerGenerated]
@@ -90,9 +86,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000038 RID: 56
// (get) Token: 0x060000D4 RID: 212 RVA: 0x0000B264 File Offset: 0x00009464
// (set) Token: 0x060000D5 RID: 213 RVA: 0x0000B27C File Offset: 0x0000947C
// Token: 0x1700008B RID: 139
// (get) Token: 0x06000184 RID: 388 RVA: 0x0000A7D4 File Offset: 0x000089D4
// (set) Token: 0x06000185 RID: 389 RVA: 0x0000A7EC File Offset: 0x000089EC
public c000041.c000044 GameSession
{
[CompilerGenerated]
@@ -107,16 +103,16 @@ namespace vaultgamesesh
}
}
// Token: 0x04000071 RID: 113
// Token: 0x040000C4 RID: 196
private ulong f000001;
// Token: 0x04000072 RID: 114
// Token: 0x040000C5 RID: 197
private bool f000037;
// Token: 0x04000073 RID: 115
// Token: 0x040000C6 RID: 198
private int f000020;
// Token: 0x04000074 RID: 116
// Token: 0x040000C7 RID: 199
private c000041.c000044 f000038;
}
}

View File

@@ -2,15 +2,15 @@
using System.Collections.Generic;
using System.IO;
using System.Runtime.CompilerServices;
using server;
using Newtonsoft.Json;
using server;
namespace vaultgamesesh
{
// Token: 0x02000006 RID: 6
// Token: 0x02000008 RID: 8
internal sealed class c00005d
{
// Token: 0x06000011 RID: 17 RVA: 0x0000264C File Offset: 0x0000084C
// Token: 0x0600001C RID: 28 RVA: 0x00002B94 File Offset: 0x00000D94
public static Dictionary<string, c00005d.c000060> m00003a()
{
Dictionary<string, c00005d.c000060> dictionary = new Dictionary<string, c00005d.c000060>();
@@ -22,6 +22,8 @@ namespace vaultgamesesh
}
return dictionary;
}
// Token: 0x0600001D RID: 29 RVA: 0x00002BFC File Offset: 0x00000DFC
public static List<c00005d.c000061> m000035()
{
List<c00005d.c000061> list = new List<c00005d.c000061>();
@@ -31,7 +33,8 @@ namespace vaultgamesesh
}
return list;
}
// Token: 0x06000012 RID: 18 RVA: 0x00002688 File Offset: 0x00000888
// Token: 0x0600001E RID: 30 RVA: 0x00002C6C File Offset: 0x00000E6C
public static Dictionary<string, c00005d.c000060> m00003b()
{
Dictionary<string, c00005d.c000060> result;
@@ -52,13 +55,14 @@ namespace vaultgamesesh
return result;
}
// Token: 0x06000013 RID: 19 RVA: 0x000026E8 File Offset: 0x000008E8
// Token: 0x0600001F RID: 31 RVA: 0x00002CC4 File Offset: 0x00000EC4
public static c00005d.c000060 m000023(int p0)
{
foreach (KeyValuePair<string, c00005d.c000060> keyValuePair in c00005d.f000050)
{
bool flag = keyValuePair.Value.Room.RoomId == (ulong)((long)p0);
if (flag)
bool flag2 = flag;
if (flag2)
{
return keyValuePair.Value;
}
@@ -66,7 +70,7 @@ namespace vaultgamesesh
return c00005d.f000050["DormRoom"];
}
// Token: 0x0400000D RID: 13
// Token: 0x04000008 RID: 8
public static Dictionary<string, c00005d.c000060> f000024 = new Dictionary<string, c00005d.c000060>
{
{
@@ -326,7 +330,7 @@ namespace vaultgamesesh
}
};
// Token: 0x0400000E RID: 14
// Token: 0x04000009 RID: 9
public static Dictionary<string, c00005d.c000060> f000050 = new Dictionary<string, c00005d.c000060>
{
{
@@ -341,7 +345,7 @@ namespace vaultgamesesh
ReleaseStatus = 2,
ReplicationId = "DormRoom",
CreatorPlayerId = APIServer.CachedPlayerID,
ImageName = "Dorm.png",
ImageName = "DefaultRoomImage.jpg",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -399,7 +403,7 @@ namespace vaultgamesesh
Name = "RecCenter",
Description = "A social hub to meet and mingle with friends new and old.",
CreatorPlayerId = APIServer.CachedPlayerID,
ImageName = "RecCenter.png",
ImageName = "22eefa3219f046fd9e2090814650ede3",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -455,7 +459,7 @@ namespace vaultgamesesh
Name = "3DCharades",
Description = "Take turns drawing, acting, and guessing funny phrases with your friends!",
CreatorPlayerId = 782441001UL,
ImageName = "ActivityCharades.png",
ImageName = "a446d5808ed14401a27f53e631c31b93.png",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -505,7 +509,7 @@ namespace vaultgamesesh
Name = "DiscGolfLake",
Description = "Throw your disc into the goal. Sounds easy, right?",
CreatorPlayerId = 782441001UL,
ImageName = "DiscGolfLake.png",
ImageName = "52cf6c3271894ecd95fb0c9b2d2209a7",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -560,7 +564,7 @@ namespace vaultgamesesh
Name = "DiscGolfPropulsion",
Description = "Throw your disc through hazards and around wind machines on this challenging course!",
CreatorPlayerId = 782441001UL,
ImageName = "DiscGolfPropulsion.png",
ImageName = "fc9a1acc47514b64a30d199d5ccdeca9",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -615,7 +619,7 @@ namespace vaultgamesesh
Name = "Dodgeball",
Description = "Throw dodgeballs to knock out your friends in this gym classic!",
CreatorPlayerId = 782441001UL,
ImageName = "Dodgeball.png",
ImageName = "6d5c494668784816bbc41d9b870e5003",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -670,7 +674,7 @@ namespace vaultgamesesh
Name = "Paddleball",
Description = "A simple rally game between two players in a plexiglass tube with a zero-g ball.",
CreatorPlayerId = 782441001UL,
ImageName = "ActivityPaddleball.png",
ImageName = "ffdca6ed8bd94631ac15e3e894acb6c6",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -725,7 +729,7 @@ namespace vaultgamesesh
Name = "Paintball",
Description = "Red and Blue teams splat each other in capture the flag and team battle.",
CreatorPlayerId = 782441001UL,
ImageName = "Paintball.png",
ImageName = "93a53ced93a04f658795a87f4a4aab85",
State = 0,
Accessibility = 1,
SupportsLevelVoting = true,
@@ -828,7 +832,7 @@ namespace vaultgamesesh
Name = "GoldenTrophy",
Description = "The goblin king stole Coach's Golden Trophy. Team up and embark on an epic quest to recover it!",
CreatorPlayerId = 782441001UL,
ImageName = "Golden.png",
ImageName = "38e9d0d4eff94556a0b106508249dcf9",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -883,7 +887,7 @@ namespace vaultgamesesh
Name = "TheRiseofJumbotron",
Description = "Robot invaders threaten the galaxy! Team up with your friends and bring the laser heat!",
CreatorPlayerId = 782441001UL,
ImageName = "Jumbo.png",
ImageName = "51296f28105b48178708e389b6daf057",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -938,7 +942,7 @@ namespace vaultgamesesh
Name = "CrimsonCauldron",
Description = "Can your band of adventurers brave the enchanted wilds, and lift the curse of the crimson cauldron?",
CreatorPlayerId = 782441001UL,
ImageName = "Crimson.png",
ImageName = "3ab82779dff94d11920ebf38df249395",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -993,7 +997,7 @@ namespace vaultgamesesh
Name = "IsleOfLostSkulls",
Description = "Can your pirate crew get to the Isle, defeat its fearsome guardian, and escape with the gold?",
CreatorPlayerId = 782441001UL,
ImageName = "Isle.png",
ImageName = "45ad53aa002646d0ab3eb509b9f260ef",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1048,7 +1052,7 @@ namespace vaultgamesesh
Name = "Soccer",
Description = "Teams of three run around slamming themselves into an over-sized soccer ball. Goal!",
CreatorPlayerId = 782441001UL,
ImageName = "Soccer.png",
ImageName = "51c6f5ac5e6f4777b573e7e43f8a85ea",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1103,7 +1107,7 @@ namespace vaultgamesesh
Name = "LaserTag",
Description = "Teams battle each other and waves of robots.",
CreatorPlayerId = 782441001UL,
ImageName = "LaserTag.png",
ImageName = "c5a72193d6904811b2d0195a6deb3125",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1170,7 +1174,7 @@ namespace vaultgamesesh
Name = "RecRoyaleSquads",
Description = "Squads of three battle it out on Frontier Island. Last squad standing wins!",
CreatorPlayerId = APIServer.CachedPlayerID,
ImageName = "ActivityRecRoyale.png",
ImageName = "69fc525056014e39a435c4d2fdf2b887",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1225,7 +1229,7 @@ namespace vaultgamesesh
Name = "RecRoyaleSolos",
Description = "Battle it out on Frontier Island. Last person standing wins!",
CreatorPlayerId = APIServer.CachedPlayerID,
ImageName = "RecRoyale.png",
ImageName = "f9e112bb67fb430d979e5ad6c2c116d4",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1280,7 +1284,7 @@ namespace vaultgamesesh
Name = "Lounge",
Description = "A low-key lounge to chill with your friends. Great for private parties!",
CreatorPlayerId = APIServer.CachedPlayerID,
ImageName = "Lounge.png",
ImageName = "3e8c2458f1e542ab8aa275e4083ee47a",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1314,7 +1318,7 @@ namespace vaultgamesesh
{
new c00005d.c000063
{
Tag = "recroomoriginal",
Tag = "rro",
Type = 2
}
}
@@ -1330,7 +1334,7 @@ namespace vaultgamesesh
Name = "Park",
Description = "A sprawling park with amphitheater, play fields, and a cave.",
CreatorPlayerId = 782441001UL,
ImageName = "Park.png",
ImageName = "79ee7af2532247f397867e48daa9d264.png",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1380,7 +1384,7 @@ namespace vaultgamesesh
Name = "QuestForDraucula",
Description = "Embark on a quest to murder some goblins and skeletons, then jump through an empty doorway to the voidlands in this beta quest!",
CreatorPlayerId = 782441001UL,
ImageName = "DraccIsBack.png",
ImageName = "d0df003353914adfaecdd23f428208b6",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1430,7 +1434,7 @@ namespace vaultgamesesh
Name = "Bowling",
Description = "shut up coffeeman this bowling description was so annoying",
CreatorPlayerId = 782441001UL,
ImageName = "bowling.png",
ImageName = "4d143a3359e8483e8d48116ab6cacecb",
State = 0,
Accessibility = 1,
SupportsLevelVoting = false,
@@ -1481,10 +1485,10 @@ namespace vaultgamesesh
{
Room = new c00005d.c000061
{
RoomId = 29UL,
RoomId = Convert.ToUInt64(File.ReadAllText("SaveData\\Rooms\\Downloaded\\roomid.txt")),
Name = File.ReadAllText("SaveData\\Rooms\\Downloaded\\roomname.txt"),
Description = "OpenRec Downloaded Custom Room",
CreatorPlayerId = APIServer.CachedPlayerID,
CreatorPlayerId = Convert.ToUInt64(File.ReadAllText("SaveData\\Profile\\userid.txt")),
ImageName = File.ReadAllText("SaveData\\Rooms\\Downloaded\\imagename.txt"),
State = 0,
Accessibility = 1,
@@ -1500,7 +1504,7 @@ namespace vaultgamesesh
new c00005d.c00005f
{
RoomSceneId = 1L,
RoomId = 29UL,
RoomId = Convert.ToUInt64(File.ReadAllText("SaveData\\Rooms\\Downloaded\\roomid.txt")),
RoomSceneLocationId = File.ReadAllText("SaveData\\Rooms\\Downloaded\\roomsceneid.txt"),
Name = "Home",
IsSandbox = true,
@@ -1519,32 +1523,31 @@ namespace vaultgamesesh
{
new c00005d.c000063
{
Tag = "rro",
Tag = "custom",
Type = 2
},
new c00005d.c000063
{
Tag = "sport",
Tag = "",
Type = 0
}
}
}
}
};
// Token: 0x0200002B RID: 43
// Token: 0x0200003D RID: 61
public enum enum05e
{
}
// Token: 0x0200002C RID: 44
// Token: 0x0200003E RID: 62
public sealed class c00005f
{
// Token: 0x1700004A RID: 74
// (get) Token: 0x060000FB RID: 251 RVA: 0x0000B4F0 File Offset: 0x000096F0
// (set) Token: 0x060000FC RID: 252 RVA: 0x0000B508 File Offset: 0x00009708
// Token: 0x1700008C RID: 140
// (get) Token: 0x06000187 RID: 391 RVA: 0x0000A800 File Offset: 0x00008A00
// (set) Token: 0x06000188 RID: 392 RVA: 0x0000A818 File Offset: 0x00008A18
public long RoomSceneId
{
[CompilerGenerated]
@@ -1559,9 +1562,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700004B RID: 75
// (get) Token: 0x060000FD RID: 253 RVA: 0x0000B514 File Offset: 0x00009714
// (set) Token: 0x060000FE RID: 254 RVA: 0x0000B52C File Offset: 0x0000972C
// Token: 0x1700008D RID: 141
// (get) Token: 0x06000189 RID: 393 RVA: 0x0000A824 File Offset: 0x00008A24
// (set) Token: 0x0600018A RID: 394 RVA: 0x0000A83C File Offset: 0x00008A3C
public ulong RoomId
{
[CompilerGenerated]
@@ -1576,9 +1579,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700004C RID: 76
// (get) Token: 0x060000FF RID: 255 RVA: 0x0000B538 File Offset: 0x00009738
// (set) Token: 0x06000100 RID: 256 RVA: 0x0000B550 File Offset: 0x00009750
// Token: 0x1700008E RID: 142
// (get) Token: 0x0600018B RID: 395 RVA: 0x0000A848 File Offset: 0x00008A48
// (set) Token: 0x0600018C RID: 396 RVA: 0x0000A860 File Offset: 0x00008A60
public string RoomSceneLocationId
{
[CompilerGenerated]
@@ -1593,9 +1596,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700004D RID: 77
// (get) Token: 0x06000101 RID: 257 RVA: 0x0000B55C File Offset: 0x0000975C
// (set) Token: 0x06000102 RID: 258 RVA: 0x0000B574 File Offset: 0x00009774
// Token: 0x1700008F RID: 143
// (get) Token: 0x0600018D RID: 397 RVA: 0x0000A86C File Offset: 0x00008A6C
// (set) Token: 0x0600018E RID: 398 RVA: 0x0000A884 File Offset: 0x00008A84
public string Name
{
[CompilerGenerated]
@@ -1610,9 +1613,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700004E RID: 78
// (get) Token: 0x06000103 RID: 259 RVA: 0x0000B580 File Offset: 0x00009780
// (set) Token: 0x06000104 RID: 260 RVA: 0x0000B598 File Offset: 0x00009798
// Token: 0x17000090 RID: 144
// (get) Token: 0x0600018F RID: 399 RVA: 0x0000A890 File Offset: 0x00008A90
// (set) Token: 0x06000190 RID: 400 RVA: 0x0000A8A8 File Offset: 0x00008AA8
public bool IsSandbox
{
[CompilerGenerated]
@@ -1627,9 +1630,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700004F RID: 79
// (get) Token: 0x06000105 RID: 261 RVA: 0x0000B5A4 File Offset: 0x000097A4
// (set) Token: 0x06000106 RID: 262 RVA: 0x0000B5BC File Offset: 0x000097BC
// Token: 0x17000091 RID: 145
// (get) Token: 0x06000191 RID: 401 RVA: 0x0000A8B4 File Offset: 0x00008AB4
// (set) Token: 0x06000192 RID: 402 RVA: 0x0000A8CC File Offset: 0x00008ACC
public string DataBlobName
{
[CompilerGenerated]
@@ -1644,9 +1647,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000050 RID: 80
// (get) Token: 0x06000107 RID: 263 RVA: 0x0000B5C8 File Offset: 0x000097C8
// (set) Token: 0x06000108 RID: 264 RVA: 0x0000B5E0 File Offset: 0x000097E0
// Token: 0x17000092 RID: 146
// (get) Token: 0x06000193 RID: 403 RVA: 0x0000A8D8 File Offset: 0x00008AD8
// (set) Token: 0x06000194 RID: 404 RVA: 0x0000A8F0 File Offset: 0x00008AF0
public int MaxPlayers
{
[CompilerGenerated]
@@ -1661,9 +1664,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000051 RID: 81
// (get) Token: 0x06000109 RID: 265 RVA: 0x0000B5EC File Offset: 0x000097EC
// (set) Token: 0x0600010A RID: 266 RVA: 0x0000B604 File Offset: 0x00009804
// Token: 0x17000093 RID: 147
// (get) Token: 0x06000195 RID: 405 RVA: 0x0000A8FC File Offset: 0x00008AFC
// (set) Token: 0x06000196 RID: 406 RVA: 0x0000A914 File Offset: 0x00008B14
public bool CanMatchmakeInto
{
[CompilerGenerated]
@@ -1678,9 +1681,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000052 RID: 82
// (get) Token: 0x0600010B RID: 267 RVA: 0x0000B610 File Offset: 0x00009810
// (set) Token: 0x0600010C RID: 268 RVA: 0x0000B628 File Offset: 0x00009828
// Token: 0x17000094 RID: 148
// (get) Token: 0x06000197 RID: 407 RVA: 0x0000A920 File Offset: 0x00008B20
// (set) Token: 0x06000198 RID: 408 RVA: 0x0000A938 File Offset: 0x00008B38
public DateTime DataModifiedAt
{
[CompilerGenerated]
@@ -1695,70 +1698,70 @@ namespace vaultgamesesh
}
}
// Token: 0x17000053 RID: 83
// (get) Token: 0x0600010D RID: 269 RVA: 0x0000B632 File Offset: 0x00009832
// (set) Token: 0x0600010E RID: 270 RVA: 0x0000B63A File Offset: 0x0000983A
// Token: 0x17000095 RID: 149
// (get) Token: 0x06000199 RID: 409 RVA: 0x0000A942 File Offset: 0x00008B42
// (set) Token: 0x0600019A RID: 410 RVA: 0x0000A94A File Offset: 0x00008B4A
public string ReplicationId { get; set; }
// Token: 0x17000054 RID: 84
// (get) Token: 0x0600010F RID: 271 RVA: 0x0000B643 File Offset: 0x00009843
// (set) Token: 0x06000110 RID: 272 RVA: 0x0000B64B File Offset: 0x0000984B
// Token: 0x17000096 RID: 150
// (get) Token: 0x0600019B RID: 411 RVA: 0x0000A953 File Offset: 0x00008B53
// (set) Token: 0x0600019C RID: 412 RVA: 0x0000A95B File Offset: 0x00008B5B
public bool UseLevelBasedMatchmaking { get; set; }
// Token: 0x17000055 RID: 85
// (get) Token: 0x06000111 RID: 273 RVA: 0x0000B654 File Offset: 0x00009854
// (set) Token: 0x06000112 RID: 274 RVA: 0x0000B65C File Offset: 0x0000985C
// Token: 0x17000097 RID: 151
// (get) Token: 0x0600019D RID: 413 RVA: 0x0000A964 File Offset: 0x00008B64
// (set) Token: 0x0600019E RID: 414 RVA: 0x0000A96C File Offset: 0x00008B6C
public bool UseAgeBasedMatchmaking { get; set; }
// Token: 0x17000056 RID: 86
// (get) Token: 0x06000113 RID: 275 RVA: 0x0000B665 File Offset: 0x00009865
// (set) Token: 0x06000114 RID: 276 RVA: 0x0000B66D File Offset: 0x0000986D
// Token: 0x17000098 RID: 152
// (get) Token: 0x0600019F RID: 415 RVA: 0x0000A975 File Offset: 0x00008B75
// (set) Token: 0x060001A0 RID: 416 RVA: 0x0000A97D File Offset: 0x00008B7D
public bool UseRecRoyaleMatchmaking { get; set; }
// Token: 0x17000057 RID: 87
// (get) Token: 0x06000115 RID: 277 RVA: 0x0000B676 File Offset: 0x00009876
// (set) Token: 0x06000116 RID: 278 RVA: 0x0000B67E File Offset: 0x0000987E
// Token: 0x17000099 RID: 153
// (get) Token: 0x060001A1 RID: 417 RVA: 0x0000A986 File Offset: 0x00008B86
// (set) Token: 0x060001A2 RID: 418 RVA: 0x0000A98E File Offset: 0x00008B8E
public int ReleaseStatus { get; set; }
// Token: 0x17000058 RID: 88
// (get) Token: 0x06000117 RID: 279 RVA: 0x0000B687 File Offset: 0x00009887
// (set) Token: 0x06000118 RID: 280 RVA: 0x0000B68F File Offset: 0x0000988F
// Token: 0x1700009A RID: 154
// (get) Token: 0x060001A3 RID: 419 RVA: 0x0000A997 File Offset: 0x00008B97
// (set) Token: 0x060001A4 RID: 420 RVA: 0x0000A99F File Offset: 0x00008B9F
public bool SupportsJoinInProgress { get; set; }
// Token: 0x0400008F RID: 143
// Token: 0x040000CF RID: 207
private long f00002c;
// Token: 0x04000090 RID: 144
// Token: 0x040000D0 RID: 208
private ulong f000023;
// Token: 0x04000091 RID: 145
// Token: 0x040000D1 RID: 209
private string f000003;
// Token: 0x04000092 RID: 146
// Token: 0x040000D2 RID: 210
private string f000035;
// Token: 0x04000093 RID: 147
// Token: 0x040000D3 RID: 211
private bool f000073;
// Token: 0x04000094 RID: 148
// Token: 0x040000D4 RID: 212
private string f00000e;
// Token: 0x04000095 RID: 149
// Token: 0x040000D5 RID: 213
private int f000007;
// Token: 0x04000096 RID: 150
// Token: 0x040000D6 RID: 214
private bool f000017;
// Token: 0x04000097 RID: 151
// Token: 0x040000D7 RID: 215
private DateTime f000074;
}
// Token: 0x0200002D RID: 45
// Token: 0x0200003F RID: 63
public sealed class c000060
{
// Token: 0x17000059 RID: 89
// (get) Token: 0x0600011A RID: 282 RVA: 0x0000B6A4 File Offset: 0x000098A4
// (set) Token: 0x0600011B RID: 283 RVA: 0x0000B6BC File Offset: 0x000098BC
// Token: 0x1700009B RID: 155
// (get) Token: 0x060001A6 RID: 422 RVA: 0x0000A9B4 File Offset: 0x00008BB4
// (set) Token: 0x060001A7 RID: 423 RVA: 0x0000A9CC File Offset: 0x00008BCC
public c00005d.c000061 Room
{
[CompilerGenerated]
@@ -1773,9 +1776,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700005A RID: 90
// (get) Token: 0x0600011C RID: 284 RVA: 0x0000B6C8 File Offset: 0x000098C8
// (set) Token: 0x0600011D RID: 285 RVA: 0x0000B6E0 File Offset: 0x000098E0
// Token: 0x1700009C RID: 156
// (get) Token: 0x060001A8 RID: 424 RVA: 0x0000A9D8 File Offset: 0x00008BD8
// (set) Token: 0x060001A9 RID: 425 RVA: 0x0000A9F0 File Offset: 0x00008BF0
public List<c00005d.c00005f> Scenes
{
[CompilerGenerated]
@@ -1790,9 +1793,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700005B RID: 91
// (get) Token: 0x0600011E RID: 286 RVA: 0x0000B6EC File Offset: 0x000098EC
// (set) Token: 0x0600011F RID: 287 RVA: 0x0000B704 File Offset: 0x00009904
// Token: 0x1700009D RID: 157
// (get) Token: 0x060001AA RID: 426 RVA: 0x0000A9FC File Offset: 0x00008BFC
// (set) Token: 0x060001AB RID: 427 RVA: 0x0000AA14 File Offset: 0x00008C14
public List<int> CoOwners
{
[CompilerGenerated]
@@ -1807,9 +1810,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700005C RID: 92
// (get) Token: 0x06000120 RID: 288 RVA: 0x0000B710 File Offset: 0x00009910
// (set) Token: 0x06000121 RID: 289 RVA: 0x0000B728 File Offset: 0x00009928
// Token: 0x1700009E RID: 158
// (get) Token: 0x060001AC RID: 428 RVA: 0x0000AA20 File Offset: 0x00008C20
// (set) Token: 0x060001AD RID: 429 RVA: 0x0000AA38 File Offset: 0x00008C38
public List<int> InvitedCoOwners
{
[CompilerGenerated]
@@ -1824,9 +1827,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700005D RID: 93
// (get) Token: 0x06000122 RID: 290 RVA: 0x0000B734 File Offset: 0x00009934
// (set) Token: 0x06000123 RID: 291 RVA: 0x0000B74C File Offset: 0x0000994C
// Token: 0x1700009F RID: 159
// (get) Token: 0x060001AE RID: 430 RVA: 0x0000AA44 File Offset: 0x00008C44
// (set) Token: 0x060001AF RID: 431 RVA: 0x0000AA5C File Offset: 0x00008C5C
public List<int> Hosts
{
[CompilerGenerated]
@@ -1841,9 +1844,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700005E RID: 94
// (get) Token: 0x06000124 RID: 292 RVA: 0x0000B758 File Offset: 0x00009958
// (set) Token: 0x06000125 RID: 293 RVA: 0x0000B770 File Offset: 0x00009970
// Token: 0x170000A0 RID: 160
// (get) Token: 0x060001B0 RID: 432 RVA: 0x0000AA68 File Offset: 0x00008C68
// (set) Token: 0x060001B1 RID: 433 RVA: 0x0000AA80 File Offset: 0x00008C80
public List<int> InvitedHosts
{
[CompilerGenerated]
@@ -1858,9 +1861,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700005F RID: 95
// (get) Token: 0x06000126 RID: 294 RVA: 0x0000B77C File Offset: 0x0000997C
// (set) Token: 0x06000127 RID: 295 RVA: 0x0000B794 File Offset: 0x00009994
// Token: 0x170000A1 RID: 161
// (get) Token: 0x060001B2 RID: 434 RVA: 0x0000AA8C File Offset: 0x00008C8C
// (set) Token: 0x060001B3 RID: 435 RVA: 0x0000AAA4 File Offset: 0x00008CA4
public int CheerCount
{
[CompilerGenerated]
@@ -1875,9 +1878,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000060 RID: 96
// (get) Token: 0x06000128 RID: 296 RVA: 0x0000B7A0 File Offset: 0x000099A0
// (set) Token: 0x06000129 RID: 297 RVA: 0x0000B7B8 File Offset: 0x000099B8
// Token: 0x170000A2 RID: 162
// (get) Token: 0x060001B4 RID: 436 RVA: 0x0000AAB0 File Offset: 0x00008CB0
// (set) Token: 0x060001B5 RID: 437 RVA: 0x0000AAC8 File Offset: 0x00008CC8
public int FavoriteCount
{
[CompilerGenerated]
@@ -1892,9 +1895,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000061 RID: 97
// (get) Token: 0x0600012A RID: 298 RVA: 0x0000B7C4 File Offset: 0x000099C4
// (set) Token: 0x0600012B RID: 299 RVA: 0x0000B7DC File Offset: 0x000099DC
// Token: 0x170000A3 RID: 163
// (get) Token: 0x060001B6 RID: 438 RVA: 0x0000AAD4 File Offset: 0x00008CD4
// (set) Token: 0x060001B7 RID: 439 RVA: 0x0000AAEC File Offset: 0x00008CEC
public int VisitCount
{
[CompilerGenerated]
@@ -1909,9 +1912,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000062 RID: 98
// (get) Token: 0x0600012C RID: 300 RVA: 0x0000B7E8 File Offset: 0x000099E8
// (set) Token: 0x0600012D RID: 301 RVA: 0x0000B800 File Offset: 0x00009A00
// Token: 0x170000A4 RID: 164
// (get) Token: 0x060001B8 RID: 440 RVA: 0x0000AAF8 File Offset: 0x00008CF8
// (set) Token: 0x060001B9 RID: 441 RVA: 0x0000AB10 File Offset: 0x00008D10
public List<c00005d.c000063> Tags
{
[CompilerGenerated]
@@ -1926,37 +1929,37 @@ namespace vaultgamesesh
}
}
// Token: 0x04000098 RID: 152
// Token: 0x040000D8 RID: 216
private c00005d.c000061 f00002d;
// Token: 0x04000099 RID: 153
// Token: 0x040000D9 RID: 217
private List<c00005d.c00005f> f000031;
// Token: 0x0400009A RID: 154
// Token: 0x040000DA RID: 218
private List<int> f000034;
// Token: 0x0400009B RID: 155
// Token: 0x040000DB RID: 219
private List<int> f00002a;
// Token: 0x0400009C RID: 156
// Token: 0x040000DC RID: 220
private int f000005;
// Token: 0x0400009D RID: 157
// Token: 0x040000DD RID: 221
private int f000006;
// Token: 0x0400009E RID: 158
// Token: 0x040000DE RID: 222
private int f000007;
// Token: 0x0400009F RID: 159
// Token: 0x040000DF RID: 223
private List<c00005d.c000063> f000075;
}
// Token: 0x0200002E RID: 46
// Token: 0x02000040 RID: 64
public sealed class c000061
{
// Token: 0x17000063 RID: 99
// (get) Token: 0x0600012F RID: 303 RVA: 0x0000B814 File Offset: 0x00009A14
// (set) Token: 0x06000130 RID: 304 RVA: 0x0000B82C File Offset: 0x00009A2C
// Token: 0x170000A5 RID: 165
// (get) Token: 0x060001BB RID: 443 RVA: 0x0000AB24 File Offset: 0x00008D24
// (set) Token: 0x060001BC RID: 444 RVA: 0x0000AB3C File Offset: 0x00008D3C
public ulong RoomId
{
[CompilerGenerated]
@@ -1971,9 +1974,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000064 RID: 100
// (get) Token: 0x06000131 RID: 305 RVA: 0x0000B838 File Offset: 0x00009A38
// (set) Token: 0x06000132 RID: 306 RVA: 0x0000B850 File Offset: 0x00009A50
// Token: 0x170000A6 RID: 166
// (get) Token: 0x060001BD RID: 445 RVA: 0x0000AB48 File Offset: 0x00008D48
// (set) Token: 0x060001BE RID: 446 RVA: 0x0000AB60 File Offset: 0x00008D60
public string Name
{
[CompilerGenerated]
@@ -1988,9 +1991,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000065 RID: 101
// (get) Token: 0x06000133 RID: 307 RVA: 0x0000B85C File Offset: 0x00009A5C
// (set) Token: 0x06000134 RID: 308 RVA: 0x0000B874 File Offset: 0x00009A74
// Token: 0x170000A7 RID: 167
// (get) Token: 0x060001BF RID: 447 RVA: 0x0000AB6C File Offset: 0x00008D6C
// (set) Token: 0x060001C0 RID: 448 RVA: 0x0000AB84 File Offset: 0x00008D84
public string Description
{
[CompilerGenerated]
@@ -2005,9 +2008,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000066 RID: 102
// (get) Token: 0x06000135 RID: 309 RVA: 0x0000B880 File Offset: 0x00009A80
// (set) Token: 0x06000136 RID: 310 RVA: 0x0000B898 File Offset: 0x00009A98
// Token: 0x170000A8 RID: 168
// (get) Token: 0x060001C1 RID: 449 RVA: 0x0000AB90 File Offset: 0x00008D90
// (set) Token: 0x060001C2 RID: 450 RVA: 0x0000ABA8 File Offset: 0x00008DA8
public ulong CreatorPlayerId
{
[CompilerGenerated]
@@ -2022,9 +2025,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000067 RID: 103
// (get) Token: 0x06000137 RID: 311 RVA: 0x0000B8A4 File Offset: 0x00009AA4
// (set) Token: 0x06000138 RID: 312 RVA: 0x0000B8BC File Offset: 0x00009ABC
// Token: 0x170000A9 RID: 169
// (get) Token: 0x060001C3 RID: 451 RVA: 0x0000ABB4 File Offset: 0x00008DB4
// (set) Token: 0x060001C4 RID: 452 RVA: 0x0000ABCC File Offset: 0x00008DCC
public string ImageName
{
[CompilerGenerated]
@@ -2039,9 +2042,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000068 RID: 104
// (get) Token: 0x06000139 RID: 313 RVA: 0x0000B8C8 File Offset: 0x00009AC8
// (set) Token: 0x0600013A RID: 314 RVA: 0x0000B8E0 File Offset: 0x00009AE0
// Token: 0x170000AA RID: 170
// (get) Token: 0x060001C5 RID: 453 RVA: 0x0000ABD8 File Offset: 0x00008DD8
// (set) Token: 0x060001C6 RID: 454 RVA: 0x0000ABF0 File Offset: 0x00008DF0
public int State
{
[CompilerGenerated]
@@ -2056,9 +2059,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000069 RID: 105
// (get) Token: 0x0600013B RID: 315 RVA: 0x0000B8EC File Offset: 0x00009AEC
// (set) Token: 0x0600013C RID: 316 RVA: 0x0000B904 File Offset: 0x00009B04
// Token: 0x170000AB RID: 171
// (get) Token: 0x060001C7 RID: 455 RVA: 0x0000ABFC File Offset: 0x00008DFC
// (set) Token: 0x060001C8 RID: 456 RVA: 0x0000AC14 File Offset: 0x00008E14
public int Accessibility
{
[CompilerGenerated]
@@ -2073,9 +2076,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700006A RID: 106
// (get) Token: 0x0600013D RID: 317 RVA: 0x0000B910 File Offset: 0x00009B10
// (set) Token: 0x0600013E RID: 318 RVA: 0x0000B928 File Offset: 0x00009B28
// Token: 0x170000AC RID: 172
// (get) Token: 0x060001C9 RID: 457 RVA: 0x0000AC20 File Offset: 0x00008E20
// (set) Token: 0x060001CA RID: 458 RVA: 0x0000AC38 File Offset: 0x00008E38
public bool SupportsLevelVoting
{
[CompilerGenerated]
@@ -2090,9 +2093,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700006B RID: 107
// (get) Token: 0x0600013F RID: 319 RVA: 0x0000B934 File Offset: 0x00009B34
// (set) Token: 0x06000140 RID: 320 RVA: 0x0000B94C File Offset: 0x00009B4C
// Token: 0x170000AD RID: 173
// (get) Token: 0x060001CB RID: 459 RVA: 0x0000AC44 File Offset: 0x00008E44
// (set) Token: 0x060001CC RID: 460 RVA: 0x0000AC5C File Offset: 0x00008E5C
public bool IsAGRoom
{
[CompilerGenerated]
@@ -2107,9 +2110,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700006C RID: 108
// (get) Token: 0x06000141 RID: 321 RVA: 0x0000B958 File Offset: 0x00009B58
// (set) Token: 0x06000142 RID: 322 RVA: 0x0000B970 File Offset: 0x00009B70
// Token: 0x170000AE RID: 174
// (get) Token: 0x060001CD RID: 461 RVA: 0x0000AC68 File Offset: 0x00008E68
// (set) Token: 0x060001CE RID: 462 RVA: 0x0000AC80 File Offset: 0x00008E80
public bool CloningAllowed
{
[CompilerGenerated]
@@ -2124,9 +2127,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700006D RID: 109
// (get) Token: 0x06000143 RID: 323 RVA: 0x0000B97C File Offset: 0x00009B7C
// (set) Token: 0x06000144 RID: 324 RVA: 0x0000B994 File Offset: 0x00009B94
// Token: 0x170000AF RID: 175
// (get) Token: 0x060001CF RID: 463 RVA: 0x0000AC8C File Offset: 0x00008E8C
// (set) Token: 0x060001D0 RID: 464 RVA: 0x0000ACA4 File Offset: 0x00008EA4
public bool SupportsScreens
{
[CompilerGenerated]
@@ -2141,9 +2144,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700006E RID: 110
// (get) Token: 0x06000145 RID: 325 RVA: 0x0000B9A0 File Offset: 0x00009BA0
// (set) Token: 0x06000146 RID: 326 RVA: 0x0000B9B8 File Offset: 0x00009BB8
// Token: 0x170000B0 RID: 176
// (get) Token: 0x060001D1 RID: 465 RVA: 0x0000ACB0 File Offset: 0x00008EB0
// (set) Token: 0x060001D2 RID: 466 RVA: 0x0000ACC8 File Offset: 0x00008EC8
public bool SupportsWalkVR
{
[CompilerGenerated]
@@ -2158,9 +2161,9 @@ namespace vaultgamesesh
}
}
// Token: 0x1700006F RID: 111
// (get) Token: 0x06000147 RID: 327 RVA: 0x0000B9C4 File Offset: 0x00009BC4
// (set) Token: 0x06000148 RID: 328 RVA: 0x0000B9DC File Offset: 0x00009BDC
// Token: 0x170000B1 RID: 177
// (get) Token: 0x060001D3 RID: 467 RVA: 0x0000ACD4 File Offset: 0x00008ED4
// (set) Token: 0x060001D4 RID: 468 RVA: 0x0000ACEC File Offset: 0x00008EEC
public bool SupportsTeleportVR
{
[CompilerGenerated]
@@ -2175,62 +2178,62 @@ namespace vaultgamesesh
}
}
// Token: 0x17000070 RID: 112
// (get) Token: 0x06000149 RID: 329 RVA: 0x0000B9E6 File Offset: 0x00009BE6
// (set) Token: 0x0600014A RID: 330 RVA: 0x0000B9EE File Offset: 0x00009BEE
// Token: 0x170000B2 RID: 178
// (get) Token: 0x060001D5 RID: 469 RVA: 0x0000ACF6 File Offset: 0x00008EF6
// (set) Token: 0x060001D6 RID: 470 RVA: 0x0000ACFE File Offset: 0x00008EFE
public string ReplicationId { get; set; }
// Token: 0x17000071 RID: 113
// (get) Token: 0x0600014B RID: 331 RVA: 0x0000B9F7 File Offset: 0x00009BF7
// (set) Token: 0x0600014C RID: 332 RVA: 0x0000B9FF File Offset: 0x00009BFF
// Token: 0x170000B3 RID: 179
// (get) Token: 0x060001D7 RID: 471 RVA: 0x0000AD07 File Offset: 0x00008F07
// (set) Token: 0x060001D8 RID: 472 RVA: 0x0000AD0F File Offset: 0x00008F0F
public int ReleaseStatus { get; set; }
// Token: 0x040000A2 RID: 162
// Token: 0x040000E2 RID: 226
private ulong f000001;
// Token: 0x040000A3 RID: 163
// Token: 0x040000E3 RID: 227
private string f000002;
// Token: 0x040000A4 RID: 164
// Token: 0x040000E4 RID: 228
private string f000003;
// Token: 0x040000A5 RID: 165
// Token: 0x040000E5 RID: 229
private ulong f000076;
// Token: 0x040000A6 RID: 166
// Token: 0x040000E6 RID: 230
private string f000036;
// Token: 0x040000A7 RID: 167
// Token: 0x040000E7 RID: 231
private int f000006;
// Token: 0x040000A8 RID: 168
// Token: 0x040000E8 RID: 232
private int f000007;
// Token: 0x040000A9 RID: 169
// Token: 0x040000E9 RID: 233
private bool f000017;
// Token: 0x040000AA RID: 170
// Token: 0x040000EA RID: 234
private bool f000077;
// Token: 0x040000AB RID: 171
// Token: 0x040000EB RID: 235
private bool f000018;
// Token: 0x040000AC RID: 172
// Token: 0x040000EC RID: 236
private bool f000019;
// Token: 0x040000AD RID: 173
// Token: 0x040000ED RID: 237
private bool f00001a;
// Token: 0x040000AE RID: 174
// Token: 0x040000EE RID: 238
private bool f00001b;
}
// Token: 0x0200002F RID: 47
// Token: 0x02000041 RID: 65
public sealed class c000062
{
// Token: 0x17000072 RID: 114
// (get) Token: 0x0600014E RID: 334 RVA: 0x0000BA14 File Offset: 0x00009C14
// (set) Token: 0x0600014F RID: 335 RVA: 0x0000BA2C File Offset: 0x00009C2C
// Token: 0x170000B4 RID: 180
// (get) Token: 0x060001DA RID: 474 RVA: 0x0000AD24 File Offset: 0x00008F24
// (set) Token: 0x060001DB RID: 475 RVA: 0x0000AD3C File Offset: 0x00008F3C
public string RoomName
{
[CompilerGenerated]
@@ -2245,9 +2248,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000073 RID: 115
// (get) Token: 0x06000150 RID: 336 RVA: 0x0000BA38 File Offset: 0x00009C38
// (set) Token: 0x06000151 RID: 337 RVA: 0x0000BA50 File Offset: 0x00009C50
// Token: 0x170000B5 RID: 181
// (get) Token: 0x060001DC RID: 476 RVA: 0x0000AD48 File Offset: 0x00008F48
// (set) Token: 0x060001DD RID: 477 RVA: 0x0000AD60 File Offset: 0x00008F60
public long RoomId
{
[CompilerGenerated]
@@ -2262,9 +2265,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000074 RID: 116
// (get) Token: 0x06000152 RID: 338 RVA: 0x0000BA5C File Offset: 0x00009C5C
// (set) Token: 0x06000153 RID: 339 RVA: 0x0000BA74 File Offset: 0x00009C74
// Token: 0x170000B6 RID: 182
// (get) Token: 0x060001DE RID: 478 RVA: 0x0000AD6C File Offset: 0x00008F6C
// (set) Token: 0x060001DF RID: 479 RVA: 0x0000AD84 File Offset: 0x00008F84
public string ImageName
{
[CompilerGenerated]
@@ -2279,22 +2282,22 @@ namespace vaultgamesesh
}
}
// Token: 0x040000AF RID: 175
// Token: 0x040000EF RID: 239
private string f00000a;
// Token: 0x040000B0 RID: 176
// Token: 0x040000F0 RID: 240
private long f00002e;
// Token: 0x040000B1 RID: 177
// Token: 0x040000F1 RID: 241
private string f000003;
}
// Token: 0x02000030 RID: 48
// Token: 0x02000042 RID: 66
public sealed class c000063
{
// Token: 0x17000075 RID: 117
// (get) Token: 0x06000155 RID: 341 RVA: 0x0000BA88 File Offset: 0x00009C88
// (set) Token: 0x06000156 RID: 342 RVA: 0x0000BAA0 File Offset: 0x00009CA0
// Token: 0x170000B7 RID: 183
// (get) Token: 0x060001E1 RID: 481 RVA: 0x0000AD98 File Offset: 0x00008F98
// (set) Token: 0x060001E2 RID: 482 RVA: 0x0000ADB0 File Offset: 0x00008FB0
public string Tag
{
[CompilerGenerated]
@@ -2309,9 +2312,9 @@ namespace vaultgamesesh
}
}
// Token: 0x17000076 RID: 118
// (get) Token: 0x06000157 RID: 343 RVA: 0x0000BAAC File Offset: 0x00009CAC
// (set) Token: 0x06000158 RID: 344 RVA: 0x0000BAC4 File Offset: 0x00009CC4
// Token: 0x170000B8 RID: 184
// (get) Token: 0x060001E3 RID: 483 RVA: 0x0000ADBC File Offset: 0x00008FBC
// (set) Token: 0x060001E4 RID: 484 RVA: 0x0000ADD4 File Offset: 0x00008FD4
public int Type
{
[CompilerGenerated]
@@ -2326,32 +2329,32 @@ namespace vaultgamesesh
}
}
// Token: 0x040000B2 RID: 178
// Token: 0x040000F2 RID: 242
private string f00000a;
// Token: 0x040000B3 RID: 179
// Token: 0x040000F3 RID: 243
private int f00000b;
}
// Token: 0x02000031 RID: 49
// Token: 0x02000043 RID: 67
public enum enum064
{
}
// Token: 0x02000032 RID: 50
// Token: 0x02000044 RID: 68
public enum enum065
{
}
// Token: 0x02000033 RID: 51
// Token: 0x02000045 RID: 69
public enum enum066
{
}
// Token: 0x02000034 RID: 52
// Token: 0x02000046 RID: 70
public enum enum067
{