Inner Space

From Lavish Software Wiki
Jump to navigation Jump to search

Other languages: Deutsch

Inner Space is an extensible gaming platform for Windows. It runs programs written for it, like the popular ISBoxer multiboxing software. Inner Space primarily runs scripts developed in LavishScript, with graphical user interfaces in LavishGUI, but also supports .NET 2.0-3.5 and 4.0 for a full range of capabilities.

Inner Space is broken down into three main parts:

  1. The main Inner Space program, called the Uplink
  2. Each game or program that gets launched becomes an Inner Space 'Session', through application-level virtualiztion
  3. The IS:Kernel that provides the same base functionality in both the main program and in sessions

Installation

It's so easy!
Inner Space is available only to Lavish Software subscribers.
  1. Download the installer from the Inner Space download page
  2. Run the installer
  3. An Inner Space shortcut is placed on your desktop, use it to launch the Inner Space Uplink. You may move the shortcut onto your start menu, or wherever you prefer.
  4. Because the installer only contains a couple necessary files, Inner Space will patch itself to the latest version when launched
  5. The Inner Space icon should appear in the system notification area (usually by your system clock)
  6. That's it! Launch your games by right clicking the system tray icon.

Basic Usage

  • Launch Inner Space using the icon on your desktop. The Uplink becomes an icon in your system tray (next to the system clock).
  • Launch games by right clicking the system tray icon, finding the name of a game in the menu, and selecting a profile from the submenu.
  • Open the in-game Inner Space console by using the ` key, or F12 if you do not have a ` key. This key is a Bind and can be changed to any key or combination of keys you choose. You can change the key for this binding in the Configuration (in your Session Startup Sequence).
  • The in-game console accepts many commands. All consoles have all of the LavishScript commands as well as Inner Space Commands. Extensions can add their own commands too!
  • Inner Space displays a framerate and memory indicator in the upper left corner by default. You can toggle them by pressing Ctrl+Alt+F and Ctrl+Alt+M, respectively.
  • When playing multiple sessions you can use Ctrl+Alt+Z and Ctrl+Alt+X to rotate backwards or forwards through sessions, bringing another session to foreground. Using Ctrl+Alt+1 through Ctrl+Alt+9 quickly brings specific sessions to the foreground.
  • To add a new game right click the system tray icon and click "Add Game". Enter the name of the game, then click the "..." button to navigate to the game's executable.
  • Extensions can be downloaded and placed in the Extensions folder, then loaded with the Extension command. Interface files packaged with extensions can generally be placed in the Interface folder

Overview

Inner Space operates independently in any number of processes, beginning with the Uplink and extending into Sessions, which are any processes launched by the uplink.

A brief Inner Space hierarchy

Uplink

  • Uplink - The Uplink serves as the hub for Inner Space
    • Startup Sequences
    • Configuration
      • Games
        • Profiles
    • Display
    • Launch Menu
    • Patcher
    • Session Relay
    • Uplink Networking

Sessions

  • Sessions - A Session is any process launched by the Inner Space uplink or a session. The launched process is called the host process, because it is hosting Inner Space inside
    • Startup Sequences
    • Display
      • Direct3D8
      • Direct3D9
      • OpenGL
    • File Redirection
    • Input
      • DirectInput
      • Software Mouse
      • Win32
    • Stealth
    • Window

Kernel

  • Kernel - The Kernel, used by the uplink and all sessions, is the main component that drives Inner Space. It is in charge of handling all of the various core subsystems that make up Inner Space.
    • Automation (Scripting) and Commands - Inner Space features a scriptable command shell through our LavishScript engine. This can be accessed through the Console and in various other ways. Inner Space also provides .NET 2.0-3.5 and 4.0 support in process.
    • Extensions - Extensions, as the name implies, extend the feature set of Inner Space and its components. This can be adding new user interface features, new commands or automation objects, and so on. Many extensions are game-specific and add the ability to interact directly with the game.
    • Input Emulation - Input emulation allows Inner Space to reproduce keyboard and mouse events, such as pressing a key, typing, moving the mouse or clicking mouse buttons.
    • Memory Modification - A memory modification service allows Inner Space and extensions to easily and safely modify the memory of the host process. Alone, this service is the equivalent to Read/WriteProcessMemory; however, an extension can provide its own memory protection service, which protects memory modifications from any detection by the host.
    • Navigation - A general navigation system is built into Inner Space for easy adaptation in automating games.
    • Services - Services provide safe one- or two-way communication between Inner Space and extensions, as well as between extensions. They are also used to implement asynchronous operations, such as retrieving web pages.
    • Settings - An XML-based setting system is implemented
    • User Interface - Inner Space features a complete user interface system through our LavishGUI engine. LavishGUI also integrates directly with LavishScript so that every aspect of our GUI is scriptable.
    • Web - Inner Space has the ability to retrieve a URL into memory or file, via the open source cURL libary.

See Also