V1 8 beta release notes

From NPC for VCMP 0.4 Servers
Jump to navigation Jump to search

Version 1.8 beta
beta: 17 February 2024
beta p1: 29 February 2024

MAJOR CHANGES[edit]

  • New recording type PLAYER_RECORDING_TYPE_ALL for StartRecordingPlayerData. Previously if the player was on foot, PLAYER_RECORDING_TYPE_ONFOOT has to be used. If the player was on vehicle PLAYER_RECORDING_TYPE_DRIVER has to be used. This new type eliminates the condition player has to be on car, on foot or even spawned.

The following events can be captured under PLAYER_RECORDING_TYPE_ALL:

- Name of the Player
- Spawn Class of Player
- Player Updates:   Onfoot  Onfoot-Aim  Driver   Passenger
- Death of Player
- Pickup Events, Checkpoint Events, Object Touch/Shot Events
- Player Chat, Player Command, Private Messages and ClientScriptData
  • StartRecordingAllPlayerData - One function to start recording on all players (including future players which may join the server later)
  • Server Recording - Same as above except a hrec file will be produced which contain time each player joined and name of corresponding rec file of the player. This file can be used to replay. Those players will be connected as npc and they will do the same actions the players did.
  • ConnectMultipleNpcs - Connects multiple npcs from an hrec file produced by PutServerInRecordingMode
  • recdir 2 in server.cfg to save playback recordings to npcscripts/recordings. Use recdir 1 for recordings folder which is default. This configuration is not mandatory.

MINOR CHANGES[edit]

  • Npcs can be called with a string like "function OnNPCSpawn(){SendChat("I have spawned");}. See below for examples.
  • Logfiles are written by each npc in npcscripts folder
  • Following functions has been added for use by npcscripts
Suicide, SetMyHealth, GetMyHealth, LookAtPos, LookAtPlayer, GetMyClass, RequestClassAbs, AmISpawned, GetMySkin, GetMyTeam, GetMyArmour, SendPrivMsg, SetConfig, GetPlayerColor, IsPlaybackRunning, IsPlaybackPaused, IsServerInRecordingMode,
  • The npc04relxx plugin has these additional functions:
KickAllNPC, IsPlayerRecording, StartRecordingAllPlayerData, StopRecordingAllPlayerData, PutServerInRecordingMode, StopServerInRecordingMode, IsServerInRecordingMode
  • addded max_npc in server.cfg. If supplied it limits no:of npcs in server. value can be 0 to 100. Additionally, -1 means any number of npcs. Note that this config is optional only.
  • Now print Name of the npc in console like
    Connected. ID: 03 Name: John
  • fixed bug npc getting kicked (acquired weapon 0) occuring sometimes
  • fixed bug npcs not holding weapons ruger etc on spawn.
  • fixed npc angle wrong for newly streamed player.
  • Npcs can now send private messages.

Fixed in Patch1 2024/2/29[edit]

  • Fixed Npc not able to enter into ships
  • Fixed Server crashing when ConnectMultipleNpcs is called on 64 bit machines.

Rec Files[edit]

The new version of rec files produced by npcclient04relxx will be v5(1005). However npcclient.exe is backward compatible with v4(1004). You can see the structure of new rec file here.

Plugin Commands[edit]

To make the plugin usable by non-squirrel scripters (sqmod,...), recording players, etc is possible through plugin commands. See the list here.

execArg usage in ConnectNPC[edit]

ConnectNPC("bot7","",false,"","","function OnNPCSpawn(){SendChat(\\\"I spawned.\\\")}")

Note that original function OnNPCSpawn(){SendChat("I spawned.")} is an argument to npcclient.exe -e when it calls the program. So " must be escaped when passed to cmd, so the string must have one \ character for each backslash and double quote. Hence the final element will be \\\" inside the string. The npc will send a chat message I spawned to server when spawned (each time).

The equivalent commandline version is:

npcclient -n bot7 -e "function OnNPCSpawn(){SendChat(\"I spawned\")}"

API Version[edit]

The API for developing plugins for npc which must be placed in npcscripts/plugins folder, the new version is 1.6

RecEdit v2[edit]

See RecEdit program for editing rec file datas.

Screenshots[edit]

  • In npcscripts/logs:

Log files of npcs saved in npcscripts/logs. Note that only npcs connected without console have logfiles written


Logfile-sample.png

Downloads[edit]

Version Information
The version for .rec files is not changed from v1.7 beta2. If you are using rec files created before v1.7 beta2, use recupdate tool to convert them.

Operating system Version Link
Windows rel006 npc_vcmp_rel006_windows_v1.8-beta-p1.zip
Linux x64 rel006 npc_vcmp_rel006_linux_x64_v1.8-beta-p1.zip
Linux x86 rel006 npc_vcmp_rel006_linux_x86_v1.8-beta-p1.zip
Windows/Linux (rel004) rel004 npc_vcmp_rel004_win_lin_v1.8-beta-p1.zip
Windows Setup rel006+rel004 npcclient-setup-v1.8-beta-p1.exe
Source Code rel006 NPC-VCMP-master-v1.8-beta-p1.zip
API Plugin 1.6 npc_vcmp_plugin_API_1_6.zip

Related[edit]