Go Back   vb.org Archive > vBulletin Article Depository > Read An Article > vBulletin 3 Articles
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
How To Install a vbulletin Hack: Guide to Newbies.
Logician's Avatar
Logician
Join Date: Nov 2001
Posts: 4,449

MCSE, MCDBA, Coder

inside vb code
Show Printable Version Email this Page Subscription
Logician Logician is offline 05-27-2002, 10:00 PM

If you are new to vbulletin hacks, dont know how to apply a hack, instructions of the Author does not suffice to you or you still have difficulties and questions while applying a hack, I hope this "general guide" can help you a bit:

Let's begin with CRUCIAL tips, shall we?

BEFORE HACKING:

1- Before applying a hack do not forget to backup! This is the most important part of a hacking experience. If you backup properly, you dont need to worry about the consequences of applying any hack. Even if you do something wrong or the hack is buggy or conflicts with your board, you wont lose anything by trying it out. Doesnt it work? Just revert to your backed up board and you are safe.

You need to back up 2 things:
  • Your MYSQL database. You can back it up via Vbulletin Admin Control Panel/ Database Backup section. Even if you dont apply a hack, get used to back up your database once in a while. If anything goes wrong in your server, you can use your backup to get it up.
  • File You Edit: Always make a copy of the file the hack requires editing, before editing the original. If your hack does not work and if you want to revert to your old settings, just rename the copy you made (overwrite the modified file) and upload it back to your server. This is the best way of getting rid of an unsuccessful/unwanted/buggy hack.
2- In most of the hacks, the author will tell (or at least guess) which version of vbulletin the hack works with. In vbulletin.org vb version of the author is displayed in the hack's subject line too. It may seem crucial to you to NOT TO apply a hack if vbulletin version of the Author does not match yours but in MOST cases, this is NOT true. Most vbulletin versions (especially if they are close) are very similar to eachother and many hacks will work in many different vbulletin versions. I'm not talking here very different versions like 1.x.x and 2.x.x but, for instance it's VERY likely a hack written in v2.0.3 wil work with v2.2.2, v2.2.3, v2.2.5 etc. So how can you be sure?
  • Check the thread and see if author has mentioned about that or any user who applied the hack reported any problems with your vbulletin version or you just ask it away in the thread.
  • Hacks require editing of vbulletin files and they ask you to find some codes in these files to modify. Check if these codes exist (exactly) in your vbulletin version. If they do, this hack will work in your board with a chance of 99%.
  • Backup your files and apply the hack. What if it doesnt work, you can simply revert to your back up and you wont lose anything by trying, will you?
So dont be scared that version of the hack author's vbulletin is different than yours and take your chance if you really need/want that hack. Of course this tip does not apply to the hacks in which author specifically mentioned that hack DOES NOT work with version X or the code that requires modification does not exist in your file.

WHILE HACKING

1- Follow the hack author's instructions carefully. When it comes to coding, it REALLY matters if you miss or add an extra "dot" or even single "space" character. Therefore it's important to apply the hack verbatim, very carefully and without rush.

2- If the hack instruction asks you to edit a vbulletin file, use a TEXT EDITOR program to edit. Old "Notepad" will be your best friend when it comes to hacking. Do NOT use HTML programs such as Frontpage, DreamWeaver or Word Processing Programs such as MS Word, StarOffice to edit your files. If you know what to do, these programs can manage hack editing too, but if the settings of the programs are not properly configured, they can make unwanted modifications in the file you edit which results in errors (usually parse errors). However you will ALWAYS be safe with your Notepad, so try to use it whenever possible while applying the hacks.

3- If the author asked you to find a line in the code, use "Find" feature of your editor (You are using NotePad, dont you?) So you dont need to go through the entire text manually.

4- If you find the part which requires editing via "FIND", do not immediately apply the hack. Click [F3] (In NotePad) to extend your search and make sure there is only 1 occurence of the searched text in the file you edit. For example, if the author asked you to find the code
$array=$b;
there can be 2 or more of the same line and modifying the wrong one will cause unwanted results. Although it's Hack Author's responsibility to double check this, it will not hurt if you make sure that given line is unique in the code.

5- After you find the place you will modify, be very careful about Author's command: Does he want you to
  • Add a code AFTER this line
  • Add a code BEFORE this line
  • Replace it with a new code.
As you can guess, this is crucial too!

6- If the author asked you to add a code AFTER or BEFORE a certain line, this means that you need to add this new code AS A NEW LINE (if not told otherwise). Let me demonstrate on an example: If author asked you to find the code:
PHP Code:
// value of a
$a=11;
// end here 
and add this line:
PHP Code:
$b=12
AFTER this code, this will be WRONG:
PHP Code:
// value of a
$a=11;
// end here $b=12; 
Why? Because you added (appended) right after the exiting line. However "add AFTER", means: "find the last line of original code, go at the end of that last line, press ENTER once and add the code there".

So this is right:
PHP Code:
// value of a
$a=11;
// end here
$b=12
So, make sure the inserted code is a new line after it is applied. It should NEITHER be appended after an existing line, NOR any exiting line is appended after it.

7- Try to copy paste from the hack text to your vbulletin code, instead of writing the code manually. This is the best method of applying a hack in most cases. However if you got "PARSE ERRORS" after installing your hack, this is sometimes because of COPY/PASTE process (especially if you are using OPERA as a browser and you copied from your browser window). In this case revert to your back up file and reapply the hack but this time by typing the code by hand (applies to small hacks only). Needless to say be very careful about what you typed and double check you didnt write even 1 character wrong.

8- After you made the necessary changes in the file, you need to upload it to your server. While uploading it via a FTP program make sure it's uploaded as an ASCII file, not a BIN file. (Applies files with .php extensions, ie all vbulletin scripts)

9- I have been asked many times so I'll give this tip here: If you need to modify the hack code to insert a "usergroup id" and if you dont know how to find it, here is how: Admin CP/User Groups/Modify will list all existing usergroups in your board. To learn the id for one of them, choose edit, RIGHT MOUSE click/Open in new browser Window then check your address bar, you'll see it at the end of line as usergroupid=X. That's the id you are looking for. Same tip works for finding forum ids, user ids etc. Just find the "edit" page of the info you need to learn its id, and open it in a new browser window.

10- Sometimes a hack may require you run a SQL command. Before running SQL queries in your MYSQL database make sure you backed up your database. To run SQL queries you have 3 options:
  • Your server may have an utility like "PHPmyAdmin" to run SQL queries. You can use these utilities.
  • You can use this vbulletin hack which helps you run SQL queries via Your VB Admin Control Panel
  • You can use this small independent script which have the same feature.
11- Some hacks instruction file can be named as "*.hack.php" and you may not read the instructions via text viewers. These are hacks which are designed with "VBHACKER" and you have to use this file to install these hacks. Simply put both files (vbhacker and hack itself) into your BOARD/ADMIN/ directory and run http://www.url/your_board/admin/vbhacker.php you will notice the hack name there and by clicking install you can install the hack automatically. If you got used to use text file instructions and want to install hacks manually, then vbhacker can create a text instruction file instead of installing the hack automatically too.

AFTER HACKING:

YOU INSTALLED THE HACK AND IT DOESNT WORK:

Ok dont panic! We'll get you out of trouble:
  • First read hack author's instructions and your applied code very carefully. Did you miss something?
  • Most of the times the hack does not work because of YOUR mistake, so let's be sure: Revert to your backup files, re-back up them and start from the begining. Proceed carefully and slowly!
  • Still not works? ok, first upload your back up files into your server so that we get your unhacked board online again. And check the hack's thread. Does anybody else have similiar problems like you encountered? Are there any solutions posted in the thread? No? ok post your bug report to your thread and ask author's or other users' assistence. Make sure in your message you have mentioned:
    * Vbulletin version of your board
    * What happens exactly when you install the hack?
    * Error messages you get, weird/unwanted/unexpected results hack produced etc.
    * When and under which circumstances errors/unexpected results occur?
    Write your message in DETAIL. Messages like "Hack doesnt work here" can neither help you nor others to help you.
  • Use vbulletin thread to ask for assistence. Hack Authors usually dont enjoy getting PMs or emails asking for hack support. They're busy people who are kind enough to share their codes without commercial intentions, so waiting professional, immediate and private "customer" support for their hacks is not so fair. Besides, asking in thread will help others to help you or answers given to you can help others in the future too..
  • Still no progress. It's ok, sometimes a hack does not work for you. There can be others with similiar features, check for them or just forget about it. No hack is so necessary or so crucial for your board, is it?

YOU INSTALLED THE HACK AND IT WORKS:

Ok so you are done, right? No you are not!

1- Archive the hack you applied. If its instruction is an attached file, save it somewhere in case you need it in the future.

2- Post in hack's thread and say hack works for you without any problems and mention about your vbulletin version. Do this especially if you are one of the first to try this hack or if anyone else havent mentioned that hack works with the version of vbulletin you use. So you will help others using the same version understand they can also apply the hack safely.

3- Click INSTALL button in the hack's thread. This is not same by subscribing to that thread and you will not get any new message notifications by clicking install. By clicking it, you will be notified if hack author corrected a bug, released a new version of this hack. Besides you will help the author to get how many people find it useful and will motivate him to enchance the hack. You will also help other members evaluate the usefulness of the hack since many users check number of installations for a hack before deciding to use. Same applies rating hack's thread as well..

4- If you have ideas to make the hack better, new release requests etc, post them away. This can shed a light to author to enhance his hack or someone else get make improvements you requested.

5- A thank you message to hack author will not hurt anybody either.

That's it.. I hope this information can enhance your hacking experience as a newbie.

Regards,
Logician \\=^))

(To Mods: If you think this thread is more useful in an other forum, you can move it there)
Reply With Quote
  #12  
Old 10-15-2004, 07:31 AM
kall's Avatar
kall kall is offline
 
Join Date: Apr 2004
Location: New Zealand
Posts: 2,608
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

In reference to 'uploading in ascii only, not binary', I have noticed that one of the includes/cron files for Petzvb2 at least gives massive errors if uploaded in ascii. It is fine when uploaded in binary.

In saying that, this is the only one that I have had this happen with.
Reply With Quote
  #13  
Old 10-23-2004, 06:35 PM
ntloc's Avatar
ntloc ntloc is offline
 
Join Date: Jul 2004
Location: FFGalaxy.Net
Posts: 38
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

well, this tutorial seem really hard for me (it's not the tutorial itself, it's just i'm very new at this and it is kinda hard). But it's really useful.
Reply With Quote
  #14  
Old 03-22-2005, 11:50 PM
Sleepyk Sleepyk is offline
 
Join Date: Dec 2004
Location: CT
Posts: 234
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

very good advice
Reply With Quote
  #15  
Old 03-26-2005, 03:22 PM
bobbaf3nn bobbaf3nn is offline
 
Join Date: Mar 2004
Location: uk
Posts: 31
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

cheers thatll help a lot
Reply With Quote
  #16  
Old 04-03-2005, 11:42 PM
uykusuz's Avatar
uykusuz uykusuz is offline
 
Join Date: Apr 2005
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks 4 all
Reply With Quote
  #17  
Old 04-07-2005, 11:51 AM
delilah429 delilah429 is offline
 
Join Date: Mar 2005
Posts: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

some really newbie questions:

i copied and pasted a hack (haven't uploaded yet) do i include the // part of the code? i think those are comments but not sure

also do lines count ? in other words should there be any spaces between lines? (i.e.)

abcd
//comment here//
code starts here

or
abcd
//comment here//

code starts here
Reply With Quote
  #18  
Old 04-07-2005, 02:56 PM
twoseven twoseven is offline
 
Join Date: Jan 2004
Location: in floris' pants
Posts: 226
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

whitespace is normally ignored and anything with // or /* */ are comments and are ignored by the php processor.
Reply With Quote
  #19  
Old 08-27-2005, 02:09 PM
Pete C's Avatar
Pete C Pete C is offline
 
Join Date: Aug 2005
Location: South coast, England
Posts: 161
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well I installed V3 Arcade and got a parse error as soon as I tried to post, or view a profile. Have to say reading through this has proved very helpful. I've been able to fix that error, and I feel a lot more comfortable about future edits.

Thanks - good info.
Reply With Quote
  #20  
Old 09-16-2005, 10:01 PM
stan111 stan111 is offline
 
Join Date: Aug 2005
Location: CA
Posts: 146
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

very helpful
thanks a lot
Reply With Quote
  #21  
Old 09-26-2005, 02:25 PM
Mikecp421's Avatar
Mikecp421 Mikecp421 is offline
 
Join Date: Sep 2005
Location: NY
Posts: 208
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

where do I put in phrases? When it says rto add new phrases?
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 01:13 PM.


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.04857 seconds
  • Memory Usage 2,322KB
  • 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
  • (4)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_article
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (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