[Tutorial] Detailed Mapping Guide / Tips
#1

Hello everyone, this was a long awaited thread by some members of this community. Many of you want to start mapping, but lack either the motivation or the ideas. Here in this thread, I'm going to list some tips, some commonly known bugs, useful objects and such.
Quote:
Originally Posted by Flashhie
You need to have a criticism sense, I know your map is like your baby and you think its all beautiful and stuff, but its not. You need to get over this mentality and judge your map objectively.
This thread mainly is about roleplay maps but some tips can come in handy with all types of maps

Map Editor Choice
This is completely your own choice.
  • If you're going for mapping without textures and just with normal objects, without text and stuff, use Map Editor. This is not an in-game editor, but a seperate program.
  • If you're going for an in-game map editor with textures, text and actor + anim support, go for Fusez's Map Editor. This has an in-built smoothcam too, so you can record videos for your showcase pretty easily. It has a lot more, so you can click on the thread and check it out yourself.
  • Then comes my personal favorite program, Texture Studio. For me, 1.9c version works perfect. 1.9d has some minor bugs which Crayder will be fixing soon, I assume. It is by far the easiest program with a lot of features. You may think it is complicated but it is not, just keep reading below because this thread will mainly focus on Texture Studio.
  • In the end, the Ultimate Creator. This one deserves more peers but I didn't work with it, so don't know how is it. As far as I know, this editor mainly works with keyboard shortcuts and such, check the thread for more information.



Object Choice and Placement
Coming to the objects, you need to have a really good imagination and creativity. In Texture Studio, you can still edit textures and make them look almost completely different! But in map editors without texture support, this can be a nightmare. You can also edit textures in the code with SetObjectMaterial but it isn't easy, neither do I know more about scripting.

For object and texture IDs, use this website.
I'll list below how to use that website.
  • Object selection- Use objects that suit your theme. If you're making a old styled map like for a county server, use wooden textures, mostly. DO NOT use any modern objects in such a map. Vintage objects work the best with such a map. Just imagine yourself being in the 1950s, how would it feel? What would your environment consist of? There, that's how you decide your objects. In a modern themed map, use any object you want but don't use objects with too plain textures. If you still plan to make them look better and realistic, retexture them to a proper texture combination without making it look cartoonish.
    Collision holds a major role here too. If you need players to NOT pass through a particular object, use an object with collision. If you're really scrict about how players collide with an object and if the object doesn't have a proper collision like this, simply use the chip objects (The stack of coins in gambling).

  • Object Placement- Placing objects is a major part of the map. If you're using Map Editor, it's comparatively difficult to align some objects properly (They either float in the air or are badly aligned along). In texture studio, use the /editobject GUI to place them properly. Now you might need an object which isn't there in GTA SA? Use your creativity. Make a new object with small existing objects. For example, a computer monitor. There isn't a modern one available. So use the LCDTV1 object and for the stand, either use the Lava Lamp and retexture it and place it behind the LCD TV so that it looks like a screen or use 2 Switch objects (Retexture them according to your needs). Then place one horizontal and another one at 45 degrees so that it holds the LCD TV like this.
    If you're placing two object side by side or very near to make one big object, make sure they don't overlap along and become glitchy like this. To avoid it, simply move the second object back, a bit so it doesn't really look like it's behind but avoids the glitch.
Quote:
Originally Posted by Flashhie
If you place small detailed objects, never place them at a 90 degree angle. Because in real life nobody places the stuff on table perfectly, even if they want it to.
And that's right! Have a look at this:-
Textures
Textures are a very important part of your map. Good textures can make it look so realistic, believe me. I always placed objects and only used the concrete texture (Index 3 in texture studio) but later I realised how good does proper texturing result in. Again, if you're making a old styled map, use old textures. Mostly wood.
  • Useful Wooden Textures - 223, 229, 230, 288, 301, 1054, 3840.
For a modern-themed map, NEVER use plain textures like 8691 to 8705. Use textures that look realistic, you won't want your map to look like a minecraft map, do you? Ever seen plastic walls of a building? No. Use concrete textures. If you still like plain textures, use texture ID 3 and edit the color with /mtcolor. Do not use plain textures. They may look decent with your ENB Shaders but not everyone has ENB, so don't use plain textures at all!
Now you can always use /mtcolor to set the color in texture studio. More details about this in the Texture Studio section below.
If you wish to find texture of a default GTA object, go here, search for your object and once you get it click on the "Details" button, then click here and you'll get a list of the textures on it. Go to texture studio and use /tsearch [Your texture name] (Remove the square brackets).

Texture Studio - A Basic Guide
Here comes the main part, the texture studio guide with basic commands!

Installation
Click here to see all versions of Texture Studio. I recommend 1.9c but it's upto you. Then click on the Source Code (.zip). Once downloaded, unzip it to a folder you want, I use Documents. Then download the Windows Server. The provided link is for 0.3.7 R2. If you wish to get the 0.3.DL R1 server, click here.
Make a new folder in your documents with any name, and unzip the server.zip download to there. Open the folder, copy the samp-server.exe and paste it in your texture studio folder.
Done.

Launching Texture Studio
To launch texture studio, you need a working SAMP version which matches your server.zip download.
Go to Texture Studio folder, double click and open the samp-server.exe. It is the backbone of your texture studio server! Do not close it while mapping. Now open your SAMP client, and click 'Add Server'. Enter the IP as localhost and if this doesn't work, delete and add a server with IP 127.0.0.1. This should work. It should show up like this. Connect to the server.
And you should be in-game now with Texture Studio loaded!

Creating a Map
To create a new map, once you go in-game, type /newmap. Enter the shortest name that comes into your mind. For example, I'd name San Andreas State Police HeadQuarter Map as sasphq. As simple as that.

Placing, Selecting and Editing Objects
To create a new object, use /cobject. Either fetch object IDs from here or you can do it the other way where you don't need to use /cobject.
In this method, use /osearch. Don't enter the full name of the object you're searching. Like for 'pipe', use 'pip' instead for more results, some objects are named weirdly. Now a list of search results should pop up on the left side. Click on each of them to see a preview and click Create when you find the appropriate object!.

For selecting, use /sel followed by the Index. Then use /editobject to edit it. To clone/duplicate the object, press Left ALT when the /editobject GUI is open. For proper rotations and movement, use /rx, /ry, /rz and /ox, /oy, /oz respectively followed by rotation/movement value.
For example, I want to rotate a wall by 90 degrees. I'll use /sel to select it then I'll use /rz 90. Here is a small demonstration of me using it.

Tiling
Tiling is an important part. Select an object with /sel and then type /sindex. There will be several numbers shown. Each number indicates one tile. An object can have innumerable number of tiles. 1, 2, 3, etc.. You need to focus on the one you're using. /mtcolor and /mtset depends on this.
To reset the tile labels, use /rindex
Each object has unique tiling. Now while I was making a floor with the man_parquet texture (3840), tiling held a lot of importance.
Look at the images below. Different objects, same texture. Notice the difference?
You're right, different tiling! Look at their tiling:-

Groups
To add objects to a group, use /gadd followed by the object Index. To edit the group, use /editgroup. Again, you can always use the rotation and movement commands which are /grx, /gry, /grz and /gox, /goy, /goz respectively. Refer to the above paragraph for more information.

Use /grem to remove a particular object from the group or use /gclear to clear the whole group selection. If you wish to delete all the objects in the group, use /gdelete and use /gclone to clone all the objects in the group.

Use /gmtset to set a texture for all of the objects in the group and use /gmtcolor to set the color.

I'll tell how /gmtcolor and /mtcolor works, in the next section.

Below is a demonstration of a few of them.
Texturing
Use /mtextures to open the texture pallete. Scroll through the pallet using Y and H. Use Numpad 4 and Numpad 6 to change texture pages. Use Left ALT to apply a texture. Did a mistake? Use /mtset 0 0. 0 is the default texture for any object, every object has its own unique one.
Use /tsearch to search for a texture and click on the one you want. You'll see the texture index on the bottom right of your screen. Use /mtset 0 [Texture ID] where the 0 is the tile ID and Texture ID is the Index.

/mtcolor and /gmtcolor use the same format.
/mtcolor 0 0xFFFF0000 is what I used in the demonstration above.
Here, I divided it for you.
Site used to fetch color hexcodes: http://www.colorpicker.com/

Lighting and Shadows
The default GTA lighting and textures are horrible sometimes. Either too dark or too bright. There's a way to fix it.
I've just explained /mtcolor above. Understand it then read further in this section.

Okay so now that you know what /mtcolor exactly does, you can use it to fix the lighting.
Type /mtcolor 0 0xFFFFFFFF. It'll set a uniform shadow/highlight value to all indexes/tiles of the object.

Text
Use /sel to select an object and then use /text to edit text.
Firstly, set Font Bold to "On" because thin fonts look bad.
Then set alignment to Center
Then set Font Size to 512x128 or 512x256 or 512x512. Just keep in mind that these numbers (like 512, 128, etc.) indicate the number of pixels. So, more the number of pixels, clearer is your text.
I'd suggest Ariel or Calibri Font for a modern themed text. Go for Engravers if it's an old-styled map.
Then Click on Edit Font. A box will pop up.
Enter your text in the format shown below.
In the end, set Font to "On'.
For using text, I'd suggest using the plane objects. They don't have collision and are good for using text. I also use the Rockstar Mat object sometimes.

Handling Default GTA Objects
The default GTA mapping may seem weird sometimes or maybe you want to remove some default objects to make a map there. Or do you want to change the texture and placement of the default objects?
Use /gtaobjects to have texture studio show you all GTA objects. Then you'll see the index in the first line.
To remove the object, type /remobject.
To either bring it back or to simply swap a non removed GTA object into a texture studio object, type /swapbuilding.
Keep in mind, if you remove a default object then swap it to a texture studio object and then if you delete your object, you can only bring it back via /undo

Exporting
To export your map as a filterscript, use /exportallmap. Put draw distance more than 500.0, always. It'll be saved in Texture Studio Folder > scriptfiles > ExportMaps.
To import it as filterscript, first open the .pwn export in pawno and press F5 to compile. Then put .amx file in your filterscripts folder.
To export your map as simple .txt file, use /exportmap. Again, draw distance 500.0 or above.
Select the type of code you want, CreateObject or CreateDynamicObject then click Export. It'll be saved as a .txt file in Texture Studio Folder > scriptfiles > ExportMaps.

Texture Studio Common Bug Fixes
  • Some commands not working- Quit SAMP, close and re-open samp-server.exe
  • The Co-Ordinates are messed up- Sometimes rotating along one axis rotates it along another, the object is bugged. Delete the object, restart SAMP and samp-server.exe
  • No commands work- Your Texture Studio download must be incomplete. Delete all of the files and re-install it once again.
It's really easy. Use the search bar or the categories below to search for an object. Then if you see your object on the screen, click on it, then click on details. To get the textures of that object, click on the .txd file on the right side of your screen. Then go in game and use /tsearch [Texture Name] to search for it. Below is a demonstration. (Sorry for the bad quality, it's because I made it into .gif instead of a YouTube video which will be annoying to open)

Below, I'll show you how to get the position(s) of a certain object. For example the pershing square object. Search for it, scroll down and click on "Fullscreen / Position Export" then you'll see the co-ordinates on the right side of your screen. Here is a demonstration of the same:-

Searching an Object by position
Click on the small location blip icon in the search bar. The San Andreas Map will pop up, click on the location you wish to see the objects near to, and it'll show all of them.



Useful Textures
Concrete textures- 3, 139, 8438, 8535.
Wood textures- 223, 229, 230, 288, 301, 1054, 3840.
Glass and window textures- 1123, 3565.



In the end, I'd like to thank Flashhiee for his tips. I literally took a holiday off my school to make this, because I'm normally so busy with mapping projects that I've to complete in my freetime. I hope you like it.
Questions and suggestions are welcome.




For more help, ask on discord.
My discord - https://discord.gg/FW2dUjq
Flashhie's discord - https://discord.gg/p2Y5B
Reply
#2

Reserved for future edits if the above post reaches the maximum text and image limit.
Reply
#3

Quote:
Originally Posted by Uproar
View Post
Reserved for future edits if the above post reaches the maximum text and image limit.
Good work noob, will rep u soon lul
Reply
#4

Quote:
Originally Posted by StrikerZ
View Post
Good work noob, will rep u soon lul
Umm thanks I guess
Reply
#5

G freakin' G!

P.S Lets hope to see better maps from now on.
Reply
#6

Quote:
Originally Posted by Flashhiee
View Post
G freakin' G!

P.S Lets hope to see better maps from now on.
Hope so, and thanks for your contribution too
Reply
#7

Nicely done I've only read a few topics but i'll surely read it fully once i have time, good seeing this type of tutorials around.
Reply
#8

Helpfull!
Reply
#9

Quote:
Originally Posted by RogueDrifter
View Post
Nicely done I've only read a few topics but i'll surely read it fully once i have time, good seeing this type of tutorials around.
Sure thing, be sure to tell me how is it once you read it fully

Quote:
Originally Posted by Kuvards
View Post
Helpfull!
Thank you, hope you get better in mapping with this
Reply
#10

gg this is awesome
Reply
#11

Quote:
Originally Posted by ProScripter
View Post
gg this is awesome
Thank you
Reply
#12

Awesome.
Reply
#13

Quote:
Originally Posted by JakeXxX
View Post
Awesome.
Thank you
Reply
#14

You should add how to handle collisions though, that'll also help in mapping. That might be advanced but it should be learnt alongside any mapping since we don't want maps that has non-visible(because we see a floor but we still fall in it) holes in it because the objects were not given proper collision
Reply
#15

Quote:
Originally Posted by JesterlJoker
View Post
You should add how to handle collisions though, that'll also help in mapping. That might be advanced but it should be learnt alongside any mapping since we don't want maps that has non-visible(because we see a floor but we still fall in it) holes in it because the objects were not given proper collision
As far as I know, we can't edit collisions in texture studio. If you know how to, add me on discord and explain there and I'll add it here.
Also, for adding collision, I've mentioned how to place the chip objects inside them or under the main object.
Reply
#16

Quote:
Originally Posted by Uproar
View Post
As far as I know, we can't edit collisions in texture studio. If you know how to, add me on discord and explain there and I'll add it here.
Also, for adding collision, I've mentioned how to place the chip objects inside them or under the main object.
That's a bummer though, I don't know anything about texture studio, I might have small knowledge on Ultimate Creator and using its Collision set but that's a lot to cover with texture studio. Now that I've started reading the source code of Texture studio, it would take time to be able to make it work with Col_Andreas, but maybe possible with the new models of 0.3.DL.

I'll discuss it with you on discord if ever I get to that point but I think someone might get ahead of me on that, I hope so though. The tutorial would be an enlightenment.


And yeah, the chips is already a rough fixing idea, collisions would put an end to a random pothole in the mappings though.
Reply
#17

Thanks for the tips, really, I never noticed the texture link in the detail section of dev.prineside, I always had to use this website (which was decent, It's no longer live), the chip collision trick was great, I'm feeling generous today, here are some +reps.

By the way, there is a non-working link on your topic, here;
Reply
#18

Quote:
Originally Posted by Eoussama
View Post
Thanks for the tips, really, I never noticed the texture link in the detail section of dev.prineside, I always had to use this website (which was decent, It's no longer live), the chip collision trick was great, I'm feeling generous today, here are some +reps.

By the way, there is a non-working link on your topic, here;
Noticed, will fix it tomorrow once I get on PC.
Also, I'm glad you appreciate my work.

OT: Tomorrow I'm going to add stuff related to using text in Texture Studio, please bear with me.
Reply
#19

Quote:
Originally Posted by Uproar
View Post
Just imagine yourself being in the 1950s, how would it feel?
*80's
Reply
#20

Quote:
Originally Posted by std
View Post
*80's
Yeah mate basically the same. Just wanted to stress on the fact that consider yourself being in the olden times where technology wasn't developed
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)