Trackmania ManiaScript Reference 2025.6.19.2137
A ManiaScript Reference of the new Trackmania.
Loading...
Searching...
No Matches
CSmPlayerDriver Class Reference

API for ShootMania bots. More...

#include <doc.h>

Inheritance diagram for CSmPlayerDriver:
[legend]

Public Types

enum  ESmDriverBehaviour {
  Static , Turret , Scripted , IA ,
  Patrol , Escape , Saunter , Orbit ,
  Follow
}
 
enum  ESmDriverPathState {
  Static , None , Computing , Simple ,
  Full , Incomplete , InFlock
}
 
enum  ESmDriverPatrolMode { OneTrip , BackAndForth , Loop }
 
enum  ESmAttackFilter {
  All , AllPlayers , AllBots , AllOpposite ,
  OppositePlayers , OppositeBots , Nobody
}
 

Public Member Functions

Void Scripted_Move (Vec3 Goal)
 
Void Scripted_MoveDelta (Vec3 Delta)
 
Void Scripted_MoveAndAim (Vec3 Goal)
 
Void Scripted_MoveDeltaAndAim (Vec3 Delta)
 
Void Scripted_Aim (Vec3 Goal)
 
Void Scripted_AimDelta (Real DeltaYaw, Real DeltaPitch)
 
Void Scripted_RequestAction ()
 
Void Scripted_RequestGunTrigger ()
 
Void Scripted_RequestInput (CSmMode::EActionInput Input)
 

Public Attributes

CSmPlayerDriver::ESmDriverBehaviour Behaviour
 
Boolean PursueTarget
 
Real AggroRadius
 
Real ShootRadius
 
Real TargetMinDistance
 
Real DisengageDistance
 
Real PathSpeedCoef
 
Real Accuracy
 
Integer ReactionTime
 
Integer ShootPeriodMin
 
Integer ShootPeriodMax
 
Boolean RocketAnticipation
 
Real TargetDetectionFov
 
CSmPlayerDriver::ESmAttackFilter AttackFilter
 
CSmPlayer *const Target
 
Boolean const IsStuck
 
CSmPlayerDriver::ESmDriverPathState const PathState
 
CSmPlayer *const Owner
 
CSmPlayerDriver::ESmDriverPatrolMode Patrol_Mode
 
CMapBotPathPatrol_Path
 
Vec3 Escape_AnchorPoint
 
Real Escape_DistanceSafe
 
Real Escape_DistanceMinEscape
 
Real Escape_DistanceMaxEscape
 
Vec3 Saunter_AnchorPoint
 
Integer Saunter_BaseChillingTime
 
Integer Saunter_ChillingTimeDelta
 
Real Saunter_Radius
 
Vec3 Orbit_AnchorPoint
 
Real Orbit_Radius
 
Boolean Orbit_IsClockWise
 
Boolean Scripted_ForceAimInMoveDir
 
Vec3 Follow_Offset
 
Boolean Follow_ForceAimInLeaderDir
 
Boolean Follow_HasLeader
 
CSmPlayerFollow_Leader
 
Vec3 Follow_AnchorPoint
 
CSmPlayerForcedTarget
 
Array< CSmPlayer * > TargetsToAvoid
 
Boolean PredictJump
 
Boolean UsePathFinding
 
CSmMode::EActionInput OnStuckInput
 
Real MaxPathDivergence
 
Real TargetWorldRadius
 
Real TargetWorldPriority
 
Integer LostTargetChaseDuration
 
Array< CSmPlayerDriver * > FlockPartners
 
Real FlockRadius
 
Real FlockFov
 
Real FlockCohesionWeight
 
Real FlockAlignmentWeight
 
Real FlockSeparationWeight
 
- Public Attributes inherited from CNod
Ident const Id
 

Detailed Description

API for ShootMania bots.

Member Enumeration Documentation

◆ ESmAttackFilter

Enumerator
All 
AllPlayers 
AllBots 
AllOpposite 
OppositePlayers 
OppositeBots 
Nobody 

◆ ESmDriverBehaviour

Enumerator
Static 
Turret 
Scripted 
IA 
Patrol 
Escape 
Saunter 
Orbit 
Follow 

◆ ESmDriverPathState

Enumerator
Static 
None 
Computing 
Simple 
Full 
Incomplete 
InFlock 

◆ ESmDriverPatrolMode

Enumerator
OneTrip 
BackAndForth 
Loop 

Member Function Documentation

◆ Scripted_Aim()

Void CSmPlayerDriver::Scripted_Aim ( Vec3 Goal)

◆ Scripted_AimDelta()

Void CSmPlayerDriver::Scripted_AimDelta ( Real DeltaYaw,
Real DeltaPitch )

◆ Scripted_Move()

Void CSmPlayerDriver::Scripted_Move ( Vec3 Goal)

◆ Scripted_MoveAndAim()

Void CSmPlayerDriver::Scripted_MoveAndAim ( Vec3 Goal)

◆ Scripted_MoveDelta()

Void CSmPlayerDriver::Scripted_MoveDelta ( Vec3 Delta)

◆ Scripted_MoveDeltaAndAim()

Void CSmPlayerDriver::Scripted_MoveDeltaAndAim ( Vec3 Delta)

◆ Scripted_RequestAction()

Void CSmPlayerDriver::Scripted_RequestAction ( )

Same as Scripted_RequestInput(CSmMode::EActionInput::Movement).

◆ Scripted_RequestGunTrigger()

Void CSmPlayerDriver::Scripted_RequestGunTrigger ( )

Same as Scripted_RequestInput(CSmMode::EActionInput::Weapon). This has no effect when ForcedTarget is not Null.

◆ Scripted_RequestInput()

Void CSmPlayerDriver::Scripted_RequestInput ( CSmMode::EActionInput Input)

Member Data Documentation

◆ Accuracy

Real CSmPlayerDriver::Accuracy

◆ AggroRadius

Real CSmPlayerDriver::AggroRadius

◆ AttackFilter

CSmPlayerDriver::ESmAttackFilter CSmPlayerDriver::AttackFilter

◆ Behaviour

CSmPlayerDriver::ESmDriverBehaviour CSmPlayerDriver::Behaviour

◆ DisengageDistance

Real CSmPlayerDriver::DisengageDistance

◆ Escape_AnchorPoint

Vec3 CSmPlayerDriver::Escape_AnchorPoint

Note that CSmMode::SpawnPlayer and CSmMode::SpawnBotPlayer may reset this value to the spawn position.

◆ Escape_DistanceMaxEscape

Real CSmPlayerDriver::Escape_DistanceMaxEscape

◆ Escape_DistanceMinEscape

Real CSmPlayerDriver::Escape_DistanceMinEscape

◆ Escape_DistanceSafe

Real CSmPlayerDriver::Escape_DistanceSafe

◆ FlockAlignmentWeight

Real CSmPlayerDriver::FlockAlignmentWeight

Flocking is a work in progress. How much the driver values going the same direction as its neighbours.

◆ FlockCohesionWeight

Real CSmPlayerDriver::FlockCohesionWeight

Flocking is a work in progress. How much the driver values going towards its neighbours.

◆ FlockFov

Real CSmPlayerDriver::FlockFov

Flocking is a work in progress. The field of view angle the driver uses to see its neighbours. Value in degrees.Values in range (0.000000-360.000000)

◆ FlockPartners

Array<CSmPlayerDriver*> CSmPlayerDriver::FlockPartners

Flocking is a work in progress. You need to fill this array and define a default behaviour for each member of the flock.

◆ FlockRadius

Real CSmPlayerDriver::FlockRadius

Flocking is a work in progress. How far the driver see its neighbours.

◆ FlockSeparationWeight

Real CSmPlayerDriver::FlockSeparationWeight

Flocking is a work in progress. How much the driver values not hitting its neighbours.

◆ Follow_AnchorPoint

Vec3 CSmPlayerDriver::Follow_AnchorPoint

◆ Follow_ForceAimInLeaderDir

Boolean CSmPlayerDriver::Follow_ForceAimInLeaderDir

◆ Follow_HasLeader

Boolean CSmPlayerDriver::Follow_HasLeader

◆ Follow_Leader

CSmPlayer* CSmPlayerDriver::Follow_Leader

◆ Follow_Offset

Vec3 CSmPlayerDriver::Follow_Offset

◆ ForcedTarget

CSmPlayer* CSmPlayerDriver::ForcedTarget

◆ IsStuck

Boolean const CSmPlayerDriver::IsStuck

◆ LostTargetChaseDuration

Integer CSmPlayerDriver::LostTargetChaseDuration

How long the driver will try to chase its target after it can't see it, 0 to disable.

◆ MaxPathDivergence

Real CSmPlayerDriver::MaxPathDivergence

◆ OnStuckInput

CSmMode::EActionInput CSmPlayerDriver::OnStuckInput

◆ Orbit_AnchorPoint

Vec3 CSmPlayerDriver::Orbit_AnchorPoint

Note that CSmMode::SpawnPlayer and CSmMode::SpawnBotPlayer may reset this value to the spawn position.

◆ Orbit_IsClockWise

Boolean CSmPlayerDriver::Orbit_IsClockWise

◆ Orbit_Radius

Real CSmPlayerDriver::Orbit_Radius

◆ Owner

CSmPlayer* const CSmPlayerDriver::Owner

◆ PathSpeedCoef

Real CSmPlayerDriver::PathSpeedCoef

◆ PathState

CSmPlayerDriver::ESmDriverPathState const CSmPlayerDriver::PathState

PathFinding takes some time to compute and doesn't always reach the intended goal. The player will most probably reach the goal in the case CSmPlayerDriver::ESmDriverPathState::Full.

◆ Patrol_Mode

CSmPlayerDriver::ESmDriverPatrolMode CSmPlayerDriver::Patrol_Mode

◆ Patrol_Path

CMapBotPath* CSmPlayerDriver::Patrol_Path

◆ PredictJump

Boolean CSmPlayerDriver::PredictJump

◆ PursueTarget

Boolean CSmPlayerDriver::PursueTarget

◆ ReactionTime

Integer CSmPlayerDriver::ReactionTime

◆ RocketAnticipation

Boolean CSmPlayerDriver::RocketAnticipation

◆ Saunter_AnchorPoint

Vec3 CSmPlayerDriver::Saunter_AnchorPoint

Note that CSmMode::SpawnPlayer and CSmMode::SpawnBotPlayer may reset this value to the spawn position.

◆ Saunter_BaseChillingTime

Integer CSmPlayerDriver::Saunter_BaseChillingTime

◆ Saunter_ChillingTimeDelta

Integer CSmPlayerDriver::Saunter_ChillingTimeDelta

◆ Saunter_Radius

Real CSmPlayerDriver::Saunter_Radius

◆ Scripted_ForceAimInMoveDir

Boolean CSmPlayerDriver::Scripted_ForceAimInMoveDir

◆ ShootPeriodMax

Integer CSmPlayerDriver::ShootPeriodMax

◆ ShootPeriodMin

Integer CSmPlayerDriver::ShootPeriodMin

◆ ShootRadius

Real CSmPlayerDriver::ShootRadius

◆ Target

CSmPlayer* const CSmPlayerDriver::Target

◆ TargetDetectionFov

Real CSmPlayerDriver::TargetDetectionFov

The field of view angle the driver uses to search for targets. Value in degrees.Values in range (0.000000-360.000000)

◆ TargetMinDistance

Real CSmPlayerDriver::TargetMinDistance

◆ TargetsToAvoid

Array<CSmPlayer*> CSmPlayerDriver::TargetsToAvoid

◆ TargetWorldPriority

Real CSmPlayerDriver::TargetWorldPriority

How much the driver value attacking the world rather than players. 0.0 for players only, 1.0 for world only, 0.5 for no preference.Values in range (0.000000-1.000000)

◆ TargetWorldRadius

Real CSmPlayerDriver::TargetWorldRadius

If larger than 0.0, this bot can attack destructible parts of the world.

◆ UsePathFinding

Boolean CSmPlayerDriver::UsePathFinding

The documentation for this class was generated from the following file: