SourceRenewed

From Valve Developer Community
Jump to navigation Jump to search

SourceRenewed SourceRenewed is a project based on the Source 2013 Singleplayer Source 2013 Singleplayer. Adds some new and useful things to the engine and improves the existing ones. However, unlike Mapbase Mapbase, this project is not meant to be fully backward compatible with any Source branch. Made by Max34.

Changes in the common class of all entities

Parameters Type Description Notes
Entity I/O State choice Enabled (by default) or Disabled. Whether the entity IO is enabled or disabled when spawning.
Inputs Type Description Notes
Enable I/O Interaction void Enables an entity IO system. This entity state system is something new and has nothing to do with the deprecated “Start Disabled”. For now, this only works with entities that have been reworked.
Toggle I/O Interaction void Toggles the state of an entity I/O system between enabled and disabled.
Disable I/O Interaction void Disables an entity I/O system.
SetTeam
Set Group
integer Sets the group for the entity. By default, all entities are in group 0.
FireUser1
Fire Custom Event 1
void Fires the On Custom Event 1 event if the entity is enabled.
FireUser2
Fire Custom Event 2
void Fires the On Custom Event 2 event if the entity is enabled.
FireUser3
Fire Custom Event 3
void Fires the On Custom Event 3 event if the entity is enabled.
FireUser4
Fire Custom Event 4
void Fires the On Custom Event 4 event if the entity is enabled.
Outputs Type Description Notes
On Spawn void Fired when the entity spawns. [Todo]
☐ Make sure this event happens at the right time.
On Killed void Fired when the entity has been deleted.
OnUser1
On Custom Event 1
void Fires in response to Fire Custom Event 1 input.
OnUser2
On Custom Event 2
void Fires in response to Fire Custom Event 2 input.
OnUser3
On Custom Event 3
void Fires in response to Fire Custom Event 3 input.
OnUser4
On Custom Event 4
void Fires in response to Fire Custom Event 4 input.

Env Entities

env_sound

Old name: ambient_generic

Note.pngNote:Perhaps in the future it will be renamed to point_sound.
Todo: More documentation.


env_spark

Todo: More documentation.


Filter Entities

Cpp.pngCode Fix:Fixed a crash when the filters tries to check an already deleted entity. If the entity does not exist when checking, the comparison will be made with an empty value.

filter_class

Old name: filter_activator_class

filter_group

Old name: filter_activator_team

filter_name

Old name: filter_activator_name

Parameters Type Description Notes
Filter string .
Filtering Type choice .
Inputs Type Description Notes
GetFilter void . “Read-only” event.
SetFilter string .
FilterActivator void .
FilterCaller void .
Outputs Type Description Notes
OnGetFilter string . “Read-only” event.
OnFail void .
OnPass void .


Logic Entities

Note.pngNote:The parameter storing the coordinates in all logical entities will be removed in order to reduce the amount of information stored in the map. Also, for building logic in the new Hammer there will be a separate window (something in the style of a logical tree from the unreal engine).


logic_auto

Icon-Important.pngImportant:It was decided to remove this entity and transfer its functionality to the world itself (World). This is not currently implemented, so the entity still exists.


logic_autosave

Todo: More documentation.


logic_branch

Parameters Type Description Notes
Initial value float Initial branch value. All negative numbers are false; all positive true; 0 depending on setting Treat 0 as.
Treat 0 as choice false (by default), indeterminate (for ternary mode) or true.
Inputs Type Description Notes
GetValue void . “Read-only” event.
Test void .
SetValue void .
SetValueTest void .
Toggle
ToggleValue
void .
ToggleTest
ToggleValueTest
void .
Outputs Type Description Notes
OnGetValue float . “Read-only” event.
OnFalse void .
OnIndeterminate void .
OnTrue void .


logic_branch_manager

Old name: logic_branch_listener.

Cpp.pngCode Fix:Fixed a bug that caused the deleted logic_branch to be treated as false instead of removing it from the list.
Todo: More documentation.


logic_case

Todo: More documentation.


logic_compare

Parameters Type Description Notes
Initial value
First value
string Initial first value.
Compare value
Second value
string The value to compare against.
Inputs Type Description Notes
GetFirstValue void . “Read-only” event.
GetSecondValue void . “Read-only” event.
SetValue
SetFirstValue
string .
SetCompareValue
SetSecondValue
string .
CompareInt void .
Compare
CompareFloat
void .
CompareString void .
Outputs Type Description Notes
OnGetFirstValue string . “Read-only” event.
OnGetSecondValue string . “Read-only” event.
OnEqual void .
OnNotEqual void .
OnLess void .
OnGreater void .
OnLessOrEqual void .
OnGreaterOrEqual void .


logic_console

New entity.

Todo: More documentation.


logic_relay

Inputs Type Description Notes
Trigger
Trigger1
void Fires the OnTrigger1 event.
Trigger2 void Fires the OnTrigger2 event.
Trigger3 void Fires the OnTrigger3 event.
Trigger4 void Fires the OnTrigger4 event.
Outputs Type Description Notes
OnTrigger
OnTrigger1
void Fires in response to Trigger1 input.
OnTrigger2 void Fires in response to Trigger2 input.
OnTrigger3 void Fires in response to Trigger3 input.
OnTrigger4 void Fires in response to Trigger3 input.


logic_string

New entity.

Todo: More documentation.


logic_timer

Todo: More documentation.


Math Entities

math_calculator

New entity.

Inputs Type Description Notes
GetValue void Get calculator value. Fires the OnGetValue event. “Read-only” event.
GetParity void Get the parity of a calculator value. Fires OnValueEven if the number is even and OnValueOdd if it is odd. If the value is a float, the non-integer part of the value will be ignored. “Read-only” event.
RoundValue integer or void Rounds calculator value: 0.3 = 0, 0.8 = 1. You can also specify a number that will determine at what level to round the number. For example, if the calculator number is 256 and the input value is 2 (comparable to the number of zeros), then the number will be rounded up to 300. This also works with negative numbers: if your number is 0.18, and the input value is -1, then the result will be 0.2.
SetValue string, float or void Sets the value of the calculator. (See Note after this table.)
Add string, float or void Adds the entered value to the calculator. (See Note after this table.)
Subtract string, float or void Subtracts the entered value from the calculator value. (See Note after this table.)
Multiply string, float or void Multiplies the calculator value by the entered value. (See Note after this table.)
Divide string, float or void Divides the calculator value by the entered value. Completely ignores the value 0. (See Note after this table.)
Power string, float or void Raises the calculator value to the entered power. (See Note after this table.)
Modulo string, float or void Calculates the remainder of dividing the entered number by the current calculator value. Completely ignores the value 0. (See Note after this table.)
Outputs Type Description Notes
OnValueChanged float Fires when the calculator value has been changed.
OnValueNotChanged float Fires when the calculator value has not been changed. This only happens if one of the Inputs that interacts with the calculator value has been used. Therefore, the GetValue and GetParity events do not fire this Output.
OnGetValue float Fires in response to GetValue input. “Read-only” event.
OnValueEven float Fires in response to GetParity input if the value is even. “Read-only” event.
OnValueOdd float Fires in response to GetParity input if the value is odd. “Read-only” event.
Note.pngNote:These Inputs support constants. For example, to set the value of the calculator to π (3.14159…), you can use SetValue pi, or if you want to subtract e (2.71828…) from the calculator value, you can use Subtract e.
Available constants
ConstantDescriptionValue
ee2.71828182845904523536
log2elog2(e)1.44269504088896340736
log10elog10(e)0.434294481903251827651
ln2ln(2)0.693147180559945309417
ln10ln(10)2.30258509299404568402
piπ3.14159265358979323846
pi2π/21.57079632679489661923
pi4π/40.785398163397448309616
1pi1/π0.318309886183790671538
2pi2/π0.636619772367581343076
2sqrtpi2/√π1.12837916709551257390
sqrt221.41421356237309504880
1sqrt21/√20.707106781186547524401


math_color

New entity. Also combines the capabilities of math_colorblend.

Color constructor. Allows you to make color32 from separate integers. This color32 can be used as a whole or separately.

Todo: More documentation.


math_counter

Note.pngNote:The entity now uses a new optimization system. Since this system is not fully implemented, the entity is partially broken, for now.
Todo: More documentation.


math_remap

Todo: More documentation.

Special Entities

Entities that exist on all maps and in a single copy.

Player

Todo: More documentation.


World

Old name: worldspawn.

An entity that is the world itself in which everything that is on the map is stored.

Todo: More documentation.
Parameters Type Description Notes
 ?  ?  ?
Inputs Type Description Notes
Close Map Void Closes the map and returns the player to the main menu.
Outputs Type Description Notes
 ?  ?  ?

Deleted entities

We will remember.. your uselessness

Other

  • Changed structure of .bsp files to reduce entdata usage.
  • Added more support for converting from one value format to another.
  • New Hammer (in development).
  • Trying to make engine code more readable.
    • Replaced all
      strcmp, stricmp, _stricmp, Q_strcmp, V_strcmp, Q_stricmp, V_stricmp, FStrEq, V_strlen, Q_strlen V_strlen, Q_strcasecmp, Q_strncasecmp, V_strncasecmp, V_strcasecmp
      with more understandable and optimal
      StringEmpty, StringsEqual, StringsEqualCaseless, StringsPartsEqual, StringsCompare, StringsCompareCaseless and StringLength.
  • Commands such as ent_fire, ent_pause, ent_step, etc. will be replaced with a graphical representation called “I/O Event Management Window”. It will also contain additional functionality for interacting with I/O events on the map, for example the ability to display all I/O stored in a specific entity.
  • captioncompiler will be replaced by CaptionEditor with graphical representation and new functionality.

See also

External links

Empty

This article or section is empty. You can help by adding it.