Source-Python-Dev-Team / Source.Python

This plugin aims to use boost::python and create an easily accessible wrapper around the Source Engine API for scripter use.
http://forums.sourcepython.com
GNU General Public License v3.0
163 stars 31 forks source link

[CSGO] Keyerror clantag #423

Closed NosferatuJoe closed 3 years ago

NosferatuJoe commented 3 years ago

A friend of mine is running a WCS server using SP and encounters these errors when a player connects. It seems like it might be that a CSGO update changed something to the clan tags?

IMPORTANT: Please copy the full output.
--------------------------------------------------------
Checksum      : 17afd46db5b8bfa61a01acd91d87b7e8
Date          : 2021-10-09 13:39:21.813669
OS            : Linux-5.4.0-88-generic-x86_64-with-debian-buster-sid
Game          : csgo
SP version    : 709
Github commit : 1f87696909a95ec1177c6b96f7602b2ec75fdb87
Server plugins:
   00: Source.Python, (C) 2012-2021, Source.Python Team.
   01: Metamod:Source 1.11.0-dev+1145
SP plugins:
   00: es_emulator, https://github.com/Ayuto/EventScripts-Emulator
   01: wcs, 2021.03.30-1, https://forums.sourcepython.com/viewtopic.php?f=7&t=1925
   02: commandsx
--------------------------------------------------------
[SP] Caught an Exception:
Traceback (most recent call last):
  File "../addons/source-python/packages/source-python/entities/_base.py", line 248, in setattr
    setter = type(self).attributes[attr].set
KeyError: 'clan_tag'

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "../addons/source-python/plugins/wcs/wcs.py", line 1064, in on_player_change_race
    wcsplayer.player.clan_tag = ('    ' if GAME_NAME == 'csgo' else '') + wcsplayer.active_race.settings.strings['shortname'].get_string()
  File "../addons/source-python/packages/source-python/entities/_base.py", line 258, in setattr
    self, setter = self.dynamic_attributes[attr]
  File "../addons/source-python/packages/source-python/entities/_base.py", line 344, in dynamic_attributes
    {attr:(instance, getattr(cls, attr)) for attr in dir(cls)}
  File "../addons/source-python/packages/source-python/entities/_base.py", line 344, in <dictcomp>
    {attr:(instance, getattr(cls, attr)) for attr in dir(cls)}
  File "../addons/source-python/packages/source-python/memory/manager.py", line 658, in get
    func = binary[identifier].make_function(

ValueError: Could not find signature: 5589e557565381ecbc0100008b5d080f
CookStar commented 3 years ago

Source.Python is currently broken.(#424) Please use an earlier version. 150f68f2126eb93f704759f2027845e1fe9f64c6

Edit: Fixed c7825ed507a34b900004884e1eb50788656bdc26 Apply #425.