Автор Тема: [Alpha/Beta Testing] Тестируем сырые обновления (ссылки в первом посте)  (Прочитано 96665 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Космич

  • Активный участник
  • ***
  • Сообщений: 195
    • Просмотр профиля
препроцессор срабатывает до запуска скрипта, сразу же после загрузки скрипта в кликер. Так и должно быть?)

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
препроцессор срабатывает до запуска скрипта, сразу же после загрузки скрипта в кликер. Так и должно быть?)
Думаю, что да... Он же как бы вставляет код в кликер, который в нем и должен быть по задумке...
Единственное, что я не понимаю, для чего нужно прописывать "halt":
Код: Clickermann
  1. #preprocessor "comas.dll"
  2. halt
Ведь код из длл будет крутиться в кликере в цикле и для чего нужен этот halt, после #preprocessor "comas.dll", непонятно... А без halt-а полная хрень получается.
« Последнее редактирование: Июль 05, 2019, 08:48:50 am от Hito »
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
Код: Clickermann
  1. #preprocessor "script.dll"
  2. HALT

Запускаю скрипт на хосте и все вроде работает. Запускаю этот же скрипт в виртуалке, из той же папки, и уже не работает... То есть - сам #preprocessor "script.dll" не срабатывает.
« Последнее редактирование: Июль 08, 2019, 09:49:36 pm от Hito »
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
Фикса работы preprocessor-а в виртуалках ожидать...? Или заморочек по этому поводу не будет? Мне просто чтоб знать...
Я не ду... Потому и не бу...

Johnny

  • Создатель
  • Герой форума
  • *
  • Сообщений: 588
    • Просмотр профиля
а что прямо все плохо-плохо?
что за виртуалка, какая там система. молчит ли errorlog
тогда и проблему мб удастся локализовать.

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
Сорри - завтра буду конкретно разбираться. Просто вот только что попробовал запихнуть в длл "Тестовый тест" и все сработало в виртуалке. Но закатываю в длл свой скрипт и на хосте работает все, а в виртуалке нет. В общем завтра буду более подробно копаться. Сегодня только с работы пришел... А так, при запуске в виртуалке, такое ощущение, что просто срабатывает HALT, который после #preprocessor "script.dll" стоит, чего в принципе никак быть не должно.
« Последнее редактирование: Июль 08, 2019, 09:50:39 pm от Hito »
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
В общем ситуация такая... Прописываю в длл просто наш "Тестовый тест" и все норм срабатывает в виртуалке. Потом закатываю в длл свой скрипт в котором получается 1477 строк + файл sub.cms, в котором еще порядка 1800 строк и который подключен в основном скрипте, как - #include "sub.cms". После этого в виртуалке вся эта тема перестает работать и даже если, после запуска такого скрипта, откатить все на наш "Тестовый тест", то и он уже не работает и вновь заработает только после полной перезагрузки виртуальной машины. В общем хрень какая-то получается...
На хосте все нормально работает.

На тесты, по понятным причинам, не хочу тут выкладывать весь свой скрипт. Если кому-то интересно (из тех, кого я тут знаю), я могу все выложить в личку. Просто в том проекте, в котором я работаю, онлайн очень не большой и даже с моим приходом на этот проект, цены на нужный ресурс очень упали. Еще одного или пару таких, как я, на этот проект и на нем делать нечего будет... А если мой скрипт обнародовать в этом проекте, то он вообще загнется...
« Последнее редактирование: Июль 09, 2019, 12:19:23 pm от Hito »
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
Johnny, отправил видео в личку.
Может все из-за того, что на виртуалке та папка, из которой скрипт запускается, является сетевой...? Но если скрипт не закатывать в длл, то все работает на виртуалке, а там, и работа с ини-файлами, и со скринами, и с текстовыми файлами, и опять же с длл-ками другими и все лежит в тех же папках и скрипт со всем справляется...
« Последнее редактирование: Июль 10, 2019, 01:16:45 pm от Hito »
Я не ду... Потому и не бу...

Johnny

  • Создатель
  • Герой форума
  • *
  • Сообщений: 588
    • Просмотр профиля
если файл не найден, включая преп, то выдается соответствующая ошибка. стало быть файл находится
если ошибка необрабатываемая, ошибка памяти или еще какая хрень, то должна быть запись в файле logerror
в другом случае надо смотреть сам скрипт

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
надо смотреть сам скрипт
Отправил в личку.
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
Тут еще один затык имеется...
Положим в папку со скриптом любой скрин, обозвав его "1.bmp", и запустим скрипт:
Код: Clickermann
  1. freaddata("1.bmp", $arr)
  2. FCreate("2.bmp", 1)
  3. FWRITEDATA ("2.bmp", $arr)
  4. HALT
2.bmp создастся, но не станет таким же, как 1.bmp, а останется пустым. И останется таким до тех пор, пока мы не закроем полностью тот кликер, который его создавал. А вот если мы его закроем, а потом откроем заново и запустим скрипт:
Код: Clickermann
  1. freaddata("1.bmp", $arr)
  2. FWRITEDATA ("2.bmp", $arr)
  3. HALT
Тогда у нас все получится.
Эта фишка касается не только bmp-файлов - это касается любых файлов, созданных скриптом. После FCreate, при создании любого файла, с ним ничего нельзя будет сделать до тех пор, пока кликер, который его создавал, не будет закрыт. Ничего нельзя будет сделать не только скриптом, но и другими программами.
То есть, при создании любого файла с помощью FCreate, для того чтобы в дальнейшем работать с этим файлом, придется сначала закрыть кликер, который его создавал, и потом открыть другой.
Но и после:
Код: Clickermann
  1. freaddata("1.bmp", $arr)
  2. FWRITEDATA ("2.bmp", $arr)
  3. HALT
Мы не сможем даже удалить 2.bmp, пока не закроем кликер.
« Последнее редактирование: Июль 14, 2019, 08:36:50 pm от Hito »
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
И еще вопрос... Ожидать реализации работы с ини-файлами, которые лежат в расшаренной папке, из запущенного скрипта, который лежит в виртуальной машине?
У меня, например, адрес получается такой - $n = INIREAD("Z:\Miner\ini\mir_4\group_1\min_01.ini", "chit", "1"), но LOGWRITE ($n) ничего не выдает...
А, к примеру, если запустить так:
Код: Clickermann
  1. if (FExists("Z:\Miner\ini\mir_4\group_1\min_01.ini"))
  2.   FCOPY ("Z:\Miner\ini\mir_4\group_1\min_01.ini", "C:\Clickermann v4.14 x32\projects\Miner\ini\mir_4\group_1\min_01.ini")
  3.   LOGWRITE ("Файл скопирован")
  4. else
  5.   LOGWRITE ("Файл недоступен")
  6. end_if
То выдает ошибку FCOPY. То есть файл-то доступен...
« Последнее редактирование: Июль 14, 2019, 10:25:03 pm от Hito »
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Сообщений: 912
    • Просмотр профиля
Забыл отписать...
что за виртуалка, какая там система. молчит ли errorlog
1 - VMware Workstation 15 Pro 15.0.3 Build 12422535 RePack by KpoJIuK
2 - Windows 7 x32
3 - logerror молчит
Я не ду... Потому и не бу...

Космич

  • Активный участник
  • ***
  • Сообщений: 195
    • Просмотр профиля
Windows 10 1809 Clickermann v4.14 x32

Вот такой код у меня пожирает примерно 100 килобайт оперативной памяти в секунду
Код: Clickermann
  1. SUB(TEST, $x, $y)
  2.   MOVE($x, $y)
  3. END_SUB
  4.  
  5. TEST(0,0)


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Сообщений: 3611
  • Котэ
    • Просмотр профиля
Windows 10 1809 Clickermann v4.14 x32

Вот такой код у меня пожирает примерно 100 килобайт оперативной памяти в секунду
Код: Clickermann
  1. SUB(TEST, $x, $y)
  2.   MOVE($x, $y)
  3. END_SUB
  4.  
  5. TEST(0,0)

А такой вообще 3000к
Код: Clickermann
  1. SUB(qwert, $a)
  2.  
  3. END_SUB
  4.  
  5. qwert("Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст ")