Найти - Пользователи
Полная версия: Осложнение со скриптом. Я уже не знаю, что мне делать.
Начало » Python для новичков » Осложнение со скриптом. Я уже не знаю, что мне делать.
1
l0rd01
Вообшем у меня есть скрипт для игры. В связи с некоторыми проблемами после обновления он перестал работать и выдает ошибку

* EventScripts caught an exception:
Traceback (most recent call last):
File “/games/тут был ип/css_27018/orangebox/cstrike/addons/eventscripts/es.py”, line 409, in loadModuleAddon
newaddon = __import__(importname)
File “/games/77.243.98.236/css_27018/css/cstrike/addons/eventscripts/bhoptimer/bhoptimer.py”, line 55, in <module>
mapDicts = cPickle.load(fileStream)
ValueError: insecure string pickle
Could not open script for addons/eventscripts/bhoptimer/es_bhoptimer.txt
Error source (console): (no script)



Уже неделю я веду войну с этим проказником.
Ошибку я нашёл это таберор. Как я понял виноват отступ. Но если я его исправляю умирает другой и так ломается вообше все. Помогите сил моих больше нету.
Сам скрипт я прикрепил.
Кусок кода в котором ошибка :

def unload():
es.addons.unregisterSayFilter(myfilter)
es.unregclientcmd('!back321')
del started
players.clear()
fileStream = open(dictPath, ‘w’)
cPickle.dump(mapDicts, fileStream)
fileStream.close()
gamethread.cancelDelayed('climbtime_checkloop')
gamethread.cancelDelayed('climbtimer_hudloop')
if playerList:
playerList.delete()


ZAN
Сделал s.expandtabs(4), потом вручную исправил в некоторых местах, где не поправило автоматически.
Вообще скрипт написан небрежно. Прикрепил версию без синтаксических ошибок (хотя это не значит, что нет других ошибок)
l0rd01
Исправил еше около 6 ошибок. Заступорился опять :

*** EventScripts caught an exception:
Traceback (most recent call last):
File “/games//css_27018/css/cstrike/addons/eventscripts/es.py”, line 409, in loadModuleAddon
newaddon = __import__(importname)
File “/games//css_27018/css/cstrike/addons/eventscripts/bhoptimer/bhoptimer.py”, line 57, in <module>
mapDicts = cPickle.load(fileStream)
ValueError: I/O operation on closed file
Could not open script for addons/eventscripts/bhoptimer/es_bhoptimer.txt
Error source (console): (no script)

Код опять же прикреплен
l0rd01
так же как я понимаю ошибка которая выше мешает записывать в дб результаты таймера.
Помогает удаление дб , но выходит другая ошибка
NameError: global name ‘myfilter’ is not defined

Из за неё таймер записывает только один результат и крашиться до удаления дб.
Все ешё хелп ми D:
pyuser
Ну так traceback же Вам все сказал - поменяйте местами 56 и 57 строки.
l0rd01
pyuser
Ну так traceback же Вам все сказал - поменяйте местами 56 и 57 строки.
Вот в том то и загвозка, что меняя их местами ровно ничего не происходит.
l0rd01
Для большей наглядности упаковал в пост вообше все, что связано со скриптом .

И вот, что я надумал, но пка не могу затестировать.
Проблема вообше возможно реально в 56 и 57 строке. Не меняя их первый результат таймер записывает его в дб на одной магии, а при втором “адрес уже не доступен” . Как буду дома попробую поменять местами, и обнулить дб.
l0rd01
не помогло, все ешё
es.addons.registerSayFilter(myfilter)
NameError: global name ‘myfilter’ is not defined
l0rd01
Завроде убрал ошибку выше. Но краш продолжаеться все на той же записи в дб
l0rd01
Решил проблему. Дел тему
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB