Post tutorial RSS Easy way to playtest maps

This is a really fast method to playtest your maps compared to constantly making new .mpm files

Posted by on - Basic Mapping/Technical

Tutorial written by Spazwad

mirrored here for archival purposes

1 – Introduction

This tutorial is not only meant for those of you unable to play the maps you create, but it’s also meant for those who still use the Rasmaker compile method. Thanks to Mixuk, I was told of a slightly easier, and less time consuming method of playing your levels.

2 – Extracting the Needed Files

First thing you need to do is extract the general data structure and files needed to have Max Payne understand them correctly. In order to do this, we will be extracting the ‘Basic Room Example Mod.mpm’ that came with the Max­FX Tools. Before we can extract the needed files, we need to move the ‘Basic Room Example Mod.mpm” into te same directory as rasmaker, so do that now. We’ll be using Window’s ‘Run’, but you can use DOS is you like. To run rasmaker, go to ‘run’ and select ‘browse’. Find your rasmaker directory, and double­click on the rasmaker icon. Now we need to add the nessecary options, so after the double­quote, type ‘­x “Basic Room Example Mod.mpm”’. If you installed everything to default, you should end up with something like this, “"C:\Program Files\MAX­FX Tools\RasMaker\RASMaker.exe" ­x “Basic Room Example Mod.mpm””. Now hit enter. If you did this correctly, there should now be a new directory called \data in the same directory as Rasmaker. If not, go back to the top of this section and try again.

3 – Using the New Files

Now what you want to do is copy the new \data directory into your \Max Payne directory. Once it’s there, you’re nearly ready to load your own level. First, we need to create a .ldb file of your level. To do this, load your level in MaxEd, and then select ‘Export X_LevelDB’ from the File menu. Now open your \data directory that you moved into the MP directory and find your way to the \Examples directory, (\data\database\levels\examples). Copy your .ldb file and place it here. We now need to edit the levels.txt to give MP the correct info for your level. It will be in the \levels directory, so open it and edit these lines to accommodate your map,

Level = basic_room.ldb;
PlayerStartingPlace = "::new_mesh_07::Jumppoint_00";

Obviously, change ‘basic_room.ldb’ to the .ldb file you replaced it with, and change ‘::new_mesh_07::Jumppoint_00” with ‘::Parent­Name::JumppointName’, where parent­name is the name of the mesh your JumppointName is grouped to. Save it, and you’re ready to go.

4 – Running and Compiling Your Map

Run your copy of Max Payne like usual, but before you click ‘Play’, make sure there is no .mpm file selected in the list at the bottom. Now choose the top item in the menu list, and your map should start. Now if you have finished your map, and want to release it to the public (or even just another person), it’s best to compile it. To do so, copy the \data directory from your MP directory and place it in your rasmaker directory. To compile your map, use run, select rasmaker, and then after the double­quote add the option “­a data yourlevel.mpm”. Hit enter, and you should now have your level all compiled neatly into a .mpm file. To run other people’s .mpm’s, you’ll need to rename the \data directory in your MP directory, due to redundancy problems.

5 – Conclusion

Now that you can play your own maps, get to work on them, and it won’t be long before you have something you’ll want to release to the public. Once you’re confident with editing the levels.txt file, you can customize it even more, and you can also edit the menu.txt file for more customization. For another good read concerning rasmaker and the general way MP reads files, check Mixuk’s tutorial on MP’s file structure. Well, good luck in your future mapping!

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.