Skip to content
This repository has been archived by the owner on Oct 1, 2024. It is now read-only.

Commit

Permalink
Reauth Feature + Browser Mode
Browse files Browse the repository at this point in the history
  • Loading branch information
ic3w0lf22 committed Jun 3, 2020
1 parent b255133 commit a7d657a
Show file tree
Hide file tree
Showing 6 changed files with 106 additions and 15 deletions.
4 changes: 2 additions & 2 deletions RBX Alt Manager/Account.cs
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,10 @@ public string JoinServer(long PlaceID, string JobID = "", bool FollowUser = fals
if (result != null)
Token = (string)result.Value;
else
return "ERROR: Account Session Expired, right click the account and press re-auth. (1)";
return "ERROR: Account Session Expired, right click the account and press re-auth or try again. (1)";

if (string.IsNullOrEmpty(Token) || result == null)
return "ERROR: Account Session Expired, right click the account and press re-auth. (2)";
return "ERROR: Account Session Expired, right click the account and press re-auth or try again. (2)";

request = new RestRequest("/v1/authentication-ticket/", Method.POST);
request.AddCookie(".ROBLOSECURITY", SecurityToken);
Expand Down
10 changes: 9 additions & 1 deletion RBX Alt Manager/AccountAdder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ public partial class AccountAdder : Form
{
private delegate void SafeCallDelegate();
private string SecurityToken;
public bool BrowserMode = false;
public string SetUsername = "";

public AccountAdder()
{
Expand Down Expand Up @@ -72,6 +74,12 @@ public void ClearData()

private async void OnPageLoaded(object sender, FrameLoadEndEventArgs args)
{
if (!string.IsNullOrEmpty(SetUsername))
{
chromeBrowser.ExecuteScriptAsyncWhenPageLoaded($"document.getElementById('login-username').value='{SetUsername}'");
SetUsername = "";
}

if (args.Url.Contains("my/account/json"))
{
string src = await args.Frame.GetSourceAsync();
Expand All @@ -86,7 +94,7 @@ private async void OnNavigated(object sender, AddressChangedEventArgs args)
{
string url = args.Address;

if (url.Contains("/home"))
if (!BrowserMode && url.Contains("/home"))
{
var cookieManager = Cef.GetGlobalCookieManager();

Expand Down
42 changes: 33 additions & 9 deletions RBX Alt Manager/AccountManager.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

40 changes: 38 additions & 2 deletions RBX Alt Manager/AccountManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -119,12 +119,18 @@ public void AddAccountToList(Account account)
public static void AddAccount(string SecurityToken, string UserData)
{
Account account = new Account();

string res = account.Validate(SecurityToken, UserData);

if (res == "Success")
{
AccountsList.Add(account);
Account exists = AccountsList.FirstOrDefault(acc => acc.UserID == account.UserID);

if (exists != null)
exists.SecurityToken = account.SecurityToken;
else
AccountsList.Add(account);

Program.MainForm.AddAccountToList(account);
SaveAccounts();
}
Expand Down Expand Up @@ -230,6 +236,7 @@ private void Add_Click(object sender, EventArgs e)
if (aaform != null && aaform.Visible)
aaform.HideForm();

aaform.BrowserMode = false;
aaform.ShowForm();
}

Expand Down Expand Up @@ -572,5 +579,34 @@ private void AccountManager_FormClosed(object sender, FormClosedEventArgs e)
{
ManagerKey.SetValue("SavedPlaceId", PlaceID.Text);
}

private void BrowserButton_Click(object sender, EventArgs e)
{
if (SelectedAccount == null) return;

if (aaform != null && aaform.Visible)
aaform.HideForm();

aaform.ShowForm();
aaform.BrowserMode = true;
CefSharp.Cookie ck = new CefSharp.Cookie();
ck.Name = ".ROBLOSECURITY";
ck.Value = SelectedAccount.SecurityToken;
CefSharp.Cef.GetGlobalCookieManager().SetCookie("https://www.roblox.com", ck);
aaform.chromeBrowser.Load("https://www.roblox.com/home");
}

private void reAuthToolStripMenuItem_Click(object sender, EventArgs e)
{
if (SelectedAccount == null) return;

if (aaform != null && aaform.Visible)
aaform.HideForm();

aaform.BrowserMode = false;
aaform.ShowForm();

aaform.SetUsername = SelectedAccount.Username;
}
}
}
23 changes: 23 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Roblox Account Manager
Application that allows you to add multiple accounts into one application allowing you to easily play on alt accounts without having to change accounts

Useful for games that require grinding off other players, or storage accounts that hold in game items or currency, or just to have multiple accounts that you can easily find and use.

You are welcome to edit the code and create pull requests if it'll benefit this project.

Report bugs to the issues section or direct message me via discord @ ic3#0001

# Download
To install this, head over to the [Releases](https://github.com/ic3w0lf22/Roblox-Account-Manager/releases) section and download the rar file at the very top, once downloaded, extract the files into a folder on your desktop and run RBX Alt Manager.exe.

To use rbx-join, make sure to run RegisterRbxJoinProtocol.exe first and if you haven't accepted the handle EULA, run handle.exe and it'll automatically close after clicking accept.

# TO DO
- [ ] Add privateServerLinkCode to the VIP server functionality
- [x] Fix rbx-join not working with hide usernames on
- [x] Save the PlaceId content
- [ ] Add the games section
- [ ] Add Re-auth option to accounts context menu

# Preview
![github-large](Images/Image1.png)
2 changes: 1 addition & 1 deletion rbx-join/rbx-join.cs
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ private void AccountsView_MouseDoubleClick(object sender, MouseEventArgs e)
pipe.Connect(5000);
pipe.ReadMode = PipeTransmissionMode.Message;

string Account = self.Text.Contains(":") ? self.Text.Substring(0, self.Text.IndexOf(":")) : self.Text;
// string Account = self.Text.Contains(":") ? self.Text.Substring(0, self.Text.IndexOf(":")) : self.Text;

byte[] bytes = Encoding.Default.GetBytes("play-" + self.Name + "-" + PlaceId + (!string.IsNullOrEmpty(JobId) ? "-" + JobId : ""));
pipe.Write(bytes, 0, bytes.Length);
Expand Down

0 comments on commit a7d657a

Please sign in to comment.