igrik, thanks! I lost one parameter in my script and got confused

now it sorts out
I used i^colmagi_%(hero)_%v998_%v999_%v1000^ to store the visiting status of my script. It's better to be replaced with OB:C value I think. Fewer variable, more reliable
(08.09.2021 15:17)Berserker Wrote: [ -> ]igrik, did you try to set sound volume to 0 during replacement process instead?
Берс, я и по русски неплохо понимаю

Нет, не пытался даже (чёто не подумал об этом). Хотя у меня игра почти всегда в режиме без звука, так что я думаю установка громкости в 0 не сработает.
(08.09.2021 17:04)igrik Wrote: [ -> ]Хотя у меня игра почти всегда в режиме без звука, так что я думаю установка громкости в 0 не сработает.
На 100% не сработает, проверялось ещё 5 лет назад в ERA+, вообще не знаю, отчего Берсеркер не добавил фикс бага в саму era.dll, чтобы скриптёрам не думать о применении "!!UN:C4893167/2/24555;" в ERM вообще никогда.

Is it possible to make a pyramid re-visitable?
Trying to change how the AI hehave with pyramid type objects
Yes, at first it was confusing, but now I get the idea.
Just by randomly checked a few pyramids, before and after visiting
Table of pyramid data (incompleted)
OB:C value before, After, Spell given, Spell ID for
Green player
Quote:-2047969, -2040354, Fly, 6
-1802209, -1794594, Magic Mirror, 36
-1548257, -1540642, Earth Elem., 67
-1540065, -1532450, Water Elem., 68
-1531873, -1524258, Air Elem., 69
From these data it's easy to conclude the OB:C value for Pyramid,
1. Difference between before and after visiting: 7615
2. Difference between two spell IDs: 8192
Think I'm able to make a function for changing Pyramid spell and visitng status now
If I want to push a pyramid or other wog object to be visited by AI, I only need to change the OB:C value to one of the unvisited value on AI's turn, and change it back to the orignal value on human's. That sounds a bit inefficient though...
Try with another player color.
11111111111000001100000000011111
11111111111000001101110111011110
11111111111010001000000000011111
11111111111010001001110111011110
0b100100 = 68, water elen
Seems like the first bit is Can Be Visited 011101110 is some other info.
11101110 seems to be Can Be Visited flags, 1 bit per each player
(08.09.2021 19:40)Berserker Wrote: [ -> ]в чём баг-то?
Озвучку объектов карты нельзя менять при удалении объектов с карты, когда сама озвучка ещё не инициализирована. Т.е. перед инструкцией карты должна включаться заглушка Игрика, а перед показом карты - выключаться.
(08.09.2021 21:22)Archer30 Wrote: [ -> ]From these data it's easy to conclude the OB:C value for Pyramid,
1. Difference between before and after visiting: 7615
2. Difference between two spell IDs: 8192
Think I'm able to make a function for changing Pyramid spell and visitng status now 
If I want to push a pyramid or other wog object to be visited by AI, I only need to change the OB:C value to one of the unvisited value on AI's turn, and change it back to the orignal value on human's. That sounds a bit inefficient though...
Лет 10 назад как всё было разобрано, докуметировано и даже используется в MoP и ERA+:
Quote:ТИП 63. ПИРАМИДА
БИТ 0: ЕСТЬ ЛИ СТРАЖИ — PM:V.
БИТЫ 1-4 ИГНОРИРУЮТСЯ И ОБЫЧНО ЗАПОЛНЕНЫ.
БИТЫ 5-12: КАКИМИ ИГРОКАМИ ПОСЕЩЕНО (ПОБИТНО, ФОРМАТ E) — PM:P.
БИТЫ 13-20: НОМЕР ЗАКЛИНАНИЯ (0..255) — PM:S.
БИТЫ 21-31 ИГНОРИРУЮТСЯ И ОБЫЧНО ЗАПОЛНЕНЫ.
Не стоит изобретать велосипед.
interesting. Totally forgot about players.
So my table was for green player.
When I try with orange, the value before visiting is the same, while after is different
Orange
Quote:-2047969, -2047426, Fly, 6
Edit:
Quote:Лет 10 назад как всё было разобрано...
Nice!

I completely forgot about PM receiver. I will read more about those
Здравствуйте Berserker
Вы правы, это моя неточность! Я потом только понял, когда выключил компьютер и отправил уже письмо на форум..
Прошу прощения, это моя ошибка. Я не точно провёл проверку и из-за этого всё не работало! Я по разбирался дома и сумел правильно всё реализовать..
Спасибо Вам Berserker за поправку..
fatsawhorse, на здоровье!
Somehow I remember that SN:W variables are auto initialised at the start of the game. Is it true?
At the start of the game, all associative memory is cleared, thus no SN:W variables exists. Non-existing variables act as if they have 0 or ^^ value.
Can it possibly be wrong?
I write a new script "Warehouse of Mithril", it looks like i^waremith_lang^ starts with 95452
Download the testing mod