Aici aveti o protectie anti boti facuta de @Papix.
Este scrisa in C++ si Lua. (Quest).
Acesta este un sistem simplu anti-bot bazat pe captcha pentru farm de metine.
Poate fi adaptat si pentru monstri, dar in forma actuala este gandit pentru pietre metin.
Cum functioneaza:
- dupa ce jucatorul sparge un anumit numar de metine, apare captcha
- in acelasi timp, jucatorul primeste stun.
- are doar 3 incercari
- daca greseste toate incercarile, este teleportat in oras
- stun-ul este scos doar dupa completarea corecta a captcha-ului
Daca nu aveti is_stone, aveti aici: tutorial: altele-functie-lua-stone-boss-t6053.html
Nota: Nu uitati sa actualizati valorile din quest in functie de item_proto de pe serverul vostru.
*Link download:
Creati un quest nou, de exemplu anti_bot_captcha.quest, si adaugati:
Explicatie:
- true_vnum contine itemele corecte care pot aparea in captcha
- fake_vnum1/2/3 contin variantele false
- metin_limit reprezinta dupa cate metine apare captcha
- failed_limit reprezinta cate incercari are jucatorul
- la captcha corecta: se scoate stun-ul si se reseteaza contoarele
- la captcha gresita: se creste numarul de fail-uri
- dupa prea multe fail-uri: jucatorul este teleportat in oras
Deschidem questlua_pc.cpp si adaugam in namespace quest:
Tot in questlua_pc.cpp, cautam in functia RegisterPCFunctionTable() tabelul:
Code:
luaL_reg pc_functions[]Deschidem quest_functions si adaugam:
Ce rezolva acest sistem:
- reduce farm-ul automat pe metine
- obliga jucatorul sa raspunda periodic la o verificare simpla
- blocheaza temporar jucatorul cu stun pana trece captcha
- muta in oras jucatorii care esueaza repetat
Ce trebuie sa modifici dupa implementare:
- vnum-urile din listele captcha
- numarul de metine necesare pana la aparitia captcha
- numarul de incercari permise
- eventual textele afisate in quest


la acest mesaj și conținutul se va afișa automat.

