Mapbase: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Updated information and revised article)
(Reworded explanations of what Mapbase is, how it started, and how it's documented)
Line 3: Line 3:
== Overview ==
== Overview ==


{{Game link|Mapbase}} is a mod for {{Game link|Source 2013}} which improves the engine and entities to be more capable and stable for mapping and other kinds of modding without changing too much of the game itself. It's designed to be used as a platform for mappers to build their maps on and for larger mods to draw code from. Mapbase contains 50+ new entities that could be used in maps (particularly logic entities), hundreds of new I/O/KV (Inputs/Outputs/Keyvalues), heavily reworked FGDs, and more, allowing Mapbase to serve as a massive package of general-purpose fixes.
{{Game link|Mapbase}} is a mod for {{Game link|Source 2013}} which improves the engine and entities to be more capable and stable for mapping and other kinds of modding without changing too much of the game itself. It's designed to be used as a platform for mappers to build their maps on and for larger mods to draw code from. Mapbase is generally used as a massive package of utility features and general-purpose fixes.


Mapbase is '''NOT''' an improved version of Hammer. Mapbase is a mod for Source 2013 itself and maps using it must be played in Mapbase or a mod running its code in order to function correctly. Mappers would create their maps based off of this mod and larger mods with their own unique changes would draw from Mapbase's code and assets. Mapbase does not use any licensed or leaked code.
Mapbase is '''NOT''' an improved version of Hammer or an improved version of the engine itself. It is a fork of Source SDK 2013 which acts as a regular sourcemod. Maps using it must be played in Mapbase or a mod running its code in order to function correctly. Mappers would create their maps based off of this mod and larger mods with their own unique changes would draw from Mapbase's code and assets. Mapbase does not use any content which originates from leaked or unauthorized sources.


Mapbase is currently only built around {{Game link|Half-Life 2}} and {{Game link|Half-Life 2: Episode Two}} via Source 2013 SP. Other games are not currently supported, although a MP branch of Mapbase is currently in development, which will extend Mapbase to {{Game link|Half-Life 2: Deathmatch}}.
Mapbase is currently only built around {{Game link|Half-Life 2}} and {{Game link|Half-Life 2: Episode Two}} via Source 2013 SP. Other games are not yet supported, although a MP branch of Mapbase is currently in development, which will extend Mapbase to {{Game link|Half-Life 2: Deathmatch}}.


Most of Mapbase's changes are quality-of-life improvements that could largely only be noticed in the editor. The original goal of this project is to alleviate the craziness and inconvenience of mapping and modding for Source without changing too much of the game itself.
Most of Mapbase's changes are quality-of-life improvements that could largely only be noticed in the editor. The original goal of this project is to alleviate the craziness and inconvenience of mapping and modding for Source without changing too much of the game itself.
Line 17: Line 17:
* Custom implementation of [[VScript]] as of v4.0
* Custom implementation of [[VScript]] as of v4.0
* Heavily revised and reworked FGDs
* Heavily revised and reworked FGDs
* Custom shaders with various subtle improvements, including [[env_projectedtexture|projected texture]] fixes and radial fog originating from the Alien Swarm SDK
* Custom shaders meant to stick to objective improvements, including [[env_projectedtexture|projected texture]] fixes and radial fog originating from the Alien Swarm SDK
* More all-around entity flexibility
* More all-around entity flexibility
* Countless miscellaneous fixes and improvements
* Countless miscellaneous fixes and improvements


It also has a few new features mostly specific to Half-Life 2 (or at least singleplayer) mapping:
It also has a few new features mostly specific to Half-Life 2 (or at least single-player) mapping:
* Optional gameplay features (NPCs capable of using more weapons, etc.)
* Optional gameplay features usable by mappers (NPCs capable of using more weapons, etc.)
* More map-specific file capabilities ([[Actbusy|actbusy files]], [[Response System|talker files]], etc.)
* More map-specific file capabilities ([[Actbusy|actbusy files]], [[Response System|talker files]], etc.)
* New <code>hl2_gamerules</code> entity capable of modifying game behavior in various ways
* New <code>hl2_gamerules</code> entity capable of modifying game behavior in various ways
Line 34: Line 34:
Mapbase originally started in February 2018 as a prototype, but the current project began in August-September 2018.
Mapbase originally started in February 2018 as a prototype, but the current project began in August-September 2018.


Mapbase was created by Blixibon from a set of FGD improvements and various code changes previously brought from project to project. Mapbase's original goal was to take advantage of code access to allow mappers to do more things with the engine. The February 2018 prototype mostly just contained a few basic code changes and an early version of the map-specific file system. It was shelved in favor of other projects at the time.
Mapbase was created by Blixibon from a set of FGD improvements and various code changes previously brought from project to project. Mapbase's original goal was to take advantage of Source SDK 2013 code modifications to allow mappers to do more things with their maps. The February 2018 prototype mostly just contained a few basic code changes and an early version of the map-specific file system.


Blixibon later returned to the project several months later and made its existence public. As time went on, Mapbase (and Blixibon) became a part of various Source communities and projects, which allowed Mapbase to steadily gain more traction, a wider scope, and a following. Mapbase started to become a heavily augmented (yet relatively vanilla-looking) Source 2013 as a whole, introducing custom shaders, additional NPC animations, and various open-source changes from all over the community.
The project was revisited several months later at the end of 2018. At this point, Mapbase started to gain traction, forming a wider scope and a following as news of it reached more communities. Mapbase started to become a heavily augmented (yet relatively vanilla-looking) Source 2013 as a whole, introducing custom shaders, additional NPC animations, and forgotten open-source changes from the community's past.


After a rigorous testing and code review period, Mapbase released at the end of September 2019. Mapbase has continued to receive periodic updates and new features since its release. In May 2020, a programmer experienced with scripting VMs (reductor) created a custom implementation of [[VScript]] running in Source 2013, basing it off of Mapbase and contributing it to Mapbase's GitHub repo. This implementation was officially introduced to Mapbase users a month later in the v4.0 update.
After a testing and code review period, Mapbase released at the end of September 2019. Mapbase has continued to receive large periodic updates with new features since its release.


As of July 2020, Mapbase has satisfied almost all of its goals. A MP branch is one of the last remaining milestones and is currently in development.
In May 2020, a custom implementation of [[VScript]] running in Source 2013 was created as a contribution, being introduced in the v4.0 update.
 
Mapbase is still being maintained as of April 2021. A port to the MP branch of Source 2013 is currently in development.


== Release Information ==
== Release Information ==
Line 48: Line 50:
== Documentation ==
== Documentation ==


Mapbase uses [https://github.com/mapbase-source/source-sdk-2013/wiki its own wiki] to hold most of its information and documentation. There's too many changes to post all of Mapbase's modifications on the VDC directly, but relevant fixes and features originally created for Mapbase have still been added to or have been mentioned on the VDC in a similar fashion to other mods and may continue to be added whenever necessary.
Mapbase uses [https://github.com/mapbase-source/source-sdk-2013/wiki its own wiki] to hold most of its information and documentation.


Mostly just large or niche Mapbase features should be documented here; Most will not be marked as Mapbase fixes or will stay on the unique wiki.
Certain obscure and specialized changes (e.g. shader changes) are sometimes mentioned on the VDC, but most changes are avoided due to the sheer volume of them and their irrelevance to other engine branches. Relevant fixes and features originally created for Mapbase have occasionally been added to the VDC for general-purpose use, however.


== Credits ==
== Credits ==

Revision as of 15:22, 20 April 2021

Icon-Released.png

This mod for Source 2013 has been released! Download it now.

Overview

Mapbase Mapbase is a mod for Source 2013 Source 2013 which improves the engine and entities to be more capable and stable for mapping and other kinds of modding without changing too much of the game itself. It's designed to be used as a platform for mappers to build their maps on and for larger mods to draw code from. Mapbase is generally used as a massive package of utility features and general-purpose fixes.

Mapbase is NOT an improved version of Hammer or an improved version of the engine itself. It is a fork of Source SDK 2013 which acts as a regular sourcemod. Maps using it must be played in Mapbase or a mod running its code in order to function correctly. Mappers would create their maps based off of this mod and larger mods with their own unique changes would draw from Mapbase's code and assets. Mapbase does not use any content which originates from leaked or unauthorized sources.

Mapbase is currently only built around Half-Life 2 Half-Life 2 and Half-Life 2: Episode Two Half-Life 2: Episode Two via Source 2013 SP. Other games are not yet supported, although a MP branch of Mapbase is currently in development, which will extend Mapbase to Half-Life 2: Deathmatch Half-Life 2: Deathmatch .

Most of Mapbase's changes are quality-of-life improvements that could largely only be noticed in the editor. The original goal of this project is to alleviate the craziness and inconvenience of mapping and modding for Source without changing too much of the game itself.

Features

  • 80+ new entities (mostly logic-related), including new filters and ports/replications from newer engines
  • Hundreds of new I/O/KV (Inputs/Outputs/KeyValues) added to existing entities
  • Custom implementation of VScript as of v4.0
  • Heavily revised and reworked FGDs
  • Custom shaders meant to stick to objective improvements, including projected texture fixes and radial fog originating from the Alien Swarm SDK
  • More all-around entity flexibility
  • Countless miscellaneous fixes and improvements

It also has a few new features mostly specific to Half-Life 2 (or at least single-player) mapping:

  • Optional gameplay features usable by mappers (NPCs capable of using more weapons, etc.)
  • More map-specific file capabilities (actbusy files, talker files, etc.)
  • New hl2_gamerules entity capable of modifying game behavior in various ways

Media

You can find Mapbase's original trailer here and you can find images of Mapbase on the ModDB gallery.

History

Mapbase originally started in February 2018 as a prototype, but the current project began in August-September 2018.

Mapbase was created by Blixibon from a set of FGD improvements and various code changes previously brought from project to project. Mapbase's original goal was to take advantage of Source SDK 2013 code modifications to allow mappers to do more things with their maps. The February 2018 prototype mostly just contained a few basic code changes and an early version of the map-specific file system.

The project was revisited several months later at the end of 2018. At this point, Mapbase started to gain traction, forming a wider scope and a following as news of it reached more communities. Mapbase started to become a heavily augmented (yet relatively vanilla-looking) Source 2013 as a whole, introducing custom shaders, additional NPC animations, and forgotten open-source changes from the community's past.

After a testing and code review period, Mapbase released at the end of September 2019. Mapbase has continued to receive large periodic updates with new features since its release.

In May 2020, a custom implementation of VScript running in Source 2013 was created as a contribution, being introduced in the v4.0 update.

Mapbase is still being maintained as of April 2021. A port to the MP branch of Source 2013 is currently in development.

Release Information

Mapbase's release build and source code were first released on September 30th 2019. Other kinds of files can be found here.

Documentation

Mapbase uses its own wiki to hold most of its information and documentation.

Certain obscure and specialized changes (e.g. shader changes) are sometimes mentioned on the VDC, but most changes are avoided due to the sheer volume of them and their irrelevance to other engine branches. Relevant fixes and features originally created for Mapbase have occasionally been added to the VDC for general-purpose use, however.

Credits

Mapbase was started and mainly created by Blixibon, but it couldn't have been done without contributors, community repositories, and the VDC itself. You can find the full credits page here.

External links

More links can be found on the ModDB page.