Releases: SamClassicPatch/SuperProject
Release list
1.6.2 patch
This small patch contains a few adjustments and fixes.
Complete description of the patch for the latest version.
Changes since 1.6.1
Common changes
- Fixed
IncludeScript()shell function taking an integer argument by mistake instead of a string. - Added support for reading properties types of Serious Sam Revolution entities.
Game changes
- Made sure that oversized fonts that are used in the menu fit within their appropriate height.
- Fixed another crash related to listing levels from Serious Sam Revolution.
Other changes
- Made "Maximum Ammo" setting from "Server Utilities" override properties of PlayerMarker entities that take all ammo of specific weapons.
- Fixed HUD color presets not applying because of the
IncludeScript()issue in "Advanced HUD". - Potentially fixed all issues related to random "Cannot set function patch" errors.
- Fixed Serious Editor not working under the Debug build configuration.
- Fixed incorrect utilization of the patch config by tool applications by loading it too late.
- Made a few function patches more efficient.
Known issues
- SamClassicPatch/CoreLib#9
- SamClassicPatch/EnginePatches#1
- SamClassicPatch/Mod#3
- SamClassicPatch/Mod#5
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.6.1 patch
This sizeable patch improves upon the features introduced in the last update and adds new features for convenience and server setup.
Complete description of the patch for the latest version.
Changes since 1.6
Common changes
- Reworked application path logic to allow the patch binaries to be standalone under their own
Bindirectory. - Fixed third-party entity packs not loading with the custom mod turned on.
- Started treating
GameGUIlibrary as a plugin, just like theGamelibrary. - Completely reworked INI configs that fixed some bugs and implemented new features:
- Proper support for boolean, integer and double value types.
- Ability to add spaces around keys and values that are automatically trimmed.
- Ability to surround the value in quotes (
") for preserving spaces around the string.
- Every time the console is resized (reinitialized), it will now skip empty lines in the beginning before restoring the console log.
- Restored rain on The First Encounter levels in The Second Encounter in the most compatible way possible.
- Added console command for toggling automatic shadow update upon loading into games or playing demos (
gam_bAutoUpdateShadowscommand).
Mod changes
- Built limited version of the mod for v1.05 versions of games, including The First Encounter.
- This version only contains custom
GameandGameGUIlibraries without entity logic, which is only compatible with The Second Encounter v1.07.
- This version only contains custom
- Fixed crash upon joining servers with prediction on: SamClassicPatch/Mod#1
- Restored vanilla logic of resetting the overlaid observer views if it's set to more than 3 views (when Num 4 is pressed, for example).
- Made
EnvironmentParticlesHolderrender its particles outside of the defined boundaries on TFE levels to restore the original rain rendering.
Game changes
- Added a new field for a client password in the menu with player configuration before connecting to some server (
cli_strConnectPasswordcommand). - Added new options config for setting
Data/ClassicsPatch/Config.iniproperties for the next time the game starts. - Added new button to the server configuration menu for accessing extra server options from the patch (from
Scripts/ClassicsPatch/02_ServerSettings.cfg). - Fixed "Give Laser" and "Give Cannon" options from the "Server Utilities" plugin affecting wrong weapon slots in The First Encounter.
- Added new connection setting ("Classics Patch preset") that can be customized by the user in the patch settings before selecting it (
cli_bCustomPrediction,cli_iCustomBufferActions,cli_iCustomMinBPSandcli_iCustomMaxBPScommands).
Server changes
- Fully reimplemented processing of the
MSG_REQ_CONNECTREMOTESESSIONSTATEpacket.- Made server check for any additional information at the end of the packet and see if the client runs the same patch version as the server.
- Made client send additional information at the end of this packet, i.e. the patch identification tag and a version of the installed patch.
- Added new setting that only allows clients with the same patch to connect to the server by checking that additional information (
ser_bForbidVanillacommand).
Other changes
- Patch built under the "Debug" configuration will now load plugins from the same subdirectory as the game libraries (i.e.
Bin/Debug/Pluginsinstead ofBin/Plugins). - Replaced
PatcherOutputfile next to executables with a convenientDebugPatcherproperty in the patch config.- Removed unnecessary notifications with debug actions, since they're printed into the log file as well.
Known issues
- SamClassicPatch/CoreLib#9
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.6 update - "Anniversary Update"
This is a commemorative update that celebrates one full year since the first release of Classics Patch. It implements a big amount of new quality-of-life features and enhances multiplayer experience for the clients.
Click here to check out the release trailer!
Complete description of the patch for the latest version.
Changes since 1.5.1
Brand new mod
- Laid a foundation for a special mod exclusively for the patch that will fix more intricate issues and expand gameplay possibilities in the future. Only for The Second Encounter v1.07!
- This mod will be automatically activated in the main game and in mods that don't utilize custom DLL files for enhancing the overall game experience (which can also be disabled, if needed).
- By popular demand, made text font in NETRICSA larger if the resolution is higher than 720 pixels (
gam_bBigComputerFontcommand). - Made background menu elements scale properly for different aspect ratios.
- Added game theme customization for menu elements, console and NETRICSA to fit with custom HUD themes introduced by Advanced HUD plugin (
gam_strClassicsPatchThemecommand contains a path to an INI config with the theme to set). - Synchronized text colors in Player and PlayerWeapons entities with HUD themes from Advanced HUD.
- Added command for changing fade time of the console (
con_tmConsoleFadecommand). - Allowed game's mouse pointer to be rendered in borderless window mode (
gam_bShowPointerInBorderlesscommand). - Added ability to display advanced observer view windows to the side of the main view instead of over it and added a slider to adjust their width (instead of taking up 25% of the screen).
Common changes
- Implemented methods for compressing data for network packets and reworked custom packet logic.
- Implemented interface for sending HTTP requests.
- Implemented a parser for simple INI configuration files and utilize INI configs for simpler customization of various elements of the patch.
- Fixed broken shadows on brush polygons from dynamic lights after loading a saved game.
- Fixed fullbright brush polygon layers on The First Encounter maps due to engine differences in The Second Encounter.
- Fixed shade color during storm on The First Encounter maps in The Second Encounter.
- Added a configuration file for the whole patch with global properties that's loaded before the engine (located at
Data/ClassicsPatch/Config.ini).- Path to The First Encounter is now specified in
TFEDirproperty within the config instead of a separate file atData/ClassicsPatch/TFE_Dir.var.
- Path to The First Encounter is now specified in
- Added Russian font for Revolution HUD theme to the localization.
- Added a useful shell function for executing script files because
includecommand doesn't support string variables (IncludeScript()command). - Made API hooks work more reliably and fixed some edge cases that didn't call them.
- Fixed a serious issue from vanilla that caused a crash for all clients and the server if any of the clients tried changing their player character while not being fully connected (i.e. during the
<player name> connectedmessage on screen).
Game changes
- Removed GoneSpy from the "Legacy master server" list due to being shut down.
- Made confirmation popup dialogs more customizable and made their width fixed on every aspect ratio.
- Implemented automatic checks for new patch updates and a prompt display to download them upon starting the game (
sam_bNotifyAboutUpdatescommand toggles these notifications). - Added command for listing levels that match a wildcard string (
ListLevels()command). - Added commands for quickly starting levels from the console (
cmd_iGoToMarker,cmd_bServer, andStartMap()commands). - Added extra menu before any level list with categories for separating one huge level list into smaller lists, such as official games and user-made content (
sam_bLevelCategoriescommand toggles this feature). - Added a new
Games:parameter for option configs to hide settings that don't belong in a specific game or engine version. For example, to hide sniper scope customization options for Advanced HUD in The First Encounter. - Added a new
List:parameter for option configs for generating a list of value options from files under a specific directory instead of statically specifying paths to them by hand. This list can also be statically populated with extra string values, if needed.
Server changes
- Fully reimplemented processing of the
MSG_REQ_CHARACTERCHANGEpacket. - Added custom processing of the
MSG_ACTIONandMSG_SYNCCHECKpackets. - Backported
MSG_REP_DISCONNECTEDpacket from Serious Engine 1.07 to 1.05 and made clients send it when appropriate. - Made sync check calculation separate for each client.
- Implemented GUID masking of player characters to prevent other server clients from stealing them (
ser_bMaskGUIDscommand).
Warning
Due to engine limitations, if server saves a map with GUID masking on, reconnecting players will not be attached to their dummy player entities and will instead spawn as if they connected for the first time.
- Fixed incorrect patches of packet handling methods which couldn't process more than one packet at a time.
- Made client log automatically load upon program initialization and resave every time the current game ends.
- Implemented some built-in extension packet types for synchronized entity manipulation with corresponding console commands (prefixed with
pck_). - Added command for notifying clients about bad syncs whenever their game state doesn't sync with the server (
ser_bReportSyncBadToClientscommand). - Fixed client muting not working if chat messages aren't limited or the anti-flood system is disabled.
- Simplified output of a client log and added ability to display full information about a specific client identity.
Plugin changes
- Made plugins read configuration files with the same name as the library (but with a
.iniextension) with custom properties that the plugin may need. - Changes to the "Advanced HUD" plugin:
- Made icon shake upon value change toggleable (
ahud_bIconShakecommand). - Made high score display in Singleplayer/Cooperative modes toggleable (
ahud_bShowHighScorecommand). - Made depleted ammo icons toggleable (
ahud_bShowDepletedAmmocommand). - Made sniper scope display health level of a target like a normal crosshair (
ahud_bScopeColoringcommand). - Adjusted text colors of the player list and current score for Revolution theme.
- Adjusted position of the match info (
TIME LEFTetc.) to follow set screen edges and scale the position properly. - Made the plugin somewhat compatible with mods that modify standard entities. It won't show linking errors on launch anymore and it can be loaded into compatible mods via the config (
SameHook=1property). - Replaced static list of HUD color presets with a list of custom configs that reside in the
Scripts/ClassicsPatch/HUDColorPresetsdirectory.
- Made icon shake upon value change toggleable (
- Added new cheat to "Local Cheats" for triggering entities at the crosshair position like vanilla
cht_bOpen(cht_Trigger()command). - Fixed "Server Utilities" allowing replacement of items with invalid or nonexistent item types, which it will now reset to type
1(such as Knife weapon type in vanilla). - Implemented
IListenerEventsinterface for plugins for catching event-related logic within entities. - Implemented
IDemoEventsinterface for plugins for custom logic upon recording and playing demos. - Added hooks to
INetworkEventsupon adding and removing player entities (joining and leaving the server).
Other changes
- Implemented macro switches for excluding specific features from building.
- Updated example plugin project with more code examples.
- Updated documentation (wiki) structure to be easier to navigate.
Known issues
- SamClassicPatch/CoreLib#9
- SamClassicPatch/Mod#1
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.5.1 patch
This is a patch for the 1.5 update that mostly includes changes that didn't make it into the full release due to the lack of time.
Complete description of the patch for the latest version.
Changes since 1.5
Common changes
- Made The First Encounter directory command accept paths relative to the game folder and
..\subdirectories within paths. - Removed annoying warning popups when some plugins fail to load.
- Added ability to specify extra content directories from which more GRO files can be loaded upon starting the game (using
Data/ContentDir.lstfile).
Other changes
- Changes to the "Advanced HUD" plugin:
- Reworked many parts of the plugin for easier maintenance of multiple HUD themes.
- Added new Revolution HUD theme.
- Made health and armor boxes dynamically stretch to fit bigger values in them (up to 5 digits, i.e.
99999). - Backported local PC time display on top of the HUD using a
hud_bShowClockcommand from TSE to TFE. - Added ping display next to the stats in the player list (
ahud_iShowPlayerPingcommand). - Added command for toggling rendering of the ammo row (
ahud_bShowAmmoRowcommand). - Added commands for colorizing different elements of the HUD with color presets.
- Fixed sizes and positions of specific elements, such as oxygen & boss health bars and high score centering.
- Made
ahud_bEnablecommand work without having to manually disable theCPlayer::RenderHUD(...)patch.
Known issues
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.5 update - "Platinum Edition"
This is a commemorative update released for the 22nd anniversary of Serious Sam that unifies both classic games under The Second Encounter. A so-called "fusion" update for Serious Sam Classics titled "Platinum Edition".
Complete description of the patch for the latest version.
Changes since 1.4.2
Common changes
- Patched engine's file system and repurposed engine's "CD path" to be used to specify a path to The First Encounter installation directory for The Second Encounter.
- Added console command for specifying a path to The First Encounter during the game (
sam_strTFEDircommand).
- Added console command for specifying a path to The First Encounter during the game (
- Patched world loading and implemented interface for automatically converting worlds from The First Encounter format into The Second Encounter to allow playing levels from both games without manual conversions.
- Added console command for forcing complete reinitialization of worlds upon loading, as if they were resaved in the editor (
sam_bReinitWorldcommand).
- Added console command for forcing complete reinitialization of worlds upon loading, as if they were resaved in the editor (
Game changes
- Added
+tfeas an alias for the+cdpathlaunch argument. - Made
+tfelaunch argument apply to mods upon launching them from the menu. - Fixed tooltips in the level list being stuck if any levels were marked with an unusual format.
- Marked levels from The First Encounter directory with a special format.
- Allowed displaying more characters per line in the console, which dynamically scales with the game resolution.
- Fixed textbox options not executing scheduled commands specified in option configs.
Other changes
- Reworked and improved unzipping functions separate from the engine.
- Fixed certain issues related to memory allocation of patched streams.
- Fixed plugins being forcefully released even if they might still be in use.
- Added
IGameEventsandIWorldEventsevent interfaces for plugins, moving some methods fromINetworkEventsintoIGameEvents. - Added console command for getting a function patch index by its assigned name (
GetFuncPatch()command). - Added new "Advanced HUD" plugin that replaces vanilla HUD and implements various improvements and additions to the HUD. Includes three classic themes usable across all games.
Known issues
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.4.2 patch
This small patch fixes a few annoying bugs.
Complete description of the patch for the latest version.
Changes since 1.4.1
Game changes
- Implemented a temporary fix that prevents termination of server list enumeration upon receiving a packet with player list instead of the server information from the master server.
- Implemented a workaround for skipping duplicate server listings (i.e. the servers with the exact same address but different ping).
- Fixed "42amsterdam" master server freezing the game indefinitely upon listing servers via Legacy protocol (thanks to @tx00100xt).
Other changes
- Fixed SKA models not being affected by fog and haze if their surfaces were fullbright.
- Added extra option to the FOV adjustment setting that makes it fix vertical FOV only while viewing from the the player and not an external camera or any other entity (sets
sam_bUseVerticalFOVto 2). - Fixed crash upon starting a new game with autokill cheat being enabled beforehand.
- Made autokill cheat work in a safer manner.
Known issues
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
If you're upgrading from version 1.3.1 or earlier, clear the Bin/Plugins folder within your game folder before installing this version!
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.4.1 patch
This update fixes a few bugs and brings certain enhancements to existing features.
Complete description of the patch for the latest version.
Changes since 1.4
Game changes
- Fixed "Back" button sometimes disappearing from the high scores menu.
- Added extra low resolutions: 640x400 for 16:10 and 560x240 & 840x360 for 21:9.
- Now aspect ratio list is sorted after adding a custom screen resolution to it to keep the list in order.
- Server names in the server list can now have toggleable decorations, such as color tags, just like level names (
sam_bDecoratedServerNamescommand). - Fixed server list only displaying a random portion of all servers each time it's refreshed.
Server changes
- Allowed loading saved games by specifying a path to a save file (
.sav) rather than a world file (.wld) inded_strLevel.
Other changes
- Updated property sheets for all projects and use new macros for identifying Serious Engine versions and games.
- Implemented a macro for translating strings that have been already translated in official localizations to avoid their appearance in generated translation files.
- Fixed specific issues in the internal
CTString::VPrintFprinting method. - Added
SetUtilitymethod for setting utility flags for plugins instead of accessing variables manually. - Now
cht_iAutoKillcheat will only kill enemies that target someone if it's set to1instead of2. - Added a command for setting affection range of the autokill cheat (
cht_fAutoKillRangecommand). - Fixed a crash upon receiving unknown query server request in the legacy protocol and display its message only with debug output enabled.
- Now CoreLib and EnginePatches projects are built as standalone dynamic link libraries (
ClassicsCore.dllandClassicsPatches.dllrespectively). - Fixed specific issues related to rendering of SKA (skeletal animation) models in The Second Encounter v1.07.
- Fixed model rendering in fog and haze (thanks to @SeriousAlexej for fixes in his fork: fog, haze).
- Fixed texture wrapping being forced to "clamped" on models while they're in fog or haze.
- Built custom
Shaders.dlllibrary with various improvements and fixes for vanilla shaders.
Known issues
- SamClassicPatch/CoreLib#3
- SamClassicPatch/CoreLib#8
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
If you're upgrading from version 1.3.1 or earlier, clear the Bin/Plugins folder within your game folder before installing this version!
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.4 update - "Modernization"
Merry Christmas!
This update adds a lot of new exciting features and fixes certain issues.
Complete description of the patch for the latest version.
Changes since 1.3.1
Game changes
- Made game window be aware of DPI scaling on modern systems (starting from Windows Vista), so window doesn't get scaled and its size matches selected resolution.
- Native desktop resolution will now be automatically added to the end of one of the aspect ratio lists if it's not present (support for less common resolutions).
- Now plugins will always be loaded from the root
Bindirectory in mods regardless of whether or notBinis listed in the mod'sBaseBrowseExclude.lstfile. - Patch version label in the main menu can now be hidden (
sam_bPatchVersionLabelcommand). - Fixed annoying bugs after opening and closing the console while in the "High Scores" menu.
- Introduced a "Textbox" setting type for option configs to be able to modify string properties.
- Added a "Hidden:" parameter for option configs to hide inputted strings while they're not being edited.
- Added a button to the levels list that toggles visibility of all world files regardless of their spawn flags (
sam_bShowAllLevelscommand switch). - Added an extra config with vanilla options that could only be changed via console commands before.
- Made font in the server browser larger if the resolution is higher than 720 pixels (e.g. 1280x720).
- Added Russian localization via a separate GRO file with translation files.
Server changes
- Fixed DedicatedServer loading in the game settings (
SeriousSam.gms) instead of the server settings (DedicatedServer.gms). - Added support for in-game chat commands that can only be received by the server.
- Renamed
ms_strMSLegacycommand intoms_strLegacyMSfor consistency with other master server commands. - Fixed a bug that didn't reset the chat message counter alongside the packet counter in the anti-flood system.
- Introduced a temporary client logging system that keeps track of what clients have ever connected to the server and are currently active.
- Implemented a client restriction system as a part of it that allows banning and muting clients based on their identity in the client log.
Editor changes
- Merged changes to the EngineGUI library from 1.50 that includes a fancier interface for texture creation.
- This allows you to create textures that can also be always in memory and/or in best quality at all times.
- Added missing textures of terrain brushes and terrain editing interface.
- Added submenus under the "Game" dropdown menu with options to select specific gamemode and difficulty before testing the game.
Other changes
- Rebranded "ToggleableRedScreen" plugin into "Accessibility".
sam_bRedScreenOnDamagecommand has been renamed intoaxs_bRedScreenOnDamage.- If you're upgrading from the previous patch version, you have to clear the
Bin/Pluginsfolder within your game folder!
- Added new cheats to the LocalCheats plugin:
cht_iAutoKill- kill alive enemies every game tick. Automaticcht_bKillAllthat also works on bosses.cht_CreateAmmo,cht_CreateHealth,cht_CreateArmorandcht_CreatePowerUpcommands for creating various items of a specific type (works just likecht_CreateWeapon).
- Major cleanup and slight rewriting of the query code (protocols other than Legacy have not been tested).
- Renamed "EngineGUI" project into "PatchedGui" to avoid confusion with engine libraries from the SDK.
- Allowed creating plugin-specific function patches that are automatically deleted upon disabling plugins.
- Now plugin modules can be temporarily disabled during the game just like function patches (
EnablePlugin(INDEX)andDisablePlugin(INDEX)commands).
Known issues
- SamClassicPatch/CoreLib#3
- SamClassicPatch/CoreLib#4
- SamClassicPatch/CoreLib#8
- SamClassicPatch/WorldEditor#1
- SamClassicPatch/WorldEditor#2
Installation
If you're upgrading from version 1.3.1 or earlier, clear the Bin/Plugins folder within your game folder before installing this version!
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name). - (Optional) Download
SE1_ClassicsPatch_RUS.groand drop it into the game folder to install Russian localization.
1.3.1 patch
This small patch fixes a few oversights in the server's anti-flood system.
Complete description of the patch for the latest version.
Changes since 1.3
Server changes
- Fixed anti-flood system ignoring any character change and chat message from the server client instead of allowing it.
- Chat messages are now counted separately from overall packets to not waste chat messages per second via changing a character.
- Allowed checking for more than 4 local players in split-screen mode from a client joining the server.
Other changes
- Added anti-flood server settings to patch options.
Installation
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name).
1.3 update - "Modular Modding"
This big update overhauls the user plugin system and adds new options for customizing multiplayer games as well as many other features and fixes.
Complete description of the patch for the latest version.
Changes since 1.2
Game changes
- Added a tiny label with the patch version in the bottom right corner in the main menu.
- Removed config option tabs filled only with separators.
- Fixed crash from using the
PlayDemo()command. - Replaced EXE Patch Options config in the Options menu with a list of different option configs available for the patch.
Server changes
- Added plugin with useful server utilities for gameplay customization (only on the first level).
- Ability to replace all health, armor, power up & weapon items with specific types or remove them altogether.
- Ability to set custom starting health, armor and weapons on all
PlayerStartmarkers. - Enemy multiplier.
- A set of "sandbox" commands for much more accurate world customization. Like a minimalistic Serious Editor in a console form.
- Implemented anti-flood system that kicks clients from the server that try to flood it with character change and chat message packets.
- Implemented protection against clients trying to join with multiple local players in split-screen mode.
Other changes
- Built custom Serious Editor executable with support of 64-bit systems. Includes features from the 1.10 editor:
- Terrain editing mode for The Second Encounter 1.07.
- Level export in Serious Engine 2+ formats for easier porting of levels to newer engines.
- Display of entity IDs in the classes list.
- Added support for custom rendering in plugins for Serious Modeler and Serious SKA Studio.
- Reworked plugin symbol registering to make it more convenient.
- Reworked plugin methods into specific handlers of events that are defined separately for each plugin and registered similarly to plugin symbols.
- Because of this, API version has been changed to
2, meaning that old plugins are incompatible with this version.
- Because of this, API version has been changed to
- Implemented networking events for plugins, letting servers and clients handle custom
PCK_EXTENSIONpackets of specific index types. - Reworked FOV patching, which removed the need to manually patch mip distances and FOV for weapon viewmodels.
sam_bFixMipDistanceandsam_bFixViewmodelFOVcommands have been removed.
- Placed custom resources into own GRO file (
SE1_ClassicsPatch.gro). Old config atScripts/Menu/ExePatch.cfgis now obsolete and can be deleted.
Installation
- Download desired version of the patch (
TFE1.05_<date>.ziporTSE1.07_<date>.zipfor 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
_OGsuffix at the end of the name).