Difference between revisions of "IS:Uplink"

From Lavish Software Wiki
Jump to navigation Jump to search
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
== Introduction ==
 
== Introduction ==
The Inner Space '''Uplink''' serves as a hub for all [[IS:Session|Inner Space sessions]], and provides basic game and profile settings.  All games must be launched through the Uplink (via any of the supplied methods, including the menu, special desktop shortcuts, etc) to become an Inner Space session.
+
The Inner Space '''Uplink''' serves as a hub for all [[IS:Session|Inner Space sessions]] providing basic game and profile settings.  All games must be launched through the Uplink (via any of the supplied methods, including the menu, special desktop shortcuts, etc) to become Inner Space sessions.
  
 
== Games and Profiles ==
 
== Games and Profiles ==
Inner Space provides a way to add your own games to its list.  To do so, you simply click "Add Game" from the menu, type the name of the game, and select the executable to use in order to launch the game.  This is all that is necessary for a large number of today's popular titles, and in fact this is how we add games to the official support list ourselves!  Although this works most of the time, some games may expose bugs in our system that need to be solved in order to fully support the game.  Please let us know of any games you add -- unsuccessfully, or successfully, so we can continue to improve the system.
+
===Adding a game===
 +
Inner Space provides a way to add your own games to its list.  To do so, you simply click "Add Game" from the menu, type the name of the game, and select the executable to use in order to launch the game.  The list of games already in Inner Space is [[Inner Space:Supported Games|here]]. If you experience any trouble adding a game to Inner Space, please let us know.
 +
===Editing/Adding a game profile===
 +
To add or edit a game profile, right click the tray icon and select Configuration. From here the Inner Space Configuration UI will appear and we want to click the -> Arrow until we find the Game Configuration tab up top. After selecting this tab we will need to use the top combobox to select the game we wantNext, we either use the bottom combobox, or press the "New Profile" button. Change or add your preferences and click finished.  
  
=== Using the Games window ===
+
== Console ==
=== Adding Games ===
+
Inner Space consoles allow the use of commands, extensions, and scripts. All consoles have all of the  [[LavishScript:Commands|LavishScript commands]] as well as [[IS:Kernel#Commands|Inner Space Commands]].  The Uplink console can be opened by selecting the Console option from the system tray icon's context menu, or by pressing the ` key (by default -- this key is a [[IS:Kernel#Binds (hotkeys)|bind]]) in the Uplink.  Session consoles can be opened from within a session by pressing the ` key (by default -- again, this key is a [[IS:Kernel#Binds (hotkeys)|bind]]).  Most of the time you would probably want to use a session-specific console, rather than the Uplink console.
=== Adding Profiles ===
 
  
== Console ==
+
== Uplink Specific Commands ==
 +
Note: When calling these from .NET, most of them will deadlock if called outside the OnFrame event handler.
 +
* [[ISUplink:MainWindow (Command)|MainWindow]]
 +
: Show or hide the main window
 +
* [[ISUplink:RelayGroup (Command)|RelayGroup]]
 +
: Join or leave a [[IS:Relay Group|Relay Group]]
 +
* [[ISUplink:Kill (Command)|Kill]]
 +
: Terminate a session process
  
== LavishScript Extensions ==
+
=== Misc ===
=== Commands ===
+
* [[ISUplink:MakeShortcut (Command)|MakeShortcut]]  
==== Misc ====
+
: Creates a shortcut on the desktop to automatically open a given profile
* [[ISUplink:Version (Command)|Version]]
+
* [[ISUplink:Encode (Command)|Encode]]
: Display the current Inner Space version
+
: For video encoding
* [[ISUplink:Exit (Command)|Exit]]
+
* [[ISUPlink:RestoreGamma (Command)|RestoreGamma]]
: Instantly close the program
+
: Restores gamma to the original level
 +
* [[ISUplink:Relay (Command)|Relay]]
 +
: Relays a command to a specific session
 
* [[ISUplink:Open (Command)|Open]]
 
* [[ISUplink:Open (Command)|Open]]
: Opens a new session of a game using a specific profile
+
: Launches a given profile, as if you had selected it in the Inner Space Uplink menu.
* [[ISUplink:MakeShortcut (COmmand)|MakeShortcut]]
+
* [[ISUplink:RemoteUplink (Command)|RemoteUplink]]
: Creates a shortcut on the desktop to automatically open a given profile
+
: List, connect to, or disconnect from remote uplinks
==== Console ====
+
=== Session ===  
* [[ISUplink:ConsoleClear (Command)|ConsoleClear]]
+
''(these commands can ONLY be used from inside a session, via the [[ISSession:Uplink (Command)|Uplink]] command)''
: Clear the console
 
* [[ISUplink:Squelch (Command)|Squelch]]
 
: Quietly execute a command (nothing shows up in console)
 
* [[ISUplink:Echo (Command)|Echo]]
 
: Output text (to the console)
 
* [[ISUplink:Console (Command)|Console]]
 
: Toggle the console
 
* [[ISUplink:Log (Command)|Log]]
 
:  Log all console output
 
==== Session ====
 
''(with the exception of Relay, these commands can ONLY be used from inside a session, via the [[ISSession:Uplink (Command)|Uplink]] command)''
 
 
* [[ISUplink:Name (Command)|Name]]
 
* [[ISUplink:Name (Command)|Name]]
 
: Set the session name, used for Relay
 
: Set the session name, used for Relay
* [[ISUplink:Relay (Command)|Relay]]
 
: Relays a command to a specific session
 
 
* [[ISUplink:Sessions (Command)|Sessions]]
 
* [[ISUplink:Sessions (Command)|Sessions]]
 
: Lists all sessions
 
: Lists all sessions
 
* [[ISUplink:Focus (Command)|Focus]]
 
* [[ISUplink:Focus (Command)|Focus]]
 
: Switch input focus to another session
 
: Switch input focus to another session
==== Settings ====
 
*[[ISUplink:Game (Command)|Game]]
 
: Manipulate settings for a specific game
 
*[[ISUplink:Games (Command)|Games]]
 
: Add, list or remove games
 
*[[ISUplink:Profile (Command)|Profile]]
 
: Manipulate settings for a specific profile
 
*[[ISUplink:Profiles (Command)|Profiles]]
 
: Add, list or remove profiles
 
  
=== Data Types ===
+
== Events ==
''(none)''
+
* '''OnSessionConnected['''name''']''': Fires when a local session connects (launches), before it is renamed to "is1" and so on by the default startup script
 +
* '''OnSessionRenamed['''old name''','''new name''']''': Fires when a local session is renamed
 +
* '''OnSessionDisconnected['''name''']''': Fires when a local session disconnects (closes)
 +
* '''OnRemoteSessionConnected['''uplink name''','''full session name''']''': Fires when a remote session connects (launches) or is renamed (the previous name will be dropped by OnRemoteSessionDisconnected)
 +
* '''OnRemoteSessionDisconnected['''uplink name''','''full session name''']''': Fires when a remote session disconnects (closes) or is being renamed
 +
* '''OnUplinkConnected['''ipaddress''']''': Fires when a remote uplink becomes connected to this one, before its name is acquired
 +
* '''OnUplinkRenamed['''ipaddress''','''name''']''': Fires when a remote uplink is renamed (currently always exactly once per uplink)
 +
* '''OnUplinkDisconnected['''ipaddress''','''name''']''': Fires when a remote uplink is disconnected
  
=== Top-Level Objects ===
+
== Object Types ==
''(none)''
+
* [[ISUplink:ismenuitem (Object Type)|ismenuitem]]: A custom item on the IS menu
 +
** [[ISUplink:ismenu (Object Type)|ismenu]]: A custom sub-menu on the IS menu
 +
** [[ISUplink:ismenucommand (Object Type)|ismenucommand]]: A custom command item on the IS menu
 +
** [[ISUplink:ismenuseparator (Object Type)|ismenuseparator]]: A custom separator on the IS menu
 +
* [[ISUplink:remoteuplink (Object Type)|remoteuplink]]: A remote uplink (an Uplink running on another PC, connected to this one via Uplink Networking)
 +
* [[ISUplink:session (Object Type)|session]]: A game session, local or remote (on another PC)
 +
* [[ISUplink:videofeed (Object Type)|videofeed]]''': The video feed management object type
 +
 
 +
== Top-Level Objects ==
 +
* [[ISUplink:ismenu (Object Type)|ismenu]] '''ISMenu''': Gets the custom IS menu
 +
* '''...''' '''ISMenu['''#''']''': Get any [[ISUplink:ismenuitem (Object Type)|ismenuitem]] by its ID. Return type is dynamic depending on the type of menu item.
 +
* [[ISUplink:remoteuplink (Object Type)|remoteuplink]] '''RemoteUplink['''name''']''': Get a remote uplink by name
 +
* [[ISUplink:session (Object Type)|session]] '''Session['''#''']''': Get the Nth session (1-based, from 1 to '''Sessions''')
 +
* [[ISUplink:session (Object Type)|session]] '''Session['''name''']''': Find a session by name
 +
* [[DataType:int|int]] '''Sessions''': Number of sessions (local and remote)
 +
* [[ISUplink:videofeed (Object Type)|videofeed]] '''VideoFeed''': The video feed management object
  
 
== See Also ==
 
== See Also ==
 +
* [[Inner Space]]
 
* [[LavishScript]]
 
* [[LavishScript]]
 
* [[IS:Session|Inner Space Session]]
 
* [[IS:Session|Inner Space Session]]
 +
 +
[[Category:Inner Space]]

Latest revision as of 16:18, 28 October 2014

Introduction

The Inner Space Uplink serves as a hub for all Inner Space sessions providing basic game and profile settings. All games must be launched through the Uplink (via any of the supplied methods, including the menu, special desktop shortcuts, etc) to become Inner Space sessions.

Games and Profiles

Adding a game

Inner Space provides a way to add your own games to its list. To do so, you simply click "Add Game" from the menu, type the name of the game, and select the executable to use in order to launch the game. The list of games already in Inner Space is here. If you experience any trouble adding a game to Inner Space, please let us know.

Editing/Adding a game profile

To add or edit a game profile, right click the tray icon and select Configuration. From here the Inner Space Configuration UI will appear and we want to click the -> Arrow until we find the Game Configuration tab up top. After selecting this tab we will need to use the top combobox to select the game we want. Next, we either use the bottom combobox, or press the "New Profile" button. Change or add your preferences and click finished.

Console

Inner Space consoles allow the use of commands, extensions, and scripts. All consoles have all of the LavishScript commands as well as Inner Space Commands. The Uplink console can be opened by selecting the Console option from the system tray icon's context menu, or by pressing the ` key (by default -- this key is a bind) in the Uplink. Session consoles can be opened from within a session by pressing the ` key (by default -- again, this key is a bind). Most of the time you would probably want to use a session-specific console, rather than the Uplink console.

Uplink Specific Commands

Note: When calling these from .NET, most of them will deadlock if called outside the OnFrame event handler.

Show or hide the main window
Join or leave a Relay Group
Terminate a session process

Misc

Creates a shortcut on the desktop to automatically open a given profile
For video encoding
Restores gamma to the original level
Relays a command to a specific session
Launches a given profile, as if you had selected it in the Inner Space Uplink menu.
List, connect to, or disconnect from remote uplinks

Session

(these commands can ONLY be used from inside a session, via the Uplink command)

Set the session name, used for Relay
Lists all sessions
Switch input focus to another session

Events

  • OnSessionConnected[name]: Fires when a local session connects (launches), before it is renamed to "is1" and so on by the default startup script
  • OnSessionRenamed[old name,new name]: Fires when a local session is renamed
  • OnSessionDisconnected[name]: Fires when a local session disconnects (closes)
  • OnRemoteSessionConnected[uplink name,full session name]: Fires when a remote session connects (launches) or is renamed (the previous name will be dropped by OnRemoteSessionDisconnected)
  • OnRemoteSessionDisconnected[uplink name,full session name]: Fires when a remote session disconnects (closes) or is being renamed
  • OnUplinkConnected[ipaddress]: Fires when a remote uplink becomes connected to this one, before its name is acquired
  • OnUplinkRenamed[ipaddress,name]: Fires when a remote uplink is renamed (currently always exactly once per uplink)
  • OnUplinkDisconnected[ipaddress,name]: Fires when a remote uplink is disconnected

Object Types

  • ismenuitem: A custom item on the IS menu
  • remoteuplink: A remote uplink (an Uplink running on another PC, connected to this one via Uplink Networking)
  • session: A game session, local or remote (on another PC)
  • videofeed: The video feed management object type

Top-Level Objects

  • ismenu ISMenu: Gets the custom IS menu
  • ... ISMenu[#]: Get any ismenuitem by its ID. Return type is dynamic depending on the type of menu item.
  • remoteuplink RemoteUplink[name]: Get a remote uplink by name
  • session Session[#]: Get the Nth session (1-based, from 1 to Sessions)
  • session Session[name]: Find a session by name
  • int Sessions: Number of sessions (local and remote)
  • videofeed VideoFeed: The video feed management object

See Also