Recent Posts

Create-A- / Custom Bapesta Texture
« Last post by RackCityMike on November 26, 2021, 12:56:52 am »
I'm almost done with a Bapesta FS-001 texture (as soon as I can figure out the heeltab lol). I'm trying to make a template as I go, if that's something ppl would be interested in having??
Questions & Tutorials / thugpro dead silent most the time
« Last post by Whacks Beans on November 20, 2021, 04:00:14 am »
very rarely i can get sound but i have no idea why. most the time i start the game there is no sound whatsoever.
General THPS(X) / [THUG2] ClownJob'd
« Last post by %.gone. on November 20, 2021, 02:09:45 am »
ClownJob'd THUG2 Version by %.gone.

v1.0 -
v1.1 -

Included Files
  • ClownJob'd.dll
  • ClownJob'd.ini
  • THUGTWO.exe
  • ReadMe.txt

    Add ClownJob'd.dll and THUGTWO.exe to Tony Hawk's Underground 2\Game directory.
    ClownJob'd.ini needs write permission for storing window positions.
    If the directory your game is installed to is protected, e.g. Program Files (x86), ClownJob'd.ini needs to be located in
    (DRIVE LETTER):\Users\(YOU)\AppData\Local\VirtualStore\(GAME DIRECTORY),
    Default GAME DIRECTORY: Program Files (x86)\Activision\Tony Hawk's Underground 2\Game
    Virtualization will write to VirtualStore location leaving you with two copies of the .ini if not moved.

The purpose of this mod is to add some bug fixes and features asked about in the community, all while being self-contained and not making changes to any loose files. Some changes are made to scripts in memory and cfunctions in order for the features to work properly.

  • ShowConsole, enables a console window to display printf's. 
  • LogText, enables logging printf's. Will work with or without the console enabled.
    If both ShowConsole and LogText are disabled in the .ini the printf function isn't hooked.
  • Windowed mode, typical window mode with title bar and doesn't cover the taskbar.
  • BorderlessWindow mode, window mode without a title bar and can cover the taskbar.
  • Custom Resolution, set width and height.
    To use resolution settings from the registry (set by the game launcher), set both Width and Height to -1 in the .ini.
  • Option to store the window position when it's manually moved by the user.
    WindowPositionX and WindowPositionY settings in the .ini.
  • Added the ability to center the window to the display. WindowPositionMode setting in the .ini.
    0 = use WindowPositionX and WindowPositionY, 1 = Center to monitor rectangle, 2 = Center to work area rectangle, 3 = Force position 0,0
    Works with multi monitor setups. If force position, if the coordinates are invalid, or if the .ini values are invalid will use position 0,0 of the primary display.
  • Language toggle, THUG2 supported values 1 = English, 2 = French, 3 = German.
    Any other number and the tool will read the value from the registry, falling back to English if it isn't found in the registry.
  • PS2 Controls, PS2 style controls. setup your controller in the launcher for PC controls.
      Get off board              = L1 / LB
      Alt. get off board       = R1 / RB
      Nollie (Rotate left)     = L2 / LT or (none)
      Switch (Rotate right) = R2 / RT or (none)
    Modifies some global array's in memory for the controls to work properly.
  • CameraLockPlayer1, set which button acts as the camera lock button for player 1.
    Camera Lock control can't be set by the launcher so you can override the control in the .ini.
    Use the launcher to get the button number for the button you wish to act as the camera lock control and set the value in the .ini. Set to 0 to disable this feature.
  • CameraLockPlayer2, set which button acts as the camera lock button for player 2.
    Same as above but for Player 2.
  • Ability to set DropDown button.
    0 = Use defaults, 1 = L1, 2 = R1, 3 = L2, 4 = R2, any other number defaults to 0
  • DisplayIntros, enable intro movies displayed when the game first launches.
  • ScreenMode, 0 = auto; the mod calculates it, 1 = 4:3, 2 = 16:9, 3 = 16:10, 4 = 21:9, 5 = 21:10
  • XInput device support.
    This tool will auto-detect if player1 or player2 controllers are an XInput device that need their triggers split.
    If detected as an XInput device the left and right spin keys will be zeroed out, nothing is needed by the user.
    The application attempts to obtain an index without user input but this isn't always possible.
    Player1, from anywhere in the game, can press A, B, X, Y, DPAD Up, DPAD Down, DPAD Left or DPAD Right.
    If only player1 is an XInput controller, in addition to the controls above, you can use the Guide button (doesn't work on XInput 9.1.0) or L3 + R3 to obtain an index.
    Player2, from the select skater menu, A, B, X, Y, DPAD Up, DPAD Down, DPAD Left or DPAD Right will be checked against input data.
    Player2 always supports the Guide button (doesn't work on XInput 9.1.0) and L3 + R3 from anywhere in the game.
    In the event your controller is linked to the wrong index you can press F8 on the keyboard to clear the stored
    indexes and use one of the methods above to obtain a new index.
  • Vibration support for XInput devices without the need for force feedback drivers to be installed.
  • Ability to disable XInput support.
    Some devices, including but not limited to DS4 v1 controllers, have their device type set as DI8DEVTYPE_1STPERSON preventing them from being used in game since the game, by default, only checks for DI8DEVTYPE_GAMEPAD and DI8DEVTYPE_JOYSTICK.
    DI8DEVTYPE_DRIVING, DI8DEVTYPE_FLIGHT device types are untested.
  • Invert Left stick and Right stick axes for player1.
    By default the camera is inverted on both X and Y axes.
    .ini settings InvertLXPlayer1 = 0, InvertLYPlayer1 = 0, InvertRXPlayer1 = 1, InvertRYPlayer1 = 1
  • Invert Left stick and Right stick axes for player2.
    By default the camera is inverted on both X and Y axes.
    .ini settings InvertLXPlayer2 = 0, InvertLYPlayer2 = 0, InvertRXPlayer2 = 1, InvertRYPlayer2 = 1
  • Large Drive bug fixed, if the drive the game was installed to has free space larger than integer max it would return a negative number.
    Will return (INT_MAX - (UINT16_MAX * 2)) in those cases instead. This corrects a bug found in THUG1 scripts that would add a value to the returned available space.
  • Option to display controller buttons in helper text areas.
    0 = Default keyboard, 1 = PS2 Buttons, 2 = XBOX Buttons, 3 = NGC buttons (ngc buttons haven't been mapped)
    The fonts are missing some stuff and the xbox button font is designed for the duke.
    I made some adjustments so the button lookup stops short of some of the missing items so you'll see some keyboard buttons in menus like create a graphic
    ButtonFontStyle setting in the .ini
  • Option to adjust the spin lag while spinning your skater with the triggers.
    The PC version adds a delay similar to that of spinning your skater with the direction buttons, PS2 doesn't have this delay.
    Set SpinLag setting in the .ini to a value between 0 and 100, 100 is the default for PC.
  • Fixed random track list generation.
    Hooks a few random function calls in the functions responsible for generating the random tracks list.
    This will not change the game engines random functions so all other areas of the game that use random calculations will function as expected.
  • OpenSpy support.
  • Script edits to replace the text GameSpy with OpenSpy also added in loading an OpenSpy logo from memory.
    these modifications can be disabled using NoOpenSpyScripting = 1 in the .ini file.
  • KP enter acts as quick chat in lobby.
  • Quick chat with more text allowed. Not unlimited but increased.
  • Unlimited Scale.
  • Added a setting to disable additional modifications NoAdditionalScriptMods.
    This option wont affect global variables needed for certain features to work properly like PS2 controls or DropDowns.
    This option wont affect OpenSpy scripting code. Disable using NoOpenSpyScripting = 1 in the .ini file.
    This option is more related to the unlimited scale, quick chat with more text allowed and future features requested like scaling the in game chat window.
  • Added special character ® /*alt+0174*/ and © /*alt+0169*/
  • Added Neversoft skater CAS options. Affected by NoAdditionalScriptMods flag.
    IsPs2 CFunction is hooked to return true if the calling script is check_for_neversoft_skaters.
    Change the skater name to one of the aliases associated with a profile found in master_neversoft_skater_list array.
Code: [Select]
  Name              | Alias
  NS TEST SKATER     | nstestskater

  • Fixed an issue where an xinput device would constantly check for an index even if it had a valid index.
  • Fixed taunt rolling ground tricks not being changed to reflect PS2 controls.
Known Issues
  • HUD Scaling may seem a little off in some instances.
  • Sometimes the game crashes when connecting to online or backing out of online game play. Not sure what the cause is.

I'd like to thank anyone and everyone that helped directly or indirectly troubleshoot and/or test during the development of this mod.
Also, anyone that supported and pushed me to stop procrastinating to make this mod possible.
Questions & Tutorials / I need a better decompiler than roq
« Last post by ufo on November 17, 2021, 05:18:32 pm »
Can anyone link me to something similar or better than roq?
Whatever / 🎂🎁
« Last post by JaceAngel79 on November 16, 2021, 08:56:00 pm »
I had a birthday party before my actual birthday yesterday. My birthday gift finally came true :) Thank God! A Baker deck from legend Andrew Reynolds.
General THPS(X) / New Level Suggestion for THUG Pro
« Last post by JaceAngel79 on November 11, 2021, 11:22:07 pm »
I kept thinking that the School level (THPS), School II (THPS2), College (THPS4), and High School (THP8) would look nicely as a one whole mecha-level. I'm only suggesting this idea so that any of y'all can combine these levels into one, very please? Thx.
Create-A- / Re: How do you make custom sprays/stickers?
« Last post by Devan Wolf on November 10, 2021, 03:11:29 pm »
Sorry, the Create-A-Tag option isn't available in the THUGPro menus yet. Use THUG2 for now if you want to do so.
Create-A- / How do you make custom sprays/stickers?
« Last post by bibhas on November 08, 2021, 11:14:54 pm »
Does anyone know how to make custom sprays/stickers? I see people with a Tony Hawk sticker and when I ask them they say to make a tag or something. Can anyone help me out? Thanks!
I actually made one of these a long time ago, and another one for the 2012 reboot game.  I just never thought of posting it here.  Good to see similar interests!
Create-A- / THUG Pro Mega Build mod pack. here ya go!
« Last post by beastiethumbs on October 31, 2021, 08:57:33 am »
Hey everyone! I am sharing my THUG Pro files. All you have to do is copy them over the THUG Pro files on your computer, so you don't have to individually replace each character/ level, etc. I hope this helps save time and energy! (i added a read-me file)
Included in this build are every character slot modded over with quality skaters from the THPSX vault. a diverse cast! and a bunch of levels and a few items.  :D
Enjoy! peace