Update module github.com/markus-wa/demoinfocs-golang to v4 #18
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.11.0
->v4.0.1
Release Notes
markus-wa/demoinfocs-golang (github.com/markus-wa/demoinfocs-golang)
v4.0.1
Compare Source
Go Get
Fixes
Acknowledgements
Thanks to @akiver for their contributions to this release ❤️
v4.0.0
Compare Source
Go Get
Changes
Player.Velocity()
support for CS2 #470Fixes
Player.Weapons()
andPlayer.Inventory
#478 - thanks @micvbangAcknowledgements
Thanks to @akiver @micvbang & @BestAwperEver for their contributions to this release ❤️
v3.3.0
Compare Source
Special thanks to @akiver for the contributions to this release - see also #374
Changes
cslocaldata.m_vecOrigin
vscsnonlocaldata.m_vecOrigin
)POVRecordingPlayerDetected
v3.2.0
Compare Source
Changes
Player.TotalDamage()
&Player.UtilityDamage()
- thanks @DandrewsDevHitGroupNeck
constant - thanks @akivergo-unassert
andquickhull-go
to latest versionsv3.1.0
Compare Source
Changes
Equipment.UniqueID2()
- thanks @David-DurstEquipment.RecoilIndex()
- thanks @David-DurstFixes
-debugdemoinfocs
not printing game events properly after protobuf upgradev3.0.1
Compare Source
Changes
Player.ColorOrErr()
(see #359)Player.Color()
(see #359)Fixes
Player.Color()
for old demos (see #359)v3.0.0
Compare Source
v3 is out 🥳
The primary purpose of v3 is to upgrade/replace dependencies, including some which are deprecated and/or dependencies with security vulnerabilities. The parser itself has no known vulnerabilities and no known code paths to vulnerabilities in dependencies, but it's still important to keep on top of this nonetheless.
As secondary objectives we want to modernise some of the API and enable usage of generics for the project (go1.18).
Installation
Migration
change all imports of
v2
tov3
- sogit.luolix.top/markus-wa/demoinfocs-golang/v2/pkg/demoinfocs
->github.com/markus-wa/demoinfocs-golang/v3/pkg/demoinfocs
SED command
Breaking Changes
go1.11
togo1.18
import github.com/markus-wa/demoinfocs-golang/v2/demoinfocs/msg
)/assets
and/pkg/demoinfocs/metadata
(was mostly used for examples)internal/constants
topkg/demoinfocs/constants
dustin/go-heatmap
withmarkus-wa/go-heatmap
to avoid replace directive (examples only)Changes
Please let me know if you encounter any issues.
v2.13.3
Compare Source
Changes
heatmap
andnade-trajectories
are now usinghttps://radar-overviews.csgo.saiko.tech/...
to get the correct radar image and offset / coordinate translations for any historic map version of official maps. - see also https://github.com/saiko-tech/csgo-centrifugev2.13.2
Compare Source
Fixes
ParserWarn
instead oferror
on bad net-message decryption key (see #326)v2.13.1
Compare Source
In Support of Ukraine
This release is dedicated to all Ukrainians affected by Putin's war.
Fixes
MatchInfoDecryptionKey()
returning a bad decryption key in certain cases (see #338 & #339)War in Ukraine
Some of my Ukrainian colleagues in the eSports and Tech scene have been directly affected by the crisis and I hope to be able to raise awareness about their situation.
If you enjoy this project, please consider supporting the Global Giving Ukraine Crisis Relief Fund or charity to help the humanitarian crisis happening in the Ukraine right now (a list of other top rated charities can be found here)
Further, please voice your support for more sanctions against Russia in your country (such as sanctions for Gas & Oil) - it's the most effective way to put pressure on Putin and the Russian regime.
To our Russian Friends:
Please read and share this article: https://www.theatlantic.com/ideas/archive/2022/03/schwarzenegger-russia-ukraine-war-message/627100/
v2.13.0
Compare Source
Support for encrypted net-messages 🥳
This means we can now read chat messages from Valve Matchmaking demos! (and more!)
Main PR: #323
New Features
MatchInfoDecryptionKey()
func to get the decryption key from the contents of amatch730_*.dem.info
fileParserConfig.NetMessageDecryptionKey
to set the decryption key to use for the parserExample
v2.12.2
Compare Source
Fixes
ParseToEnd()
not returning errors that happen duringSyncAllQueues()
RankUpdate
event failing to get the correct player instance when a player re-connected during the gamev2.12.1
Compare Source
Fixes
EquipmentType.String()
human readable name forEqP250
fromp250
toP250
v2.12.0
Compare Source
New Features
ParserConfig.IgnoreErrBombsiteIndexNotFound
flag to ignore errors about bombsite indexes that can't be found (#315 - see also #314)v2.11.1
Compare Source
Fixes
BombPlantBegin.Site
always beingBombsiteA
for new demos (#313)v2.11.0
Compare Source
New Features
Player.LastPlaceName()
func, retreivesm_szLastPlaceName
(#311 - thanks @pnxenopoulos & @Piku7)v2.10.1
Compare Source
Fixes
player_connect.networkid
is malformed or missingv2.10.0
Compare Source
Changes
error
forParser.Close()
if closing underlying resources fails (i.e. when closing the bit-reader)Fixes
io.Reader
's that don't have all data available from the beginning (e.g. HTTP streaming or Gzip) - see #299v2.9.1
Compare Source
New Features
de_ancient
,de_office
andde_agency
(#302 - thanks @srjnm)v2.9.0
Compare Source
New Features
Player.PositionEyes()
- returns player position withZ
value on eye/view heightFixes
Player.Position()
- it does not matchcl_showpos 1
contrary to what it said beforev2.8.1
Compare Source
New Features
events.PlayerNameChange
to signal that a player's name has changed (#289)Fixes
Player.Name
, this fixes a regression introduced in0515f18
(#289)v2.8.0
Compare Source
New Features / Changes
GrenadeProjectile.Velocity()
functionsendtables.PropertyValue.Type()
functionFixes
DataTablesParsed
event referencing non-exposed typesv2.7.1
Compare Source
de_grind crash fix
See #280 for more information, especially if you need to know the bombsite for some of the bomb related events.
Changes
BombEvent.Site
may now be unknown/undefined (meaning neitherBombsiteA
norBombsiteB
), see #280 for more detailspanic: bomb not planted on bombsite A or B
withParserWarn
event with the same messageParserWarn.Type
to reliably identify kinds of warnings, currently onlyWarnTypeBombsiteUnknown
existsv2.7.0
Compare Source
New Features / Changes
Player.CrosshairCode()
to get players crosshair codes (#274 - thanks @captainswain)Parser.Cancel()
will no longer send already-parsed events to event and message handlers, and will instead unregister all existing handlersFixes
Player.ActiveWeapon()
sometimes being off right after buyParser.Cancel()
multiple times within the same frame (#276 - thanks @Julien2313)v2.6.0
Compare Source
Hostages!
New Features / Changes
GameState.Hostages()
HostageRescued
HostageRescuedAll
HostageHurt
HostageKilled
HostageStateChanged
Kill
event (#270 - thanks @akiver)AssistedFlash
AttackerBlind
NoScope
ThroughSmoke
Distance
GameState.Rules().RoundTime()
- returns the total round time in the current matchGameState.Rules().BombTime()
- returns the total bomb time in the current matchGameState.Rules().FreezeTime()
- returns the total freeze time in the current matchGameState.Rules().ConVars()
- replacesGameState.ConVars()
Deprecations
GameState.ConVars()
in favour ofGameState.Rules().ConVars()
v2.5.0
Compare Source
Operation Broken Fang Update
Operation Broken Fang brings with it some interesting new demo data!
There's a new event
events.RoundImpactScoreData
, containing initial round conditions, kill events and objective events, each with new odds of winning the round per team.This might be interesting if you're doing player impact analysis, anomaly detection for round wins/clutches and/or training some kind of AI system.
New Features / Changes
events.RoundImpactScoreData
which is dispatched at the end of every round (only demos after the "Operation Broken Fang" update)v2.4.0
Compare Source
New Features / Changes
PlayerHurt.HealthDamageTaken
-HealthDamage
excluding over-damage (#247 - thanks @Julien2313)PlayerHurt.ArmorDamageTaken
-ArmorDamage
excluding over-damage (#247)Player.Color()
- returns the players color during the match (#248 / #250 - thanks @Julien2313)Player.IsDuckingInProgress()
- returns true if the player is currently in the progress of going from standing to crouched (#241 / #249)Player.IsUnDuckingInProgress()
- returns true if the player is currently in the progress of going from crouched to standing (#241 / #249)Player.IsStanding()
- returns true if the player is currently fully standing upright (#241 / #249)Fixes
Player.IsDucking()
reporting wrong valuesv2.3.0
Compare Source
New Features / Changes
Replays recorded via CS:GO's
record
command rather than the game server (GOTV) are now fully supportedv2.2.0
Compare Source
New Features / Changes
Fixes
Parser.Close()
to fix a memory leak due to an unterminated goroutine (#216)please make sure that this function is called before the parser is discarded,
for instance by calling
defer parser.Close()
afterdemoinfocs.NewParser()
v2.1.0
Compare Source
New Features / Changes
Player.ResourceEntity()
to expose the player'sCCSPlayerResource
entityv2.0.1
Compare Source
Fixes
panic
s ingodispatch
potentially stopping the whole applicationInstead,
Parser.ParseToEnd()
will return an error containing the whole stack trace.v2.0.0
Compare Source
Doc Links
The new docs are hosted on the fabulous new
go.dev
page.Package docs: https://pkg.go.dev/mod/github.com/markus-wa/demoinfocs-golang/v2@​v2.0.0
API docs: https://pkg.go.dev/github.com/markus-wa/demoinfocs-golang/v2@​v2.0.0/pkg/demoinfocs?tab=doc
Go Get
Watch out, there's a new module path for
go get
andimport
!Upgrading from v1.x
If you are currently using version 1.x of this library, check out this wiki page for an upgrade guide.
Breaking Changes
github.com/markus-wa/demoinfocs-golang
github.com/markus-wa/demoinfocs-golang/v2/pkg/demoinfocs
Parser
,GameState
,Participants
,Entity
,Property
)I
(e.g.IParser
)common
with getter funcsPlayer.AdditionalPlayerInfo.XXX
with getter funcs on thePlayer
structEquipmentElement.Weapon
toEquipmentElement.Type
Player.RawWeapons
toPlayer.Inventory
Player.SteamID
toPlayer.SteamID64
Entity.PropertiesI()
toEntity.Properties()
Entity.FindPropertyI()
toEntity.Property()
common.EquipmentElementNames()
andcommon.GamePhaseNames()
EquipmentType.String()
andGamePhase.String()
will achieve the same result.ItemPickup.WeaponTraceable()
ItemPickup.Weapon
should now be identical (see #119)Item{Pickup,Drop,Equip}.WeaponPtr
Entity.BindPosition()
Item{Pickup,Drop,Equip}.Weapon
fromEquipment
struct to pointer of the same typeEquipment.ZoomLevel
fromint
toZoomLevel
DemoHeader
,TeamState
,Equipment
,GrenadeProjectile
andInferno
funcs from struct to pointerNew Features / Changes
PlayerHurt.Weapon.Type
andKill.Weapon.Type
will now beEqBomb
PlayerHurt.Weapon.Type
andKill.Weapon.Type
will now beEqWorld
RankUpdate.Player
(may be nil if the player has already disconnected)Player.SteamID32()
which convertsSteamID64
to the 32-bit variant and returns the resultRankUpdate.SteamID64()
which convertsSteamID32
to the 64-bit variant and returns the resultcommon.ConvertSteamID{TxtTo32,32To64,64To32}()
common.Zoom{None,Half,Full}
protoc
version)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.