#1 23-03-2010 10:39

GTASA
Registered: 13-09-2008
Posts: 476

Вопрос про scmlog

Скажите пожалуйста, ребята, как им правильно пользоваться? Хотел найти участок кода, служащий причиной вылета. Вставляю фрагмент получившегося:
...
0090=if
0091=fi
0092=if
0093=fi
0096=f
0097=f
009A=imfffi
00A0=ifff
00A1=ifff
00A3=iffffi
00A4=iffffffi
00A5=mfffi
00A7=ifff
00AA=ifff
00AB=ifff
00AD=if
Здесь конец

А где именно произошла ошибка? Это написаны опкоды, которые как-то некорректно сработали?

Offline

#2 23-03-2010 11:26

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Вопрос про scmlog

Присоединяюсь к вопросу, хочется знать причину вылета.

Offline

#3 23-03-2010 18:13

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопрос про scmlog

Установка плагина проста – для этого нужно скопировать файлы scmlog.ini и scmlog.cleo в папку CLEO. Если плагин установлен, то после выхода из игры (или вылета при ошибке) в папке CLEO будет создан файл scmlog.txt, в котором будет приведён список опкодов (лог), выполненных всеми установленными скриптами. Если игра вылетела, то последним в логе будет указан опкод, при выполнении которого возникла ошибка (название скрипта тоже будет указано).

Last edited by Den_spb (23-03-2010 18:14)

Offline

#4 24-03-2010 03:01

GTASA
Registered: 13-09-2008
Posts: 476

Re: Вопрос про scmlog

У меня игры вылетают, но создается все равно этот непонятный текст и список каких-то опкодов.

Offline

#5 24-03-2010 12:23

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Вопрос про scmlog

Игра вылетает, открываешь scmlog, ищешь подозреваемый поток, идёшь в конец описания потока, последний опкод - тот, на котором вылетела игра. Там же и значения аргументов.

Offline

#6 24-03-2010 12:36

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопрос про scmlog

У меня игры вылетают, но создается все равно этот непонятный текст и список каких-то опкодов.

Ты привёл текст файла scmlog.ini, а лог записывается в файл scmlog.txt (если этот файл не существует, то он должен создаваться сам после завершения игры). Текст лога разбит на секции следующего вида:

********************************************
 thread магнит 
 Local variables dump:
 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
********************************************

00000024: 00D6
  get numeric params: 1
    param 1 = 21

00000028: 00DD
  get numeric params: 2
    param 1 = 516
    param 2 = 417

00000036: 00DD
  get numeric params: 2
    param 1 = 516
    param 2 = 548

00000044: 004D (&IFresult = False)
  get numeric params: 1
    param 1 = -58 (&label: 0002)

00000058: 0002
  get numeric params: 1
    param 1 = -20 (&label: 0001)

00000020: 0001
  get numeric params: 1
    param 1 = 0

Здесь thread - название потока, Local variables dump - значения локальных переменных, далее идёт список выполненных опкодов со значениями параметров. Секции записываются в файл в том же порядке, в каком выполнялись потоки. Поэтому чтобы узнать название потока и опкод, на котором произошёл вылет, нужно просто посмотреть конец файла. Пример:

********************************************
 thread Т тип м
 Local variables dump:
 7428 243333888 6 0 0 0 0 0 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
********************************************

00000008: 00D6
  get numeric params: 1
    param 1 = 0

00000012: 0256
  get numeric params: 1
    param 1 = 0

00000017: 004D (&IFresult = True)
  get numeric params: 1
    param 1 = -104 (&label: 0002)

00000024: 00D6
  get numeric params: 1
    param 1 = 0

00000028: 00DF
  get numeric params: 1
    param 1 = 516

*********************************
> Total opcodes: 3621765
> Logging finished: 21:38:21
  Powered by SCMLog v1.04
*********************************

Игра вылетела во время выполнения опкода 00DF в потоке, название которого начинается с букв Т тип м

Offline

#7 24-03-2010 13:32

mfisto
From: Russia Perm
Registered: 01-02-2008
Posts: 558
Website

Re: Вопрос про scmlog

@GTASA

Возьми мой файл и замени на свой. Должно помочь.

Last edited by mfisto (24-03-2010 13:35)


I know everything and nothing...

Offline

Board footer

Powered by FluxBB