Skip to content
This repository has been archived by the owner on Jan 30, 2023. It is now read-only.

sw1ft747/Left4TAS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Left4TAS

TAS Plugin for Left 4 Dead 1 and 2.

The current version is considered the basis for further promotion of the toolkit.

At the moment there's the most basic things for creating TAS: frame-by-frame input, autostrafer; also callbacks, various console commands/variables and HUD.

Currently you can use the plugin for making solo segments. Next I want to add splitscreen support (duo) and later support of co-op mode.

Some features were based on SourcePauseTool.

Wiki

You can open the wiki to see some examples, description of modules (cvars/commands) and other stuff.

Important notes

If you use the plugin, DO NOT use VScripts/SourceMod to manipulate the game state (spawn/change items, CI, SI, bosses, use random generator etc.), it means don't create cheated runs. The only purpose is for debugging, creating helper functions and other stuff which won't modify the game (there may be exceptions due to the technical capabilities of the plugin but I'm thinking about it).

Also, the plugin for L4D1 is dummy, without any features.

Project

The project is written in Visual Studio 2019.

Submodules

It's required to have unofficial L4D SDK and L4D2 SDK from AlliedModders and the disassembler library libdasm.

You can use git to clone the repository:

git clone --recurse-submodules https://github.com/sw1ft747/Left4TAS.git

Build configurations

The project supports both Left 4 Dead 1 and 2, in Visual Studio choose a specified configuration: L4D or L4D2.

TLS

All post-TLS versions for L4D2 will be ignored.

Issues

If you found a bug or the plugin was unable to initialize all of its functions, please report it. In case of failed initialization, write the version of the game and a message in console that the plugin showed during failed initialization.