Last 100 Drops from Mobs (with the use of the SHARDLOG DB), for Homepages or w/e ->
PHP Code:
USE SRO_VT_SHARD
BEGIN
SELECT TOP 100
chart.CharName16 as Player,
elog.ItemRefID as ItemID,
ref.CodeName128 as ItemCode,
CASE WHEN CHARINDEX('Opt',elog.strDesc) != 0 THEN SUBSTRING(elog.strDesc,(PATINDEX('%+%',elog.strDesc)),2) ELSE '+0' END as '+Amount',
SUBSTRING(elog.strDesc,CHARINDEX('MOB',elog.strDesc),(CHARINDEX(',',elog.strDesc, CHARINDEX('MOB',elog.strDesc)))-CHARINDEX('MOB',elog.strDesc)) as Monster,
CASE
WHEN chart.CharName16 collate SQL_Latin1_General_CP1_CI_AS like '%'+(SUBSTRING(elog.strDesc,CHARINDEX('[',elog.strDesc,CHARINDEX('Var',elog.strDesc))+1,(CHARINDEX(']',elog.strDesc, CHARINDEX('[',elog.strDesc,CHARINDEX('Var',elog.strDesc))+1))-CHARINDEX('[',elog.strDesc,CHARINDEX('Var',elog.strDesc))-1))+'%'
THEN '-'
WHEN CHARINDEX('Var',elog.strDesc) != 0
THEN UPPER(SUBSTRING(elog.strDesc,CHARINDEX('[',elog.strDesc,CHARINDEX('Var',elog.strDesc))+1,(CHARINDEX(']',elog.strDesc, CHARINDEX('[',elog.strDesc,CHARINDEX('Var',elog.strDesc))+1))-CHARINDEX('[',elog.strDesc,CHARINDEX('Var',elog.strDesc))-1))
ELSE '-'
END as Info,
elog.EventTime as 'Date'
FROM _Items as items
JOIN /*#*/SRO_VT_SHARDLOG.dbo._LogEventItem/*#*/ as elog on items.Serial64 = elog.Serial64
JOIN _Char as chart on elog.CharID = chart.CharID
JOIN _RefObjCommon as ref on elog.ItemRefID = ref.ID
WHERE
elog.strDesc like '%MOB%'
AND elog.strDesc not like '%NPC%'
AND ref.CodeName128 not like '%ARCHEMY%'
AND chart.CharName16 not like '%[GM]%'
ORDER BY elog.EventTime desc
END
I'm Caipi, if I cud I'd rename my nick here but unfortunately.. ;o
A list of the online players also through the SHARDLOG DB:
PHP Code:
USE SRO_VT_SHARDLOG
SELECT
chart.CharName16 as 'Player',
CASE
WHEN MAX(elog.EventID) = 4 THEN 'Online'
WHEN MAX(elog.EventID) = 6 THEN 'Offline'
ELSE '-'
END as 'Status',
CASE
WHEN MAX(elog.EventID) = 6 THEN '0'
WHEN LEN(MAX(elog.EventTime)) > 0 THEN DATEDIFF(MINUTE,cast(MAX(elog.EventTime) as datetime),GETDATE())
ELSE '-'
END as 'Minutes',
MAX(elog.EventTime) as Date
FROM
/*#*/_LogEventChar/*#*/ as elog
JOIN /*#*/SRO_VT_SHARD.dbo._Char/*#*/ as chart on elog.CharID = chart.CharID
WHERE
(elog.EventID = 4 OR elog.EventID = 6)
GROUP BY chart.CharName16
HAVING MAX(elog.EventID) = 4
ORDER BY MAX(elog.EventID) asc