[Portal 1] Bonus Map Scripts and You

Avatar
msleeper
4,136 Posts
Admin
Posted Oct 19, 2007
### Bonus Map Scripts and You
What They Are And Why You Should Be Using Them

In a nutshell, a Bonus Map Script is what tells Portal to allow your map to be loaded via the nifty Import Maps option, and also to have a Challenge versions of your map available. Creating and editing these files is very simple, and should become a standard for Portal map releases.

### Links And Useful Information
Valve Developer Wiki Article
Link: http://developer.valvesoftware.com/wiki/Portal_Challenge_Script
This explains the general concept of what the BMS format is and how to use them, and has some links to other relevant information.

BNS script generator by S.SkillZ
Link: Release Thread
THIS IS INVALUABLE!! Use this to create your own BMS files, atleast until someone comes along and does it better! This is an endlessly handy tool.

TWP Wiki Article on Bonus Map Scripts
Link: Wiki Article
Currently in-progress at the time of this update, but currently explains a lot of the concepts and inner workings of the scripts. Also explains how to get your maps working with them. Check back often!

### Old Shit, Being Depreciated Into The Wiki
### Step 1 - Directory Structure
I will make a screenshot of this if I need to, or some sort of graphical version that is better than the text. But your folder layout should be like this:

-- /SteamApps/(Username)/Portal/portal/
-- -- /maps/(Username) *Create a directory with your name, your script files will go here
-- -- /VGUI
You will put your VMTs and VTFs in here, for the preview screenshot*

In short, you need to create a directory under the /portal/maps directory where you will store your files. You should probably name it after your nickname, so people know how to group the files together. You will place your map files, the relevant script files, and a file called folderinfo.bns which will contain your personal contact information for your maps.

### Step 2 - folderinfo.bns
Here is an example folderinfo.bns. Feel free to copy and edit this for your own uses.

// Info describing the folder must be in folderinfo.txt!
// The image shown for the folder is assumed to be foldericon.tga if none is specified!

"msleeper PORTAL maps"
{
   "image"      "msleeper"
   "comment"   "contact: [email protected]"
}

Note that image is the name of the VTF in the /VGUI directory. So for example, I should have a file called /VGUI/msleeper.vtf and /VGUI/msleeper.vmt in order for my custom image to work.

### Step 3 - Map Script File
Removed, check the Wiki.

### Step 4 - Wrap-Up and Test
Remember to put your map file, map script file, and folderinfo.bns into the /portal/maps/(your name) directory.

Remember to put your personal icon, as well as your map screenshots in /VGUI.

Note: This is not 100%! If you run into errors, or have useful input, please post it!

### Notes
You might be able to create a /VGUI/(your name) directory to store your VMT/VTFs into, which will clean your directory structure up significantly. If anyone can confirm this, please do!

Advertisement
Registered users don’t see ads! Register now!
Avatar
msleeper
4,136 Posts
Admin
Posted Oct 19, 2007
Replied 4 hours later
Okay, finished the quick how-to. Anyone who can test this please do, I know I will.
Avatar
espen180
307 Posts
Posted Oct 20, 2007
Replied 5 hours later
i want to know if this makes the finish window appear when the map is done.
Avatar
SSkillZ
8 Posts
Posted Oct 20, 2007
Replied 12 hours later
I would recommend puting the maps files in the maps folder and not in a sub folder (which will work just fine), as renaming the folder (Username) or moving it to another sub folder will make the "map" parameter invaild.

If the map was in maps folder, renaming the folder or moving it wont make the maps that show in bonus menu not to work, as the map parameter will stay "mapname" and the map is in maps folder and hasnt move, and vaild.

Because the script can be moved without any editing, but the .bsp if moved has to be edited in all the relevent .bns scripts.

Just as portal dudes did, just their folder (Username) are in the script folder which is not recommended.

Avatar
msleeper
4,136 Posts
Admin
Posted Oct 21, 2007
Replied 8 hours later
Ah very good to note. Thanks Skillz!
Avatar
youme
937 Posts
Posted Oct 22, 2007
Replied 1 day later
Do you know if you can have multiple maps in one bonus map? by this i mean you only have one button to play it but when you reach the end of the first map it loads the next automatically?
Avatar
Grudge
307 Posts
Posted Oct 23, 2007
Replied 12 hours later
If you mean in general, sure!

Use of level transitions (trigger_leveltransition I think) and some info landmarks, look around for some tut's.

Avatar
youme
937 Posts
Posted Nov 24, 2007
Replied 1 month later
It seems I can't put muliple maps into one bonus map, I've set up the driectory stucture all correct and the level transitions are working fine.
But when i run the maps using the bonus map script the first map runs fine and when i get to the level transition I get this error:

Level transition ERROR
Can't find connection to TS13\testc_06 from TS13/testc_07

I know the slashes are different directions but hammer won't let me put a \ in, It changes it to a / as soon as I hit apply.

Any advice?

Edit: I did a bit of looking at the differences in the console stuff between running it using "map TS13/testc_06" and running it via the bonus level stuff and it seems that the bonus level stuff uses \ whilst everything else uses /. Even if my bns files use /
Help!

Edit 2: I've fixed it, I resorted to making a bns for each map and making the player pick the next map after each map finished, But then the level transitions worked, it turns out it doesn't load the map file, it loads bns assosiated with that map. Its a bit annoying to have to make more than one bns but at least it works now :biggrin:

Avatar
msleeper
4,136 Posts
Admin
Posted Nov 24, 2007
Replied 4 hours later
Try opening the VMF after you save and close hammer, and change the \ marks back to /, then compile your map via a batch compiler. This might not work at all, but it's worth a shot.
Avatar
youme
937 Posts
Posted Nov 24, 2007
Replied 57 minutes later

youme wrote:
Edit 2: I've fixed it, I resorted to making a bns for each map and making the player pick the next map after each map finished, But then the level transitions worked, it turns out it doesn't load the map file, it loads bns assosiated with that map. Its a bit annoying to have to make more than one bns but at least it works now :biggrin:

Avatar
youme
937 Posts
Posted Nov 27, 2007
Replied 3 days later
How do you unlock the next map when you finish a level?
Avatar
MrTwoVideoCards
584 Posts
Posted Nov 27, 2007
Replied 2 hours later

youme wrote:
It seems I can't put muliple maps into one bonus map, I've set up the driectory stucture all correct and the level transitions are working fine.
But when i run the maps using the bonus map script the first map runs fine and when i get to the level transition I get this error:
Level transition ERROR Can't find connection to TS13\testc_06 from TS13/testc_07

I know the slashes are different directions but hammer won't let me put a \ in, It changes it to a / as soon as I hit apply.

Any advice?

Edit: I did a bit of looking at the differences in the console stuff between running it using "map TS13/testc_06" and running it via the bonus level stuff and it seems that the bonus level stuff uses \ whilst everything else uses /. Even if my bns files use /
Help!

Edit 2: I've fixed it, I resorted to making a bns for each map and making the player pick the next map after each map finished, But then the level transitions worked, it turns out it doesn't load the map file, it loads bns assosiated with that map. Its a bit annoying to have to make more than one bns but at least it works now :biggrin:

Also instead use"_" better, as that helps the system organize files, and vmf's and the like.

Avatar
MrTwoVideoCards
584 Posts
Posted Nov 27, 2007
Replied 1 minute later

youme wrote:
How do you unlock the next map when you finish a level?

Via a console command, thats the best way, using a point_client_command in your map.

Avatar
msleeper
4,136 Posts
Admin
Posted Dec 03, 2007
Replied 6 days later
Updated for clarity, added links, and just generally made the first post better.
Avatar
onemanescapepod
2 Posts
Posted Jan 25, 2011
Replied 3 years later
Hi, I'm essentially done with my first Portal map, but I'm stuck on the challenge script. I have a BNS file which as far as I can tell is all set up correctly; if you select the map in the in-game menu it correctly displays the bronze requirements for each of the challenges. But it doesn't seem to save my score when I complete the map under any of the challenges, and I have no idea how to get this working.

I've read this thread, but it seems to have been stripped in favor of the wiki. I've read the relevant wiki pages several times but I'm stumped.

My map doesn't end in an elevator, so it wouldn't make sense to have it display your challenge results in the elevator like the official maps. I wouldn't know how to put the challenge results in the elevator anyway, since that doesn't seem to be on the wiki... Is it possible to have it save your score without the elevator part? If so, what should I do to enable this?

Avatar
Groxkiller585
652 Posts
Posted Jan 25, 2011
Replied 5 hours later
there's a specific entity that displays the score. You can use it at the end of your map. I can't remember the name, it was like env_scoreboard_bouns or something.
Avatar
onemanescapepod
2 Posts
Posted Jan 26, 2011
Replied 1 day later
Thanks, but that didn't really answer my question. That was the one thing I didn't need, unless that also saves your score. I also can't find any entity by that name or close to that name.
Avatar
p0rtalplayer
1,366 Posts
Posted Jan 26, 2011
Replied 4 hours later
Well, the entity is called prop_portal_stats_display, and has two inputs that might be of use: ResetPlayerStats and UpdateStats
Advertisement
Registered users don’t see ads! Register now!
Avatar
Groxkiller585
652 Posts
Posted Jan 26, 2011
Replied 11 hours later

onemanescapepod wrote:
Thanks, but that didn't really answer my question. That was the one thing I didn't need, unless that also saves your score. I also can't find any entity by that name or close to that name.

Sorry i was completely guessing since I have never messed with the entity. And yes it is required to update it.