IS:Session

From Lavish Software Wiki
Revision as of 18:55, 12 December 2005 by Lax (talk | contribs)
Jump to navigation Jump to search

Introduction

An Inner Space session is created by running your game via the Uplink.

Startup Sequences

Startup sequences provide a permanent method of configuration through automatic issuing of commands. Startup sequences are divided into two major portions -- Pre-Startup, and Startup. Pre-Startup is performed immediately when the game is launched, before the game is allowed to perform any initialization. Startup is performed after the session successfully contacts the uplink and the game begins processing.

Display

Inner Space sessions hook into a game's Direct3D8, Direct3D9, or OpenGL graphics engine. It borrows the display to provide an integrated user interface, and to drive the bulk of Inner Space's functionality -- automation and such is performed during the time the display is rendered.

File Redirection

Inner Space sessions hook into file input and output for the purpose of allowing redirection and monitoring of file usage. Redirection is when access to a file such as "user.dat" are redirected to instead use, for example, "user1.dat".

Input

Inner Space sessions hook into a game's DirectInput or Win32 input systems. It borrows the input systems to provide interaction with Inner Space, and the ability to emulate input as well. Support for "software cursor" (the term to describe when a game uses its own representation of the cursor, instead of the Windows cursor location) is available by creating an extension that provides Inner Space with information about cursor positioning.

Stealth

Inner Space employs advanced stealthing tactics to hide itself and loaded extensions from its host process. Popular anti-cheat detection systems such as Punkbuster, VAC, VAC2, and Warden do not have knowledge of Inner Space (though of course, it cannot be guaranteed by Inner Space itself that modifications to the games made by extensions are not detected).

Window

Inner Space sessions hook into a game's Window system. The main window title can be changed independently of what the game thinks it can be, and the window can be customized in any fashion through available commands. Many games can also be forced into playing in a window, though some games have ill effects from doing so.

LavishScript Extensions

Inner Space adds various commands, objects, and data types to the LavishScript language. The following are additions solely from sessions. Because sessions also use the Inner Space Kernel, all additions from the Kernel are also available in sessions (and the uplink too).

Session Specific Commands

File System

Redirect game's file i/o from one file to another (for example, make a game use USER1.DAT instead of USER.DAT)
Redirect game's .ini file i/o from one file to another and/or one section to another and/or one value to another (for example, use an alternate setting or alternate .ini file)

Inter-process (uplink and other sessions)

Execute a command on the uplink, such as Name or Relay

Video Capture

Begins video capture
Ends video capture

Session Specific Top-Level Objects

Inter-Process

See Also