Custom Loyalty - Kill - Death - & Rank system removal?

WarFace

Citizen
ai1328.photobucket.com_albums_w535_Robertbrownmo_title_zpsd77de3a9.jpg

How would i go about removing this rank, kill, death, & loyalty rep system from players names. Thanks for all those who devote there time to servuo you guys are just great people.
 

cmileto

Citizen
I think you can remove it by commenting this in playermobile.cs (not sure if this has other effects though....)
Code:
 /*#region QueensLoyaltySystem			  // Queens Loyalty System
 
			if (m_Exp >= m_LevelExp)
			{
				while (m_Exp >= m_LevelExp)
				{
					m_Exp -= m_LevelExp;
					m_Level += 1;
					m_LevelExp = (long)(1000 * (Math.Pow(1.4, m_Level)));
				}
			}
 
			if (m_Exp < 0)
			{
				while (m_Exp < 0)
				{
					if (m_Level == 0) m_Exp = 0;
					else
					{
						m_LevelExp = (long)(1000 * (Math.Pow(1.4, m_Level - 1)));
						m_Exp += (long)(m_LevelExp);
						m_Level -= 1;
					}
				}
		}
 
			m_LevelExp = (long)(1000 * (Math.Pow(1.4, m_Level)));
 
			if (AccessLevel == AccessLevel.Player || AccessLevel == AccessLevel.Counselor)
			{
				if (m_Level == 0) m_ExpTitle = "TerMur-guest";
				else if (m_Level >= 1 && m_Level <= 5) m_ExpTitle = "Friend of TerMur";
				else if (m_Level >= 6 && m_Level <= 10) m_ExpTitle = "Friend of TerMur";
				else if (m_Level >= 11 && m_Level <= 15) m_ExpTitle = "Friend of TerMur";
				else if (m_Level >= 16 && m_Level <= 20) m_ExpTitle = "Friend of TerMur";
				else if (m_Level >= 21 && m_Level <= 25) m_ExpTitle = "Friend of TerMur";
				else if (m_Level >= 26 && m_Level <= 30) m_ExpTitle = "A Citizen of TerMur";
				else if (m_Level >= 31 && m_Level <= 35) m_ExpTitle = "A Citizen of TerMur";
				else if (m_Level >= 36 && m_Level <= 40) m_ExpTitle = "A Citizen of TerMur";
				else if (m_Level >= 41 && m_Level <= 45) m_ExpTitle = "A Citizen of TerMur";
				else if (m_Level >= 46 && m_Level <= 50) m_ExpTitle = "A Citizen of TerMur";
				else if (m_Level >= 51 && m_Level <= 60) m_ExpTitle = "A Citizen of TerMur";
				else if (m_Level >= 61 && m_Level <= 70) m_ExpTitle = "A Noble of Termur";
				else if (m_Level >= 71 && m_Level <= 80) m_ExpTitle = "A Noble of Termur";
				else if (m_Level >= 80 && m_Level <= 100) m_ExpTitle = "A Noble of Termur";
				else if (m_Level >= 101) m_ExpTitle = "A Noble of Termur";
			}
			else
			{
				m_ExpTitle = "Staff: ";
				if (AccessLevel == AccessLevel.GameMaster) m_ExpTitle += "GameMaster";
				else if (AccessLevel == AccessLevel.Seer) m_ExpTitle += "Seer";
				else if (AccessLevel == AccessLevel.Administrator) m_ExpTitle += "Administrator";
				else if (AccessLevel == AccessLevel.Developer) m_ExpTitle += "Developer";
				else if (AccessLevel == AccessLevel.Owner) m_ExpTitle += "Owner";
			}
 
			list.Add(String.Concat("Queens Loyalty Level: ", String.Format("<BASEFONT COLOR={0}>{1}", "#FF0000", m_Level), "  ", String.Format("<BASEFONT COLOR={0}>{1}", "#000FFF", (int)(100 * m_Exp / m_LevelExp)), " %  ", String.Format("<BASEFONT COLOR={0}>{1}", "#0FFF00", m_ExpTitle))); InvalidateMyRunUO();
			#endregion*/
 

WarFace

Citizen
Yes thank you it did have some errors i had to bypass but got though them, your playersmobile.cs file is way diffrent then mine hmm.

the things i had to do & this is for future server owners that want to fix this problem do this

On line 4109: jot out this
Code:
else if (IsPlayer())
{
//list.Add(1070722, "Kills {0} / Deaths {1} : Rank={2}", a.Kills, a.Deaths, a.Rank);
}
}

then on line 4196 - 4310
Code:
if (IsPlayer())
{
//#region QueensLoyaltySystem
//if (m_Exp >= m_LevelExp)
//{
// while (m_Exp >= m_LevelExp)
// {
// m_Exp -= m_LevelExp;
// m_Level += 1;
// m_LevelExp = (long)(1000 * (Math.Pow(1.4, m_Level)));
// }
//}
//
//if (m_Exp < 0)
//{
// while (m_Exp < 0)
// {
// if (m_Level == 0)
// {
// m_Exp = 0;
// }
// else
// {
// m_LevelExp = (long)(1000 * (Math.Pow(1.4, m_Level - 1)));
// m_Exp += (m_LevelExp);
// m_Level -= 1;
// }
// }
//}
//
//m_LevelExp = (long)(1000 * (Math.Pow(1.4, m_Level)));
//if (m_Level == 0)
//{
// m_ExpTitle = "TerMur-guest";
//}
//else if (m_Level >= 1 && m_Level <= 5)
//{
// m_ExpTitle = "Friend of TerMur";
//}
//else if (m_Level >= 6 && m_Level <= 10)
//{
// m_ExpTitle = "Friend of TerMur";
//}
//else if (m_Level >= 11 && m_Level <= 15)
//{
// m_ExpTitle = "Friend of TerMur";
//}
//else if (m_Level >= 16 && m_Level <= 20)
//{
// m_ExpTitle = "Friend of TerMur";
//}
//else if (m_Level >= 21 && m_Level <= 25)
//{
// m_ExpTitle = "Friend of TerMur";
//}
//else if (m_Level >= 26 && m_Level <= 30)
//{
// m_ExpTitle = "A Citizen of TerMur";
//}
//else if (m_Level >= 31 && m_Level <= 35)
//{
// m_ExpTitle = "A Citizen of TerMur";
//}
//else if (m_Level >= 36 && m_Level <= 40)
//{
// m_ExpTitle = "A Citizen of TerMur";
//}
//else if (m_Level >= 41 && m_Level <= 45)
//{
// m_ExpTitle = "A Citizen of TerMur";
//}
//else if (m_Level >= 46 && m_Level <= 50)
//{
// m_ExpTitle = "A Citizen of TerMur";
//}
//else if (m_Level >= 51 && m_Level <= 60)
//{
// m_ExpTitle = "A Citizen of TerMur";
//}
//else if (m_Level >= 61 && m_Level <= 70)
//{
// m_ExpTitle = "A Noble of Termur";
//}
//else if (m_Level >= 71 && m_Level <= 80)
//{
// m_ExpTitle = "A Noble of Termur";
//}
//else if (m_Level >= 80 && m_Level <= 100)
//{
// m_ExpTitle = "A Noble of Termur";
//}
//else if (m_Level >= 101)
//{
// m_ExpTitle = "A Noble of Termur";
//}
 
 
 
 
// Xml spawner 3.26c QueensLoyaltyTitle
//XmlData QueenTitle = (XmlData)XmlAttach.FindAttachment(this, typeof(XmlData), "QueenTitle");
//
//if (QueenTitle != null && QueenTitle.Data == "True")
//{
// return;
//}
//else
//{
// list.Add(
// String.Concat(
// "Queens Loyalty Level: ",
// String.Format("<BASEFONT COLOR={0}>{1}", "#FF0000", m_Level),
// "  ",
// String.Format("<BASEFONT COLOR={0}>{1}", "#000FFF", (int)(100 * m_Exp / m_LevelExp)),
// " %  ",
// String.Format("<BASEFONT COLOR={0}>{1}", "#0FFF00", m_ExpTitle)));
// InvalidateMyRunUO();
//}
// Xml Spawner 3.26c QueensLoyaltyTitle
//#endregion

This will allow you to successfully remove the kil death & rank along with the loyalty title below your players name.

Im trying to match OSI base because OSI dont have this in there game.
 

cmileto

Citizen
Actually UO does (or at least did). I think it came in publish 60.
http://www.uoguide.com/Publish_60

i think you needed certain amount of loyalty points to place a house in termur and other stuff.
I think Gargolyes are supposed to start with 2000 points, not sure if this part works.
 
Last edited:

WarFace

Citizen
I know the loyalty part is osi correct just not the title below your name. I play OSI till this day and there is no title system below your character name.
 

Hank

Squire
*hic* I remember first seeing it this way on orb 3.0
Could be something that wasn't finished when trying to replicate a OSI/EA quest but I'm not sure.
*hic*
 

Ravenwolfe

Moderator
ServUO Developer
I would suggest just commenting the list.Add part of the queens loyalty system instead of commenting that whole block. I know that title is stored on playermobile and some of that code may have use now or in the future.

On my shard, I just commented out the list.Add in both places you mentioned. Its not needed to comment it all.
 

tass23

Moderator
Hank said:
Could be something that wasn't finished when trying to replicate a OSI/EA quest but I'm not sure.

Zagros designed the Queen's Loyalty system to be used as an XmlAttachment. That is why it is displayed as you see it hovering over players. Raven is correct, just commenting the list.Add in the above mentioned places will remove the title display on players, but the system itself will still be in effect.
 

Dexter_Lexia

Administrator
ServUO Developer
Thread successfully necrod. I worked on this system a bit, mostly the housing portion and a table for the monsters/quests in the recent commit. After reading the link above, EA will introduce other types of loyalty systems. This makes me wonder if the entire system should be rewritten to support adding new loyalties in the future. In doing so, I would get rid of the title on the player from mouse over (not EA accurate) and remove all code from PlayerMobile.cs and have the system keep its data internally. Removing the serialize/deserialize would be easy but an eye sore, which is why I don't like serializing stuff like this is major base classes like PlayerMobile.
 

Hank

Squire
@Ravenwolfe over on JustUO spent some time reworking the queen's loyalty system in the code. Maybe if he is willing and has time he could fill us in.
I started working on a pull request with his work but never finished.