ALLEN-PC\acj30 c88468ff16 Merge branch 'master' of https://github.com/ValveSoftware/source-sdk-2013 into mapbase-mp-2025
# Conflicts:
#	CONTRIBUTING
#	src/game/server/SkyCamera.cpp
#	src/game/server/player.cpp
2025-03-02 14:34:53 -06:00
2025-02-18 18:51:37 +00:00
2025-02-18 18:51:37 +00:00

//=========================================================================================================================

           Mapbase v8.0 - Source 2013
https://github.com/mapbase-source/source-sdk-2013
	https://www.moddb.com/mods/mapbase

//=========================================================================================================================

This repository contains code from Mapbase, a modification of the Source 2013 SDK which serves as a combined package of general-purpose improvements, fixes, and utility features for mods.

Mapbase's main content in this repository may include:

  • 80+ custom entities (new logic entities, filters, etc.)
  • Hundreds of Inputs/Outputs/KeyValues additions and modifications
  • Custom SDK_ shaders with improvements adapted from Alien Swarm SDK code, including projected texture fixes and radial fog
  • Custom VScript implementation based on public Squirrel API and Alien Swarm SDK interfaces/descriptions
  • Additional gameplay control for Half-Life 2 mods, including grenade features for more NPCs and singleplayer respawning
  • More map-specific capabilities for maps unable to branch into their own mods, e.g. MP mods or map compilations
  • View rendering changes for drawing 3D skyboxes and RT-based entities
  • Countless other fixes and improvements

For more information, view this page: https://github.com/mapbase-source/source-sdk-2013/wiki/Introduction-to-Mapbase

//=========================================================================================================================

Mapbase is an open-source project and its contents can be distributed and used at the discretion of its users. However, this project contains content from a vast number of different sources which have their own licensing or attribution requirements. We try to handle most of that ourselves, but users who plan on distributing Mapbase content are expected to comply with certain rules.

Up-to-date information about Mapbase content usage and credit are addressed in this article on Mapbase's wiki:
	https://github.com/mapbase-source/source-sdk-2013/wiki/Using-Mapbase-Content

//=========================================================================================================================

EXTERNAL CONTENT USED IN MAPBASE <<<<<<<<

The Mapbase project is a combination of original code from its creators, code contributed by other Source modders, and code borrowed from open-source articles and repositories (especially ones which are specifically published as free source code). One of Mapbase's goals is to make the most popular fixes and the most obscure or complicated code changes accessible and easy to use for level designers and other kinds of Source modders who would otherwise have no idea how to implement them.

*** DISCLAIMER: Mapbase has a strict no-leak-content policy and only allows content created directly by contributors or content originating from open-source repositories. If you believe any content in Mapbase originates from any leak or unauthorized source (Valve or otherwise), please contact Blixibon immediately. Mapbase is intended to be usable by everyone, including licensed Source projects and Steam mods. ***

Mapbase uses content from the following non-Source SDK 2013 Valve games or SDKs:

-- Alien Swarm SDK (Used to backport features and code from newer branches of Source into a Source 2013/Half-Life 2 environment) -- Source SDK 2007 Code (Used to implement some of Tony Sergi's code changes)

-- Alien Swarm (Used to port assets from the aforementioned SDK code features, e.g. game instructor icons) -- Left 4 Dead (Used to port certain animations as well as assets from the aforementioned SDK code features, e.g. particle rain) -- Half-Life: Source (Used to port friction tool textures)

Valve allows assets from these titles to be distributed for modding purposes. Note that ported assets are only used in the release build, not the code repository.

Mapbase may also contain new third-party software distributed under specific licensing. Please see the bottom of thirdpartylegalnotices.txt for more information.

Here's a list of Mapbase's other external code sources:

//-------------------------------------------------------------------------------------------------------------------------

Valve Developer Community (VDC) sources:

//-------------------------------------------------------------------------------------------------------------------------

Direct contributions:

== Contributions from samisalreadytaken: =-- https://github.com/mapbase-source/source-sdk-2013/pull/47 (VScript utility/consistency changes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/59 (New VScript functions and singletons based on API documentation in later Source/Source 2 games) =-- https://github.com/mapbase-source/source-sdk-2013/pull/80 (More VScript changes, including support for extremely flexible client/server messaging) =-- https://github.com/mapbase-source/source-sdk-2013/pull/105 (VScript fixes and optimizations, Vector class extensions, custom convars/commands) =-- https://github.com/mapbase-source/source-sdk-2013/pull/114 (VScript fixes and extensions) =-- https://github.com/mapbase-source/source-sdk-2013/pull/122 (Minor VScript-related adjustments) =-- https://github.com/mapbase-source/source-sdk-2013/pull/148 (Minor fixup) =-- https://github.com/mapbase-source/source-sdk-2013/pull/167 (Security fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/168 (Squirrel update) =-- https://github.com/mapbase-source/source-sdk-2013/pull/169 (VScript VGUI) =-- https://github.com/mapbase-source/source-sdk-2013/pull/171 (VScript documentation sorting) =-- https://github.com/mapbase-source/source-sdk-2013/pull/173 (VScript fixes and optimizations) =-- https://github.com/mapbase-source/source-sdk-2013/pull/192 (VScript hook manager and fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/206 (Fix CScriptNetMsgHelper::WriteEntity()) =-- https://github.com/mapbase-source/source-sdk-2013/pull/213 (VScript HUD visibility control, optimizations for 3D skybox angles/fake worldportals) =-- https://github.com/mapbase-source/source-sdk-2013/pull/221 (VScript serialization rewrite) =-- https://github.com/mapbase-source/source-sdk-2013/pull/229 (VScript VGUI HUD viewport parenting, game_text and vgui_text_display VScript font fallback) =-- https://github.com/mapbase-source/source-sdk-2013/pull/260 (CScriptNetPropManager rewrite) =-- https://github.com/mapbase-source/source-sdk-2013/pull/261 (Misc VScript additions) =-- https://github.com/mapbase-source/source-sdk-2013/pull/279 (weapon_custom_scripted fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/331 (VScript leak fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/332 (Fix OOB access)

== Contributions from z33ky: =-- https://github.com/mapbase-source/source-sdk-2013/pull/21 (Various GCC/Linux compilation fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/95 (Additional GCC/Linux compilation fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/117 (Additional GCC/Linux compilation fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/124 (Memory error fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/130 (Memory error fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/131 (env_projectedtexture target shadows fix) =-- https://github.com/mapbase-source/source-sdk-2013/pull/132 (Console error fix) =-- https://github.com/mapbase-source/source-sdk-2013/pull/152 (Additional GCC/Linux compilation fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/159 (Additional GCC/Linux compilation fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/162 (VS2019 exception specification fix) =-- https://github.com/mapbase-source/source-sdk-2013/pull/170 (HL2 non-Episodic build fix) =-- https://github.com/mapbase-source/source-sdk-2013/pull/320 (Fix ScriptHook_t initialization order) =-- https://github.com/mapbase-source/source-sdk-2013/pull/321 (Prevent return of dangling Vector/QAngle to VScript) =-- https://github.com/mapbase-source/source-sdk-2013/pull/322 (Small Mapbase fixes)

== Contributions from Petercov: =-- https://github.com/mapbase-source/source-sdk-2013/pull/182 (NPCs load dynamic interactions from all animation MDLs) =-- https://github.com/mapbase-source/source-sdk-2013/pull/184 (Projected texture horizontal FOV shadow fix) =-- https://github.com/mapbase-source/source-sdk-2013/pull/185 (Fix enemyfinders becoming visible when they wake) =-- https://github.com/mapbase-source/source-sdk-2013/pull/186 (Fix for brightly glowing teeth) =-- https://github.com/mapbase-source/source-sdk-2013/pull/183 (Enhanced custom weapons support) =-- https://github.com/mapbase-source/source-sdk-2013/pull/230 (Caption fixes) =-- https://github.com/mapbase-source/source-sdk-2013/pull/231 (Sentence source bug fix) =-- https://github.com/mapbase-source/source-sdk-2013/pull/264 (Outputs for vgui_screen)

//-------------------------------------------------------------------------------------------------------------------------

Other sources:

//-------------------------------------------------------------------------------------------------------------------------

If there is anything missing from this list, please contact Blixibon.

//=========================================================================================================================

Aside from the content list above, Mapbase has more descriptive and up-to-date credits on this wiki article: https://github.com/mapbase-source/source-sdk-2013/wiki/Mapbase-Credits

Other relevant articles:

//-------------------------------------------------------------------------------------------------------------------------

In memory of Holly Liberatore (moofemp)

//=========================================================================================================================

Source SDK 2013

Source code for Source SDK 2013.

Contains the game code for Half-Life 2, HL2: DM and TF2.

Now including Team Fortress 2!

Build instructions

Clone the repository using the following command:

git clone https://github.com/ValveSoftware/source-sdk-2013

Windows

Requirements:

  • Source SDK 2013 Multiplayer installed via Steam
  • Visual Studio 2022

Inside the cloned directory, navigate to src, run:

createallprojects.bat

This will generate the Visual Studio project everything.sln which will be used to build your mod.

Then, on the menu bar, go to Build > Build Solution, and wait for everything to build.

You can then select the Client (Mod Name) project you wish to run, right click and select Set as Startup Project and hit the big green > Local Windows Debugger button on the tool bar in order to launch your mod.

The default launch options should be already filled in for the Release configuration.

Linux

Requirements:

  • Source SDK 2013 Multiplayer installed via Steam
  • podman

Inside the cloned directory, navigate to src, run:

./buildallprojects

This will build all the projects related to the SDK and your mods automatically against the Steam Runtime.

You can then, in the root of the cloned directory, you can navigate to game and run your mod by launching the build launcher for your mod project, eg:

./mod_tf

Mods that are distributed on Steam MUST be built against the Steam Runtime, which the above steps will automatically do for you.

Distributing your Mod

There is guidance on distributing your mod both on and off Steam available at the following link:

https://partner.steamgames.com/doc/sdk/uploading/distributing_source_engine

Additional Resources

License

The SDK is licensed to users on a non-commercial basis under the SOURCE 1 SDK LICENSE, which is contained in the LICENSE file in the root of the repository.

For more information, see Distributing your Mod.

Description
This is Mapbase's public GitHub repo. It contains all of the code, but not the assets.
Readme 1 GiB
Languages
C++ 95.3%
C 4%
GLSL 0.3%
Perl 0.2%