Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.0 > vBulletin 3.0 Full Releases
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Miserable Users for vB3 Details »»
Miserable Users for vB3
Version: 1.00, by KuraFire KuraFire is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Version: 3.0.0 Rating:
Released: 01-04-2004 Last Update: Never Installs: 276
 
No support by the author.

Miserable Users for vB3
Version: 1.01
vB-version: 3.0.0
Developer: KuraFire (original for vB2: Zzed)
Install-difficulty: Easiest
File edits: 0
Template edits: 1 (phpinclude_start)

Description of the Hack:
The Miserable Users Hack for vB3 is an upgrade from Zzed's hack for vB2. The vB3 version is streamlined and works without any file edits. It is purely template based.


Templates modified for this Hack:
phpinclude_start

(the above was generated via the Hack Tracking Log, soon to come)


1.01 update: January 5th, 3:10 pm CET
Instead of a custom check for the usergroup data to see whether the user is a Miserable User, vB3's function is_member_of() is being used now, cleaning up the code even more.


Here's what the Hack does: (original Hack thread)
This Hack will allow you to drive away people from your board without banning them. As explained by Zzed, the author of the original (vB2) hack:

Quote:
Originally Posted by Zzed
So here is what really happens to a miserable user:

- There is a random 60-120 second delay each time they click on a link.
- 90% of times they have no search engine acccess.
- 75% of the times they get the server too busy error.

If they don't get the server too busy error:
- 50% of the times they may get a blank page
- 30% of the times they may get forwarded to the forum main page
- 20% of the time they may be able to see the page they asked for.
This vB3 hack uses NO FILE EDITS. Instead, it's all template based and Usergroup-based, making it even easier for you to manage your Miserable Users.



TO INSTALL:

1)
Create a new membergroup, and name it Miserable Users. Give them no particular permissions if you want, as you can use it as a secondary group (so you can effectively give them 0 permissions whatsoever).
Note: make sure to note down the Membergroup id !

2)
Put this code at the top of your phpinclude_start template:
Note: fill in the membergroup id from step 1 where it says "$miserableid = 8;" (replace the 8 with your id number).

PHP Code:
// Miserable Hack for vB3
    // Ported by KuraFire to vB3, original vB2 version by Zzed
    // #######################################################
    // Put the id of your Miserable Usergroup here:
    
$miserableid 8;
   
 
// Check to see if the user is a Miserable User
 
if (is_member_of(array('userid'=>$bbuserinfo['userid'], 'usergroupid'=>$bbuserinfo['usergroupid'], 'membergroupids'=>$bbuserinfo['membergroupids']), $miserableid))
    {
        
$glitch rand(60120);
        for(
$x=0$x<$glitch$x++)
        {
            echo 
' ';
            
sleep(1);
        }
    
        
$vboptions['floodchecktime'] *= 10;
        
$glitch rand(0100);
        if(
$glitch 90)
        {
            
$vboptions['enablesearches'] = 0;
        }
    
        
$glitch rand(0100);
       if (
$glitch 75)
       {
           eval(
'$headinclude = "' fetch_template('headinclude') . '";');
           eval(
'$header = "' fetch_template('header') . '";');
           eval(
'$footer = "' fetch_template('footer') . '";');
           eval(
'$timezone = "' fetch_template('timezone') . '";');
           eval(
'$gobutton = "' fetch_template('gobutton') . '";');
           
$vboptions['useforumjump'] = 0;
           eval(
print_standard_error('error_toobusy'));
       }
   
        
$glitch rand(0100);
       if (
$glitch 80)
        {
            if (
$glitch 50)
            {
                exit;
            }
         
$templatecache['headinclude'] = '<META HTTP-EQUIV=\"refresh\" CONTENT=\"5; URL=$vboptions[forumhome].php\" />' $templatecache['headinclude'];
        }
    }
    unset(
$ids$glitch$miserableid$x); 

Done!

Note: this Hack will come in an HTL* package once the HTL is finished.

Toning Down The Pain:

You'll find that this hack is a bit rough on people, and may be getting too obvious. If you want to tone it down, here's what you can do:

Toning down the page load delay:
This line:
PHP Code:
     $glitch rand(60120); 
specifies the random delay, in actual seconds. You can see that Miserable users will have at least 60 and at most 120 seconds loading delay for pages. If you want to dial that down, you could change it to 30, 60 for instance. The first number is the minimum amount of seconds they'll wait, the second is the maximum. A random number in-between the two will be used for each page load.


Toning down the % chance disabling of the Search engine:
This line:
PHP Code:
     if($glitch 90
specifies the chance of the search engine being disabled. Currently it will be a 90% chance. Change the number to (for instance) 50 for a 50% chance.


Toning down the chance of a Server Too Busy error:
This line:
PHP Code:
    if ($glitch 75
specifies the chance of getting a Server Too Busy error. Lower the number for a smaller chance.


Toning down the chance of a blank page:
This line:
PHP Code:
        if ($glitch 50
specifies the chance of getting a blank page. Lower the number for a smaller chance.


Increasing the chance of getting a normal page:
This line:
PHP Code:
    if ($glitch 80
specifies the chance of not getting a normal page. So, if you want to increase the chance of getting a normal page, decrease this number!


Toning down the chance of a refresh to Forum home:
This section:
PHP Code:
    $glitch rand(0100);
       if (
$glitch 80)
       {
           if (
$glitch 50
specifies the chance of getting a refresh. If the 20% chance of getting a normal page is not the case, there will be a 50% chance of a white page, and if that doesn't happen, there will be a refresh. If you want to change it, meddle with those two options to find a balance you like.





Hope you guys enjoy this update of the excellent hack by Zzed, with the improvements I've made to it for higher maintainability (and, no file edits ).

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #162  
Old 04-28-2005, 05:47 PM
almqdad almqdad is offline
 
Join Date: Jul 2003
Posts: 116
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi

any chance to modify this hack so that it can be used at user level instead of group where multiple user from different group can be added

help will be highly apprecaited
Reply With Quote
  #163  
Old 05-08-2005, 11:49 PM
HBC HBC is offline
 
Join Date: May 2005
Posts: 46
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by LambHyjoo
Very nice hack, it works, but I have a little problem : the "Server too busy" page never comes.

I have tuned the code to make it appear, but instead of showing me a "Server too busy" page, it comes blank.

Any idea ?

same thing here.. either nothing happens after a while
or i get a white page..

never a server busy error,never kicked back to the index..

same thing with search..


also the things you have to "tone down the pain" seem to be more
variables then are in the text block to copy to the template?
Reply With Quote
  #164  
Old 05-09-2005, 03:44 AM
VBUsers's Avatar
VBUsers VBUsers is offline
 
Join Date: Aug 2004
Posts: 830
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

great hack works great thanks
Reply With Quote
  #165  
Old 05-09-2005, 08:37 PM
flee2 flee2 is offline
 
Join Date: Nov 2002
Posts: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Some users questioned the issue of allow moderators to send users to the group Miserable.. but only is allowed if Miserable Users Group is a Banned Group.

when you set the Miserable group, as a Banned group, the reputation link (balance) dissapear, and don't allow to give reputation to the post of a Miserable user.

With this 2 modifications, the miserable group, can be a BANNED GROUP and the balance of Reputation Link is showed and fully functional. Of course, this don't allow to give reputation to other users BANNED, ONLY allows to show the Miserable users in the forum, as a normal user..

this modifications:

PHP Code:
// in function_showthread.php edit
// after of:

$show['reputationlink'] = iif(($permissions['genericpermissions'] & CANUSEREP OR $post['userid'] == $bbuserinfo['userid']) AND $vboptions['reputationenable'] AND $bbuserinfo['userid'] AND $post['userid'] AND !($usergroupcache["$post[usergroupid]"]['genericoptions'] & ISBANNEDGROUP), truefalse);

//add:

if ($post['usergroupid'] == "21"
{
$show['reputationlink'] = true;    
}


---------------------------------------------------

// IN reputation.php edit

search:

if (
$usergroupcache["$userinfo[usergroupid]"]['genericoptions'] & ISBANNEDGROUP)
{
    eval(
print_standard_error('error_reputationbanned'));
}

replace by:

if ((
$userinfo[usergroupid] != "21") AND ($usergroupcache["$userinfo[usergroupid]"]['genericoptions'] & ISBANNEDGROUP))
{
    eval(
print_standard_error('error_reputationbanned'));
}


//IN ALL CASES, REPLACE THE NUMBER "21" with the same value of $miserableid in phpinclude_start 

That's all! enjoy! only rest to, set the Miserable users as a Banned group to allow moderators to move users to this group and ready to work...

REMEMBER SET ALL "21" values in the above code with de USER GROUP ID of miserable users, set in phpinclude_start at 3rd line as $miserableid

bye byeeee
Reply With Quote
  #166  
Old 05-10-2005, 01:41 AM
almqdad almqdad is offline
 
Join Date: Jul 2003
Posts: 116
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

hi

can you make small modification so that miserableid is user id instead of group id

in this case only administrator can do that .. the moderator will not even know about it

I am not a coder I tried but failed to get it work

please can some one help me
Reply With Quote
  #167  
Old 05-10-2005, 02:19 AM
flee2 flee2 is offline
 
Join Date: Nov 2002
Posts: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

why you need a single userid? is better a groupid.. you send to this group many users as you want...
Reply With Quote
  #168  
Old 05-10-2005, 06:39 AM
topten topten is offline
 
Join Date: May 2004
Posts: 38
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

When I put people in the mIserable users group there friends can now see they are not a registered user but a miserable user

hence it makes it realy easy fro them to see whats up

is there any way to display soemthing else rather than 'miserable user' as the persons title?

thanks alot
Reply With Quote
  #169  
Old 05-10-2005, 10:46 AM
almqdad almqdad is offline
 
Join Date: Jul 2003
Posts: 116
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi flee2

it is important that no one except admin to no this moderators can easily see the member A

who is having problem login to the forum is in a strange group even if you call that group

nice member or what ever

i hope some one can modify the hack

multiple user ids can be added
Reply With Quote
  #170  
Old 05-10-2005, 12:15 PM
T3MEDIA T3MEDIA is offline
 
Join Date: Dec 2004
Posts: 944
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by topten
When I put people in the mIserable users group there friends can now see they are not a registered user but a miserable user

hence it makes it realy easy fro them to see whats up

is there any way to display soemthing else rather than 'miserable user' as the persons title?

thanks alot
I belive on vb 3.0.3 and up... you can have the usergroup take over the title or not.
or what about having them as a secondary group? you can hide the group name with out hacking.
Reply With Quote
  #171  
Old 05-11-2005, 02:33 AM
simple_john simple_john is offline
 
Join Date: Apr 2005
Posts: 20
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

is there a way to assign miserable user to an IP address?
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:27 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.12650 seconds
  • Memory Usage 2,361KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (8)bbcode_php
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete