6.12.2: Hardware Survey
Posted: Tue May 24, 2011 1:20 am
One problem with improving Ren'Py is that I don't have a good idea of the hardware that it's running on. There are a bunch of decisions (especially performance-related ones) that I'm being fairly conservative on, simply because I don't know the fraction of people it would prevent from playing the game. (Most notably, there is some really cool stuff I can do with OpenGL shaders, but I don't know if a significant number of people are missing them.)
I'm considering including a component in Ren'Py that sends information back to my server about the hardware it's running on. Data I'm considering collecting consists of:
- The version of Ren'Py and the platform it is running on.
- The name of the video card manufacturer.
- The version of OpenGL and the current driver version.
- Information about the limits of the hardware (texture size, number of multitexture units, etc.)
- Information about available extensions (if known).
No information about what game is running would be sent back to the server. The server would collect the information, and store it in a database that I could then analyze. (The IP address would be sent along with the data. Although I don't plan to store it with the data, I don't want to rule out it being logged on the server I use - so I'll say I collect that too.)
Games would still run even if the computer is not connected to the internet. The hardware survey would run in a background thread, so that it wouldn't slow Ren'Py down at all.
I plan to disclose this in the LICENSE.txt and help.html files that ship with Ren'Py. Ren'Py would also log communications to and from the server, so people can see what it's sending.
Users would be able to disable the hardware survey by editing the environment.txt file before starting Ren'Py.
Commenting on this proposal: I'm worried that people might accuse Ren'Py - and games made with Ren'Py of being spyware, because it does send information about users' computers back to the server. I'm hoping by disclosing what we're doing openly, this accusation is mitigated.
At the same time, I don't want to ask for permission explicitly - largely because I think the information being collected isn't that sensitive, and because I don't want people's first impression of a Ren'Py game being "Ren'Py would like to collect information about your hardware. Is that okay?"
I suspect that after several games have been released with the survey, I'd be able to get relatively good information about the hardware people run Ren'Py on. That would help me make decisions about what hardware I can take advantage of - which would, in turn, help me to improve Ren'Py.
I think the benefits of something like this would outweigh the disadvantages - especially since information about video card hardware isn't all that sensitive. But I'd like feedback from the community before I go ahead with this - especially, information about other software that does this, and the response from its user community.
I'm considering including a component in Ren'Py that sends information back to my server about the hardware it's running on. Data I'm considering collecting consists of:
- The version of Ren'Py and the platform it is running on.
- The name of the video card manufacturer.
- The version of OpenGL and the current driver version.
- Information about the limits of the hardware (texture size, number of multitexture units, etc.)
- Information about available extensions (if known).
No information about what game is running would be sent back to the server. The server would collect the information, and store it in a database that I could then analyze. (The IP address would be sent along with the data. Although I don't plan to store it with the data, I don't want to rule out it being logged on the server I use - so I'll say I collect that too.)
Games would still run even if the computer is not connected to the internet. The hardware survey would run in a background thread, so that it wouldn't slow Ren'Py down at all.
I plan to disclose this in the LICENSE.txt and help.html files that ship with Ren'Py. Ren'Py would also log communications to and from the server, so people can see what it's sending.
Users would be able to disable the hardware survey by editing the environment.txt file before starting Ren'Py.
Commenting on this proposal: I'm worried that people might accuse Ren'Py - and games made with Ren'Py of being spyware, because it does send information about users' computers back to the server. I'm hoping by disclosing what we're doing openly, this accusation is mitigated.
At the same time, I don't want to ask for permission explicitly - largely because I think the information being collected isn't that sensitive, and because I don't want people's first impression of a Ren'Py game being "Ren'Py would like to collect information about your hardware. Is that okay?"
I suspect that after several games have been released with the survey, I'd be able to get relatively good information about the hardware people run Ren'Py on. That would help me make decisions about what hardware I can take advantage of - which would, in turn, help me to improve Ren'Py.
I think the benefits of something like this would outweigh the disadvantages - especially since information about video card hardware isn't all that sensitive. But I'd like feedback from the community before I go ahead with this - especially, information about other software that does this, and the response from its user community.