GetMedal() checks if you have a medal, so it'd return 1 if you have it and 0 if you don't (or null if it can't contact the hub). Your best bet would be to only add 400 to gold after a successful call to SetMedal().
|
You can't set private scores, but you can include fields in the scores that will not show up on your hub entry. What you won't be able to do is hide that a certain user was recorded.
|
That was more or less what i was asking, so basically i can use this for sever-wide saves, seeing as its almost as easy as using regular save files?
|
Tubutas wrote:
That was more or less what i was asking, so basically i can use this for sever-wide saves, seeing as its almost as easy as using regular save files? I imagine it's infinity quicker to read a savefile than it is to contact the hub about a list of scores. Not to mention that if the hub is down, anyone already in your game wont be able to save their progress and anyone trying to join your game wont be able to load their characters. This is definitely not a good substitute for save files. |
Lummox JR wrote:
In 438, GetMedal("", player) will return a list (encoded like with list2params()) of all medals the player has for that hub entry. However, GetMedal("Wolf Slayer", player) ought to be adequate. can GetMedel(,player,hub,hub_password) work too? |
Tubutas wrote:
That was more or less what i was asking, so basically i can use this for sever-wide saves, seeing as its almost as easy as using regular save files? As Tiberath mentions, thats the wrong way to be doing it. Only ever contact the hub when you absolutely have to; this is a mechanism to display content, not to save game data. |
As a substitute for saved game data the score mechanism really won't serve you well--it isn't designed for that purpose. Where it does serve well is in the capacity of recording and displaying vital stats. It can even be used to dovetail with the medal system by keeping track of your accomplishments, so it could for instance record how many red slimes you've defeated and that can be used to determine when you've achieved the Slime Catcher medal that takes 100 such kills to earn.
But in place of a full save, not really so much, no. You'd be way better off using client-side savefiles for that and exploring how to protect them from tampering. |
i already know about hashing. My [poorly phrased] question actually was would it work in theory?theyres no limit to how many i can send is there?
On a side note:why is there no function for php posting yet? |
I don't know what you mean about PHP posting.
As for in theory, no, probably not. Data size is limited so you'd have to encode your savefile and chunk it up something terrible. |
Since you can hide data fields, is it reasonable to be able to use certain fields to contain game related (but not really score as such) values? It struck me that a few problems with client side saving could be solved this way. You see people can easily 'backup' their Save File, then go spend say 'gold' on items or things that involve chance/risk, and if they dont like the outcome - reload their save. Its not something you can prevent as long as they have access to their Save File.
But you could use the GetScore to save say gold or money for a character, and then when they logged in it would get their amount. Since its all on the hub any deductions/increases would be unchangable by players. Was this the reason some fields can be hidden? |
UnknownDuelist wrote:
But you could use the GetScore to save say gold or money for a character, and then when they logged in it would get their amount. Since its all on the hub any deductions/increases would be unchangable by players. Was this the reason some fields can be hidden? Re-iterating: The purpose of this system isn't to remotely store data for you in copious amounts. What you should be doing is setting up your own webspace to host savefiles or finding other methods of preventing this sort of thing (such as timestamped savefiles, login cookies/hashes or what have you) which are perfectly viable already. The reason you can hide some things is for the element of surprise. |
The reason you can hide some things is for the element of surprise. Surprise... surprise what? Plus id hardly call a number such as GOLD = 100 'copious amounts of data'. Since such a value could be used in a game anyway to rank a player (by how rich they are) i dont see any issue in a person using that to their advantage. |
Well no; a single value isn't. But the general idea of storing player data in the hub score fields en masse is a bad, bad idea.
|
when i use the world.SetMedal("Good Guy",killer) it says error world.SetMedal:undefined proc
|
Jason, you're using an old version of BYOND. You need to upgrade to use this feature.
|
Lummox JR wrote:
I don't know what you mean about PHP posting. The post method with using world.Import() coming soon eh? More like coming never. |
Tubutas wrote:
Lummox JR wrote: I thinks you have your features mixed up. The POST method included in BYOND didn't include sending POST messages with world.Export() and world.Import(). It only allowed the use of POST in Topic(), if I recall correctly. |
[code]
if(GetMedal("Wolf Slayer",src))
src.gold+=400
[/code]