vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.0 Full Releases (https://vborg.vbsupport.ru/forumdisplay.php?f=33)
-   -   Miserable Users for vB3 (https://vborg.vbsupport.ru/showthread.php?t=59727)

KuraFire 01-04-2004 10:00 PM

Miserable Users for vB3
 
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 :)).

corsacrazy 01-05-2004 11:53 AM

why would you want to drive people away ?

KuraFire 01-05-2004 11:55 AM

Banning doesn't always help, people tend to evade the ban by signing up again and what not. Making it difficult for them to be on your site without them realizing that it's your doing will make them want to go because it's annoying for them to stay, whereas banning them over and over again makes it annoying for YOU if THEY stay.

RixiuS 01-05-2004 12:38 PM

Thanks, KF. Maybe I'll find use for this when my forums get more popular, as for now; there's been noone that naughty :)

TheAnt 01-05-2004 07:18 PM

oh yes, now the fun begins

*install

MGM 01-06-2004 12:29 AM

w00t! thanks man, my site wouldn't have been the same without this :D

[high]* MGM clicks Install
[/high]

MGM out

KuraFire 01-06-2004 08:07 AM

Glad you guys enjoy :)

And keep in mind - this is not so much my hack, more is it a port of Zzed's hack. He came up with the idea and the initial code, I've only ported it and made it a little better.
(this to ensure people don't go blaming me for trying to steal someone else's hack)

dynamite 01-06-2004 01:19 PM

You know... I never thought I would use this, but I had 14 people sign up yesterday and posted a bunch of crap on my site. I have wasted my valuable time having to delete all their posts. Should I send them a little email that says "Welcome to hell"? Maybe that will encourage them to come back to the site !!!

KuraFire 01-06-2004 02:34 PM

Just make sure to be careful, you don't want those members to figure out that they are placed in a Miserable Users group! :)

Gary King 01-06-2004 08:04 PM

Does this count as a hack though, because there are no code changes as it states in the rules..? :) :p

EDIT: Sorry about that, my mistake there is a forum for phpinclude hacks actually :)

KuraFire 01-07-2004 08:08 AM

yeah, I put it in here though because the original hack was a file edit hack and that one was placed in this Category of hacks, so for the sake of people familiar with the vB2 hack, I've placed it here instead of in Mini-mods.

buro9 01-07-2004 08:20 AM

It's good in here... I found it because it was in here... and I've used the original hack... far more effective than banning... as they're able to log off and register a new user and IP banning is a heavy handed tool when you have proxies involved.

The only thing I'd like to see is a small addition... Add a permanent cookie to the client of a banned user so that if they manage to log out they are still in hell. Of course... this would need a lookup to confirm that the user is still 'miserable', but if they cookie contained the userId of the user that was miserable... and then you could check the database to see if they're still miserable and only clear that cookie if the user associated with the cookie has changed status.

The problem I saw is that I know of two users who live together... one of whom might soon earn miserable status... but the other user would not, and thus they would see swiftly that the user had been tampered with... so the above would just render that browser useless until they manually cleared all cookies.

Finally... it would be lovely to see one more minor adjustment... to make the 'tone down' stuff an option... so you'll have the ability to make someone 'slightly miserable' and 'very miserable' :)

KuraFire 01-07-2004 08:30 AM

I've considered using $vboptions for the percentage/chance checks, so that you could tone it down via options, but decided against it for now, only because that makes the Installation of this hack a LOT more 'complicated'. Mainly because the Hack Tracking Log is not done yet, so once it is I'll release a HTL-installer that comes with $vboptions for the toning down.


As for a cookie and all that stuff - I'll think about it. It seems like a good idea, but I'm not sure how hard to implement it is.. I don't want to make this Hack complicated as it's such a simple thing, and should remain a simple thing. I hate unnecessary file edits. ^_^

Gary King 01-07-2004 01:01 PM

Quote:

Originally Posted by KuraFire
yeah, I put it in here though because the original hack was a file edit hack and that one was placed in this Category of hacks, so for the sake of people familiar with the vB2 hack, I've placed it here instead of in Mini-mods.

Yep that's true :)

SloppyGoat 01-09-2004 09:19 PM

OMG!!! This is wonderful!!! I will definitely be installing this one!!! Thank you sooo much!!! LOL

bolynn 01-10-2004 02:56 AM

How can one let Moderators add idiots to the miserable group not only Admins?

bo

SloppyGoat 01-10-2004 05:46 AM

HELP!!! I did this hack, and tried it on my test account. Now I can't get back into the CP to log myself back in as admin! It won't let me in! What do I do? I can't put the template back if I can't get into the CP! AAARRRGGGHHHH!!!!

When I try to login, I get this. :(

Fatal error: Maximum execution time of 30 seconds exceeded in g:\test\global.php(386) : eval()'d code on line 11

Fatal error: Maximum execution time of 30 seconds exceeded in g:\test\includes\functions.php on line 467

[edit] I guess it finally timed out, but this hack is definitely not working for me. :( I tried this 4 times, and I get the same results.

GamerzWorld 01-10-2004 07:40 AM

I cant get back in either lol. Tryed on test now im going slow as hell and getting blank pages lol

SloppyGoat 01-10-2004 07:46 AM

If you're on a local host, you can use your IP and it'll get you back in. Otherwise, you're going to have to wait for it to time out. :bored: On the 2.X version, all I had to do was login to the ACP, then I was back in business. This seems to block my admin account completely. https://vborg.vbsupport.ru/external/2004/01/5.gif

KuraFire 01-10-2004 03:32 PM

Quote:

Originally Posted by SloppyGoat
HELP!!! I did this hack, and tried it on my test account. Now I can't get back into the CP to log myself back in as admin! It won't let me in! What do I do? I can't put the template back if I can't get into the CP! AAARRRGGGHHHH!!!!

When I try to login, I get this. :(

Fatal error: Maximum execution time of 30 seconds exceeded in g:\test\global.php(386) : eval()'d code on line 11

Fatal error: Maximum execution time of 30 seconds exceeded in g:\test\includes\functions.php on line 467

[edit] I guess it finally timed out, but this hack is definitely not working for me. :( I tried this 4 times, and In get the same results.

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.

KuraFire 01-10-2004 03:34 PM

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. :)

GamerzWorld 01-10-2004 03:35 PM

Lucky i had a mate to log on my admin accoutn to make my test account normal :P

SloppyGoat 01-10-2004 06:06 PM

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.

bolynn 01-10-2004 09:37 PM

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

KuraFire 01-11-2004 12:23 PM

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!

Rampag33 01-12-2004 12:15 AM

Great hacc. Not sure if I will use this but does give an idea other then banning or refusing ip. Great job

SloppyGoat 01-12-2004 01:26 AM

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 ;)

Sephiroth 9999 01-12-2004 05:50 AM

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. ;)

bolynn 01-12-2004 03:22 PM

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

KuraFire 01-12-2004 06:21 PM

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..

bolynn 01-13-2004 01:50 AM

The reason I asked for that is that I wish my moderators to be able to add people to the ignore list as well as the miserable group. The current method where you have to add user numbers in a row is a pain and it is not available for moderators only admins.

Bo

Sal Collaziano 01-13-2004 10:44 AM

Is there any way to make this work for more than one user group? Could it possible be as easy as adding a comma and another group id? :D

Frank 01-13-2004 01:21 PM

Fantastic hack, thanks.

KuraFire 01-14-2004 08:55 PM

Quote:

Originally Posted by bolynn
The reason I asked for that is that I wish my moderators to be able to add people to the ignore list as well as the miserable group. The current method where you have to add user numbers in a row is a pain and it is not available for moderators only admins.

Bo

If I have the time for it at some point, I can try and look into making a cron script for you that will put all users from the Miserable group to the Tachy C list. I can't promise that I'll have that done any time soon though :/

bolynn 01-14-2004 10:09 PM

Thank you very much in advance.

Bo

SloppyGoat 01-18-2004 10:13 PM

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.

Ok, I don't know much about PHPMyAdmin, but I tried this hack again, with the same results. So, this time I went into PHPMyAdmin and looked for the phpinclude template. I found that there were two! Both appeared identical, but one had a "-1" and one had a "1" for templatesetid, and there are two different templateid numbers. Could this be the problem? Should I delete the one with the "1" and the earlier id? (Is this normal?) I do hope this is the problem, otherwise I don't just know. Maybe you can shed a little light on this? I'd be forever grateful.

KuraFire 01-18-2004 10:22 PM

Quote:

Originally Posted by SloppyGoat
Ok, I don't know much about PHPMyAdmin, but I tried this hack again, with the same results. So, this time I went into PHPMyAdmin and looked for the phpinclude template. I found that there were two! Both appeared identical, but one had a "-1" and one had a "1" for templatesetid, and there are two different templateid numbers. Could this be the problem? Should I delete the one with the "1" and the earlier id? (Is this normal?) I do hope this is the problem, otherwise I don't just know. Maybe you can shed a little light on this? I'd be forever grateful.

Don't delete them, as that will break your vB (if you delete the -1 one) / revert your template to the original (if you delete the 1 one).


I'm gonna release the Hack Tracking Log soon, and after that I'll re-release this hack with an HTL installer. :)

SloppyGoat 01-19-2004 12:22 AM

Cool!!! Thanks! I kind of figured I'd be asking for trouble if I deleted anything in there. :nervous: I'm looking forward to your re-release! ;) I just hope I can get it working. I just can't find anything I could possibly screw up on this one. The install is so quick and easy. :up:

gmarik 01-19-2004 07:22 AM

This is tough. Any .txt install file?

KuraFire 01-19-2004 08:47 AM

Quote:

Originally Posted by gmarik
This is tough. Any .txt install file?

no, wait for the HTL installer..
it's not hard at all guys... :|


All times are GMT. The time now is 06:23 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01959 seconds
  • Memory Usage 1,884KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (7)bbcode_php_printable
  • (12)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (40)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete