Full Version : Double XML points
xmlspawner >>XMLPoints Discussion >>Double XML points
<< Prev | Next >>
Morsoseth- 03-11-2008
First of all, let me say that this XML points system is simply incredible and your hard work is definitely appreciated Arte.
I have a few questions. If you're a high ranking pvper and you cash in points for something using the point reward stone, do you lose rank when those points are cashed in? If so, is there a way to keep rank after cashing in points?
Also, is there a way for faction points to be converted into double XML points as a way for factions to gain more popularity? For instance, if a faction member has 25 faction kills, is there a way he can exchange them for 50 XML points?
Thanks for reading.
ArteGordon- 03-12-2008
you actually cash in credits rather than points, so rankings will not be affected. Because credits are given in the same way and at the same time as points, it can appear that they are the same thing, but they arent.
That also means that you can give out different amounts of credits and points for things like faction kills as you suggested.
Here is the code in XmlPoints.cs that controls that

CODE
int killedpoints = 0; // give the killer his points, either a fixed amount or scaled by the difference with the points of the killed // if the killed has more points than the killed then gain more ArrayList list = XmlAttach.FindAttachments(killed, typeof(XmlPoints));
if (list != null && list.Count > 0)
{
killedpoints = ((XmlPoints)list[0]).Points;
}
int val = (int)((killedpoints - Points) * m_WinScale);
if (val <= 0) val = 1;
Points += val;
int cval = (int)((killedpoints - Points) * m_CreditScale);
if (cval <= 0) cval = 1;
Credits += cval;

you could add a multiplier for faction kills in there before you assign credits, like

CODE
if (Faction.Find(killer) !=null && Faction.Find(killed) != null && Faction.Find(killer) != Faction.Find(killed)) { cval *= 2; }

Morsoseth- 03-14-2008
Thanks for the quick reply Arte. Its refreshing to see someone that stands behind their work the way you do.