Sc2reader

Latest version: v1.8.0

Safety actively analyzes 630254 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

0.7.0

---------------------------

* Deprecated unit.killed_by in favor of unit.killing_player
* Added unit.killed_units
* Added unit.killing_unit
* Added UnitDiedEvent.killing_player
* Added UnitDiedEvent.killing_unit
* Deprecated UnitDiedEvent.killer_pid in favor of UnitDiedEvent.killing_player_id
* Deprecated UnitDiedEvent.killer in favor of UnitDiedEvent.killing_player
* Use generic UnitType and Ability classes for data. This means no more unit._type_class.__class__.__name__. But hopefully people were not doing that anyway.
* Now a CorruptTrackerFileError is raised when the tracker file is corrupted (generally only older resume_from_replay replays)
* Removed the defunct replay.player_names attribute.
* Removed the defunct replay.events_by_type attribute.
* Removed the defunct replay.other_people attribute.
* Replays can now be pickled and stored for later consumption.
* All references to the gateway attribute have been replaced in favor of region; e.g. replay.region
* Use generic UnitType and Ability classes for data. This means no more unit._type_class.__class__.__name__. But hopefully people were not doing that anyway.
* Now a CorruptTrackerFileError is raised when the tracker file is corrupted (generally only older resume_from_replay replays)
* Added replay.resume_from_replay flag. See replay.resume_user_info for additional info.
* PacketEvent is now ProgressEvent.
* SetToHotkeyEvent is now SetControlGroupEvent.
* AddToHotkeyEvent is now AddToControlGroupEvent.
* GetFromHotkeyEvent is now GetControlGroupEvent.
* PlayerAbilityEvent is no longer part of the event hierarchy.
* AbilityEvent doubled as both an abstract and concrete class (very bad, see 160). Now split into:
* AbilityEvent is now CommandEvent
* AbilityEvent is now BasicCommandEvent
* TargetAbilityEvent is now TargetUnitCommandEvent
* LocationAbilityEvent is now TargetPointCommandEvent
* SelfAbilityEvent is now DataCommandEvent
* Removed the defunct replay.player_names attribute.
* Removed the defunct replay.events_by_type attribute.
* Removed the defunct replay.other_people attribute.

* event.name is no longer a class property; it can only be accessed from an event instance.
* PingEvents now have new attributes:
* event.to_all - true if ping seen by all
* event.to_allies - true if ping seen by allies
* event.to_observers - true if ping seen by observers
* event.location - tuple of (event.x, event.y)

0.6.4

---------------------------

* Fix bug in code for logging errors.
* Fix siege tank supply count.
* Small improvements to message.events parsing.

0.6.3

---------------------------

* Properly mark hallucinated units.

0.6.2

--------------------------
* Fix rare bug where TargetedAbility events could overwrite unit types.
* Substantial performance boost (20% in local testing)
* Fixed serious bug with FileCaching that affected Python3 users.
* Plugins can now yield PluginExit events to broadcast their shutdown.

0.6.1

------------------------

* Fix bug in event ordering that caused game events to process before tracker events.
* Fix APMTracker to count APM for all humans, not just players.

0.6.0

------------------------

New Stuff:
~~~~~~~~~~~~~~~~

* Adds python 3.2+ support
* Adds support for patch 2.0.10.
* Adds experimental SC2Map.MapInfo parsing support.
* Implements new replay GameEngine and plugin support.
* Added a sc2json script contributed by ChrisLundquist
* Adds plugin GameHeartNormalizer plugin by StoicLoofah
* Hooked up coveralls.io for coverage reporting: https://coveralls.io/r/GraylinKim/sc2reader
* Hooked up travis-ci for continuous testing: https://travis-ci.org/GraylinKim/sc2reader
* Switched to built in python unittest module for testing.

Changed Stuff (non-backwards compatible!):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Summary.teams is now summary.team; summary.team is now summary.teams. To conform with replay name conventions
* Fixed 136, unit types from tracker events are used when available.
* Deprecated player.gateway for player.region
* Reorganized the person/player/observer hierarchy. Top level classes are now Computer, Participant, and Observer. Participant and Computer are both children of player so any isinstance code should still work fine.
* Player.uid now means something completely different! Use player.toon_id instead
* Player.uid is now the user id of the player (was player.cid)
* PersonDict can no longer be constructed from a player list and new players cannot be added by string (name). Only integer keys accepted for setting.
* Log a warning instead of throwing an exception when using an unknown colors.
* An unknown hex value will use the hex value as the name.
* An unknown color name will use 0x000000 as the color.
* Finally straighten out all these replay player list/dicts
* human/humans -> human entities, indexed by uid
* computer/computers -> computer entities, indexed by pid
* player/players -> actually playing in the game, indexed by pid
* observer/observers -> observing the game, indexed by uid
* entities -> players + observers || humans + computers, indexed by pid
* client/clients - (deprecated) same as human/humans
* people/person - (deprecated) same as entity/entities

Page 3 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.