Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[RotMG] How to edit rank tags and how to add ranks

Newbie Spellweaver
Joined
Jan 27, 2016
Messages
50
Reaction score
32
You navigate to player.cs which is located in wServer>Realm>Entities>Player>Player.cs
Search for this
Code:
             [B]this[/B].[I]psr[/I] = psr;
            [I]statsMgr[/I] = [COLOR=#008b8b][B]new[/B][/COLOR] [COLOR=#004085]StatsManager[/COLOR]([B]this[/B]);
            [COLOR=#0000ff][B]switch[/B][/COLOR](psr.Account.[I]Rank[/I]) {
Under this will be
Code:
                 [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]0[/COLOR]:
                    Name = psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]1[/COLOR]:
                    Name = [COLOR=#0000ff]"[Helper] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]2[/COLOR]:
                    Name = [COLOR=#0000ff]"[Donator] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]3[/COLOR]:
                    Name = [COLOR=#0000ff]"[Moderator] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]4[/COLOR]:
                    Name = [COLOR=#0000ff]"[Developer] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]5[/COLOR]:
                    Name = [COLOR=#0000ff]"[HDeveloper] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]6[/COLOR]:
                    Name = [COLOR=#0000ff]"[Co-Owner] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000ff][B]case[/B][/COLOR] [COLOR=#00008b]7[/COLOR]:
                    Name = [COLOR=#0000ff]"[Owner] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                    
            }
To change the title of a rank you just rename what is inside the "[]" So you could change "[Owner] " to, "[Founder] "

I will now show you an example of how to add a rank
Code:
                    Name = [COLOR=#0000FF]"[Developer] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]5[/COLOR]:
Copy and pasting this and then change the rank name
Code:
                    Name = [COLOR=#0000FF]"[Ragezone] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]5[/COLOR]:
I will then place this in the list wherever i want it to be in the ladder of authority
Code:
                 [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]0[/COLOR]:
                    Name = psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]1[/COLOR]:
                    Name = [COLOR=#0000FF]"[Helper] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]2[/COLOR]:
                    Name = [COLOR=#0000FF]"[Donator] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]3[/COLOR]:
                    Name = [COLOR=#0000FF]"[Moderator] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]4[/COLOR]:
                    Name = [COLOR=#0000FF]"[Ragezone] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]5[/COLOR]:
                    Name = [COLOR=#0000FF]"[Developer] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]5[/COLOR]:
                    Name = [COLOR=#0000FF]"[HDeveloper] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]6[/COLOR]:
                    Name = [COLOR=#0000FF]"[Co-Owner] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]7[/COLOR]:
                    Name = [COLOR=#0000FF]"[Owner] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                    
            }
I now have two rank 5's ("case 5:" is rank 5) so i increase the value of all of them going up by one so that it is continuously increasing in value such as 1, 2, 3, 4...
it should now look like this
Code:
                 [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]0[/COLOR]:
                    Name = psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]1[/COLOR]:
                    Name = [COLOR=#0000FF]"[Helper] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]2[/COLOR]:
                    Name = [COLOR=#0000FF]"[Donator] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]3[/COLOR]:
                    Name = [COLOR=#0000FF]"[Moderator] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]4[/COLOR]:
                    Name = [COLOR=#0000FF]"[Ragezone] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008B]5[/COLOR]:
                    Name = [COLOR=#0000FF]"[Developer] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008b]6[/COLOR]:
                    Name = [COLOR=#0000FF]"[HDeveloper] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008b]7[/COLOR]:
                    Name = [COLOR=#0000FF]"[Co-Owner] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                [COLOR=#0000FF][B]case[/B][/COLOR] [COLOR=#00008b]8[/COLOR]:
                    Name = [COLOR=#0000FF]"[Owner] "[/COLOR] + psr.Account.Name; [COLOR=#000080]break[/COLOR];
                    
            }
This means that the "Ragezone" rank is a rank under developer and a rank over Moderator. To add this to the /rank command list you navigate to admincommands.cs which is located at wServer>Realm>Entities>Commands>admincommands.cs
You then navigate to
Code:
     [COLOR=#ff0000]class[/COLOR] [COLOR=#004085]Rank[/COLOR] : [COLOR=#004085]ICommand[/COLOR]
    {
        [COLOR=#0000ff][B]public[/B][/COLOR] [COLOR=#ff0000]string[/COLOR] Command { [COLOR=#8b4513]get[/COLOR] { [COLOR=#000080]return[/COLOR] [COLOR=#0000ff]"rank"[/COLOR]; } }
        [COLOR=#0000ff][B]public[/B][/COLOR] [COLOR=#ff0000][B]int[/B][/COLOR] RequiredRank { [COLOR=#8b4513]get[/COLOR] { [COLOR=#000080]return[/COLOR] [COLOR=#00008b]4[/COLOR]; } }

        [COLOR=#0000ff][B]public[/B][/COLOR] [COLOR=#ff0000]void[/COLOR] [COLOR=#191970][B]Execute[/B][/COLOR]([COLOR=#004085]Player[/COLOR] player, [COLOR=#ff0000]string[/COLOR][] args)
        {
            [COLOR=#0000ff][B]if[/B][/COLOR] (args.Length < [COLOR=#00008b]2[/COLOR])
            {
                player.[COLOR=#191970][B]SendHelp[/B][/COLOR]([COLOR=#0000ff]"Usage: /rank <username> <number>\n0: Player\n1: Donator\n2: Game Master\n3: Developer\n4: Head Developer\n5: Admin"[/COLOR]);
            }
            [COLOR=#0000ff][B]else[/B][/COLOR]
            {
                [COLOR=#008080][B]try[/B][/COLOR]
                {
                    [COLOR=#008000][B]using[/B][/COLOR] ([COLOR=#004085]Database[/COLOR] dbx = [COLOR=#008b8b][B]new[/B][/COLOR] [COLOR=#004085]Database[/COLOR]())
                    {
                        var cmd = dbx.[COLOR=#191970][B]CreateQuery[/B][/COLOR]();
                        cmd.CommandText = [COLOR=#0000ff]"UPDATE accounts SET rank=@rank WHERE name=@name"[/COLOR];
                        cmd.Parameters.[COLOR=#191970][B]AddWithValue[/B][/COLOR]([COLOR=#0000ff]"@rank"[/COLOR], args[[COLOR=#00008b]1[/COLOR]]);
                        cmd.Parameters.[COLOR=#191970][B]AddWithValue[/B][/COLOR]([COLOR=#0000ff]"@name"[/COLOR], args[[COLOR=#00008b]0[/COLOR]]);
                        [COLOR=#0000ff][B]if[/B][/COLOR] (cmd.[COLOR=#191970][B]ExecuteNonQuery[/B][/COLOR]() == [COLOR=#00008b]0[/COLOR])
                        {
                            player.[COLOR=#191970][B]SendInfo[/B][/COLOR]([COLOR=#0000ff]"Could not change rank"[/COLOR]);
                        }
                        [COLOR=#0000ff][B]else[/B][/COLOR]
                            player.[COLOR=#191970][B]SendInfo[/B][/COLOR]([COLOR=#0000ff]"Account rank successfully changed"[/COLOR]);
                    }
                }
                [COLOR=#008080][B]catch[/B][/COLOR]
                {
                    player.[COLOR=#191970][B]SendInfo[/B][/COLOR]([COLOR=#0000ff]"Could not change rank, please change rank in database"[/COLOR]);
                }
            }
        }
    }
or alternatively ctrl+f "/rank"

You then edit this "Usage: /rank <username> <number>\n0: Player\n1: Donator\n2: Game Master\n3: Developer\n4: Head Developer\n5: Admin"

"n3: Developer" means that /rank (players name) 3 makes them a developer so we re organise this as in this it says that case 3 is developer (This is a unorganized command which i will do now i do apologise for not adding the other commands prior to this)

You should replace the text inside usage if you replaced the rank part of player.cs with mine
Code:
([COLOR=#0000FF]"Usage: /rank <username> <number>\n0: Player\n1: Helper\n2: Donator\n3: Moderator\n4: Ragezone\n5: Developer\n6: Head Developer\n7: Co-Owner\n8: Owner"[/COLOR]);
Thank you for reading this and hope you put this to use to manage your servers ;)

Please support us by helping us make a section by speaking your mind at this link
http://forum.ragezone.com/f600/section-request-realm-mad-god-1092999/index2.html
 
Back
Top