Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.0 > vBulletin 3.0 Full Releases

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
  #22  
Old 01-10-2004, 03:34 PM
KuraFire's Avatar
KuraFire KuraFire is offline
 
Join Date: Oct 2001
Location: inside vB3's .php
Posts: 1,245
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by bolynn
How can one let Moderators add idiots to the miserable group not only Admins?

bo
You can make the Miserable group a Banned group, that way Moderators should be able to put users into the group from the Mod CP.
Reply With Quote
  #23  
Old 01-10-2004, 03:35 PM
GamerzWorld's Avatar
GamerzWorld GamerzWorld is offline
 
Join Date: Aug 2003
Posts: 263
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Lucky i had a mate to log on my admin accoutn to make my test account normal :P
Reply With Quote
  #24  
Old 01-10-2004, 06:06 PM
SloppyGoat's Avatar
SloppyGoat SloppyGoat is offline
 
Join Date: Feb 2002
Posts: 339
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by KuraFire
You have to make sure that the usergroupid in the hack is not one you belong to yourself, of course.

To fix, go into your database via PHPmyAdmin or whichever, and empty your phpinclude_start template. If that doesn't work, then you messed up something not related to this hack and I've no idea what you did, then. Hell, even if it IS related to this hack, I've no idea what you did. It's a very simple copy-paste into the phpinclude_start template, and only if you belong to the usergroup that you made miserable will it have an effect on your account.
Yes, it is very simple. The 2.X version worked perfectly. I'm the admin, so I'm definitely not in usergroup 16. How would an admin suddenly become a member of a group he just created? I would think after 4 tries, I've pretty much eliminated the possibility that it was my mistake. No offense, but there's something you're missing here, I think. This is a fresh RC2 test forum. There's not much I could screw up. As you said, any monkey could install this one. I don't think it's me. Why do you think I reinstalled it 4 times?
I changed the miserableid to the usergroupid I'd created (which I named Miserable Users), then pasted it into the template, just as you've instructed.

I'll tell you what. Here's a copy of exactly what's in my phpinclude_start template. Take a look and see if you can see anything wrong, please. I want so badly for this to work.
Reply With Quote
  #25  
Old 01-10-2004, 09:37 PM
bolynn bolynn is offline
 
Join Date: Jul 2002
Posts: 24
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It is working nice except the victim is not put into everybody's ignore list. Is there a way to send him to Coventry as well using the same usergroup?

bo
Reply With Quote
  #26  
Old 01-11-2004, 12:23 PM
KuraFire's Avatar
KuraFire KuraFire is offline
 
Join Date: Oct 2001
Location: inside vB3's .php
Posts: 1,245
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by SloppyGoat
Yes, it is very simple. The 2.X version worked perfectly. I'm the admin, so I'm definitely not in usergroup 16. How would an admin suddenly become a member of a group he just created? I would think after 4 tries, I've pretty much eliminated the possibility that it was my mistake. No offense, but there's something you're missing here, I think. This is a fresh RC2 test forum. There's not much I could screw up. As you said, any monkey could install this one. I don't think it's me. Why do you think I reinstalled it 4 times?
I changed the miserableid to the usergroupid I'd created (which I named Miserable Users), then pasted it into the template, just as you've instructed.

I'll tell you what. Here's a copy of exactly what's in my phpinclude_start template. Take a look and see if you can see anything wrong, please. I want so badly for this to work.
I'll check out your problem later, don't have time for it now. At first glance I couldn't see anything wrong with your phpinclude_start template, so I'm quite stumped at the moment.

I'll dig into it more when I have the time, though!
Reply With Quote
  #27  
Old 01-12-2004, 12:15 AM
Rampag33's Avatar
Rampag33 Rampag33 is offline
 
Join Date: Jun 2002
Location: Houston, Texas
Posts: 162
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Great hacc. Not sure if I will use this but does give an idea other then banning or refusing ip. Great job
Reply With Quote
  #28  
Old 01-12-2004, 01:26 AM
SloppyGoat's Avatar
SloppyGoat SloppyGoat is offline
 
Join Date: Feb 2002
Posts: 339
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by KuraFire
I'll check out your problem later, don't have time for it now. At first glance I couldn't see anything wrong with your phpinclude_start template, so I'm quite stumped at the moment.

I'll dig into it more when I have the time, though!
No biggy. The board isn't going to go live for quite awhile yet, but I really would love to have this hack working by the time I go live. I love this hack!!! Yeah, I'm a sadistic bastard too. Hehehe
Reply With Quote
  #29  
Old 01-12-2004, 05:50 AM
Sephiroth 9999's Avatar
Sephiroth 9999 Sephiroth 9999 is offline
 
Join Date: Jul 2002
Posts: 37
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Excellent work Kura. I've been having a slight problem with a certain member on my forum... he didn't deserve a banning so I'll give him this instead.
Reply With Quote
  #30  
Old 01-12-2004, 03:22 PM
bolynn bolynn is offline
 
Join Date: Jul 2002
Posts: 24
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Again I'd like to ask if there is a way to combine this with adding the user to everybody's ignore list so his posts if he makes it on the forum will not show up?

Bo
Reply With Quote
  #31  
Old 01-12-2004, 06:21 PM
KuraFire's Avatar
KuraFire KuraFire is offline
 
Join Date: Oct 2001
Location: inside vB3's .php
Posts: 1,245
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by bolynn
Again I'd like to ask if there is a way to combine this with adding the user to everybody's ignore list so his posts if he makes it on the forum will not show up?

Bo
There is, but that's a ++++load of work which is kinda pointless as you can just put people in the Miserable group first, and then also add them to Tachy C yourself. Much better, no need for a ton of unnecessary file edits..
Reply With Quote
Reply

Thread Tools

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 12:07 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.08226 seconds
  • Memory Usage 2,352KB
  • 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
  • (7)bbcode_php
  • (6)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