Important! Please read the announcement at http://myst.dustbird.net/uru-account.htm
Also! Please read the retirement announcement at http://myst.dustbird.net/uru-retirement.htm

Difference between revisions of "Age Requirements"

From UamWiki
 
Line 14: Line 14:
 
=Additions to other people's (including Cyan's) Ages=
 
=Additions to other people's (including Cyan's) Ages=
 
*<s>E.g. Relto pages could be done in principle, but there needs to be a framework so that they do not slow startup, and they are paged out by default.  This hasn't been done yet, but I've got some plans for a way that does not slow startup and all fanmade additions are paged out by default, until enabled.</s> Relto pages are now possible!  But they are by design turned off until the player turns them on.  Still, one mustn't mess around with other people's Ages, unless they are intended to be as such, as is the case with Ahra Pahts.
 
*<s>E.g. Relto pages could be done in principle, but there needs to be a framework so that they do not slow startup, and they are paged out by default.  This hasn't been done yet, but I've got some plans for a way that does not slow startup and all fanmade additions are paged out by default, until enabled.</s> Relto pages are now possible!  But they are by design turned off until the player turns them on.  Still, one mustn't mess around with other people's Ages, unless they are intended to be as such, as is the case with Ahra Pahts.
 +
 +
=Network Access=
 +
There is a package that allows an Age to connect to the internet.  There are a number of problems involved with this, including (but not limited to):
 +
*Persistency: you can't truly get back to an old version of an Age, because the old journal isn't on your computer nor UAM.
 +
*Security: it is difficult to verify that the Age isn't secretly downloading something harmful.  Especially since the behavior can be different every single day, because of the lack of persistency.
 +
*Privacy: this is perhaps the biggest danger.  Having NetworkAccess enabled allows any Age author to spy on you, '''and there is no way, even in principle, for you to distinguish malicious from non-malicious behavior.'''
 +
 +
So the only way to be safe is to have NetworkAccess disabled.  Don't worry though, Drizzle will warn you if it is enabled, and the  UAM Shard has it disabled as well.  As an Age author, you should assume that the vast majority of people will not have NetworkAccess enabled, and encouraging them to enable it might be considered abuse.

Latest revision as of 18:02, 26 November 2010

This is not a complete list of course, but it should cover the most common problems.

A lot of things are pretty lax, so don't worry! But here are some pointers:

Messing up other people's Ages

  • You must have a unique sequence prefix. (Otherwise the Ages will break each other. It's possible for me to fix this after-the-fact if you've lost your sources files and only have the prps; let Dustin know if this has happened to you.)
  • You must have a unique Age filename. (Otherwise the Ages will overwrite each other. It's possible for me to fix this after-the-fact if you've lost your sources files and only have the prps; let Dustin know if this has happened to you.)
  • Your custom sounds must have filenames that begin with the Age's name from above. (This one is let slide a bit, because it's not actually a problem until a second Age does it with the same filename. But it still should not be done.)

Security

  • Python code for Ages mustn't contain "exec", "eval", "os.system" or similar statements. (It is easy to slip in undetectable malicious code this way.)
  • Python code for Ages mustn't make network connections. (It is very easy to slip in undetectable malicious code this way, or create spyware. Also, it would break the user's privacy, as that would keep track of everytime anyone anywhere logs into the Age.)

Additions to other people's (including Cyan's) Ages

  • E.g. Relto pages could be done in principle, but there needs to be a framework so that they do not slow startup, and they are paged out by default. This hasn't been done yet, but I've got some plans for a way that does not slow startup and all fanmade additions are paged out by default, until enabled. Relto pages are now possible! But they are by design turned off until the player turns them on. Still, one mustn't mess around with other people's Ages, unless they are intended to be as such, as is the case with Ahra Pahts.

Network Access

There is a package that allows an Age to connect to the internet. There are a number of problems involved with this, including (but not limited to):

  • Persistency: you can't truly get back to an old version of an Age, because the old journal isn't on your computer nor UAM.
  • Security: it is difficult to verify that the Age isn't secretly downloading something harmful. Especially since the behavior can be different every single day, because of the lack of persistency.
  • Privacy: this is perhaps the biggest danger. Having NetworkAccess enabled allows any Age author to spy on you, and there is no way, even in principle, for you to distinguish malicious from non-malicious behavior.

So the only way to be safe is to have NetworkAccess disabled. Don't worry though, Drizzle will warn you if it is enabled, and the UAM Shard has it disabled as well. As an Age author, you should assume that the vast majority of people will not have NetworkAccess enabled, and encouraging them to enable it might be considered abuse.