Difference between revisions of "IS:Uplink"

From Lavish Software Wiki
Jump to navigation Jump to search
 
(18 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]] 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 ==
=== Using the Games window ===
+
===Adding a game===
=== Adding Games ===
+
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.
=== Adding Profiles ===
+
===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 ==
 
== Console ==
 +
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.
  
== LavishScript Extensions ==
+
== Uplink Specific Commands ==
=== Commands ===
+
Note: When calling these from .NET, most of them will deadlock if called outside the OnFrame event handler.
; Misc
+
* [[ISUplink:MainWindow (Command)|MainWindow]]
* [[ISUplink:Version (Command)|Version]]
+
: Show or hide the main window
: Display the current Inner Space version
+
* [[ISUplink:RelayGroup (Command)|RelayGroup]]
* [[ISUplink:Exit (Command)|Exit]]
+
: Join or leave a [[IS:Relay Group|Relay Group]]
: Instantly close the program
+
* [[ISUplink:Kill (Command)|Kill]]
 +
: Terminate a session process
 +
 
 +
=== Misc ===
 +
* [[ISUplink:MakeShortcut (Command)|MakeShortcut]]
 +
: Creates a shortcut on the desktop to automatically open a given profile
 +
* [[ISUplink:Encode (Command)|Encode]]
 +
: For video encoding
 +
* [[ISUPlink:RestoreGamma (Command)|RestoreGamma]]
 +
: 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.
; Console
+
* [[ISUplink:RemoteUplink (Command)|RemoteUplink]]
* [[ISUplink:ConsoleClear (Command)|ConsoleClear]]
+
: List, connect to, or disconnect from remote uplinks
: Clear the console
+
=== Session ===
* [[ISUplink:Squelch (Command)|Squelch]]
+
''(these commands can ONLY be used from inside a session, via the [[ISSession:Uplink (Command)|Uplink]] command)''
: 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 (these commands can ONLY be used from inside a session, through 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