Releases: markus-wa/demoinfocs-golang
v1.0.0-beta.3
API Breaking Changes
- Cleaned up type names in
events
package (removed stuttery parts etc.) - Changed return type from
float32
totime.Duration
forDemoHeader.FrameTime()
,DemoHeader.TickTime()
&Parser.CurrentTime()
Additions
Fixes
- Fixed
Entity.Position()
not working for player entities (#38) - Fixed infernos not being removed from
GameState
when destroyed (#39 - thanks @micvbang) - Fixed grenade projectiles and infernos not being deleted at the end of the round (#42)
- Fixed players not being read from string tables in some cases (#52 - thanks @viSual42)
Roadmap
See https://github.com/markus-wa/demoinfocs-golang/wiki/v1.0.0-Roadmap
v0.5.6
v0.5.5
v1.0.0-beta.2
Additions
- Tracking of infernos (Molotovs & Incendiary fires) in
GameState.Infernos()
- Package
metadata
- currently contains translations between the game's world-coordinates and map-overview images. (#37 - thanks @micvbang) - Field
GrenadeProjectile.Trajectory
- contains the trajectory of a grenade (list of positions) - Event
NadeProjectileDestroyedEvent
- useful to get the final trajectory of aGrenadeProjectile
- Function
Entity.OnPositionUpdate()
- helper function for position updates - Function
Entity.BindPosition()
- helper function for binding the position of an entity to a pointer
Roadmap
See https://github.com/markus-wa/demoinfocs-golang/wiki/v1.0.0-Roadmap
v1.0.0-beta.1
API Breaking Changes
- Moved player information from
GameState.{[Playing]Participants(),TeamMembers()}
toGameState.Participants().{All(),Playing(),TeamMembers(),ByUserID(),ByEntityID(),FindByHandle()}
Additions
- Added
Entity.ServerClass()
back, in case we don't know what kind of entity we're dealing with - Added example for using unhandled entity-data
Roadmap
See https://github.com/markus-wa/demoinfocs-golang/wiki/v1.0.0-Roadmap
v1.0.0-beta.0
v1.0.0 Beta
After a long time the API is finally stable enough so we can comfortably go towards guaranteeing backwards compatibility for the foreseeable future.
The plan for releasing v1.0.0
is to have beta versions out for a while (1-2 months) without seeing a need for any breaking changes, then we should be ready to move forward.
This version aimed to clean up the mess that was sendtables
as well as some other issues (see #16). The new API should be more future-proof and expose less of the code that is only used internally.
API Breaking Changes
- Renamed
GameState.{T,CT}State()
functions toTeam{Terrorists,CounterTerrorists}()
so the functions are nicely ordered when sorted alphabetically - Moved
Parser.Entities()
toGameState.Entities()
- Replaced beta feature
Parser.SendTableParser()
withParser.ServerClasses()
(ServerClasses is fully supported for the future) - Refactored package
sendtables
- Moved
RoundEndReason
,RoundMVPReason
&HitGroup
types & constants toevents
package - Fixed typo in
events.RoundOfficiallyEndedEvent
(Officialy -> Officially)
Changes
- Improvements to the godoc
Features that were moved from beta status to fully supported
events.DataTablesParsedEvent
events.ParserWarnEvent
Parser.RegisterNetMessageHandler()
Roadmap
See https://github.com/markus-wa/demoinfocs-golang/wiki/v1.0.0-Roadmap
v0.5.4
Additions
- Added
GameState.GrenadeProjectiles()
, contains currently 'live' grenades i.e. flying around and smokes/mollies that are currently up. (#27 thanks @micvbang) - Added
NadeProjectileThrownEvent
, signals that a nade (projectile) has just been thrown - Added
NadeProjectileBouncedEvent
, signals that a nade just bounced off a wall or object - Added
NadeEventIf.Base()
to get the underlyingNadeEvent
- Added
Entity.Position()
helper function to get entity positions - Added
Entity.OnCreateFinished()
&Entity.OnDestroy()
for registering post-creation & pre-deletion actions respectively - Added
Entity.BindProperty()
&PropertyEntry.Bind()
utility functions for binding a property's value to a pointer
Changes
- Replaced unused
Player.Weapons
field withPlayer.Weapons()
method (#31) - Deprecated
PropertyEntry.RegisterPropertyUpdateHandler()
, addedPropertyEntry.OnUpdate()
- they are identical butOnUpdate
is shorter & easier to understand.
Fixes
v0.5.3
Changes
- Added
PropertyEntry.Value()
to allow access to property values (#26 thanks @zyphie) - Added
Parser.Entities()
to exposeParser.entities
(#22 thanks @zyphie) - Added
NadeEvent.NadeEntity
(#22) - Removed unnecessary property updates for baseline values (#24)
Fixes
- Fixed wrong Z coordinate for player positions (#28 thanks @micvbang)
- Fixed wrong property values on entities (#25)
Deprecation Notices
- Type
sendtables.PropValue
might be renamed toPropertyValue
or similar in the future. - Type
sendtables.FlattenedPropEntry
might be renamed toPropertyEntryMetadata
or similar in the future.