adding custom levels

Zeoalexo · 29 · 21022

Offline Zeoalexo

  • Upload Approved
  • Full Member
  • ****
    • Posts: 159
    • View Profile
how do i go about adding custom levels? cant seem to figure it out.


Offline Dieselpirat

  • Newbie
  • *
    • Posts: 3
    • View Profile
1. Download your desired custom level. (i. e. tampa)

2. Hit start and type "%localappdata%" (without "" but including the %) and hit enter

3. Go to "THUG Pro/User/Data/Pre/" and extract the three .prx files into this folder

4. Rename them: brun_scripts.prx -> tampa_scripts.prx, burncol.prx -> tampacol.prx and burnscn.prx -> tampascn.prx

5. Go back to the User folder (which contains the Data folder)

6. Put > This < in there

That's it.

Tampa is just an example, you can do this with any level, just replace every "tampa" with how you want to call the level-files. (including the tampa.level.json filename, its contents and the three .prx files)

Editing the *.level.json:
Just change line 2 to whatever you want:
Code: [Select]
"level_name": "NameDisplayedInTheLevelSelectMenu",
and replace "tampa" at line 9, 10 and 11
Code: [Select]
    "level_pre": "tampa_scripts.pre",
    "level_scnpre": "tampascn.pre",
    "level_colpre": "tampacol.pre",

I hope this is clear enough, if not, ask away!
« Last Edit: June 28, 2018, 02:30:32 pm by Dieselpirat »


Offline NeVeRsOfT

  • Newbie
  • *
    • Posts: 44
    • View Profile
You call it the ".level.jason file" but the file is called .level.json? o.o


Offline Zeoalexo

  • Upload Approved
  • Full Member
  • ****
    • Posts: 159
    • View Profile

Offline NeVeRsOfT

  • Newbie
  • *
    • Posts: 44
    • View Profile

Offline SoulStorm64

  • Upload Approved
  • Newbie
  • ****
    • Posts: 12
    • View Profile
1. Download your desired custom level. (i. e. tampa)

2. Hit start and type "%localappdata%" (without "" but including the %) and hit enter

3. Go to "THUG Pro/User/Data/Pre/" and extract the three .prx files into this folder

4. Rename them: brun_scripts.prx -> tampa_scripts.prx, burncol.prx -> tampacol.prx and burnscn.prx -> tampascn.prx

5. Go back to the User folder (which contains the Data folder)

6. Put > This < in there

That's it.

Tampa is just an example, you can do this with any level, just replace every "tampa" with how you want to call the level-files. (including the .level.jason filename, its contents and the three .prx files)

Editing the .level.jason:
Just change line 2 to whatever you want:
Code: [Select]
"level_name": "NameDisplayedInTheLevelSelectMenu",
and replace "tampa" at line 9, 10 and 11
Code: [Select]
    "level_pre": "tampa_scripts.pre",
    "level_scnpre": "tampascn.pre",
    "level_colpre": "tampacol.pre",

I hope this is clear enough, if not, ask away!


Thanks! that worked out pretty well. i just renames the Rampage Skate parks "Burn" to rsp and it loaded up just fine with your JSON file!

also name your .json to whatever the extension is of the level so like rsp.level.json or in the case of Dieselpirat tutorial his would be tampa.level.json


Offline Dieselpirat

  • Newbie
  • *
    • Posts: 3
    • View Profile
@NeVeRsOfT
it's json, my bad ;)


@Zeoalexo
Notepad should do, but I recommend using something like Notepad++ or VSCode. Notepad likes to screw up indentations.


@SoulStorm64
Glad I could help!


Offline SoulStorm64

  • Upload Approved
  • Newbie
  • ****
    • Posts: 12
    • View Profile
yeah i just needed the format to fiddle with so its much appreciated! getting most of the old levels to load just fine (madtown skatepark had some crazy shadow fickering)

but if you want to use a level that replaces another level like oil rig or foundary i found just replacing these lines if a level has the extension that the custom level originally replaced  like deadmall replaces foundary and it uses "foun" as the extension (I*E* FOUNcol.prx  or oilcol.prx)
       
Code: [Select]
        "scene_name": "oil",
"creator_name": "Unknown",
"level_qb": "levels\\oil\\oil.qb",
"level_scripts_qb": "levels\\oil\\oil_scripts.qb",
"level_sfx_qb": "levels\\oil\\oil_sfx.qb",
"level_thugpro_qb": "levels\\oil\\oil_thugpro.qb
"
     


Offline Zeoalexo

  • Upload Approved
  • Full Member
  • ****
    • Posts: 159
    • View Profile
yeah i just needed the format to fiddle with so its much appreciated! getting most of the old levels to load just fine (madtown skatepark had some crazy shadow fickering)

but if you want to use a level that replaces another level like oil rig or foundary i found just replacing these lines if a level has the extension that the custom level originally replaced  like deadmall replaces foundary and it uses "foun" as the extension (I*E* FOUNcol.prx  or oilcol.prx)
       
Code: [Select]
        "scene_name": "oil",
"creator_name": "Unknown",
"level_qb": "levels\\oil\\oil.qb",
"level_scripts_qb": "levels\\oil\\oil_scripts.qb",
"level_sfx_qb": "levels\\oil\\oil_sfx.qb",
"level_thugpro_qb": "levels\\oil\\oil_thugpro.qb
"
   

that's why the level isnt showing up for me. im trying to import Streets, but it isnt showing up. what do i change the code to?


Offline SoulStorm64

  • Upload Approved
  • Newbie
  • ****
    • Posts: 12
    • View Profile


that's why the level isnt showing up for me. im trying to import Streets, but it isnt showing up. what do i change the code to?

what was the level did it replace? was this streetssanfran from thpsgoat? because depending on what level it replaced before u need to replace them all with the appropriate level name it replaced or else the game will crash. so like if it replaced burn use "scene_name": "burn" instead of "scene_name": "oil" and so on with the level_qb   level_scripts_qb   level_sfx_qb and Level_thugpro_qb like so

(The Highlighted Hoffbowl represents what i changed the original replace level name with something that wont conflict with other custom parks. so if you have 5 levels that replace burnside with the "Burn extension" you can choose what you want it to be like hoffbown_scripts.pre was originally oil_scripts.pre.)

Quote
  {
   "level_name": "Hoffman Skatebowl",
   "scene_name": "oil",
   "creator_name": "Unknown",
   "level_qb": "levels\\oil\\oil.qb",
   "level_scripts_qb": "levels\\oil\\oil_scripts.qb",
   "level_sfx_qb": "levels\\oil\\oil_sfx.qb",
   "level_thugpro_qb": "levels\\oil\\oil_thugpro.qb",
   "level_pre": "hoffbowl_scripts.pre",
   "level_scnpre": "hoffbowlscn.pre",
   "level_colpre": "hoffbowlcol.pre",
   "ambient_rgba": [127, 127, 127, 63],
   "light0_rgba": [127, 127, 127, 63],
   "light1_rgba": [127, 127, 127, 63],
   "light0_position": [0.0, 0.0],
   "light1_position": [0.0, 0.0],
   "FLAG_OFFLINE": false,
   "FLAG_INDOOR": true,
   "FLAG_NOSUN": true,
   "FLAG_DEFAULT_SKY": true,
   "FLAG_ENABLE_WALLRIDE_HACK": true,
   "FLAG_DISABLE_BACKFACE_HACK": false,
   "FLAG_MODELS_IN_SCRIPT_PRX": false,
   "FLAG_DISABLE_GOALEDITOR": false,
   "FLAG_DISABLE_GOALATTACK": false,
   "FLAG_NO_PRX": false,
}
« Last Edit: June 28, 2018, 04:50:44 pm by SoulStorm64 »


Offline Sileighty

  • Upload Approved
  • Newbie
  • ****
    • Posts: 39
  • ["wings of fire" gets louder]
    • View Profile
For some reason, every level has the same skybox. This means New York and even Skate Heaven become day levels. How do you fix that?


Offline Sattan

  • Upload Approved
  • Jr. Member
  • ****
    • Posts: 56
    • View Profile
the original creator has to re export the maps thru the new tools in order to fix the skybox issue.


Offline Zodiac

  • Newbie
  • *
    • Posts: 9
    • View Profile
Hi. I've done everything you guys wrote above and I have a custom level in the list, but as soon as I start it, game crashes. I've tried some different levels with no luck. :(

upd. some attempts later, I got it working. I don't know what caused game crash (maybe .json encoding?) but problem is solved now, lol.
« Last Edit: July 01, 2018, 09:44:10 am by Zodiac »


Offline J215s

  • Newbie
  • *
    • Posts: 5
    • View Profile
So this works perfectly in freeskate, but I get an error if I try to use any custom levels online. Any suggestions?


Offline Zodiac

  • Newbie
  • *
    • Posts: 9
    • View Profile
So this works perfectly in freeskate, but I get an error if I try to use any custom levels online. Any suggestions?
I think some levels are just not designed for multiplayer. But i can be mistaken...