User:Cvoxalury/Readiness: Difference between revisions
Jump to navigation
Jump to search
(Started a draft of Readiness article. Surprised it's been so long without it...) |
mNo edit summary |
||
Line 1: | Line 1: | ||
==Overview== | |||
'''Readiness''' is an [[AI]] system in {{source|4.1}} available to the '''Player Companion''' class ({{code|CNPC_PlayerCompanion}}) and its inheritors (namely, [[npc_citizen]], [[npc_alyx]], [[npc_barney]]) since {{Hl2ep1|4.1}}. | '''Readiness''' is an [[AI]] system in {{source|4.1}} available to the '''Player Companion''' class ({{code|CNPC_PlayerCompanion}}) and its inheritors (namely, [[npc_citizen]], [[npc_alyx]], [[npc_barney]]) since {{Hl2ep1|4.1}}. | ||
The purpose of readiness is to modify the [[activity|activities]], [[sequence]]s, and facets of behavior of a particular NPC depending on their <b>readiness level</b>. | The purpose of readiness is to modify the [[activity|activities]], [[sequence]]s, and facets of behavior of a particular NPC depending on their <b>readiness level</b>. | ||
__TOC__ | |||
== Readiness levels == | |||
The levels are: | The levels are: | ||
Line 16: | Line 18: | ||
</source> | </source> | ||
== Activity remapping == | |||
The activities are remapped based on {{path|<nowiki>/scripts/actremap</nowiki>|txt}} | The activities are remapped based on {{path|<nowiki>/scripts/actremap</nowiki>|txt}} | ||
Line 377: | Line 380: | ||
}</source> | }</source> | ||
|}} | |}} | ||
== In code == | |||
== Effects on AI behavior == | |||
== Using in maps == |
Revision as of 17:54, 11 July 2024
Overview
Readiness is an AI system in Source available to the Player Companion class (CNPC_PlayerCompanion) and its inheritors (namely, npc_citizen, npc_alyx, npc_barney) since
Half-Life 2: Episode One.
The purpose of readiness is to modify the activities, sequences, and facets of behavior of a particular NPC depending on their readiness level.
Readiness levels
The levels are:
enum AIReadiness_t
{
AIRL_PANIC = -2,
AIRL_STEALTH = -1,
AIRL_RELAXED = 0,
AIRL_STIMULATED,
AIRL_AGITATED,
};
Activity remapping
The activities are remapped based on /scripts/actremap.txt
Full contents of Ep1's
actremap.txt
//"ACT_IDLE" - This is the name of the original activity
//{
// "remapactivity" "ACT_IDLE_RELAXED" - This is the name of the activy we're going to remap to.
// "readiness" "AIRL_STIMULATED" - This is the value of the readiness level
// "aiming" "TRS_FALSE" - Does this activity aim a weapon
//}
// "extra"
// Use extra to add extra information that is specific to certain classes.
// For example, citizens use readiness and aiming so they specify the values there.
// Valid readiness level names:
// AIRL_PANIC
// AIRL_STEALTH
// AIRL_RELAXED
// AIRL_STIMULATED
// AIRL_AGITATED
// Valid aiming values names:
// TRS_FALSE - This animation doesn't aim
// TRS_TRUE - This animation needs to aim
// TRS_NONE - Don't care
"npc_playercompanion"
{
//ACT_IDLE
"ACT_IDLE"
{
"remapactivity" "ACT_IDLE_RELAXED"
"extra"
{
"readiness" "AIRL_RELAXED"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE"
{
"remapactivity" "ACT_IDLE_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE"
{
"remapactivity" "ACT_IDLE_AIM_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_TRUE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE"
{
"remapactivity" "ACT_IDLE_AGITATED"
"extra"
{
"readiness" "AIRL_AGITATED"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE"
{
"remapactivity" "ACT_IDLE_STEALTH"
"extra"
{
"readiness" "AIRL_STEALTH"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE"
{
"remapactivity" "ACT_CROUCH_PANICKED"
"extra"
{
"readiness" "AIRL_PANIC"
"aiming" "TRS_NONE"
"weaponrequired" "FALSE"
}
}
//ACT_IDLE_ANGRY
"ACT_IDLE_ANGRY"
{
"remapactivity" "ACT_IDLE_RELAXED"
"extra"
{
"readiness" "AIRL_RELAXED"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE_ANGRY"
{
"remapactivity" "ACT_IDLE_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE_ANGRY"
{
"remapactivity" "ACT_IDLE_AIM_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_TRUE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE_ANGRY"
{
"remapactivity" "ACT_IDLE_AGITATED"
"extra"
{
"readiness" "AIRL_AGITATED"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
"ACT_IDLE_ANGRY"
{
"remapactivity" "ACT_IDLE_STEALTH"
"extra"
{
"readiness" "AIRL_STEALTH"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
//ACT_CROUCHIDLE
"ACT_CROUCHIDLE"
{
"remapactivity" "ACT_CROUCHIDLE_STIMULATED"
"extra"
{
"readiness" "AIRL_RELAXED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_CROUCHIDLE"
{
"remapactivity" "ACT_CROUCHIDLE_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_CROUCHIDLE"
{
"remapactivity" "ACT_CROUCHIDLE_AIM_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_TRUE"
"weaponrequired" "TRUE"
}
}
"ACT_CROUCHIDLE"
{
"remapactivity" "ACT_CROUCHIDLE_AGITATED"
"extra"
{
"readiness" "AIRL_AGITATED"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
//ACT_WALK
"ACT_WALK"
{
"remapactivity" "ACT_WALK_RELAXED"
"extra"
{
"readiness" "AIRL_RELAXED"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
"ACT_WALK"
{
"remapactivity" "ACT_WALK_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_WALK"
{
"remapactivity" "ACT_WALK_AIM_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_TRUE"
"weaponrequired" "TRUE"
}
}
"ACT_WALK"
{
"remapactivity" "ACT_WALK_AGITATED"
"extra"
{
"readiness" "AIRL_AGITATED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_WALK"
{
"remapactivity" "ACT_WALK_STEALTH"
"extra"
{
"readiness" "AIRL_STEALTH"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_WALK"
{
"remapactivity" "ACT_WALK_AIM_STEALTH"
"extra"
{
"readiness" "AIRL_STEALTH"
"aiming" "TRS_TRUE"
"weaponrequired" "TRUE"
}
}
"ACT_WALK"
{
"remapactivity" "ACT_WALK_PANICKED"
"extra"
{
"readiness" "AIRL_PANIC"
"aiming" "TRS_NONE"
"weaponrequired" "FALSE"
}
}
//ACT_RUN
"ACT_RUN"
{
"remapactivity" "ACT_RUN_RELAXED"
"extra"
{
"readiness" "AIRL_RELAXED"
"aiming" "TRS_NONE"
"weaponrequired" "TRUE"
}
}
"ACT_RUN"
{
"remapactivity" "ACT_RUN_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_RUN"
{
"remapactivity" "ACT_RUN_AIM_STIMULATED"
"extra"
{
"readiness" "AIRL_STIMULATED"
"aiming" "TRS_TRUE"
"weaponrequired" "TRUE"
}
}
"ACT_RUN"
{
"remapactivity" "ACT_RUN_AGITATED"
"extra"
{
"readiness" "AIRL_AGITATED"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_RUN"
{
"remapactivity" "ACT_RUN_STEALTH"
"extra"
{
"readiness" "AIRL_STEALTH"
"aiming" "TRS_FALSE"
"weaponrequired" "TRUE"
}
}
"ACT_RUN"
{
"remapactivity" "ACT_RUN_AIM_STEALTH"
"extra"
{
"readiness" "AIRL_STEALTH"
"aiming" "TRS_TRUE"
"weaponrequired" "TRUE"
}
}
"ACT_RUN"
{
"remapactivity" "ACT_RUN_PANICKED"
"extra"
{
"readiness" "AIRL_PANIC"
"aiming" "TRS_NONE"
"weaponrequired" "FALSE"
}
}
}