Jump to content

[TOOL] 50p's MTA:SA Map Exporter (3DS MAXScript) v0.3


50p

Recommended Posts

  • Replies 99
  • Created
  • Last Reply

Top Posters In This Topic

  • 1 month later...
Hai Jorge_F :3 ( oh 2010, how old )

@Topic:

Is it normal, that the tool doesn't exports the .colision files ?

Yes, it doesn't export .col because I don't know the function name for it that is created in KAM's script because the files are encrypted. I wish I could export .col and .txd as well, this would be the most usable script for GTA, not just MTA. But it's too much work for me and creator of KAM's script has vanished. I haven't got experience with creating binary files, not to mention creating them with MAX scripts, so I don't know how to export textures to .txd files either.

Anyway, thanks for using the tool!

Link to comment
  • 2 weeks later...

What do you guys think of a map editor within 3DS MAx? I've been thinking about it and even started to work on it some time ago. I made a custom group of models that can be created (in the Create tab). Currently there is an "MTA Vehicle" (vehicle spawn) that you can create, although the model that is created is one mesh. There are some drop down boxes to select which vehicle you want to spawn and a little picture of the vehicle but for some weird reason each vehicle created uses the same previously set settings. Can't show you any picture because I don't even know if I'll ever continue development of this script. I wish I could make a Map Importer too but the problem is that map files contain model IDs only and MTA creates GTA objects and there is no way to get models from GTA and create them in 3DS Max, they'd have to be exported from the game and that's not convenient.

Link to comment
  • 4 weeks later...
What do you guys think of a map editor within 3DS MAx? I've been thinking about it and even started to work on it some time ago. I made a custom group of models that can be created (in the Create tab). Currently there is an "MTA Vehicle" (vehicle spawn) that you can create, although the model that is created is one mesh. There are some drop down boxes to select which vehicle you want to spawn and a little picture of the vehicle but for some weird reason each vehicle created uses the same previously set settings. Can't show you any picture because I don't even know if I'll ever continue development of this script. I wish I could make a Map Importer too but the problem is that map files contain model IDs only and MTA creates GTA objects and there is no way to get models from GTA and create them in 3DS Max, they'd have to be exported from the game and that's not convenient.

Yea, it should cause a headache! It will be a little tricky to make an "MTA Importer".

Why a player would import his .map to 3Ds max? To make a little animation?

We should research around MTA servers to know how is the mapper's experience with editor. Or try to discuss here... your idea is really interesting (:

Link to comment

Well CrystalMV suggest a function to draw 3D triangles ingame

If this comes out, you will be able to make your own 3D in MTA sa.

He also makes this

I am not frustrated to export each part of the map or each objects, all need to do this for their props in games levels, but I am frustrated when its the time to make the script :mrgreen:

Link to comment
What do you guys think of a map editor within 3DS MAx? I've been thinking about it and even started to work on it some time ago. I made a custom group of models that can be created (in the Create tab). Currently there is an "MTA Vehicle" (vehicle spawn) that you can create, although the model that is created is one mesh. There are some drop down boxes to select which vehicle you want to spawn and a little picture of the vehicle but for some weird reason each vehicle created uses the same previously set settings. Can't show you any picture because I don't even know if I'll ever continue development of this script. I wish I could make a Map Importer too but the problem is that map files contain model IDs only and MTA creates GTA objects and there is no way to get models from GTA and create them in 3DS Max, they'd have to be exported from the game and that's not convenient.

Yea, it should cause a headache! It will be a little tricky to make an "MTA Importer".

Why a player would import his .map to 3Ds max? To make a little animation?

We should research around MTA servers to know how is the mapper's experience with editor. Or try to discuss here... your idea is really interesting (:

Basically, if you can export maps from 3DS Max then you should be able to import them back and add new models or adjustments and re-export it. The thing with editor in 3DS Max is that you wouldn't be able to test/play the maps but the idea about editor in 3DS is pretty good because it's easier to move/rotate/scale things around (at least for me). It'd be easier to make make something happen when something happens, like vehicle change checkpoints to change vehicle, give player money when he finishes 1st, explode vehicle on finish line, send them a message, etc. Like a "visual script editor" sort of thing, something like Kismet in UDK. UDK inspired me to write more advanced scripts in 3DS Max for MTA.

@Benox.exe

After watching this video, I feel like going back in time where creating 3D Models was very limited and there weren't many functions to speed things up. He created 3 polygons (6 triangles) in like 5 minutes? I can make that in couple of seconds in any 3D application.

Link to comment

I just wanted to show this to you to put you aware of other possibilities if you do not know !

I know that this is very primitive and bad to work with, I'm a 3ds max user :)

I'm just a noob in scripting and programming due to lack of time to learn this at the same time as the 3D

But first you wanted to make a map editor within 3DS MAx

and now you want to add an events system that will export lua files

Thats ... alot of work !

Whats about the size tool that doesnt exist in MTA editor ?

Yea I totally support your idea ! I like system like UDK kismet and Hammer events and I think this is the best way with scripting events, placing sensing area and add an event to it, not just for noobs in scripting, but for scripters also, because with a system like that you can work more fast and more user friendly and its more fun also.

But the work to make a system like that is Huge, hard and we must make a different system for each game engine, UDK have a big team of pro coders.

Link to comment

I see the reason to make scripts in 3DS Max for MTA. Will depend on what the user really want to do.

It would be more agile when you want to export one model directly to your resource. This tool will automatically copy model files and declare it to meta.xml if the entry does not exist.

This tool will be a kind of "advanced" MTA exporter/importer of such models.

By the way, import a map to a 3Ds scene feature will be a hard work for the developer to script it. The final users will prefer to edit on the standard MTA editor because i think that not all has 3Ds max installed. This tool will be amazing for people with want to export a model directly to their resource and later import it to max to make some changes.

I always dreamed with a "visual script editor". Would be really nice to build a "mini-game" inside your resource by simply linking events on a GUI window. At the end, the tool will transform it on a .lua script or a external resource will read from the custom file created. But the freedom will be limited! If the visual script editor has too many options, the simplicity is not going be not present. Well, another headache! :D

Link to comment
But the freedom will be limited! If the visual script editor has too many options, the simplicity is not going be not present

-Add event zone

-set bounding size of the event zone (can be a colshape)

-Add element camera

-Add key frames for the camera animation

-Add camera effect shader (example filter of set greyscale value)

-Animate this value :shock:

-Puma marker owned and samp owned much MORE !

export script

= When the player Client will enter the event zone, a nice camera event will be triggered.

MTA offers these possibilities and it can be awesome with such tools.

But I think 50p prefere to make the camera animation in 3ds max and all the stuff and after export.

if you make a tool like this a lot of people will stick on you and said ''I love you 50p''

Link to comment
  • 2 weeks later...

Thanks for your comments guys.

@Benox.exe

It wouldn't be hard to script as long as you know MAX Scripting language :) I do, well, I'm not a pro but I've built a few tools and macro scripts for personal use (like taking clay renders, removing materials form models, a "spherify" tool (to layout vertices in a round shape - for hi-poly modelling), quick preview (for hi-poly modelling to see models with turbo smooth on, and wireframe off) etc. Everything is possible and not as hard as it seems when you know what you're doing :)

Anyway, event scripting wouldn't be hard but GUI script would be harder to script because I'd have to make a GUI sort of editor (like in UDK) for 3DS Max.

Oh, camera animation, I haven't thought of that! It's a great idea! :) Also, creating custom col shape would be possible since MTA has a createColPolygon function to support this. I would be so much user friendly to just create 2D shape from the top view and actually see the shape instead of trying to imagine it. Could use the resource someone made to animate camera to create cut scenes. It would take 3DS Max camera animation and export it to the format that resource supports or create new resource and its own format :)

@RaceXtreme,

Indeed, the hardest part would be to make a Map Importer, since models would have to be exported from GTA3.img first before importing them to 3DS Max, but it's definitely doable! I think Spark tool has a console tool to export models from .img files with commands. Would have to research this one though. The first thing to research would be to find out how KAM's script imports the .dff models which is hard to find out without getting in touch with the creator himself. I figured out how to export models to .dff with his function but still can't figure out how to import.

The only downside of having this map editor is testing the maps. I'd have to think of a way of testing maps but still make it convenient for the user. Maybe, export the map as a test map, start the map on the local server and switch the window to the game window, it would all be automatic but I think I'd have to use .NET for this and the user would have to run MTA client, server and 3DS Max at the same time. I don't know how many people can run MTA and 3DS Max at the same time because both of these applications take a lot of RAM.

Anyway, the ideas are there, it's just a matter of scripting it! :D I can see all these tools on the horizon but when will I reach that point, I don't know.

"So much to code, so little time."

EDIT:

Did some testing, looked here and there and found a way to use 3DS Max and Spark tool (GTA archive tool - like IMG Tool) to export models/textures from .img archives :) With just 1 click I can export vehicle and its texture from gta3.img. Also, found a great framework for MAX Script which adds a Schematic View (that's a node-based control), have a look at sample screenshots from studios like Blur that used it: http://www.lumonix.net/helium.html

This could be used for the visual scripting like Kismet in UDK.

EDIT 2:

I've made a small tool (not fully working yet) to let me create nodes for that Schematic View plugin for 3DS Max. It'll let me create nodes easier.

k051l3.png

Link to comment
  • 3 weeks later...

This is what I made yesterday. It's a camera animation exporter. It exports the animation to an XML file. Exports things like: camera position, target, rotation (roll) and FOV. Currently working on a resource to play the animations. Since it exports every frame, it will be easy to play the exported animation. Animation has to be baked first so I can play animations by names. Do you like the camera animation during countdown in racing games like Gran Turismo

? I want to let the user to be able to create their own :) I also want to let the resource create animations too, so you could make "fly through" sort of anims for your maps inside MTA itself. I've learnt a little bit about Bezier Curves yesterday to know how to create curves and I'll let the camera follow the path instead of baked frame animation (like I did in 3DS Max on the screenshot below).

I downloaded the Stage resource but it's way too complicated to do any camera animations in it. At least for me.. besides I didn't even know how to save/export the animation to reuse it.

Right-click and view in a new tab/window if you can't see the full image.

1y3kzq.png

Link to comment
camera animation = moving the camera specifically in a certain way (cinematic camera?)

Yes. Imagine that you want to create a spawn screen with camera moving around the spawn location, do the camera animation in 3DS Max and export it, then load it to MTA and play it.

Link to comment

Since my pictures are too large and the forum doesn't resize them I'll be posting links instead. Here is a little update:

http://tinypic.com/view.php?pic=27zx7yq&s=6

I made a resource to load and play camera animations exported from 3DS Max. I could have used 3DS Max native animation files but they are too large for MTA client to download them, besides there is useless information.

If I want to play an animations I can do the following:

        camera = CameraManager: New( ); 
        camera: LoadAnimFile( "round.mtacam" ); 
        camera: PlayAnimation( "around_object" , Vector3: zero( ) ); -- the 2nd parameter is the offset where to play the animation. Vector3:zero() is equivalent to 0, 0, 0 

I can also attach animation to elements so that animation follows the element.

As you can see in the bottom left corner of MTA window, there is a little axis gizmo to give you easy orientation of the 3d space. I want to add a "move gizmo" so that animations/key frames can be moved within MTA.

Link to comment
  • 1 year later...

Map Exporter v0.3

MapExporter.PNG

DOWNLOAD

Intro:

Modellers know how time consuming setting up custom maps is. This tool lets modellers generate .map file automatically along with meta.xml and basic Lua script which replaces models for them (no texture support though since some custom maps only use 1 .txd file and some maps use more).

Exporting maps from 3DS Max looked as follows:

- export each part (model) of the map

- export collision for them all

- make a Lua script to replace models (not every modeller knows how to do it)

- make a map file with Map Editor (it may take some time to align all the models to look seamless)

- make a meta.xml with all models included in it ()

With this script, the process changes to:

- export COL files for all your models

- select all map models in 3DS Max that should be included in map file (make sure they have materials applied!)

- hit "Export to .map" button (uncheck boxes if Lua script, meta.xml or DFF files are not needed, i.e. already exported)

How to install and run the script:

Just extract the MapExporter.ms file from MapExporter.zip to <3ds max>\Scripts\(Startup) (you don't have to extract it to Startup folder unless you want the script to be started with 3DS Max).

(If you haven't installed it to \Startup folder, keep reading)

Run the script from 3DS Max, "MAXScript -> Run script..." (find the MapExporter.ms script)

Once the script is running, you should notice new rollout in Utilities tab "50p's MTA:SA Scripts".

How to use:

Select all the models you want to be exported to .map file (optionally .lua script, meta.xml and DFF models), check/uncheck the appropriate boxes and hit "Export to .map" button.

Then you will be asked where to save the map file.

Facts to remember:

- all the files are recreated every time you export the .map, so if you have created meta.xml or .lua file already, they will be overwritten every time you export your map

- If you generate Lua script, the models which will be replaced by the script start from model ID 4000+

- .lua file name is the same as .map file name

- .lua and meta.xml files are created in the same directory as the .map file

- .col files should be placed in the same directory as the .dff files (which is (exported map folder)\map\ )

Any questions, suggestions or bug reports please post in this topic. Thank you.

NOTE: This script doesn't export .dff nor .col files. For that, you still need to use KAM's or daniska's scripts. My script generates .map, .lua and meta.xml files only to speed up map/resource creation.

Didn't really know where to release this script but I think this is the most suitable place.

Changelog:

v0.1:

- initial release

v0.3

- fixed: typos in Lua and meta.xml generated files

- added: selecting map spawn position by clicking GTA map

- added: exporting models to DFF (KAM's scripts installed required!)

thnks for the tutorial i finally finish converting all drifting custom maps like okaru, fantasy , akina , & many more thnks ^^ heres the video

Link to comment
  • 1 year later...

Hi awesome script, it has really helped me out.

But when i set my map location it doesn't load up the gtasa-map-small.jpg and marker.tga and only comes up blank.

So where do you have to extract them files to because I just extracted the whole archive to C:\...scripts/startup

Also I noticed you can't set the height of the map, so in game what height is it? I've looked around in the rough location where I set the map location but I can never find it.

I have created a large track and its going to take forever aligning each model one by one

Please help me!

Thanks

<3

fms7zd.png

Link to comment
  • 8 months later...
  • 2 weeks later...
  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...