Linden Lab Official:Second Life Blogger Network Content Guidelines and Category:LSL Combat2: Difference between pages

From Second Life Wiki
(Difference between pages)
Jump to navigation Jump to search
Strawberry Linden (talk | contribs)
No edit summary
 
Nexii Malthus (talk | contribs)
No edit summary
 
Line 1: Line 1:
{{KBmaster}}
{{Help}}{{LSL Header|ml=*}} __NOTOC__
{{Policy Nav}}
== 2024 Update ==
The Blogger Network is suspended until further notice.


== Introduction ==
The Combat2 Project is an enhancement to the Linden Combat system.
Thanks for considering participation in the Second Life Blogger Network (SLBN). Before you submit your blog for consideration in this program, we ask that you review the following content guidelines to better understand if your posts are eligible for promotion in the Second Life community.


== Content Guidelines ==
This is not meant to be a complete combat system on its own but to provide the tools that allow you to do that.
To be eligible for inclusion, please consider the following content guidelines:
<ul><li>The blog post highlights a positive implementation of the Second Life experience, with well-written text and high-quality imagery.</li>
<li>The editorial content and tone is appealing and contains information that is of use to the overall Second Life community, including new Residents.</li>
<li>Editorial content is exceptional or unique and does not duplicate previously selected blog topics or themes.</li>
<li>The blog content is timely and focuses on current Second Life news or trends such as a forthcoming event, new destination or fashion trend.</li>
</ul>


The following will make a blog post ineligible for our SLBN:
In Second Life there are a host of combat communities scattered across the grid. These communities use a wide variety of combat systems, HUDs and weapon systems. Some are completely custom, relying on scripts to arbitrate health and damage, while others are based on the Linden Lab Combat System (LLCS). See [[Combat]] for more.
<ul><li>The blog post theme or editorial content duplicates previously promoted post topics.</li>
<li>The blog author has been warned for failure to comply with some aspect of the Terms of Service.</li>
<li>The blog post is plagiarized, not original, or the screenshot appears to contain unlicensed, copyrighted or trademarked content that may not be authorized by the rights holder.</li>
<li>The editorial content is primarily promotional in nature and reads like a press release or ad for a particular merchant, creator, destination or event.</li>
<li>The editorial content includes offensive, adult, inflammatory or controversial content (such as hate speech), or content that violates the Second Life terms of service. Blog posts with nudity or strong sexual content in either the post content or advertising will not be promoted.</li>
<li>The primary blog post screenshot contains promotional or advertising text over the main image.</li>
<li>The text of the blog post includes excessive lists of keywords and/or incoherent or inaccurate text.</li>
</ul>


The goal of the Combat2 project is to provide a coherent set of tools and systems that allow the residents to create complex and compelling combat systems using a common and easy to use framework.


==Additional Content Guidelines==


We embrace diversity and expression in all blogs. However, we reserve the right to decline content from blogs with ineligible content. Blog posts or links to other content that violate the following guidelines are not eligible for inclusion in our Second Life Blogger Network and may be removed at Linden Lab’s sole discretion:
{|cellspacing="0"
|valign="top" width="50%"|


===Illegal Content===
<div id="box" style="width:95%;">
Content involving illegality, such as piracy, criminal activity, terrorism, obscenity, child pornography, gambling, or illegal drug use is prohibited. Any content or activity featuring, encouraging, offering, or soliciting illegal activity is prohibited.
<h2>Introduced are new concepts</h2>
<div style="padding: 0.5em">
* Can apply damage [[llDamage|directly]]
* Damage can have a [[Damage Types|damage type]] associated to it
* Damage events
** If a script (object, vehicle or attachment) has a [[on_damage|damage event]] this will be called first before [[final_damage|final damage]] is applied
** Scripts may [[llAdjustDamage|modify the actual amount of damage]] in a damage event if the region allows it
* [[PRIM_HEALTH|Objects have a health property]]
** Scripts have to manage this property themselves; Unlike agents the simulator will not apply damage to the object health and instead only trigger damage and final damage events
** Sensors can scan for [[DAMAGEABLE|damageable]] objects and avatars that are not on a safe parcel
* [[Combat Log]] has been added which allows for auditing and other usecases
** Records all damage events, damage adjustments and kills in a [[COMBAT_CHANNEL|combat-specific public channel]]
** System generated messages by a [[COMBAT_LOG_ID|specific ID]] that scripts may filter to
** Scripts may write to this channel if not restricted so by the region
* New region-wide settings, region owners may:
** Throttle damage per second dealt to a target by a single source
** Limit damage to a target by a maximum per a single event
** Select a number of options as to what happens when agent health drops to 0 such as:
**# Teleport home (same as old LLCS)
**# Teleport to region's telehub
**# Teleport to parcel's landing point
**# No action -- Which can allow a custom scripted respawn system to act instead for example
** Set a brief period of invulnerability, during which agents may neither deal nor receive damage
** Whether health is reset to 100% on death
** Tweak the speed of health regeneration per second or disable health regeneration
** Whether scripts are allowed to adjust damage or write to the combat log
** Currently these new settings are available through the [[Region Debug Console]]
</div>
</div>


===Unauthorized Content===
Do not create or submit copyright-infringing or unauthorized content, such as content that you did not create or do not have permission to use, as further described in more detail below.


===Nudity, Pornography or Other Sexual Content===
|valign="top" align="left" width="50%"|
Content or posts featuring sexually explicit content and activities, such as pornography, sexual acts, nudity, or sexual services, including solicitation or offers for such content, are prohibited. Content or activities that threaten or promote sexual violence or exploitation are strictly prohibited and may be reported to law enforcement authorities. Child exploitation will be reported to the National Center for Missing & Exploited Children. While we understand that some nudity might be intended for educational, scientific or artistic purposes, we may restrict this content so that our content appeals to the widest audience possible while also adhering to industry-standard content guidelines (such as those published by [https://support.google.com/adspolicy/answer/6023699?hl=en&guide=1308252&ref_topic=1310883&rd=4&visit_id=637050365539534634-2195413423 Google] and [https://about.ads.microsoft.com/en-us/resources/policies/adult-content-policies Microsoft]).  At our sole discretion, we may make exceptions to these policies in limited educational or scientific contexts.


===Hateful Content===
<div id="box" style="width:95%;">
Any content, suggestions, or blog posts associated with hateful content or activity will not be posted and/or will be removed. This includes cruel or hateful content that could harm or harass, promote, encourage, facilitate or condone: Discrimination, denigration, objectification, violence against, or that is intended to incite hatred of individuals or groups based on race, ethnic origin, religion, nationality, disability, gender, age, veteran status, physical characteristics, medical conditions, sexual orientation, gender or gender identity is prohibited.
<h2>New Functions and Events</h2>
<div style="padding: 0.5em">
These are the functions and events directly related to Combat2 as well as new related functions
{|
{{LSL DefineRow|key|[[llRezObjectWithParams]](string inventory, list params)|}}
{{LSL DefineRow|void|[[llAdjustDamage]](integer number, float new_damage)|}}
{{LSL DefineRow|void|[[llDamage]](key target, float damage, integer damage_type)|}}
{{LSL DefineRow|list|[[llDetectedDamage]](integer number)|}}
{{LSL DefineRow|key|[[llDetectedRezzer]](integer number)|}}
{{LSL DefineRow|float|[[llGetHealth]](key id)|}}
{{LSL DefineRow|event|[[on_damage]](integer num_detected)|}}
{{LSL DefineRow|event|[[final_damage]](integer num_detected)|}}
{{LSL DefineRow|event|[[on_death]]()|}}
{{LSL DefineRow|string|[[llGetStartString]]()|}}
{{LSL DefineRow|string|[[llDerezObject]](key id, integer flag)|}}
|}
</div>
</div>


Any content or activity that could harm or harass, or promote, encourage, facilitate or condone violence against animals is prohibited.
<div id="box" style="width:95%;">
<h2>[[Combat Log]]</h2>
<div style="padding: 0.5em">System-generated log messages are collected and sent into the <code>COMBAT_CHANNEL</code> in a JSON format.</div>
</div>


Any content or activity that attempts to intimidate, degrade, abuse, or bully others, or creates a hostile environment for others is considered harassment, and is prohibited.  
<div id="box" style="width:95%;">
<h2>[[Damage Types]]</h2>
<div style="padding: 0.5em">The damage amount can be supported via a damage type field, which can match a default DAMAGE_TYPE_* or a custom integer; Additionally the field may be repurposed.</div>
</div>


===Violent Content===
|}
Intensely violent or graphic content that we deem to be shocking, sensational, or disrespectful is prohibited.


===Private Information===
Do not submit or share content that may reveal private personal information (such as real name or location) about individuals without permission. Do not submit or share content that violates any obligation of confidentiality or violates the privacy, publicity, moral or any other right of any third party.


===Impersonation===
<div id="box" style="width:95%;">
Content or activity meant to impersonate an individual or organization is prohibited.
<h2>Scripting Details</h2>
<div style="padding: 0.5em">
Here are the new functions and events in detail
{|
{{LSL DefineRow|key|[[llRezObjectWithParams]](string inventory, list params)|New function for rezzing objects with a variety of parameters, particularly useful for avoiding the overhead of starting a script for each bullet}}
{{LSL DefineRow|void|[[llAdjustDamage]](integer number, float new_damage)|Modifies the amount of damage that will be applied by the current [[on_damage]] event after it has completed processing}}
{{LSL DefineRow|void|[[llDamage]](key target, float damage, integer damage_type)|Delivers damage to tasks and agent in the same region with an [[:Category:LSL_Combat2#Damage_Types|integer describing the type of damage]]. Negative damage can be used to heal instead. You can also go above 100.0 damage unlike collideable damage}}
{{LSL DefineRow|list|[[llDetectedDamage]](integer number)|Returns a list describing a single damage event within an [[on_damage]] event}}
{{LSL DefineRow|key|[[llDetectedRezzer]](integer number)|Returns a key that is the UUID of the object or avatar that rezzed the detected object}}
{{LSL DefineRow|float|[[llGetHealth]](key id)|Returns the current health of an avatar or object in the region}}
{{LSL DefineRow|event|[[on_damage]](integer num_detected)|Triggered when damage has been inflicted on an avatar or task in the world but before damage has been applied or distributed}}
{{LSL DefineRow|event|[[final_damage]](integer num_detected)|Triggered after after all [[on_damage]] events in all scripts and attachments have processed and damage has been applied to the avatar or distributed to all seated avatars}}
{{LSL DefineRow|event|[[on_death]]()|Triggered on all attachments worn by an avatar when that avatar's health reaches 0}}
{{LSL DefineRow|string|[[llGetStartString]]()|New function to retrieve the string passed with [[llRezObjectWithParams]] via REZ_PARAM_STRING, particularly useful for avoiding overhead and delay when having to communicate any necessary information}}
{{LSL DefineRow|string|[[llDerezObject]](key id, integer flag)|Derezzes an object previously rezzed from within the object containing the script}}
|}
</div>
</div>


At our sole discretion, we may restrict content or blog posts that violate these Guidelines.
<div id="box" style="width:95%;">
<h2>Additional</h2>
<div style="padding: 0.5em">
* [[:Template:LSL_Constants/Damage_Types|Damage types]] — Provided for convenience and a suggestion. Scripters can add custom ones or repurpose the damage type fields
* [[llListen]]
** Channel reserved at [[COMBAT_CHANNEL]]
** System generated combat log messages sent by [[COMBAT_LOG_ID]]
** Scripts may also write to this channel if the region allows it (see "restrict_combat_log" below)
* [[llSensor]] — Scripts may filter by [[DAMAGEABLE]] for objects in world that process damage (that is if they have a [[on_damage]] and/or [[final_damage]] event -- the object's health doesn't matter)
* [[llGetObjectDetails]] — Additional values around health, damage and type
** [[OBJECT_HEALTH]] — Retrieves the health of an avatar or prim
** [[OBJECT_DAMAGE]] — Retrieves the amount of damage a prim inflicts on collision
** [[OBJECT_DAMAGE_TYPE]] — Retrieves the type of damage a prim inflicts on collision
* [[llRezObjectWithParams]] — Apply damage to rezzed objects
** [[REZ_DAMAGE]] — The amount of damage applied to an agent upon collision with this object
** [[REZ_DAMAGE_TYPE]] — The damage type to apply when this prim collides with another object
** [[REZ_PARAM_STRING]] — String parameter that can be passed into the rezzed object with a maximum string length of 1024 bytes
* [[llSetLinkPrimitiveParamsFast]] — New parameter added to adjust damage amount and damage type for collision damage
** [[PRIM_DAMAGE]] — Set damage amount and damage type
* [[llGetEnv]] — Several new values are added
** "allow_damage_adjust" — Are scripts allowed to adjust damage
** "restrict_combat_log" — Are scripts allowed to write to the combat log
** "restore_health" — Is health reset to 100% on death
** "invulnerability_time" — Invulnerablitiy time applied after avatar death
** "damage_throttle" — The maximum number of points of damage a single source may inflict on a target per second. This is a Damage Per Second (DPS) throttle
** "damage_limit" — The maximum number of points of damage a single damage collision or call via [[llDamage]] may inflict
** "health_regen_rate" — The speed of health regeneration in hitpoints per second
** "death_action" — Set the action to take when an avatar dies in the region
* [[llSetLinkSitFlags]] — Flags that can be applied to sit targets
** SIT_FLAG_NO_COLLIDE — Disable the avatar's collision volume when they are seated on this sit target
** SIT_FLAG_NO_DAMAGE — Do not distribute damage to agents sitting on this sit target
</div>
</div>


==Do Not Submit, Share or Post Anything That Is Not Yours. Create and Upload Original Content==
Content that involves copies or derivative creation of others’ copyrighted or trademarked content may violate intellectual property or other rights of third parties.  Do not use a third party’s intellectual property, such as a copyrighted works, trademarked logos or brand names unless you have obtained all of the rights necessary to use such content. If you quote or excerpt someone's content, it is your responsibility to provide proper attribution to the original author. For proper attribution and fair use, please see [https://www.eff.org/issues/bloggers/legal The Electronic Frontier Foundation's Legal Guide for Bloggers].


If you create content that is inspired by real-world objects, celebrities, characters from movies or books, or public figures, secure all necessary rights before submitting the content to us. Unless you have permission from the copyright or trademark owner/holder or their authorized agent, we do not permit the use of such content.


===Unauthorized Content Sharing===
Uploading, posting or sharing any content that you do not own, do not have the rights to, or are not authorized to use, display or broadcast violates our Terms of Service and Terms and Conditions. The owners of the content may issue a DMCA takedown request.  You must have all of the necessary rights to duplicate, display or create derivative works of any original content owned by someone else before submitting it to us.


===Digital Millennium Copyright Act (“DMCA”)===
==Damage Types==
We respond to copyright notifications submitted under the DMCA. Our intellectual property infringement policy can be found here: [https://www.lindenlab.com/legal/intellectual-property-infringement-notification-policy Intellectual Property Infringement Policy].


If a legally sufficient DMCA notice is submitted, we will remove the identified materials as required.
{{LSL_Constants/Damage_Types}}
{{LSL_Constants/Custom_Damage_Types}}


You are responsible for ensuring that your listings and associated content comply with applicable intellectual property laws. Please be aware that your compliance with these Guidelines does not guarantee your compliance with all intellectual property laws. If you need advice on intellectual property law, we suggest you contact an attorney.


==Related==


==The Second Life Blogger Network Badge==
* Thread on the Second Life community forums by Rider Linden announcing the project: [https://community.secondlife.com/forums/topic/506317-pew-pew-pew-linden-damage-combat-20/ Pew! Pew! Pew! Linden Damage & Combat 2.0]
 
* [https://feedback.secondlife.com/combat-20 Feedback for suggesting, voting and commenting on ideas]
While not required, we strongly encourage participating bloggers to include the Second Life Blogger Network badge on their site in the persistent header, footer or sidebar.
* Thread on draft proposal for Combat 2.1 changes by adding Teams & Respawns concepts from Rider Linden: [https://community.secondlife.com/forums/topic/516319-combat-21-teams-respawn/]
 
To get the badge, please right click and save the following image file:
 
[[File:SL_Sub-Logos-Blogs.png]]
 
Most blog platforms support the ability for bloggers to add an image file or badge into the template or theme. For example, Wordpress users can use the [https://en.support.wordpress.com/widgets/image-widget/ Image Widget] to upload the Second Life Blogger Network badge as an image file with an associated web link. Any use of the Second Life Blogger Network badge must be accompanied by the following disclaimer:  ''"[Blogger’s] use of the SLBN logo does not constitute approval by or a representation or endorsement from Linden Lab."''

Latest revision as of 14:53, 24 November 2024

The Combat2 Project is an enhancement to the Linden Combat system.

This is not meant to be a complete combat system on its own but to provide the tools that allow you to do that.

In Second Life there are a host of combat communities scattered across the grid. These communities use a wide variety of combat systems, HUDs and weapon systems. Some are completely custom, relying on scripts to arbitrate health and damage, while others are based on the Linden Lab Combat System (LLCS). See Combat for more.

The goal of the Combat2 project is to provide a coherent set of tools and systems that allow the residents to create complex and compelling combat systems using a common and easy to use framework.


Introduced are new concepts

  • Can apply damage directly
  • Damage can have a damage type associated to it
  • Damage events
  • Objects have a health property
    • Scripts have to manage this property themselves; Unlike agents the simulator will not apply damage to the object health and instead only trigger damage and final damage events
    • Sensors can scan for damageable objects and avatars that are not on a safe parcel
  • Combat Log has been added which allows for auditing and other usecases
    • Records all damage events, damage adjustments and kills in a combat-specific public channel
    • System generated messages by a specific ID that scripts may filter to
    • Scripts may write to this channel if not restricted so by the region
  • New region-wide settings, region owners may:
    • Throttle damage per second dealt to a target by a single source
    • Limit damage to a target by a maximum per a single event
    • Select a number of options as to what happens when agent health drops to 0 such as:
      1. Teleport home (same as old LLCS)
      2. Teleport to region's telehub
      3. Teleport to parcel's landing point
      4. No action -- Which can allow a custom scripted respawn system to act instead for example
    • Set a brief period of invulnerability, during which agents may neither deal nor receive damage
    • Whether health is reset to 100% on death
    • Tweak the speed of health regeneration per second or disable health regeneration
    • Whether scripts are allowed to adjust damage or write to the combat log
    • Currently these new settings are available through the Region Debug Console


New Functions and Events

These are the functions and events directly related to Combat2 as well as new related functions

• key llRezObjectWithParams(string inventory, list params)
• void llAdjustDamage(integer number, float new_damage)
• void llDamage(key target, float damage, integer damage_type)
• list llDetectedDamage(integer number)
• key llDetectedRezzer(integer number)
• float llGetHealth(key id)
• event on_damage(integer num_detected)
• event final_damage(integer num_detected)
• event on_death()
• string llGetStartString()
• string llDerezObject(key id, integer flag)

Combat Log

System-generated log messages are collected and sent into the COMBAT_CHANNEL in a JSON format.

Damage Types

The damage amount can be supported via a damage type field, which can match a default DAMAGE_TYPE_* or a custom integer; Additionally the field may be repurposed.


Scripting Details

Here are the new functions and events in detail

• key llRezObjectWithParams(string inventory, list params) New function for rezzing objects with a variety of parameters, particularly useful for avoiding the overhead of starting a script for each bullet
• void llAdjustDamage(integer number, float new_damage) Modifies the amount of damage that will be applied by the current on_damage event after it has completed processing
• void llDamage(key target, float damage, integer damage_type) Delivers damage to tasks and agent in the same region with an integer describing the type of damage. Negative damage can be used to heal instead. You can also go above 100.0 damage unlike collideable damage
• list llDetectedDamage(integer number) Returns a list describing a single damage event within an on_damage event
• key llDetectedRezzer(integer number) Returns a key that is the UUID of the object or avatar that rezzed the detected object
• float llGetHealth(key id) Returns the current health of an avatar or object in the region
• event on_damage(integer num_detected) Triggered when damage has been inflicted on an avatar or task in the world but before damage has been applied or distributed
• event final_damage(integer num_detected) Triggered after after all on_damage events in all scripts and attachments have processed and damage has been applied to the avatar or distributed to all seated avatars
• event on_death() Triggered on all attachments worn by an avatar when that avatar's health reaches 0
• string llGetStartString() New function to retrieve the string passed with llRezObjectWithParams via REZ_PARAM_STRING, particularly useful for avoiding overhead and delay when having to communicate any necessary information
• string llDerezObject(key id, integer flag) Derezzes an object previously rezzed from within the object containing the script

Additional

  • Damage types — Provided for convenience and a suggestion. Scripters can add custom ones or repurpose the damage type fields
  • llListen
    • Channel reserved at COMBAT_CHANNEL
    • System generated combat log messages sent by COMBAT_LOG_ID
    • Scripts may also write to this channel if the region allows it (see "restrict_combat_log" below)
  • llSensor — Scripts may filter by DAMAGEABLE for objects in world that process damage (that is if they have a on_damage and/or final_damage event -- the object's health doesn't matter)
  • llGetObjectDetails — Additional values around health, damage and type
  • llRezObjectWithParams — Apply damage to rezzed objects
    • REZ_DAMAGE — The amount of damage applied to an agent upon collision with this object
    • REZ_DAMAGE_TYPE — The damage type to apply when this prim collides with another object
    • REZ_PARAM_STRING — String parameter that can be passed into the rezzed object with a maximum string length of 1024 bytes
  • llSetLinkPrimitiveParamsFast — New parameter added to adjust damage amount and damage type for collision damage
  • llGetEnv — Several new values are added
    • "allow_damage_adjust" — Are scripts allowed to adjust damage
    • "restrict_combat_log" — Are scripts allowed to write to the combat log
    • "restore_health" — Is health reset to 100% on death
    • "invulnerability_time" — Invulnerablitiy time applied after avatar death
    • "damage_throttle" — The maximum number of points of damage a single source may inflict on a target per second. This is a Damage Per Second (DPS) throttle
    • "damage_limit" — The maximum number of points of damage a single damage collision or call via llDamage may inflict
    • "health_regen_rate" — The speed of health regeneration in hitpoints per second
    • "death_action" — Set the action to take when an avatar dies in the region
  • llSetLinkSitFlags — Flags that can be applied to sit targets
    • SIT_FLAG_NO_COLLIDE — Disable the avatar's collision volume when they are seated on this sit target
    • SIT_FLAG_NO_DAMAGE — Do not distribute damage to agents sitting on this sit target



Damage Types

Flag Description
DAMAGE_TYPE_IMPACT −1 System damage generated by impact with terrain or a prim.
DAMAGE_TYPE_GENERIC 0 Generic or legacy damage.
DAMAGE_TYPE_ACID 1 Damage caused by a caustic substance, such as acid.
DAMAGE_TYPE_BLUDGEONING 2 Damage caused by a blunt object, such as a club.
DAMAGE_TYPE_COLD 3 Damage inflicted by exposure to extreme cold.
DAMAGE_TYPE_ELECTRIC 4 Damage caused by electricity.
DAMAGE_TYPE_FIRE 5 Damage inflicted by exposure to heat or flames.
DAMAGE_TYPE_FORCE 6 Damage inflicted by a great force or impact.
DAMAGE_TYPE_NECROTIC 7 Damage caused by a direct assault on life-force.
DAMAGE_TYPE_PIERCING 8 Damage caused by a piercing object such as a bullet, spear, or arrow.
DAMAGE_TYPE_POISON 9 Damage caused by poison.
DAMAGE_TYPE_PSYCHIC 10 Damage caused by a direct assault on the mind.
DAMAGE_TYPE_RADIANT 11 Damage caused by radiation or extreme light.
DAMAGE_TYPE_SLASHING 12 Damage caused by a slashing object such as a sword or axe.
DAMAGE_TYPE_SONIC 13 Damage caused by loud noises, like a Crash Worship concert.
DAMAGE_TYPE_EMOTIONAL 14

Damage types are provided as a convenience and a suggestion. Scripters are free to add custom ones for their own combat systems or repurpose the damage type fields.

To make it easy for the community to recognise and re-use custom damage types here is a table that scripters can add onto:

Flag Description Subtype Creator System
DAMAGE_TYPE_MEDICAL 100 Negative damage to heal a wound, damaged limb, first aid, etc. Intended for generic healing of biological nature. Positive damage would be medical malpractice Nexii Malthus Vertical Sim / SLMC
DAMAGE_TYPE_REPAIR 101 Negative damage from repairing an object or something mechanical, welding torch or wrench on a vehicle/robot/mech, etc. Positive damage can be due to mistakes, low skill or sabotage. Intended for generic healing of non-biological nature (e.g. a mechanical tank or an electrical system) Nexii Malthus Vertical Sim / SLMC
DAMAGE_TYPE_EXPLOSIVE 102 Damage caused by an explosive blast, like a grenade DAMAGE_TYPE_FORCE Nexii Malthus Vertical Sim / SLMC
DAMAGE_TYPE_CRUSHING 103 Damage caused by crushing. Such as being crushed by water pressure. More of a constant type of force damage — can be nullified/reduced via diving suit DAMAGE_TYPE_FORCE Nexii Malthus Vertical Sim / SLMC
DAMAGE_TYPE_ANTI_ARMOR 104 Damage caused by anti-tank/anti-armor. Such as from a specialised armor piercing shell, rocket or other munition DAMAGE_TYPE_PIERCING Nexii Malthus Vertical Sim / SLMC
DAMAGE_TYPE_SUFFOCATION 105 Damage caused by suffocation. Usually lacking a breathable atmosphere, such as from drowning or being in the vacuum of space Nexii Malthus Vertical Sim / SLMC



Related