Anti-Bot Links 6.00 Lite

Anti-Bot Links 6.00 Full is available only as part of Faucet in a Box Ultimate

Changelog:

2.00
- First public version.

2.01
- Bugfixes.

2.02
- Bugfixes.

3.00 (nonpublic)
- Bugfixes.
- Easier to install.

5.00
- TTF/OTF links

5.01
- Fixed compatibility with FB's anti-adblock

5.50
- Fixed compatibility with r65.

6.00 Lite
- Added brute-force protection.
- Added noise (optional).
- Added background (optional).


Upgrading from 2.x

- revert the install of 2.x
- follow the install instructions from 6.x

Upgrading from 5.x

- just unpack the zip file in the lib folder


Fresh install instructions


Download & unpack:
antibotlinks.zip


Files/folders to add:
/libs/antibotlinks.php
/libs/abl_1_d.png
/libs/abl_1_l.png
/libs/abl_2_d.png
/libs/abl_2_l.png
/libs/abl_3_d.png
/libs/abl_3_l.png
/libs/fonts/



Files to edit:
/index.php
/templates/*theme-name*/index.php




Ok, let's start.

First make a backup of your faucet (everything could go wrong, better safe than sorry).

Then

Copy:
/antibotlinks.php
/abl_1_d.png
/abl_1_l.png
/abl_2_d.png
/abl_2_l.png
/abl_3_d.png
/abl_3_l.png
/fonts/


To:
/libs/antibotlinks.php
/libs/abl_1_d.png
/libs/abl_1_l.png
/libs/abl_2_d.png
/libs/abl_2_l.png
/libs/abl_3_d.png
/libs/abl_3_l.png
/libs/fonts/




Now you will need to edit 2 files. I suggest using Notepad++ https://notepad-plus-plus.org/ to edit files but any good editor will do the job.
This is based on FB R65 but should work with newer versions.


Open:
/index.php

Find:

$data
['captcha_info'] = $captcha;


add after:

# AntiBotLinks START
require_once('libs/antibotlinks.php');
$antibotlinks = new antibotlinks(true'ttf,otf', array('abl_light_colors'=>'off''abl_background'=>'off''abl_noise'=>'on'));// true if GD is on on the server, false is less secure, also you can enable ttf and/or otf
if (array_key_exists('address'$_POST)) {
  if (!
$antibotlinks->check()) {
    
// suggested (it is way better to have more word universes than more links)
    // - 3 links for faucets under 1000 satoshi
    // - 4 links for faucets under 2000 satoshi
    // - 5 links for faucets over 2000 satoshi
    
$antibotlinks->generate(3true);// number of links once they fail, the second param MUST BE true
  
}
} else {
  
// suggested (it is way better to have more word universes than more links)
  // - 3 links for faucets under 1000 satoshi
  // - 4 links for faucets under 2000 satoshi
  // - 5 links for faucets over 2000 satoshi
  
$antibotlinks->generate(3);// initial number of links
}
# AntiBotLinks END 




Find:

if (array_key_exists('address'$_POST) && $data['enabled'] && $data['eligible']) {


replace with:

if (array_key_exists('address'$_POST) && $data['enabled'] && $data['eligible']
   
# AntiBotLinks START
    
&& $antibotlinks->is_valid()
   
# AntiBotLinks END
) {



Open:
/templates/*theme-name*/index.php

Find:

</head>


Add before:

<?php
# AntiBotLinks START
$antibotlinks->get_js();
# AntiBotLinks END
?>




Find:

<form ...>


Add after:


<?php
# AntiBotLinks START
?>
                        <?php echo $antibotlinks->show_info(); ?>
<?php
# AntiBotLinks END
?>



Somewhere in the body tag add (you need to do it 3 to 5 times, this is where the links will appear):


<?php
# AntiBotLinks START
?>
                        <div class="antibotlinks"></div>
<?php
# AntiBotLinks END
?>




What's the idea behind?

The idea is to make each faucet unique. It is easy for a faucet owner to add new unique logical puzzles by editing antibotlinks.php (line 149-161). Just watch the lines above and try to make yours. Also since version 5.00 you can add unique ttf/otf fonts to lib/fonts/


Live demo is available here

It will definitely save you few BTC over the time. Why not share some: 1MakeJarmmzLs5gzkQubNJxxx9kQMZpKPr