View Full Version : Tell me if this is a good idea to prevent duping.
snowcrash27
12-31-2002, 02:21 PM
SEGA probably thought about this in early stage, but they are probably too cheap to spend money on their servers. The money we are paying to SEGA, we deserve better servers.
Basically duping is possible because PSO saves stuff(weapons and items) to a memory card instead of saving it to RAM. When you start the game online, I believe equipped items are copy to RAM and also exists in a memory card(this is why dupping is possible), and unequipped items are copy to RAM and removes it from the memory card(this is why we lose our unequipped items when we get FSOD or powering down without saving it).
The point is long as you have the item exists in memory card and also in RAM, duping is possible.
I thought of many ways to prevent duping in PSO. This is what I came out with.
When you go online, it should move all your items from the memory card to RAM, and creates a temp file to a memory card that contains all your items, and also copies the items to the server. This means server requires bigger storage, faster speed and decent database. So whenever you drop or exchange items, it should only update the items in RAM and the server. Saving items in server is way to go, but expensive to maintain. When you quit, it should save back what ever you have in RAM to the memory card and change the status of temp file to original file. But if something happens like FSOD or someone unplugged the power cord http://www.pso-world.com/psoworld/images/phpbb/icons/smiles/icon_wink.gif, you still have the temp file exists in the memory card. Thing is, it shouldn't allow you to play offline with that temp file until you sync with server side items next time you online. This way we don't have to worry about losing items when we get FSOD or duping.
I don't know why SEGA didn't implement this in first place, maybe because it wasn't worth spending money to fixed the duping problem.
TeK-DEL0REAN
12-31-2002, 06:47 PM
Yeah if they did that it would end up costing US. They figure, look, we (the players) are ruining the game for ourselves, they dont wanna put any more money into programming a new version of the game without the current duping bug. They figure we'll police each other and chastize those who dupe. If they really had our best interests in mind, the duping bug would've been fixed from the JP version, the US wouldve gotten Keyboards, and they would at least let us know they are WORKING on an FSOD solution. They haven't done any of this.
Except you loose items from FSOD because Sega is preventing duping.
The way they delete items during a FSOD is as follows:
When you join a game, Sega marks your card as "open." When you leave the game into a lobby it is marked as "closed." If you don't exit properly (FSOD, bad dupe method, power outage, etc.) your file is never closed. So the game will then delete all unequiped items from your character (in case you dropped them and planned on them still being on your character AND on the server). That is why equipped items stay, you can't drop an item and still have it equipped.
I am pretty sure an FSOD while entering a lobby the first time (ie: you were never marked "open" in a game) doesn't cause loss of data (from my own personal experience, this is the case).
Make sense?
Tavia
12-31-2002, 10:49 PM
On 2002-12-31 16:47, TeK-DEL0REAN wrote:
... the US wouldve gotten Keyboards ...
SonicTeam nor Sega can help you in getting keyboards. They do not manufacture peripherals.
On 2002-12-31 12:21, snowcrash27 wrote:
Basically duping is possible because PSO saves stuff(weapons and items) to a memory card instead of saving it to RAM. When you start the game online, I believe equipped items are copy to RAM and also exists in a memory card(this is why dupping is possible), and unequipped items are copy to RAM and removes it from the memory card(this is why we lose our unequipped items when we get FSOD or powering down without saving it).
The point is long as you have the item exists in memory card and also in RAM, duping is possible.
Hmm, the only I problem I see in your reasoning is that duping is possible in an offline game, i.e.- it's possible to dup without even using the copy in RAM...
One idea I had was after reading a post from someone thinking it would be a good idea to give all items a serial number. This would require too much maintence/resource wise on ST's part. However, what if you only tracked the really rare items.
Who cares if there's people duping DB Sabers? Those are a dime a dozen. If you only track, say the top 100 rare items a serial number might work.
Or even better, it would be easier to track the number of rare items that have been released into "the world". That way, if the count ever changes you can just erase those items.
For example, taking the DB Saber we love so much:
Assuming ST has rare items show up at certain intervals, let's say ST releases 500 DB Sabers into the world at 5:30 this friday, every DB Saber found will have that time associated with that item on each players memory card. At a later point in time, ST can "audit" for a week and count the number of unique "5:30 this friday DB Sabers" it finds. If it counts more than 500, they know it's been duped and can put that released weapon on a kill list which kill's each player's "DB Saber from 5:30 this friday" whenever they login. All DB Sabers associated with a time other than "5:30 this friday" are safe.
This would deter not only duping, but accepting duped items, since a more stringent policy of the kill list would kill ALL the items in a player's pak.
Possible foreseeable workarounds to this approach would be for hackers to not only dupe the item, but change it's serial number. So the id passed to the server would have to be some strong hash of the item's serial number on the memory card. Also, the association doesn't have to be with time. I would imagine ST "releases" less than a handful of the really rare items each month and not all of them are found (how many games do you make that you open every box, wait for each rappy, and kill every enemy?), so the association could be with an internal ST id, or with the changing of the seasons, or with respect to the last time the servers were maintenced, etc, etc. Remeber, we're only talking about the really rare items that effect gameplay when duped (i.e.--we'd never want to count all one million of the last survivors that are out there http://www.pso-world.com/psoworld/images/phpbb/icons/smiles/icon_wink.gif )
Also, the sting to this operation is the going online part. It wouldn't be able to stop duping offline. And a hacker would still be able to keep a 2nd offline only char that carries all their duped items. As long as they don't go online with them, they wouldn't be able to catch 'em. However, that would require any downstream duping participants to be just as careful, and I don't think hackers would like trusting his item pak to the kiddies he gives his dups to...would you?
Mag2064
01-07-2003, 04:54 PM
basically a real solution would be to give each weapon a serial number
(I.E. if your the first person to ever find say a lavis cannon its has a data number like "1" you decide to dupe it and now you have 2 lavis cannons with the Serial # "1") if the server would check this and deleted one(or both)
of the items duping wouldn't excist well it would just not online http://www.pso-world.com/psoworld/images/phpbb/icons/smiles/icon_wink.gif
snowcrash27
01-07-2003, 05:37 PM
assinging a serial number to a weapon is not going to work,
because...
first, we are talking about comparing each items to other thousands of users' items every time user goes online? this is going to be a huge bottleneck.. cpu & network. if you want to prevent duping, u need to do it for all the itmes not just for rares. don't do half ass job...
second, let say someone drops an item online and quit(basically this is how ppl dupe online), that item is legit until the user goes online again, but what if when the player was trying to give the item to someone by dropping it and quit or power surge. When next time the player goes online, his item should be removed because of that incident?
third, this only works on online
PS: RAM is internal memory not the memory card
RicoSuave
01-08-2003, 09:07 PM
It actually will not take that long, even if there are millions of items. A simple Binary search tree will cut the time to nlog(n). How do you think internet search engines work? http://www.pso-world.com/psoworld/images/phpbb/icons/smiles/icon_wink.gif
Stixxx
01-12-2003, 09:34 AM
you wanna know how to stop it..
make the characters serverside.. tadaa..
as long as there is a way to save the same char offline.. there is noway to stop it..
then your looking at server maint.. liike EQ but hey EQ cost the same as pso now..
heck they could even make the whole game serverside.. unlocking lvls etc etc.. but they wont..
ah well
vBulletin® v3.7.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.