map-pin Tutorial: Getting Started With Constructor

  • Three
  • Three's Avatar Topic Author
  • Offline
  • Lead Developer
  • Lead Developer
  • level designer
08 Feb 2016 23:08 - 26 Jul 2019 09:27 #1 by Three
So, you've grown tired of building levels with the level editor, but you have no idea what to start with in Constructor? Worry not, this guide will help you out with getting Constructor set up, provide instructions for basic usage, and converting a map to dif format. If you haven't downloaded Constructor, you may do so from this link , but you'll need to create a GarageGames account first. If you're using Windows, make sure to download 1.0.3, and then install the 1.0.6 patch over your 1.0.3 install. Downloading 1.0.6 by itself WILL NOT WORK.

EDIT 7/26/2019 - Constructor is no longer obtainable from GarageGames, either temporarily or permanently. For the time being, please join the MB Community Discord server (link in Webchat) and download it from the #level-building channel.

Part One: The Interface

The interface of Constructor may appear to be quite overwhelming at first glance, but there are only a few sections you'll actually use when making Marble Blast levels. Click THIS LINK to view an image of the default interface, marked with numbers. Those numbers will correspond to the descriptions below. The picture is of the Windows interface, but the Mac interface is almost exactly the same.

1 - Create brushes, the building blocks of your level. The only one you'll ever really need to use is Build Cube.
2 - Create entities. This is only ever useful for Marble Blast when you have PerishingFlames' Items Pack installed.
Click here to download it.
3 - Edit Sun. Allows you to change the lighting of your level in Constructor. Note that this won't affect the level once it's in Marble Blast.
4 - Preferences. Here's a quick breakdown of what you need.
   a - Grid spacing, or how much a brush will snap to the grid. Keep this at a power of 2! (0.125, 0.25, 0.5, 1, 2, 4, 8, etc.) For the sake of this guide it will be set to 0.5.
   b - Rotation amount each time you rotate something. For neatness, keep this divisible by 360. (5.625, 11.25, 22.5, 45, 90, etc.)
   c - Free camera movement. If you don't have this on, Constructor's perspective camera is nearly unusable.
   d - Movement speed of camera. Fairly comfortable by default, can be increased for editing larger levels.
5 - Method of brush selection. Verticies will only allow to select the corners of brushes (useful for making triangles or odd shapes), Faces will allow you to select a single side of a brush and move it, or apply a texture to that face alone, and Brushes will allow you to select and move whole brushes.
6 - Viewport settings. Left is point of view, middle is material to render (you should probably switch this to Textured), and right is shading options. Only use Shaded and None here. The E button will allow you to always see the edges of brushes.
7 - Selection info. The bottom right numbers are your current grid spacing, and the current scale of the grid.
8 - Viewport bounds. You can move these by clicking and dragging to create one big viewport, or two medium size viewports, etc. I only use the Perspective viewport, both in making levels and in this tutorial.
9 - Current map file. If you have more than one map file open at a time, you can change which one you're editing here.
10 - Texture album and current texture. More info on that later.
11 - Open texture browser. More info on that later.
12 - Apply current texture to selected face/brush.
13 - Create complex structures. You'll never need any of these except Create Pie. The rest can be quite difficult to convert in Map2Dif.
14 - HiGuy's plugins go here. They are very useful. Click here to go to his website and download them.

Part Two: Adding Textures

Before you get to creating your level, you'll need to add the MBP textures. Copy the image files from platinum/data/multiplayer/interiors, but don't copy the folders. Why the multiplayer folder? Because it includes all the textures from Platinum and Gold with no custom textures involved. Paste them in a folder, let's say, on your desktop, for easy navigation. Name the folder whatever you like, it doesn't matter.

Now, in Constructor, click the Browse button in section 11 of the interface guide. Something that looks a bit like this should pop up, minus the already-added Marble Blast folders shown here.
Note: Broken image

We're going to create a new texture album for use in your levels. Click the button on the bottom left that looks like a book and a blue plus. A dialogue box asking you to name the folder should appear. Call it whatever you like, but do not include spaces in this texture album's name or it will break Constructor on loading your maps! Now that we've made a blank album, it's time to add the textures. Click the button with the picture and the blue plus to browse for textures to add. Of course, choose textures from the folder you made on your desktop. Note that you can only add one texture at a time with this method. If you want to add your whole folder at once, click the button with the file folder and a blue plus to browse for the folder, but be warned: it may crash and destroy your Constructor. To play it safe, just use the single-select option. For the sake of demonstration, I have added only three textures.
Once you're done adding textures, hit "Activate & Close" to close the texture browser. Click the dropdown menu on the right under Texture Album to select a texture album, and the one under Current Texture to select a texture from that album.

Part Three: Moving Around

Moving around in Constructor is simple. In the 2D views, simply right click and drag to move, and use the scroll wheel to zoom. In Perspective view, while holding right click, use WASD to move, the mouse to look around, and move faster by holding Shift. This guide, as stated before, will primarily use Perspective view.

That was a short part. Nothing else to say here.

Part Four: Brush Editing

Here comes the good stuff. Select one of the textures you added, and at the top left of your screen, hit the Build Cube button. I'll be using the edge white texture, so you probably should too. This list of settings should appear at the left.
Set the size of the cube to X = 2, Y = 2, Z = 2 to create a cube that is one Marble Blast tile long, wide, and high. The texturing may not match this, but we'll get to this later. Hit the Make button to finalize the cube.
Now, we can't get very far with this cube. This is where Face selection comes into play. Hit the Faces button at the bottom of the screen to go into faces mode. Click the top face to select it, and drag down on the Z axis until the cube is 0.5 units thick, like so. This is called extruding, and will be referred to as such throughout this guide.
Note: Broken image

Now, you'll probably want to move this brush back up above the grid for neatness' sake. Go back into Brushes mode and select the brush again. Drag it up above the grid using the Z axis. Switch back to faces mode now so that we can elongate the platform. Select a face on the side of the brush and drag it on the X or Y axis to extrude the brush outwards. For this tutorial's sake, I'll be extruding it to be 16 edge whites long.
Now, you're probably thinking what I'm thinking. This looks very ugly. Don't worry! Select a top tile using the texture dropdown on the right, select the top face of the brush and hit apply.
Note: Broken image

Oh no, that looks awful. Did we do something wrong? Nope, the brush is the right scale, we just need to learn how to use texturing options. While you have a face selected, these options should appear in the same place the options for Build Cube appeared.
The Scale field is what we need. Almost all tile top textures should be set to X = 0.5, Y = 0.5. So, go ahead and do that.
That looks a bit better, but it's horribly misaligned. Don't worry, just use these magic arrow buttons on the texturing options to align it!
Click anywhere in the viewport to de-select the brush, and you're done texturing it for now. If you prefer, you may texture the bottom as well at this time. Here's a handy guide for what scales to use on what textures:

Ground Tiles - 0.5, 0.5
White Trim - 1, 1
Dirt Trim - 0.125, 0.125
Wood - 1, 1
Brown structure/underside tile - 1, 1
Friction - varies

Use white trim scaled at 1, 1 to determine the scale of your map. Four edge whites is equal in length to one floor tile.

So now, say you need to make this brush turn a corner, or make a ramp, etc. You can't do that with just a single brush, and making another one from scratch would be very tedious. Instead, go into Brushes mode and select your brush. While holding the Shift key, drag it on any axis to duplicate it. You can also use traditional copy/paste methods to duplicate it.
Note: Broken image

Now, using your extruding expertise, shorten and lengthen it to your liking. I'll duplicate the brush a few times here to create a slightly more complicated map. A wireframe view is shown below so you can tell apart the brushes.
If you select the side of a brush, and move it on the Z axis, you will create a slope. View this guide for advanced information on how to texture slopes, but you can leave them as is for now.
This is how you will primarily create your map. Take time to get used to duplicating and extruding it, and soon you'll be doing it without even noticing.

Once you're done with your map, you should save it under File -> Save As... and save it as a .map file, not a .csx file. Of course, like with any program, you should take care to save as frequently as possible while creating your map.

Part Five: Bringing your map into Marble Blast

Now it's time to get your map loaded in Marble Blast. Marble Blast can't load Constructor map files, so we'll need to use Marble Blast Map2Dif to convert it to dif format. You can download Marble Blast Map2Dif from this link. Save it into the folder on your desktop with all of your textures. Please note that converting map to dif on a Mac is quite different than on Windows. Ask HiGuy about it, because seeing as I'm a Windows user, I can't cover it in this guide.

Before we get to the converting process, I'm going to go over a list of things that will NOT convert through Map2Dif, no matter how hard you try. If your map doesn't convert, it's not the end of the world, because a failed conversion won't modify the original .map file at all.
1. Brushes that are too big. An easy fix is to just make the offending brushes smaller via extruding. Your brushes basically should not be bigger than 32 tiles by 32 tiles on any axis if you don't want to risk your map not converting.
2. Brushes that are too small. Any brush smaller than 0.0625x0.0625x0.0625 units will usually have a tough time converting.
3. Malformed brushes. If your brush has red lines running across it when it's not selected, it's malformed. You will generally get malformed brushes by not moving verticies in a pair. You can fix conversion issues involving malformed brushes by just deleting the brush.
4. Creating a sphere or torus. These kill your map instantly, though on very rare occasion a sphere might slip through.

Anyways, place your map file in the folder with your textures and Map2Dif. To convert the map, simply drag the map file on top of Map2Dif, and release. A console looking thing should appear for a few seconds and then disappear. If you get an error, a dialogue box will appear telling you what went wrong. If you didn't get an error, you should get a new dif file in your textures folder with the same name as your map file.
Simply move this new dif file to platinum/data/interiors (for regular Marble Blast/Marble Blast Gold) or platinum/data/interiors_pq/custom (if using PlatinumQuest textures).
Find it in the level editor and click it to get it to appear. If you added entities to your map, select your interior, hit F3, place it at 0, 0, 0, and hit the Create Subs button.
Note: Broken image

Congratulations! You've made your first Constructor map. From here, you can experiment with the different features, or view the other guides available here on the forums to learn how to make better and more complicated maps. Good luck, and happy building! If you have any questions, please leave a reply below.

Follow me on twitter at @threefolder
Last edit: 26 Jul 2019 09:27 by Three. Reason: Preserve surviving image links + alternate download link (RIP GarageGames)
The following user(s) said Thank You: HiGuy, IsraeliRD, Jeff, Lee, Kalle29, [email protected], Ralph, Uvodd, Frostfire, Nature Freak, Nockess, Robert, Weather, Rock, Xedron, PacPlayer, Yoshicraft224, CylinderKnot

Please Log in or Create an account to join the conversation.

  • Frostfire
  • Frostfire's Avatar
  • Offline
  • Senior Marbler
  • Senior Marbler
  • Multiplayer Mastery
09 Feb 2016 00:11 #2 by Frostfire
Replied by Frostfire on topic Tutorial: Getting Started With Constructor
though i no longer need this personally im sure it will be very helpful to other people in the future, as the old constructor tutorial was massively confusing (or at least i found it so?)

Please Log in or Create an account to join the conversation.

  • Kalle29
  • Kalle29's Avatar
  • Offline
  • Moderator
  • Moderator
  • I blame ping for losing
09 Feb 2016 00:16 #3 by Kalle29
Replied by Kalle29 on topic Tutorial: Getting Started With Constructor
Yeah I agree, this is much better for new level makers. We used to always tell people that "there are many guides on the forums" while in reality it was just a mess of sub-par guides. Now we can redirect people to this thread.

༼ ͡◕ ͜ ʖ ͡◕༽ You have been visited by the Nivea™ Donger of moisture. Soft skin and good fortune will come to you, but only if you post "thank you Mr. Skeltal" in this thread ༼ ͡◕ ͜ ʖ ͡◕༽
The following user(s) said Thank You: Frostfire

Please Log in or Create an account to join the conversation.

09 Feb 2016 11:41 #4 by Robert
Replied by Robert on topic Tutorial: Getting Started With Constructor
It's good to have a nice guide for this :) Good job!

You said we can ask questions...
How do you do this?

The road looks broken... it's not straight like any other brush...


Please Log in or Create an account to join the conversation.

  • Xedron
  • Xedron's Avatar
  • Offline
  • Advanced Marbler
  • Advanced Marbler
  • Level Speedrunner
09 Feb 2016 13:41 #5 by Xedron
Replied by Xedron on topic Tutorial: Getting Started With Constructor
You can make cool broken designs like that by using the Knife tool, which can be found in the tools/modify tab in constructor. Basically you can cut pieces to make rigid edges, a diagonal-shaped piece, etc etc. Simply go to a top view of your map (This works best for this tool) and drag your mouse across the place you want to slice.

Hope this helped :lol:

"cna you salt spalt the slevel salt of 6 year salt who ca salt the lsat" - nobody, 2017
The following user(s) said Thank You: Robert

Please Log in or Create an account to join the conversation.

09 Feb 2016 16:36 #6 by Robert
Replied by Robert on topic Tutorial: Getting Started With Constructor
Yes, it helps, thank you!
I still need to get used to it but this is a very useful tool :)


Please Log in or Create an account to join the conversation.

  • IsraeliRD
  • IsraeliRD's Avatar
  • Offline
  • Project Manager
  • Project Manager
  • Dragon Power Supreme
09 Feb 2016 17:50 #7 by IsraeliRD
Replied by IsraeliRD on topic Tutorial: Getting Started With Constructor
I gave you a thank you despite crashing just reading about Constructor

"matan, now i get what you meant a few years back when you said that "the level in mbg is beyond me" after the last rampage i noticed things were insane, and now i truly feel that too" - Dushine, 2015.
The following user(s) said Thank You: Three, Xedron

Please Log in or Create an account to join the conversation.

  • Ralph
  • Ralph's Avatar
  • Offline
  • Senior Marbler
  • Senior Marbler
  • Matan's Fervent Fan
09 Feb 2016 19:36 #8 by Ralph
Replied by Ralph on topic Tutorial: Getting Started With Constructor
I have a faster way to convert a map.
Simply open your .map file... with MBMap2Dif! You will save approximatively 6 to 15 seconds you would waste taking your .map file, scrolling all the way to MBMap2Dif (especially when you have a BIG bunch of textures and .csx's and/or if your map was in the bottom of your folder) and drop it in. Just a little tip I'm launching.

You forget a thousand things everyday. Make sure Marble Blast isn't one of 'em.

On Twitter : @RalphiBoy27
Now on Instagram : ralphfrommb

Ralph's Improved PQ Sound Pack :
The following user(s) said Thank You: Three

Please Log in or Create an account to join the conversation.

  • Weather
  • Weather's Avatar
  • Offline
  • Professional Marbler
  • Professional Marbler
09 Feb 2016 20:15 #9 by Weather
Replied by Weather on topic Tutorial: Getting Started With Constructor
I do the same thing. I have Windows set to open .map files with Map2Dif by default when I double-click on them. Doing that also allows you to keep Map2Dif in a different folder.

Please Log in or Create an account to join the conversation.

09 Feb 2016 20:48 #10 by [email protected]
Now I really don't have much of an excuse at all for at least trying to be creative and make some levels.

Great work on the tutorial(s) for Constructor, will definitely be useful for many in the future to serve as a go-to for beginners.

"funny quote" - funny person 2016 part 2 electric boogaloo

Please Log in or Create an account to join the conversation.

10 Oct 2016 11:52 #11 by Shrekcraft
Replied by Shrekcraft on topic Tutorial: Getting Started With Constructor
Help! The multiplayer interior version does not have the grid_cool2 of MBG, only MBP. How do i import both and how does the map2dif recognise the texture files?

Shrek Is Love, Shrek Is Life. Btw I make crappy levels.

Please Log in or Create an account to join the conversation.

  • HiGuy
  • HiGuy's Avatar
  • Offline
  • Administrator
  • Administrator
  • Done with college
11 Oct 2016 21:51 #12 by HiGuy
Replied by HiGuy on topic Tutorial: Getting Started With Constructor
What I do: have two directories, one with MBG's textures and one with MBP's. Create two texture albums in constructor for each directory. Before converting, put your map into the directory with the textures of the mod you want, and then Map2Dif it in there. If you're using commandline map2dif, you can pass the -t <texture directory> flag.

PQ in a nutshell
function clientcmd12dothepq() {
    commandToClient(LocalClientConnection, '34onthedancefloor');

Please Log in or Create an account to join the conversation.

17 Dec 2016 17:25 #13 by MarbleDuck
Replied by MarbleDuck on topic Tutorial: Getting Started With Constructor
Might include the actual links to the updates in the OP since they’re super important and a bitch to find

Mac 1.04 -
Mac 1.06 -
Win 1.06 -

Might include this thread linked in the op since it’s not sticked and has the rest of the useful resources you might need.
The following user(s) said Thank You: Phil, Three, Nockess

Please Log in or Create an account to join the conversation.

Moderators: Kalle29AayrlRegislian