Aleema wrote:
1.) Will this be a permanent/long-term feature of Ren'Py? Or will you remove it after a certain amount of data is collected?
It depends on how useful the data is.
2.) Will developers have complete control to remove/toggle-off this feature (removing the prompt and the collection entirely)? Will that be easy for even a first-time developer to do?
Yes. My current though is that there will be a quit screen that has the prompt in it. Removing the prompt will disable the feature. There will be comments explaining how to do this, and it will be documented in the manual.
3.) How will developers/players be notified when you decide to collect more information than what you've first said?
Collecting more information will require a Ren'Py update. Users will be notified as to what data is collected using a privacy policy, which is yet to be written. Developers will be able to read the privacy policy, or the changelog.
4.) Will this prompt indicating participation always be on the quit screen?
A developer can hack Ren'Py to do whatever they want - I can't stop them. I will place the prompt on the quit screen by default. I will not send data unless the prompt has been shown in a given session. The maker can do anything they want - including writing their own system for collecting this data - but my intent is that the prompt will always be on the quit screen.
5.) Is data only sent once per game? Will data be sent once per game, even if your computer has already sent some?
I haven't decided yet. I'm leaning towards sending the data whenever it changes - that is, whenever the user gets a new video card or driver version.
6.) Will there be a noticeable lag between saying you want to quit and the window actually closing? Any and every game that lags before it quits is universally annoying. 5 seconds is going to be a long time after you've hit the "yes dear god I hit the X for a reason" confirmation.
I don't know yet. In the case where it can hit the server, it should be fast. It should also be fast if it has failed to send the data to the server recently, since there will be a timeout to prevent multiple resends. The 5 second timeout is for the case where we can't hit the server, _and_ the network doesn't tell us that.
> What data you are collecting seems to have changed wildly since your first post. There has to be defined limits to this, and you need to make them completely clear right now, before you green-light this and code it in.
I haven't decided yet. Right now, I'm leading towards collecting technical information only. But the privacy policy will be definitive on that.
> Enabling this by default and slipping it into a screen that people are mindlessly and hurriedly clicking away from seems no better than what some websites do to get you to subscribe to their "special offers" spam when you sign up for something. And it's unfortunate that that's the best option presented so far. I prefer it to be disabled by default (no matter where you place this), and tucked into the preferences screen where this sort of thing is normally kept.
My problem here is that I suspect the vast majority of people will keep this setting at the default - since it's something that doesn't materially benefit or hurt them. If it's hidden away by default, if it's in the preferences screen, nobody will ever change it - and I'll still be flying blind a year from now. Me flying blind means that one day I'll drop the software renderer, and find out that 5% of the audience is using it, and that they're screaming bloody murder.
> Not sure it's worth it. Not sure why I have to feel like I need to fight for my and my players' privacy over something as trivial as what video card we have. Whatever one piece of data you can't find from other surveys is a shame, it really is. But allowing you access to knowing it is unfortunately the same as letting you know any other information about my computer. It's the same permission slip.
It's not like I'm downloading digitally signed code that probes the computer. (Signed code is more of a day job thing.) The stuff I send back will be limited, both by the Ren'Py code itself and the privacy policy I will write. The problem is that what video card your players have is trivial to you - but it's a really big deal to me, as it will be helping me to decide the direction in which to take Ren'Py over the next few years.
I respect Ren'Py for being the generous, attachment-less program that it is. You could put all kinds of restrictions on it, but you don't. You don't brand it, you don't charge for it, you don't force it only to be run on your website, you don't automatically upload every distribution to a database -- it seems to encourage independence in developers by giving us a variety of ways to customize it and use it. And right now, this would at least heavily encourage all future games to be linked up to some mothership under the same banner of "Brought to you by Ren'Py! Don't forget to tip your waiter, folks!!" And to those players (who're you're actually interested in) they care diddly squat about Ren'Py, and will think that I am the one requesting their information. I don't want to be put in that position, and I fear others will be, so forgive me if I have my claws out.
I'm trying to figure out how to address this issue. That's because, for any individual game, this information will have little-to-no benefit. But over the course of years, I think it can lead to significant improvements in Ren'Py - many of which are conceptually simple, but which I can't turn on because they may break some existing games. (Non-rectangular imagemaps are one example - easy to do in GL, far more difficult in software.) And there are a bunch of other features that are waiting on abandoning the software and renderer - recoloring sprites on the fly is a big one I'd love to do.
I don't really intend this to be a way of branding the game as a Ren'Py game. It really is intended as a way to help me make Ren'Py better.
You seem to have made up your mind about doing it, though.
Despite the fact that it looks like, I haven't made up my mind. Realize that I'm probably a month away from implementing this, as at the very least, I'll be finishing the great Text rewrite before I start. I may also put this behind the launcher rewrite. What's going to happen is that in a month from now, Tom-of-the-future will look back and decide if the arguments I'm making is going to be worth the problems it can cause. I'm probably also going to run this by several other people I know, to see if one of them can talk me out of it. I'll evaluate the complexity of the actual programming, and decide if I still think it's worth doing.
Jake wrote:If this is your plan, I would still advise for the default to be 'off'.
The reasoning being that you are going to have to have two clicks to quit for at least one set of users anyway, because the checkbox needs to be checked or unchecked; the ones who are consenting to let you have their data are already more inclined to help you, so they're less likely to be annoyed by the second click.
The problem is I think that the number of of users that don't care will massively outweigh those that do care - in either direction.
On top of this, the previous concerns about people habitually clicking 'Yes I really want to quit' without properly reading the screen, or not having sufficient command of English to properly understand the question, and then getting annoyed that such an option was stuck in there. It's true that it's more unobtrusive there than elsewhere in the app, but while on one hand this means it's not going to 'break the mood', on the other hand it also means that it's more likely people who missed it until it was too late could accuse you of 'sneaking it in' there. There's no obvious association between quitting and sending data off.
This is the problem - but I'm not sure what a good resolution is. There may not _be_ one, in which case this function is not going anywhere. (I guess I could perhaps make it so the user can't quit before selecting a choice for this.)
I know it's an obvious suggestion, but: you're seeing downloads in excess of the forum population on sites you control, so... you could post a survey on those sites? In the most-extreme form, many sites I regularly visit - the most prominent in my memory being MSDN and the BBC news non-front-page areas - pop up "can you just take this quick survey" interstitials, and in my experience they're not too annoying so long as the 'close' or 'no, leave me alone' button really does what it's supposed to. Obviously I can't offer you numbers on the proportion of visitors that get turned away by those.
I don't think a survey would work, as the questions I need answered are fairly technical. "Do you have a working OpenGL, and does it support fragment shaders?" Also, much of the modern Moonlight Walks distribution comes from sites like download.com, that I don't have any control over.
[Time passes.]
Again, I haven't decided to do this. Twitter seems to be mostly against it, 4chan seems to be against it. Most notably a lot of developers are against it, and without their buy-in, this idea is dead in the water.