You know how some mapmakers had been lamenting the inability to upload data from a map directly to some remote data storage location?
... What if one of us wrote a program meant to be run in the background while you play the game that would check for updates to the bank file and scan the bank file for data to be uploaded to some online database you set up?
I realize this isn't exactly 100% accessible, because not everybody would download that program. But some maps could accommodate players who didn't get the program by not bothering to record their data.
But the basic idea is you could set up two-way communication with a webserver doing this. The program could be set up so that a map would interface with the webserver by writing commands to the bank file that would be interpreted by this program running in the background, which then performs the necessary tasks. For example, the map could provide a hostname and password to open a connection to the webserver. If you need to write data to the server, just update your bank with data under a "WriteToServer" bank section. And if you need to receive data from the server, just use a "ReadFromServer" section.
For writing to server, the program would read the bank file and then upload that data to the server and then editing the bank file to erase the "WriteToServer" data that has been written. For reading from server, the program would write the data to a different section in the bank that the map is responsible for checking, and then delete the "ReadFromServer" data that had been read.
Thoughts? Of course, you'd need to figure out some security measures to prevent people from knowing how to break into the webserver.
EDIT: Dang, I just looked in the 3rd party tools section and it looks like I've been beaten to the punch. Still, it'd be nice to have a general-purpose tool that every map could share and for which there would be a simple API to get everything set up as you need, so players only need 1 program for all maps that use an online database, instead of having to download an unique one for every new map.
I've done something like this some time ago, I dropped the idea tho. Basically there was a button on my mod-website called "Update hero-data". When you clicked this button a 13kb .exe file was generated specificall for the login-data you've already entered on the website, and then you were asked to download this 13kb file. Then when you selected "run program" the program would automatically locate your bank file for my map, and then upload the data to an online database using your login-name and an encrypted password, all that to a secure webservice which would then handle the data and convert it to readable html.
Final thing, when you updated your browser window your hero-data (dps, life, armor etc.) was now available for everyone to see :)
I dont think Im up for the job, but if someone want to use my program as a start to build your idea, just say so.. I'ts written in VB.net.
I recall there is a limitation with banks. They don't commit while they are in 'write' mode, and once you close 'write' mode and reopen them for rewriting, any new data that is written doesn't get properly saved, sometimes resulting in blank values in the bank. This was discovered through a series of quick tests about half a year ago. It could be fixed by now.
I'm aware of EAGLE, but that seems to have gone vaporware. More to the point, though, EAGLE was only a global leaderboard for maps. I was talking about a fully functioning interface with a webserver that could be used for much more than global leaderboards.
I recall there is a limitation with banks. They don't commit while they are in 'write' mode, and once you close 'write' mode and reopen them for rewriting, any new data that is written doesn't get properly saved, sometimes resulting in blank values in the bank. This was discovered through a series of quick tests about half a year ago. It could be fixed by now.
Oh? I didn't know that. That might explain why you have seemingly random bank resets on certain maps like Desert Strike. I wonder if 1.5 did address bank reliability, though. If that is so, then this might be a worthwhile project to pursue.
I'd also point out that security would obviously be a big issue with this, as I can't really think of a way to prevent someone from breaking into the webserver, so the next best thing would be to simply limit the damage a malicious player could do. For example, ensuring that players only have write access to their OWN specific section of the online database. That way, if someone cheats, he only affects his own data, not anybody else's. This could allow the mapmaker to check the database and single out who is cheating.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
You know how some mapmakers had been lamenting the inability to upload data from a map directly to some remote data storage location?
... What if one of us wrote a program meant to be run in the background while you play the game that would check for updates to the bank file and scan the bank file for data to be uploaded to some online database you set up?
I realize this isn't exactly 100% accessible, because not everybody would download that program. But some maps could accommodate players who didn't get the program by not bothering to record their data.
But the basic idea is you could set up two-way communication with a webserver doing this. The program could be set up so that a map would interface with the webserver by writing commands to the bank file that would be interpreted by this program running in the background, which then performs the necessary tasks. For example, the map could provide a hostname and password to open a connection to the webserver. If you need to write data to the server, just update your bank with data under a "WriteToServer" bank section. And if you need to receive data from the server, just use a "ReadFromServer" section.
For writing to server, the program would read the bank file and then upload that data to the server and then editing the bank file to erase the "WriteToServer" data that has been written. For reading from server, the program would write the data to a different section in the bank that the map is responsible for checking, and then delete the "ReadFromServer" data that had been read.
Thoughts? Of course, you'd need to figure out some security measures to prevent people from knowing how to break into the webserver.
EDIT: Dang, I just looked in the 3rd party tools section and it looks like I've been beaten to the punch. Still, it'd be nice to have a general-purpose tool that every map could share and for which there would be a simple API to get everything set up as you need, so players only need 1 program for all maps that use an online database, instead of having to download an unique one for every new map.
I've done something like this some time ago, I dropped the idea tho. Basically there was a button on my mod-website called "Update hero-data". When you clicked this button a 13kb .exe file was generated specificall for the login-data you've already entered on the website, and then you were asked to download this 13kb file. Then when you selected "run program" the program would automatically locate your bank file for my map, and then upload the data to an online database using your login-name and an encrypted password, all that to a secure webservice which would then handle the data and convert it to readable html.
Final thing, when you updated your browser window your hero-data (dps, life, armor etc.) was now available for everyone to see :)
I dont think Im up for the job, but if someone want to use my program as a start to build your idea, just say so.. I'ts written in VB.net.
http://us.battle.net/sc2/en/forum/topic/3530213500
I recall there is a limitation with banks. They don't commit while they are in 'write' mode, and once you close 'write' mode and reopen them for rewriting, any new data that is written doesn't get properly saved, sometimes resulting in blank values in the bank. This was discovered through a series of quick tests about half a year ago. It could be fixed by now.
I'm aware of EAGLE, but that seems to have gone vaporware. More to the point, though, EAGLE was only a global leaderboard for maps. I was talking about a fully functioning interface with a webserver that could be used for much more than global leaderboards.
Oh? I didn't know that. That might explain why you have seemingly random bank resets on certain maps like Desert Strike. I wonder if 1.5 did address bank reliability, though. If that is so, then this might be a worthwhile project to pursue.
I'd also point out that security would obviously be a big issue with this, as I can't really think of a way to prevent someone from breaking into the webserver, so the next best thing would be to simply limit the damage a malicious player could do. For example, ensuring that players only have write access to their OWN specific section of the online database. That way, if someone cheats, he only affects his own data, not anybody else's. This could allow the mapmaker to check the database and single out who is cheating.