Добавлен
Добрый вечер.
как делать активацию читпака по стрингхешу?
получил стрингхеш строки "test"
и поменял условие активации с:
if SubString(GetEventPlayerChatString(),0,100)==Activator and not IsPlayerInForce(p2p,CHEATER) then
на:
if StringHash(GetEventPlayerChatString(),0,100)== -310027398 and not IsPlayerInForce(p2p,CHEATER) then
или ещё так:
if StringHash(SubString(GetEventPlayerChatString(),0,100))== -310027398 and not IsPlayerInForce(p2p,CHEATER) then
и так:
if StringHash(GetEventPlayerChatString())==-310027398 and not IsPlayerInForce(p2p,CHEATER) then
карта запускается но по сообщению в чат "test" чит не активируются, проблема с неправильным условием или где-то надо ещё добавлять какой-то код?
`
ОЖИДАНИЕ РЕКЛАМЫ...
1
19
2 года назад
1
Похожие вопросы:

ответ
Не представляю при каких обстоятельствах ключи могут совпасть, кроме, собственно, введения одинаковых строк. В этой статье упоминается о строковых ключах. Лично я только строковые и использую и никакого дискомфорта не испытываю.
ответ
Пойди и сделай дизассембл.
ответ
Тип key от вжасс.
ответ
Arlando, проверяя следующую точку, ломаешь деревья и смотришь на проходимость через функцию IsTerrainPathable или проверку предметом
ответ
StringHash не менялась с самого её начала, единственная возможная проблема - это "столкновение" строк, когда хеш разных строк приводит к одинаковому результату (то бишь полученное хешированное число одинаковое), но это не так просто достичь и большинство этих проблем создано ограничением integer типа в Jass на int32_t (хотя само значение в памяти использует uint32_t). Но если ответить на твой вопрос и не затрагивать эти нюасны, то ответ - нет.

0
37
2 года назад
Отредактирован ScorpioT1000
0
С какой целью интересуетесь?)
0
1
2 года назад
0
С какой целью интересуетесь?)
Просто для личного опыта, вот недавно встретил пару Карт, где активаторы зашифрованы, интересно стало как это делается. Вроде всё сделал как надо, но нифига не работает. Не могу понять в чем проблема
0
37
2 года назад
0
Последнее похоже на правду, ну сделай дебаг выводы посмотри почему хеши разные, может там мусор попадает какой-то
0
1
2 года назад
0
Последнее похоже на правду, ну сделай дебаг выводы посмотри почему хеши разные, может там мусор попадает какой-то
А стринг хеш можно узнать через WE только?
call BJDebugMsg(I2S(StringHash("test")))
Хеш "test" Я через WE нашёл, это -310027398. Может я что то не так делаю?
0
6
2 года назад
0
Очень интересный вопрос. Только что проверил:
function test takes nothing returns nothing
    if StringHash(GetEventPlayerChatString())==-310027398 then
        call BJDebugMsg("ok")
    endif
endfunction
Всё работает при вводе слова test. Скорей всего проблема во втором условии.
0
1
2 года назад
0
if StringHash(GetEventPlayerChatString())==-310027398 then
call BJDebugMsg("ok")
А какое второе условие
0
6
2 года назад
0
and not IsPlayerInForce(p2p,CHEATER)
Чтобы оставить комментарий, пожалуйста, войдите на сайт.