|
You last visited: Today at 06:45
Advertisement
Finding player stats?
Discussion on Finding player stats? within the Shaiya Private Server forum part of the Shaiya category.
05/13/2012, 01:12
|
#1
|
elite*gold: 0
Join Date: Dec 2009
Posts: 59
Received Thanks: 9
|
Finding player stats?
Is there a way as a GM to see a players stats if any is given to them in game. This means if a GM gives a player stats on say hp is there a way to check a players stats to see if stas were added?
|
|
|
05/13/2012, 12:38
|
#2
|
elite*gold: 0
Join Date: Jan 2010
Posts: 525
Received Thanks: 805
|
Yes of course i created a script to see what gm's is doing in game here be all.
Create a file named db_connect.php
Code:
<?php
error_reporting(E_ALL ^ E_NOTICE);
$host = 'localhost';
$username = 'Server Name';
$pass = 'Server Password';
$link = @mssql_connect($host, $username, $pass) or Die("Failed to connect to MSSQL server");
?>
This file GMlog.php
Code:
<?php
// Database configuration parameters
include "db_connect.php";
//Form Data
$ip = $_SERVER['REMOTE_ADDR'];
$count = 1;
$query = ('SELECT * FROM PS_GameLog.dbo.ActionLog WHERE ActionType=180');
$result = mssql_query($query);
echo "<html><head><STYLE TYPE=\"text/css\">
<!--
td { background:url(image.png) no-repeat; }
td.i0{ background-position: 0 0; width: 28px; height: 16px; }
td.i1{ background-position: 0 -26px; width: 28px; height: 16px; }
td.i2{ background-position: 0 -52px; width: 28px; height: 16px; }
td.i3{ background-position: 0 -78px; width: 29px; height: 16px; }
td.i4{ background-position: 0 -104px; width: 29px; height: 15px; }
td.i5{ background-position: 0 -129px; width: 28px; height: 18px; }
td.i6{ background-position: 0 -157px; width: 30px; height: 17px; }
td.i7{ background-position: 0 -184px; width: 29px; height: 17px; }
td.i8{ background-position: 0 -211px; width: 28px; height: 16px; }
td.i9{ background-position: 0 -237px; width: 28px; height: 18px; }
td.i10{ background-position: 0 -265px; width: 29px; height: 18px; }
td.i11{ background-position: 0 -293px; width: 29px; height: 24px; }
td.i12{ background-position: 0 -327px; width: 29px; height: 18px; }
td.i13{ background-position: 0 -355px; width: 29px; height: 18px; }
td.i14{ background-position: 0 -383px; width: 29px; height: 18px; }
td.i15{ background-position: 0 -411px; width: 29px; height: 18px; }
td.i16{ background-position: 0 -439px; width: 29px; height: 18px; }
td.i17{ background-position: 0 -467px; width: 24px; height: 24px; }
td.i18{ background-position: 0 -501px; width: 24px; height: 24px; }
td.i19{ background-position: 0 -535px; width: 24px; height: 24px; }
td.i20{ background-position: 0 -569px; width: 24px; height: 24px; }
td.i21{ background-position: 0 -603px; width: 24px; height: 24px; }
td.i22{ background-position: 0 -637px; width: 24px; height: 24px; }
</STYLE>
<title>Item List</title></head>";
echo "<body><center>
<table cellspacing=10 cellpadding=0 border=1 bgcolor=\"black\">
<td style=\"color:#FC9700\" bgcolor=\"black\">Row</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">UserID</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">UserUID</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">CharID</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">CharName</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">Value</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">Text1</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">Text2</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">Text3</td>
<td style=\"color:#FC9700\" bgcolor=\"black\">Text4</td>";
while ($row = mssql_fetch_array($result)) {
echo "<tr style=\"color:white\">";
echo "<td>" . $row[Row] . "</td><td>" . $row[UserID] . "</td><td>" . $row[UserUID] . "</td><td>" . $row[CharID] ."</td><td>" . $row[CharName] . "</td><td>" . $row[Value] . "</td><td> " . $row[Text1] . "</td><td>" . $row[Text2] . "</td><td>" . $row[Text3] . "</td><td>" . $row[TEXT4] . "</td>";
echo "</tr>";
$count++;
}
echo "</table>";
echo "</html>";
?>
This script is using MSSQL Connect and will show you GM Action Log every command is using a GM in game will be show here.
Hope you like it enjoy.
|
|
|
05/15/2012, 16:40
|
#3
|
elite*gold: 0
Join Date: Dec 2009
Posts: 59
Received Thanks: 9
|
Thanks for the reply. Now I have one more ? considering this subject. If a player is given stats by a gm it does not show in the database. I know that the set_*** will show in action logs but what I am looking for is to see a players current total stats on a logged in toon. Is there a way to obtain a players total stats on a toon. Example base STR shown in DB 400, given STR by GM 75, DB shows 400 is there any commands to see the missing 75?
|
|
|
05/15/2012, 16:47
|
#4
|
elite*gold: 0
Join Date: Apr 2011
Posts: 370
Received Thanks: 350
|
You might wanna try this:
SELECT TOP 200
c.CharName,
c.Str + characterItems.ConstStr + lapisSum.ConstStr AS [Str],
c.Dex + characterItems.ConstDex + lapisSum.ConstDex AS [Dex],
c.Rec + characterItems.ConstRec + lapisSum.ConstRec AS [Rec],
c.Int + characterItems.ConstInt + lapisSum.ConstInt AS [Int],
c.Wis + characterItems.ConstWis + lapisSum.ConstWis AS [Wis],
c.Luc + characterItems.ConstLuc + lapisSum.ConstLuc AS [Luc],
c.Str + characterItems.ConstStr + lapisSum.ConstStr + c.Dex + characterItems.ConstDex + lapisSum.ConstDex + c.Rec + characterItems.ConstRec + lapisSum.ConstRec + c.Int + characterItems.ConstInt + lapisSum.ConstInt + c.Wis + characterItems.ConstWis + lapisSum.ConstWis + c.Luc + characterItems.ConstLuc + lapisSum.ConstLuc AS TotalStat,
c.Rec + characterItems.ConstRec + lapisSum.ConstRec + characterItems.Defense + lapisSum.Defense AS Defense,
c.Wis + characterItems.ConstWis + lapisSum.ConstWis + characterItems.MagicResist + lapisSum.MagicResist AS MagicResist,
characterItems.Absorb + lapisSum.Absorb AS Absorb,
CASE
WHEN c.Job < 3 THEN
(c.Str + characterItems.ConstStr + lapisSum.ConstStr) * 1.3 + (c.Dex + characterItems.ConstDex + lapisSum.ConstDex) * .2 + characterItems.Attack + lapisSum.Attack
WHEN c.Job = 3 THEN
(c.Str + characterItems.ConstStr + lapisSum.ConstStr) + (c.Dex + characterItems.ConstDex + lapisSum.ConstDex) * .2 + (c.Luc + characterItems.ConstLuc + lapisSum.ConstLuc) * .3 + characterItems.Attack + lapisSum.Attack
ELSE
(c.Int + characterItems.ConstInt + lapisSum.ConstInt) + (c.Wis + characterItems.ConstWis + lapisSum.ConstWis) * .2 + characterItems.Attack + lapisSum.Attack
END AS AttackMin,
CASE
WHEN c.Job < 3 THEN
(c.Str + characterItems.ConstStr + lapisSum.ConstStr) * 1.3 + (c.Dex + characterItems.ConstDex + lapisSum.ConstDex) * .2 + characterItems.Attack + lapisSum.Attack + characterItems.AttackModifier + lapisSum.AttackModifier
WHEN c.Job = 3 THEN
(c.Str + characterItems.ConstStr + lapisSum.ConstStr) + (c.Dex + characterItems.ConstDex + lapisSum.ConstDex) * .2 + (c.Luc + characterItems.ConstLuc + lapisSum.ConstLuc) * .3 + characterItems.Attack + lapisSum.Attack + characterItems.AttackModifier + lapisSum.AttackModifier
ELSE
(c.Int + characterItems.ConstInt + lapisSum.ConstInt) + (c.Wis + characterItems.ConstWis + lapisSum.ConstWis) * .2 + characterItems.Attack + lapisSum.Attack + characterItems.AttackModifier + lapisSum.AttackModifier
END AS AttackMax
FROM [Ps_GameData].[dbo].[Chars] c
INNER JOIN PS_UserData.dbo.Users_Master AS u ON c.UserUID = u.UserUID
INNER JOIN (
SELECT
DISTINCT ci.CharID AS CharID,
SUM(i.ConstStr + CASE WHEN i.ReqWis > 0 AND LEN(ci.CraftName) = 20 THEN CONVERT(int,SUBSTRING(ci.CraftName,1,2)) ELSE 0 END) AS ConstStr,
SUM(i.ConstDex + CASE WHEN i.ReqWis > 0 AND LEN(ci.CraftName) = 20 THEN CONVERT(int,SUBSTRING(ci.CraftName,3,2)) ELSE 0 END) AS ConstDex,
SUM(i.ConstRec + CASE WHEN i.ReqWis > 0 AND LEN(ci.CraftName) = 20 THEN CONVERT(int,SUBSTRING(ci.CraftName,5,2)) ELSE 0 END) AS ConstRec,
SUM(i.ConstInt + CASE WHEN i.ReqWis > 0 AND LEN(ci.CraftName) = 20 THEN CONVERT(int,SUBSTRING(ci.CraftName,7,2)) ELSE 0 END) AS ConstInt,
SUM(i.ConstWis + CASE WHEN i.ReqWis > 0 AND LEN(ci.CraftName) = 20 THEN CONVERT(int,SUBSTRING(ci.CraftName,9,2)) ELSE 0 END) AS ConstWis,
SUM(i.ConstLuc + CASE WHEN i.ReqWis > 0 AND LEN(ci.CraftName) = 20 THEN CONVERT(int,SUBSTRING(ci.CraftName,11,2)) ELSE 0 END) AS ConstLuc,
SUM(i.Effect1 + CASE WHEN i.ReqWis > 0 AND LEN(ci.CraftName) = 20 AND (CONVERT(int,SUBSTRING(ci.CraftName,19,2)) BETWEEN 1 AND 20) THEN
CASE
WHEN SUBSTRING(ci.CraftName,19,2) = '01' THEN 7 WHEN SUBSTRING(ci.CraftName,19,2) = '02' THEN 14 WHEN SUBSTRING(ci.CraftName,19,2) = '03' THEN 21
WHEN SUBSTRING(ci.CraftName,19,2) = '04' THEN 31 WHEN SUBSTRING(ci.CraftName,19,2) = '05' THEN 41 WHEN SUBSTRING(ci.CraftName,19,2) = '06' THEN 51
WHEN SUBSTRING(ci.CraftName,19,2) = '07' THEN 64 WHEN SUBSTRING(ci.CraftName,19,2) = '08' THEN 77 WHEN SUBSTRING(ci.CraftName,19,2) = '09' THEN 90
WHEN SUBSTRING(ci.CraftName,19,2) = '10' THEN 106 WHEN SUBSTRING(ci.CraftName,19,2) = '11' THEN 122 WHEN SUBSTRING(ci.CraftName,19,2) = '12' THEN 138
WHEN SUBSTRING(ci.CraftName,19,2) = '13' THEN 157 WHEN SUBSTRING(ci.CraftName,19,2) = '14' THEN 176 WHEN SUBSTRING(ci.CraftName,19,2) = '15' THEN 195
WHEN SUBSTRING(ci.CraftName,19,2) = '16' THEN 217 WHEN SUBSTRING(ci.CraftName,19,2) = '17' THEN 239 WHEN SUBSTRING(ci.CraftName,19,2) = '18' THEN 261
WHEN SUBSTRING(ci.CraftName,19,2) = '19' THEN 286 WHEN SUBSTRING(ci.CraftName,19,2) = '20' THEN 311
END
ELSE 0 END) AS Attack,
SUM(i.Effect2) AS AttackModifier,
SUM(i.Effect3) AS Defense,
SUM(i.Effect4) AS MagicResist,
SUM(CASE WHEN i.ReqWis > 0 AND (CONVERT(int,SUBSTRING(ci.CraftName,19,2)) BETWEEN 51 AND 70) THEN ((CONVERT(int,SUBSTRING(ci.CraftName,19,2)) - 50) * 5) ELSE 0 END) AS Absorb
FROM [Ps_GameData].[dbo].[CharItems] ci
INNER JOIN [Ps_GameDefs].[dbo].Items i ON i.ItemID = ci.ItemID
WHERE ci.Bag = 0
AND ci.Slot >= 0
AND ci.Slot != 13
GROUP BY ci.CharID
) AS characterItems ON c.CharID = characterItems.CharID
LEFT JOIN (
SELECT
DISTINCT ci.CharID AS CharID,
SUM(ISNULL(lapis.ConstStr,0)) AS ConstStr,
SUM(ISNULL(lapis.ConstDex,0)) AS ConstDex,
SUM(ISNULL(lapis.ConstRec,0)) AS ConstRec,
SUM(ISNULL(lapis.ConstInt,0)) AS ConstInt,
SUM(ISNULL(lapis.ConstWis,0)) AS ConstWis,
SUM(ISNULL(lapis.ConstLuc,0)) AS ConstLuc,
SUM(ISNULL(lapis.Effect1,0)) AS Attack,
SUM(ISNULL(lapis.Effect2,0)) AS AttackModifier,
SUM(ISNULL(lapis.Effect3,0)) AS Defense,
SUM(ISNULL(lapis.Effect4,0)) AS MagicResist,
SUM(ISNULL(lapis.Exp,0)) AS Absorb
FROM [Ps_GameData].[dbo].[CharItems] ci
INNER JOIN [Ps_GameDefs].[dbo].Items i ON ci.ItemID = i.ItemID
LEFT JOIN [Ps_GameDefs].[dbo].Items lapis ON lapis.Type = 30 AND lapis.TypeID IN(ci.Gem1,ci.Gem2,ci.Gem3,ci.Gem4,ci.Gem5,ci.Gem6 )
WHERE ci.Bag = 0
AND ci.Slot >= 0
AND ci.Slot != 13
GROUP BY ci.CharID
) AS lapisSum ON c.CharID = lapisSum.CharID
WHERE
c.Del = 0
AND u.AdminLevel = 0
ORDER BY TotalStat DESC;
It selects top 200 players from the server and display theyr exact stats.
This has been released on here, so i do not own any rights.
|
|
|
05/15/2012, 16:52
|
#5
|
elite*gold: 0
Join Date: Dec 2009
Posts: 59
Received Thanks: 9
|
Thanks for the reply I will def try it out!!
|
|
|
05/22/2012, 20:44
|
#6
|
elite*gold: 0
Join Date: Dec 2009
Posts: 59
Received Thanks: 9
|
Ok, just wanted to follow up on this post in case anyone has ?'s. This script does not show any added stats added from buffs are GM's. It does in other words give all regular stats by the player. The answer to the ? that I was asking is========
/quiery player name
this shows all stats/links/armor/weps/acc and even what color underwear the player has on. Hope some peps finds this useful.
|
|
|
Similar Threads
|
[Request]Seine Player ID finden/finding ur player ID in S4
08/12/2009 - S4 League - 7 Replies
Also Engine und Bypass und alles hab ich ja nun frag ich mich wie man seine ID und gegebenfalls di von andern Spielern findet und pls postet jetz nicht den Cheat Table von zero oder so odern CT es wäre mir am liebsten wie man es genau selber findet.
|
All times are GMT +2. The time now is 06:45.
|
|