Ok Here is a temp fix for the prof problem. I know it doesn't work well but it works

it gives you the prof you need to put the weapons you need on.
First of all I would like to say Thank you guys for releasing this to the public. This is a good source to start out with.
Ok Go to Commands.cs. You can put this anywhere in there but I put it just under the command for /save.
Code:
else if (Splitter[0] == "/save")
{
Database.UpdateClientsCharacter(Client);
return 2;
}
}
So under that put this
Code:
if (Splitter[0] == "/wskill" || Splitter[0] == "/prof")
{
string SkillType_TS = Splitter[1];
int SkillType_S;
int SkillType_I;
if (Splitter[1] == "blade")
{
SkillType_I = Convert.ToInt32("410");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "sword")
{
SkillType_I = Convert.ToInt32("420");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "bow")
{
SkillType_I = Convert.ToInt32("500");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "club")
{
SkillType_I = Convert.ToInt32("480");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "bs")
{
SkillType_I = Convert.ToInt32("421");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "hook")
{
SkillType_I = Convert.ToInt32("430");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "whip")
{
SkillType_I = Convert.ToInt32("440");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "mace")
{
SkillType_I = Convert.ToInt32("441");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "axe")
{
SkillType_I = Convert.ToInt32("450");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "hammer")
{
SkillType_I = Convert.ToInt32("460");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "scepter")
{
SkillType_I = Convert.ToInt32("481");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "dagger")
{
SkillType_I = Convert.ToInt32("490");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "glaive")
{
SkillType_I = Convert.ToInt32("510");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "poleaxe")
{
SkillType_I = Convert.ToInt32("530");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "spear")
{
SkillType_I = Convert.ToInt32("560");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "longhammer")
{
SkillType_I = Convert.ToInt32("540");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "halbert")
{
SkillType_I = Convert.ToInt32("580");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
else if (Splitter[1] == "wand")
{
SkillType_I = Convert.ToInt32("561");
string SkillLevel_S = Splitter[2];
int SkillLevel_I = Convert.ToInt32(SkillLevel_S);
Client.Char.PreviousCommand = Splitter[1];
Client.SendData(Prof.Skill(SkillType_I, SkillLevel_I));
return 2;
}
}
Than you going to put this file that is attached in your Coserver Folder.
Than complie etc.
There you go prof works:P
The command is /prof <name of prof> and <level>
If you have an question just post here or pm me

For example /prof blade 20
UPDATE: Fix the error on the return and fixed the if else and fixed the prof file wasn't configed right so enjoy