A sizable patch for the 3rd anniversary of Classics Patch that fixes a few old issues and implements experimental scripting support.
Check out the FAQ and the setup instructions before playing, as well as the rest of the wiki for the new commands and such!
Changes since 1.9.2
Common changes
- Merged all code of engine patches module (
ClassicsPatches.dll
) with the core library (ClassicsCore.dll
).ClassicsPatches.dll
from the previous versions should be manually deleted from theBin
folder.
Mod changes
- Fixed crashes from loading worlds with non-existent textures for a world map, e.g. TFE campaign or any world that's prefixed with a number 1-15 in TSE that requires extra TFE world map textures.
- Fixed
|
text cursor with big console font being centered on top of another character instead of rendering to the left of it. - Allowed running Squirrel scripts from the console by prefixing the line with
sq>
.
Game changes
- Made the patch treat
ClassicsPatchMod
mod as vanilla game, similar to theSeriousSam
mod, otherwise it prevented the patch from connecting to vanilla servers: #25 - Potentially fixed lens flares showing through everything when the game is rendered in the background of an open menu: #26
- Relocated patch option configs from
Scripts/ClassicsPatch/
toScript/Menu/ClassicsPatch/
to separate them from other generic patch files.
Editor changes
- Fixed texture mapping on all selected brush polygons resetting to the mapping of the first selected polygon: #18 (thanks to @Tinsed)
Plugin changes
Extended Input
- A new extension that implements proper gamepad support and other input functionality (previously part of the
ClassicsPatches.dll
module). - Fixed broken controls after using automatic axis detection: #22
- Updated the underlying SDL2 library to an SDL3 library.
- It implements support for more controller buttons, which shifted some buttons in the existing control schemes. You'll have to rebind the incorrect controller buttons manually or reload predefined settings using one of the included game controller presets.
Scripting Engine
- A new experimental extension that implements support for Squirrel scripting language.
- Supports limited interaction with Serious Engine via new Squirrel libraries.
- Currently can only be executed through the game's shell using new commands:
scr_ExecuteString()
(for running scripts from strings) andscr_ExecuteFile()
(for running scripts from.nut
files within the game directory).
World Converters
- A new extension that implements converters of specific world formats to the game's world format (previously part of the
ClassicsPatches.dll
module). - Supports implementation of custom world converters externally.
- Replaced a single
sam_iWorldConverter
command with the desired level format of the loaded world (sam_iWantedWorldFormat
command) and allowed converting worlds using multiple converters in a specific order (sam_strWorldConverters
command). - Added command for listing available world converters by name (
wld_ListConverters()
command).
Other changes
- Merged code of all repositories into a single one for easier project development.
- Implemented "extension" plugins that are used for decoupling optional patch functionality into separate plugins that the patch interacts with through a new API.
- Updated example plugin (which is now an "extension sample") to include features of the new extension API.
- Made
PatchInfo()
command report the game version that the installed patch was built for, e.g. "TSE v1.07" instead of a simple engine version for debugging purposes. - Packed MAP files with each build that can be used by the
DecodeReport
utility for debugging purposes. Example:
./DecodeReport.exe "SeriousSam_Custom.RPT" "DecipheredReport.rpt" "DebugFiles/"
Known issues
Installation
- Download desired version of the patch (
TFE1.05_<date>.zip
orTSE1.07_<date>.zip
for Steam). - Navigate to the game folder and extract contents of the ZIP archive into it.
- Agree to replace existing files (original unmodified copies of the files are included with an
_OG
suffix at the end of the name). - (Optional) Download
SE1_RevResources.gro
and put it in the game folder if you intend on playing Revolution levels without mounting Revolution itself. - (Optional) Download
SE1_ClassicsPatch_<language>.gro
and put it in the game folder to install desired localization of the patch.