Jump to content
Sign in to follow this  
Llano

Webbased player database?

Recommended Posts

As the title says, does this exist?

It would be pretty awsome to have one. For example, when a player joins a server, the server checks if his GUID exist in the database. If it doesn't, add the player to the database.

This webbased database would obviously use some kind of API. I've also heard that there are scripts in Arma that allows you to communicate with MySQL database.

At this website with the database, we (the players) could rate other players and see specific infomation, like if he/she has been banned, bad behaviour etc.

This would make it easier to keep the hackers/griefers/non-serious players from joining servers that want to keep them out.

Apologize for my bad english :)

(Don't know if i placed this thread in the right section)

Share this post


Link to post
Share on other sites

This can theoretically be done if somebody decides to provide a server hosting the database but it would require quite a bit of work and it would need to be integrated into every mission by the people hosting the game server / the server would have to run an addon containing all of the required data and scripts for saving to / reading from the database.

Share this post


Link to post
Share on other sites
This can theoretically be done if somebody decides to provide a server hosting the database but it would require quite a bit of work and it would need to be integrated into every mission by the people hosting the game server / the server would have to run an addon containing all of the required data and scripts for saving to / reading from the database.

Yes you are right. Would it be hard integrating it into missions? I mean, once you have done it, nothing more has to be done i guess?

Is anyone intressting of this?

Share this post


Link to post
Share on other sites

Well, there already is a plugin out there that allows you to save data to MySQL database and it isn't really hard to use. Once integrated into the mission and if the server runs the required mods nothing else would have to be done.

Share this post


Link to post
Share on other sites

Watch this space! Some exciting work coming up from the makers of MSO...

Share this post


Link to post
Share on other sites
Watch this space! Some exciting work coming up from the makers of MSO...

Can't wait Tup , sounds interesting :cool:

Thought you guys had been a bit quiet concerning Arma3.

Share this post


Link to post
Share on other sites

I have actually picked this up, and will try to see if i can make this work. Might though take a long time.

I have started to work on the website right now, and will probably soon start with the arma extension scripting too.

Would be awsome if anyone would try to help in this project :)

Some pix on a prototype page.

http://piclair.com/data/kx8u4.jpg (159 kB)

Share this post


Link to post
Share on other sites

This could easily been done with Java (As I am waiting for them to fully implement it into ArmA 3).

You can easily make a object oriented coding who connects to the database and do a match, luckily the queries for SQL is easy which is most of the them

SELECT * tablename WHERE GUID = 'variablename'.

Just waiting for Java to function with A3 ^^

Share this post


Link to post
Share on other sites
This could easily been done with Java (As I am waiting for them to fully implement it into ArmA 3).

You can easily make a object oriented coding who connects to the database and do a match, luckily the queries for SQL is easy which is most of the them

SELECT * tablename WHERE GUID = 'variablename'.

Just waiting for Java to function with A3 ^^

Or, you just code it with C#, which i will :)

Share this post


Link to post
Share on other sites
Or, you just code it with C#, which i will :)

Oh well, if you need assistance hit me up.

Swedish too btw ;)

Share this post


Link to post
Share on other sites

I've been wondering about this myself. I build webservices, and apis all day, but I couldn't wrap my head around Arma scripting, so I have never been able to figure out how to do this myself.

I would love to see some simple webservice integration built in to an Arma3 script. You could pass basic JSON objects to a webservice, and get a response... It would be clean and simple and scaleable. Plus, for those who don't want to use an external server to host - they could just call their own hosted webservice on their own box.

Some psuedocode:

//A request to get player definition from a server
request myArmaCloudRequest = {"getPlayer" : {
   "id" : 102102, //The player id to get
   "hostId" : "01PI0000003WYRP", //Pass a host id - the host id wouldl be pre-registered in the "cloud" database - this is a simple auth mechanism but you could do whatever
   "hiveId" : "myWastelandServers", //A user defined server id - each client would be able to register any number of hive ids that would essentially act as separate databases. This is for organizations that might have multiple servers - but where some share objects, and some do not. Each mission file/dedicated server would have this in a config file for easy use.
}};


//A response from the webservice
//A successful response with player data
response armaCloudResponse = {
   "success" : true, //Whether or not the operation completed successfully
   "code" : "GETPLAYER100", //A response code - codes would be stored in a documentation for reference
   "message" : "Player data retrieved", //A general response message tied to the code - just makes it easier to integrate with
   "player" : {
       "name" : "sn1perkill3r",
       "id" : 102102,
       "lastModifiedDateTime" : "2013-09-16 23:39:40" //The last time the player record was modified
       "inventory" : ...example inventory string...,
       "position" : ...example world coordinates string...
       ... additional properties
}};

//A response for an invalid host - what someone would get if they didn't register in the ArmaCloud
response armaCloudResponse = {
   "success" : false,
   "code" : "GETPLAYER900"
   "message" : "Invalid Host Id"
};

//A response for a request that succeeds - but the player is not found (maybe he's new - maybe the db was wiped - whatever)
response armaCloudResponse = {
   "success" : true,
   "code" : "GETPLAYER101"
   "message" : "New Player created"
};

You could do the same thing with vehicles, structures, maybe even mission states? I dunno - is that a thing in Arma?

Anyways - I guess the first step would be to be able to call webservices, and the second step would be to decide where to host it. They're just separate things to do.

Share this post


Link to post
Share on other sites
I have actually picked this up, and will try to see if i can make this work. Might though take a long time.

I have started to work on the website right now, and will probably soon start with the arma extension scripting too.

Would be awsome if anyone would try to help in this project :)

This looks awesome can't wait for a release.

Share this post


Link to post
Share on other sites

i'd like to raise the consideration of security issues in ensuring only a player within a server is communicating with your database and not some 'script' in the mission editor. what would be a good system to ensure validity?

Share this post


Link to post
Share on other sites
i'd like to raise the consideration of security issues in ensuring only a player within a server is communicating with your database and not some 'script' in the mission editor. what would be a good system to ensure validity?

Hello,

Yes, this is a very important thing that we are currently investigating. One way could be to only give certain hand-selected servers permission to access our database with login information, but these can obviously be used for sabotage. This requires that the admin for the server is loyal.

Share this post


Link to post
Share on other sites
Yes, this is a very important thing that we are currently investigating. One way could be to only give certain hand-selected servers permission to access our database with login information, but these can obviously be used for sabotage. This requires that the admin for the server is loyal.

i think that actually might be the best system - hand-selected; as any player is -easily- capable of running their own mp game rigged submitting fake rankings. And with individual logins, you create a chain of responsibility - if there are any issues, you can temporarily hold the stats for review - if found to be in some sort of violation, you could pull up every other game played on that server for review or cancellation...

edit -

doubts on further second thoughts.....hrrrm...

edit2 -

IP restrictions!

Edited by dr_strangepete

Share this post


Link to post
Share on other sites
i think that actually might be the best system - hand-selected; as any player is -easily- capable of running their own mp game rigged submitting fake rankings. And with individual logins, you create a chain of responsibility - if there are any issues, you can temporarily hold the stats for review - if found to be in some sort of violation, you could pull up every other game played on that server for review or cancellation...

edit -

doubts on further second thoughts.....hrrrm...

edit2 -

IP restrictions!

Hello again,

Yes, we have been thinking about to implement ip-checker into the arma2mysqlplugin.

Share this post


Link to post
Share on other sites

I've made a website for converting Arma 3 or Dayz (its the same) GUID to SteamID in 5 minutes!

Doing multiple will vary depending on amount of GUID's

http://guid2steamid.pw

 

This is done by Rainbow Table.

The list contains 460.500.000 steamid's taking up 24gb

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×