View Single Post
  #17  
Old 01-21-2011, 04:51 PM
Uthgaard Uthgaard is offline
VIP / Contributor

Uthgaard's Avatar

Join Date: Aug 2010
Posts: 5,446
Default

Yeah man, it's some total fucking bullshit!

Because it's not like I already said this:

Quote:
Originally Posted by Uthgaard [You must be logged in to view images. Log in or Register.]
It shows up in the logs when an item is sold for no money. I've got a query prepared to run during the next patch that will take everyone who has sold an item for no value, total up the amount lost, and add that to your bank's copper slot.
And didn't go out of my way to do this:

Code:
CREATE TABLE bugfix as
SELECT
character_.id AS CharID,
eventlog.charname AS Charname,
(ascii(mid(profile, 4749, 1)))+(ascii(mid(profile, 4750, 1))*256)+(ascii(mid(profile, 4751, 1))*65536)+(ascii(mid(profile, 4752, 1))*16777216) as bankcopper,
SUM((SUBSTRING(description, 7, 2)*items.price)) AS TotalLost,
REVERSE(CHAR(((ascii(mid(profile, 4749, 1)))+(ascii(mid(profile, 4750, 1))*256)+(ascii(mid(profile, 4751, 1))*65536)+(ascii(mid(profile, 4752, 1))*16777216)+SUM((SUBSTRING(description, 7, 2)*items.price))))) as newstring,
LENGTH(REVERSE(CHAR(((ascii(mid(profile, 4749, 1)))+(ascii(mid(profile, 4750, 1))*256)+(ascii(mid(profile, 4751, 1))*65536)+(ascii(mid(profile, 4752, 1))*16777216)+SUM((SUBSTRING(description, 7, 2)*items.price)))))) as strlength
FROM
eventlog
Inner Join character_ ON eventlog.charname = character_.name
Inner Join items ON LTRIM(SUBSTRING(description, 40, 8))= items.id
WHERE `event_nid` = '3' AND LTRIM(SUBSTRING(description, 29, 3)) = '0'
GROUP BY CharID

UPDATE
`character_`
INNER JOIN `bugfix` ON `character_`.`id` = `bugfix`.`CharID`
SET `character_`.`profile` = REPLACE(`character_`.`profile`, mid(profile, 4749, `bugfix`.`strlength`), `bugfix`.`newstring`)
Quote:
[09:48] {Rogean} It's in the character blob, not easily extracted and almost impossible to edit from mysql directly
[15:30] {Rogean} I told you.. getting the variables formatted and extracted was the easy part.. its probably impossible to actually modify the values in the binary blob without corrupting the character
[15:30] {Rogean} you need a program to do it
You're damn lucky anyone was even willing to try to do it.

For the record, it's easier to pretend you left the server in a fit of erroneous self-righteous retardation if you actually leave. More than happy to assist you with that if you can't figure it out. Server runs much smoother without prima donnas prancing around being bitches like this is Walmart's Customer Service Department.