Difference between revisions of "Viewer parameters"

From Second Life Wiki
Jump to navigation Jump to search
(bugfix on url parameter example)
(30 intermediate revisions by 14 users not shown)
Line 1: Line 1:
{{Help|Viewer=*}}
{{Help|Viewer=*}}


For versions of Second Life prior 1.20 see: [[Pre 1.20 Client parameters]]
== Using Viewer parameters ==
There are many ways of passing command line parameters to the Viewer.
=== Command line ===
On all platforms, when running the Viewer from a command shell you may specify parameters directly on the command line.  For example:
SecondLife.exe --channel "Test 123"  --settings settings_workspace.xml --set InstallLanguage en
=== Settings Files ===
On all platforms, you can also construct a settings file and specify that with the <tt>--sessionsettings</tt> command line switch. Please see the table below to understand the settings variables engaged by each command-line switch.
If you edit the user_settings/settings.xml file, that affects future Second Life sessions initiated from your OS account.
Alternatively, you can edit the first_last/settings.xml file, which affects only Second Life sessions for that login user. For example, if your Second Life name is "FooBar Baz", you should find that file in foobar_baz/settings.xml. (Caution: this file uses a different XML format than the other settings files.)
=== Mac OS X AppleScripts ===
An alternative (and often easier) way to launch Second Life with command line parameters is to use an AppleScript.
Follow these steps:
<ol>
<li> In <code>/Applications/AppleScript</code> open Script Editor.
<li> Open a new document and paste the following text into it:
<pre>do shell script "\"/Applications/Second Life.app/Contents/MacOS/Second Life\" -grid Aditi"</pre>
The script includes an example parameter that will cause the Viewer to log in to the beta grid; change the parameters as desired.
<li> Once you're happy with the parameters, click "Compile"
<li> Choose File > Save As
<li> Save the script as an Application, and select "Run Only" (may be "Execute" on OS X.4 Tiger).  If you want to tweak the script then you can save it as not run-only, and/or save a copy as "Script".
</ol>
Double-click the application you've compiled to launch the Viewer with the specified parameters.
NOTE: If the Viewer launches then immediately quits, open it normally since there is likely an update available:
download it and your script will work again. There is a [http://jira.secondlife.com/browse/VWR-5835 JIRA issue] for this.
=== Visual Studio ===
In Visual Studio, the command line paramaters are in the Debug Options pane of the newview project preferences. Ensure newview is your startup project, and launch the compiled viewer from within the debugger for these options to take effect.
=== XCode ===
In XCode, first select "newview" under the "Executables" group in XCode. Then open the "Get Info" dialog and click the "Arguments" tab. Add any of the following options to the "Arguments to be passed on launch" pane.
== Parameter reference ==
NOTE: A ''parameter'' refers to a directive provided on the command-line following a double-dash (--).
An ''argument'' is a value provided for a parameter.  For example in <code>--port 13001</code>, "port" is the parameter
and "13001" is the argument.
{| {{Prettytable}}


For versions of Second Life prior 1.20 see: [[Pre 1.20 Client parameters]]
|-{{Hl2}}
! Parameter
! Argument (if any)
! Description
! Overridden Setting


== Command Line Options ==
|-
| --analyzeperformance
| None
| Compare gathered metrics with baseline. Must be used with --logmetrics or --logperformance.
| AnalyzePerformance


{| {{prettytable}}
|- {{Hl2}}
|| '''-option <argument> [<optional argument>]'''
|| '''Description'''
|| '''Overridden Setting'''
|-  
|-  
||--help
| --autologin
||Show a message box with available options listed.
| None
||
| Login in as last saved user.
|-
| AutoLogin
||--port <port number>
 
||Set the TCP port for the client; useful to run multiple instances of SL on the same local home network. Values that may work: 13000 and 13001 (Valid numbers are 13000 to 13050)
||ViewerPort
|-  
|-  
||--drop <percentage>
| --channel <name>
||Specify a percentage of packets to drop.  
| Channel name
||PacketDropPercentage
| Specify version channel name. (For Testing)
| CmdLineChannel
 
|-  
|-  
||--inbw <bits per sec>
| --console <show>
||Specify input bandwidth limit.
| TRUE ''or'' '''FALSE'''
||InBandwidth
| Show a debugging console (Windows only)
| ShowConsoleWindow
 
|-  
|-  
||--outbw <bits per sec>
| --cooperative <ms to yield>
||Specify output bandwidth limit.  
| Milliseconds to yield per frame
||OutBandwidth
| Yield specified time to host on each frame.  
| YieldTime
 
|-
| --crashonstartup
| None
| Crashes on startup. For debugging.
| CrashOnStartup
 
|-  
|-  
||--grid <grid choice>
| --debugsession
||Specify the grid to connect to. Can be an IP address.  
| None
||GridChoice
| Run as if RenderDebugGL is TRUE, but log errors until end of session.
| DebugSession
 
|-  
|-  
||--loginuri <URI>
| --debugviews
||Login server to connect to.  
| None
||LoginURI
| Enable UI view debugging information.
| DebugViews
 
|-  
|-  
||--helperuri
| --disablecrashlogger
||Helper web cgi prefix to use ???
| None
||HelperURI
| Disables the crash logger and lets the OS handle crashes.
| DisableCrashLogger
 
|-  
|-  
||--debugviews
| --drop <percentage>
||Enable UI view debugging info.
| Percentage to drop (0 - 100)
||DebugViews
| Specify a percentage of packets to drop.  
| PacketDropPercentage
 
|-  
|-  
||--skin <folder>
| --god
||Specify the skin folder to use. (eg. korean, spanish)
| None
||SkinFolder
| Login in [[God Mode|god mode]] if you are authorized.
| ConnectAsGod
 
|-
| --graphicslevel
| integer level
| override the level that would be selected based on your gpu
| RenderQualityPerformance
 
|-  
|-  
||--autologin
| --grid <grid name>
||Login in as last saved user.
| Grid name
||AutoLogin
| Specify the grid to connect to. Must specify either a hard-coded grid (agni or aditi), or one defined in grids.xml
| CmdLineGridChoice
 
|-
| --help
| None
| Show a message box with available options listed.
| N/A
 
|-  
|-  
||--quitafter <secs>
| --helperuri <URI>
||Have the client quit after the specified duration.
|  
||QuitAfterSeconds
| '''Obsolete'''- no longer supported.  May only be set in the grid definition (grids.xml)
|  
 
|-  
|-  
||--rotate
| --ignorepixeldepth
||Force the Avatar to rotate to the right. (For Testing)
| None
||RotateRight
| Ignore pixel depth settings.
| IgnorePixelDepth
 
|-  
|-  
||--noaudio
| --inbw <bits>
||Disable sound from the client.
| Bits per second
||NoAudio
| Specify input bandwidth limit.
| InBandwidth
 
|-
| --loginpage <URL>
|  
| '''Obsolete'''- no longer supported.  May only be set in the grid definition (grids.xml)
|  
 
|-  
|-  
||--nosound
| --loginuri <URI>
||Disable sound from the client.
|  
||NoAudio
| '''Obsolete'''- no longer supported.  May only be set in the grid definition (grids.xml)
|  
 
|-  
|-  
||--noprobe
| --logfile <filename>
||Disable hardware checking at startup.
| File name
||NoHardwareProbe
| Specify a file name for log output.
| UserLogFile
 
|-  
|-  
||--noquicktime
| --login <firstname> <lastname> <password>
||Disable use of quicktime by the client.
| Account first name, last name, and password with which to log in.
||NoQuickTime
| Specify login values.
| UserLoginInfo
 
|-  
|-  
||--nopreload
| --logmetrics
||Disable precaching of sound and bitmaps used by the client.
| MetricName
||NoPreload
| Log metrics data in MetricName.slp. See [[Performance Testers]] for details.
| LogMetrics
 
|-  
|-  
||--purge
| --logperformance
||Force the client to clear cached downloads during startup.
| None
||PurgeCacheOnNextStartup
| Log performance data in performance.slp. See [[Performance Testers]] for details.
| LogPerformance
 
|-  
|-  
||--noinvlib
| --multiple
||Do not request inventory library.
| None
||NoInventoryLibrary
| Allow multiple viewers running concurrently.
| AllowMultipleViewers
 
|-  
|-  
||--log
| --no-verify-ssl-cert
||Log network messages.
| None
||LogMessages
| Disable SSL certificate verification.
| NoVerifySSLCert
 
|-  
|-  
||--logfile <filename>
| --noaudio
||Specify a file name for log output.
| None
||UserLogFile
| Disable sound from the client.
| NoAudio
 
|-  
|-  
||--settings <filename>
| --noinvlib
||Specify the name of the user settings file.
| None
||UserSettingsFile
| Do not request inventory library.
| NoInventoryLibrary
 
|-  
|-  
||--set <setting> <value>
| --nopreload
||Specify the value of the named setting.
| None
||Maps to <setting> arg.
| Disable precaching of sound and bitmaps used by the client.
| NoPreload
 
|-  
|-  
||--login <firstname> <lastname> <password>
| --noprobe
||Specify login info.
| None
||UserLoginInfo
| Disable hardware checking at startup.
| NoHardwareProbe
 
|-  
|-  
||--god
| --noquicktime
||Log in as god if you have god access.
| None
||ConnectAsGod
| Disable use of quicktime by the client.
| NoQuickTime
 
|-  
|-  
||--console <show>
| --nosound
||Show a debugging console (Windows only)
| None
||ShowConsoleWindow
| Disable sound from the client.
| NoAudio
 
|-  
|-  
||--safe
| --novoice
||Reset preferences, run in safe mode.
| None
||SafeMode
| Disable voice chat.
| CmdLineDisableVoice
 
|-  
|-  
||--multiple
| --outbw <bits>
||Allow multiple viewers running concurrently.
| Bits per second
||AllowMultipleViewers
| Specify output bandwidth limit.
| OutBandwidth
 
|-
| --port <n>
| Port number
| Set the TCP port for the client; useful to run multiple instances of SL on the same local home network. Values that may work: 13000 and 13001 (Valid numbers are 13000 to 13050)
| UserConnectionPort
 
|-  
|-  
||--novoice
| --purge
||Disable voice chat.
| None
||DisableVoice
| Force the client to clear cached downloads during startup.
| PurgeCacheOnNextStartup
 
|-  
|-  
||--url <SLURL>
| --qa
||Specify the starting region and position (eg. secondlife://Ahern/128/128).  
| None
This must be the last parameter on the command line.
| Enable UI features for used for testing.
||SecondLifeURL
| QAMode
 
|-  
|-  
||--ignorepixeldepth
| --quitafter <secs>
||Ignore pixel depth settings.
| Number of seconds to wait before quitting
||IgnorePixelDepth
| Have the client quit after the specified duration.
| QuitAfterSeconds
 
|-  
|-  
||--cooperative <ms to yield>
| --replaysession
||Yield specified time to host on each frame.  
| None
||YieldTime
| Use a saved autoplay file to perform viewer actions automatically. Must be used with --autologin.
| ReplaySession
 
|-  
|-  
||--no-verify-ssl-cert
| --rotate
||Disable SSL certificate verification.
| None
||NoVerifySSLCert
| Force the avatar to rotate to the right. (For Testing)
| RotateRight
 
|-  
|-  
||--channel <name>
| --safe
||Specify version channel name. (For Testing)
| None
||VersionChannelName
| Reset preferences and run in safe mode.
| SafeMode
 
|-
| --sessionsettings <filename>
| name of a file in app_settings
| Use '''settings_minimal.xml''' to force Basic mode on login, an invalid name like '''none''' to force Advanced mode. Note that currently (2.6) the login screen mode menu will show "Basic" if this setting appears at all, but the command line setting will still override on actual login.
|  
 
|-  
|-  
||--qa
| --set <parameter> <value>
||Enable UI features for used for testing.
| First argument is the name of setting; second is the value to assign to it.
||QAMode
| Specify the value of the named setting (view a full list [[Debug_Settings|here]]).
|}
| Maps to <setting> arg.


== Using Client Parameters ==
|-
There are many ways of passing command line options to the viewer. These are among the most common and useful:
| --setdefault <parameter> <value>
| First argument is the name of setting; second is the value to assign to it.
| Specify the value of a particular configuration variable which can be overridden by settings.xml.
| Maps to <setting> arg.


=== Command Line ===
|-
From all supported platforms, arguments may be specified manually when running the viewer from a shell.
| --settings <filename>
| Local file name
| Specify the name of the user settings file.
|


=== Windows Shortcuts ===
|-
Create a shortcut to the SecondLife.exe executable. Edit the shortcut properties and add any of the above options in the first editable text field. The arguments go at the end of the line, *after* the closing quotation mark, if any.
| --skin <folder>
| Folder name
| Specify the skin folder to use. (eg. korean, spanish)
| SkinCurrent


=== OS X Parameter File ===
|-
In OS X, create a file called Second Life.app/Contents/Resources/arguments.txt and list the options you like, one per line.
| --slurl <SLurl>
| SLurl
| Specify the starting region and position (for example, secondlife://Ahern/128/128).  
This must be the last parameter on the command line.
| CmdLineLoginLocation


=== OS X Applescripts ===
|-
An alternative (and often easier) way to launch Second Life is to use an AppleScript. To do this, go into /Applications/AppleScript and open Script Editor. Open a new document and paste the following text into it:
| --update-service <url>
<pre>do shell script "\"/Applications/Second Life.app/Contents/MacOS/Second Life\" -grid Aditi"</pre>
| base url for the viewer version manager update query
The script includes a parameter as an example, which will send you to the beta grid, change the parameters as you please. Once you're happy with the parameters, hit the "Compile" button, then go to File -> Save As, and save the script as an Application, and select "Run Only" (may be "Execute" on OS X.4 Tiger). If you want to tweak the script then you can save it as not run-only, and/or save a copy as "Script".
| Specify the viewer version manager service to use (primarily for upgrade testing)
| CmdLineUpdateService


Now simply double-click the Application you've compiled, and SL will launch with the parameters you chose. NOTE: If SL launches then immediately quits, them you will need to open it normally as there is likely an update available, so download it and your script will work again, there is a [http://jira.secondlife.com/browse/VWR-5835 Jira issue] for this.
|-  
| --url <SLurl>
| SLurl
| Specify the starting region and position (for example, secondlife://Ahern/128/128).
This must be the last parameter on the command line.
| CmdLineLoginLocation


=== Visual Studio ===
|-
In Visual Studio, the command line paramaters are in the Debug Options pane of the newview project preferences. Ensure newview is your startup project, and launch the compiled viewer from within the debugger for these options to take effect.
| --usersessionsettings <filename>
| name of a file in app_settings
| Specify the filename of a configuration file that contains temporary per-session configuration user overrides.
|


=== XCode ===
|}
In XCode, first select "newview" under the "Executables" group in XCode. Then open the "Get Info" dialog and click the "Arguments" tab. Add any of the above options to the "Arguments to be passed on launch" pane.


== Specifying new command line parameters ==
== Specifying new command line parameters ==
New command line parameters can be added to the client via the configuration file ''app_settings/cmd_line.xml''. Using this file a command line paramter can be mapped to a user setting.  
 
Parameter can have the following options:
To add a new command line parameter, use the configuration file ''app_settings/cmd_line.xml'' to map a command line paramter to a user setting.  
A parameter can have the following options:
* desc - A description of the paramter.  
* desc - A description of the paramter.  
* short - a single character to map to the paramter.
* short - a single character to map to the paramter.
Line 194: Line 371:
* map-to - specify a user setting to map the option to.
* map-to - specify a user setting to map the option to.
The file uses [[LLSD]] syntax. Use the existing options as reference.
The file uses [[LLSD]] syntax. Use the existing options as reference.
== Examples ==
=== Setting a Custom Cache Location ===
To set a custom cache location when launching Second Life, you should use the <code>set</code> parameter with a value of <code>NewCacheLocation</code> followed by the desired cache folder to use. This will tell Second Life to startup using this location as a new cache location.<br>
'''Example:''' <code>--set CacheLocation j:\SL_Cache --set NewCacheLocation j:\SL_Cache</code>
'''NOTE''':
Per '''STORM-334 ''' The double command above <span style="text-decoration: line-through;">will</span> should retain the previous cache and switch to the new cache.
Using just NewChacheLocation will clear any existing cache folder that it has been using. So, to prevent this you can also the <code>CacheLocation</code> setting to the same value and ahead of NewCacheLocation, which will preserve any cache folder saved in your viewer settings.
This allows you to, use two different shortcuts in order to launch two different Second Life accounts, each with their own separate cache folder, allowing each to have a fully cached home location, for example. Or, a more complex case, a shortcut could create a temporary RAM disk for use as a cache folder, and set this value for Second Life to use, taking advantage of a RAM disk's speed, before saving the contents to disk afterwards.
{{KBnote|This command is not working with the Project Bento Viewer 5.0.0.315657 or the current default viewer 4.0.5.315117. These viewers do, however, automatically create separate inventory caches for each grid. As an alternative, you can use [[#Command_line|separate settings files]] as above, then use the normal preferences route to set a custom cache location.}}

Revision as of 22:16, 1 June 2016

For versions of Second Life prior 1.20 see: Pre 1.20 Client parameters

Using Viewer parameters

There are many ways of passing command line parameters to the Viewer.

Command line

On all platforms, when running the Viewer from a command shell you may specify parameters directly on the command line. For example:

SecondLife.exe --channel "Test 123"  --settings settings_workspace.xml --set InstallLanguage en

Settings Files

On all platforms, you can also construct a settings file and specify that with the --sessionsettings command line switch. Please see the table below to understand the settings variables engaged by each command-line switch.

If you edit the user_settings/settings.xml file, that affects future Second Life sessions initiated from your OS account.

Alternatively, you can edit the first_last/settings.xml file, which affects only Second Life sessions for that login user. For example, if your Second Life name is "FooBar Baz", you should find that file in foobar_baz/settings.xml. (Caution: this file uses a different XML format than the other settings files.)

Mac OS X AppleScripts

An alternative (and often easier) way to launch Second Life with command line parameters is to use an AppleScript.

Follow these steps:

  1. In /Applications/AppleScript open Script Editor.
  2. Open a new document and paste the following text into it:
    do shell script "\"/Applications/Second Life.app/Contents/MacOS/Second Life\" -grid Aditi"

    The script includes an example parameter that will cause the Viewer to log in to the beta grid; change the parameters as desired.

  3. Once you're happy with the parameters, click "Compile"
  4. Choose File > Save As
  5. Save the script as an Application, and select "Run Only" (may be "Execute" on OS X.4 Tiger). If you want to tweak the script then you can save it as not run-only, and/or save a copy as "Script".

Double-click the application you've compiled to launch the Viewer with the specified parameters.

NOTE: If the Viewer launches then immediately quits, open it normally since there is likely an update available: download it and your script will work again. There is a JIRA issue for this.

Visual Studio

In Visual Studio, the command line paramaters are in the Debug Options pane of the newview project preferences. Ensure newview is your startup project, and launch the compiled viewer from within the debugger for these options to take effect.

XCode

In XCode, first select "newview" under the "Executables" group in XCode. Then open the "Get Info" dialog and click the "Arguments" tab. Add any of the following options to the "Arguments to be passed on launch" pane.

Parameter reference

NOTE: A parameter refers to a directive provided on the command-line following a double-dash (--). An argument is a value provided for a parameter. For example in --port 13001, "port" is the parameter and "13001" is the argument.


Parameter Argument (if any) Description Overridden Setting
--analyzeperformance None Compare gathered metrics with baseline. Must be used with --logmetrics or --logperformance. AnalyzePerformance
--autologin None Login in as last saved user. AutoLogin
--channel <name> Channel name Specify version channel name. (For Testing) CmdLineChannel
--console <show> TRUE or FALSE Show a debugging console (Windows only) ShowConsoleWindow
--cooperative <ms to yield> Milliseconds to yield per frame Yield specified time to host on each frame. YieldTime
--crashonstartup None Crashes on startup. For debugging. CrashOnStartup
--debugsession None Run as if RenderDebugGL is TRUE, but log errors until end of session. DebugSession
--debugviews None Enable UI view debugging information. DebugViews
--disablecrashlogger None Disables the crash logger and lets the OS handle crashes. DisableCrashLogger
--drop <percentage> Percentage to drop (0 - 100) Specify a percentage of packets to drop. PacketDropPercentage
--god None Login in god mode if you are authorized. ConnectAsGod
--graphicslevel integer level override the level that would be selected based on your gpu RenderQualityPerformance
--grid <grid name> Grid name Specify the grid to connect to. Must specify either a hard-coded grid (agni or aditi), or one defined in grids.xml CmdLineGridChoice
--help None Show a message box with available options listed. N/A
--helperuri <URI> Obsolete- no longer supported. May only be set in the grid definition (grids.xml)
--ignorepixeldepth None Ignore pixel depth settings. IgnorePixelDepth
--inbw <bits> Bits per second Specify input bandwidth limit. InBandwidth
--loginpage <URL> Obsolete- no longer supported. May only be set in the grid definition (grids.xml)
--loginuri <URI> Obsolete- no longer supported. May only be set in the grid definition (grids.xml)
--logfile <filename> File name Specify a file name for log output. UserLogFile
--login <firstname> <lastname> <password> Account first name, last name, and password with which to log in. Specify login values. UserLoginInfo
--logmetrics MetricName Log metrics data in MetricName.slp. See Performance Testers for details. LogMetrics
--logperformance None Log performance data in performance.slp. See Performance Testers for details. LogPerformance
--multiple None Allow multiple viewers running concurrently. AllowMultipleViewers
--no-verify-ssl-cert None Disable SSL certificate verification. NoVerifySSLCert
--noaudio None Disable sound from the client. NoAudio
--noinvlib None Do not request inventory library. NoInventoryLibrary
--nopreload None Disable precaching of sound and bitmaps used by the client. NoPreload
--noprobe None Disable hardware checking at startup. NoHardwareProbe
--noquicktime None Disable use of quicktime by the client. NoQuickTime
--nosound None Disable sound from the client. NoAudio
--novoice None Disable voice chat. CmdLineDisableVoice
--outbw <bits> Bits per second Specify output bandwidth limit. OutBandwidth
--port <n> Port number Set the TCP port for the client; useful to run multiple instances of SL on the same local home network. Values that may work: 13000 and 13001 (Valid numbers are 13000 to 13050) UserConnectionPort
--purge None Force the client to clear cached downloads during startup. PurgeCacheOnNextStartup
--qa None Enable UI features for used for testing. QAMode
--quitafter <secs> Number of seconds to wait before quitting Have the client quit after the specified duration. QuitAfterSeconds
--replaysession None Use a saved autoplay file to perform viewer actions automatically. Must be used with --autologin. ReplaySession
--rotate None Force the avatar to rotate to the right. (For Testing) RotateRight
--safe None Reset preferences and run in safe mode. SafeMode
--sessionsettings <filename> name of a file in app_settings Use settings_minimal.xml to force Basic mode on login, an invalid name like none to force Advanced mode. Note that currently (2.6) the login screen mode menu will show "Basic" if this setting appears at all, but the command line setting will still override on actual login.
--set <parameter> <value> First argument is the name of setting; second is the value to assign to it. Specify the value of the named setting (view a full list here). Maps to <setting> arg.
--setdefault <parameter> <value> First argument is the name of setting; second is the value to assign to it. Specify the value of a particular configuration variable which can be overridden by settings.xml. Maps to <setting> arg.
--settings <filename> Local file name Specify the name of the user settings file.
--skin <folder> Folder name Specify the skin folder to use. (eg. korean, spanish) SkinCurrent
--slurl <SLurl> SLurl Specify the starting region and position (for example, secondlife://Ahern/128/128).

This must be the last parameter on the command line.

CmdLineLoginLocation
--update-service <url> base url for the viewer version manager update query Specify the viewer version manager service to use (primarily for upgrade testing) CmdLineUpdateService
--url <SLurl> SLurl Specify the starting region and position (for example, secondlife://Ahern/128/128).

This must be the last parameter on the command line.

CmdLineLoginLocation
--usersessionsettings <filename> name of a file in app_settings Specify the filename of a configuration file that contains temporary per-session configuration user overrides.

Specifying new command line parameters

To add a new command line parameter, use the configuration file app_settings/cmd_line.xml to map a command line paramter to a user setting. A parameter can have the following options:

  • desc - A description of the paramter.
  • short - a single character to map to the paramter.
  • count - the number of tokens to follow a option.
  • compose - true if the option can be specified multiple times.
  • positional - true if the option can be specified without --name.
  • last_option - true if the option should be the last option.
  • map-to - specify a user setting to map the option to.

The file uses LLSD syntax. Use the existing options as reference.

Examples

Setting a Custom Cache Location

To set a custom cache location when launching Second Life, you should use the set parameter with a value of NewCacheLocation followed by the desired cache folder to use. This will tell Second Life to startup using this location as a new cache location.

Example: --set CacheLocation j:\SL_Cache --set NewCacheLocation j:\SL_Cache

NOTE: Per STORM-334 The double command above will should retain the previous cache and switch to the new cache.

Using just NewChacheLocation will clear any existing cache folder that it has been using. So, to prevent this you can also the CacheLocation setting to the same value and ahead of NewCacheLocation, which will preserve any cache folder saved in your viewer settings.

This allows you to, use two different shortcuts in order to launch two different Second Life accounts, each with their own separate cache folder, allowing each to have a fully cached home location, for example. Or, a more complex case, a shortcut could create a temporary RAM disk for use as a cache folder, and set this value for Second Life to use, taking advantage of a RAM disk's speed, before saving the contents to disk afterwards.

KBnote.png Note: This command is not working with the Project Bento Viewer 5.0.0.315657 or the current default viewer 4.0.5.315117. These viewers do, however, automatically create separate inventory caches for each grid. As an alternative, you can use separate settings files as above, then use the normal preferences route to set a custom cache location.