How to create custom models/objects for RedM with collision

Apparantly many of the RedM community members don’t know yet how to create custom models for RedM so here’s a quick tutorial.

So as a quick summary, there’s no direct way to add custom models directly for RDR3 as you would do with GTAV. But on the other hand, RedM’s converter tool can convert GTAV models to RedM compatible formats.

I’m going to use Blender’s Sollumz tool to create model and ytyp but you can use 3DS Max and any ytyp creater as usual (I highly recommend using Sollumz though). Also Im going to use embedded collisions for this tutorial.

This tutorial expects you to have basic knowledge of creating custom models(If you want to), generating YTYP’s and have basic knowledge of setting up a RedM FXServer and streaming files.


Creating the model which we want to convert for RedM
  • We have our beloved monkey for the test and the final model is named as redm_test_model with embedded collision and embedded texture.
    IMPORTANT NOTE: Do NOT embed your textures else you will face crashes after being in game for a while

  • Next, I’ve exported the model and the YTYP. I’ve kept the YTYP as XML only since Sollumz by default export everything as XML. If you are using Max and OpenIV, you need to only export ydr file. We will be needing the YTYP file only for copying few lines so you can view the YTYP in OpenIV itself or in any text editor if you are using Sollumz.
    image

  • Now you need to go to your RedM Application Data folder. My RedM Applcation Data path is F:\Steam Games\RedM\RedM.app. Once you are in the RedM Application Data folder, copy the exported ydr file which in this case will be redm_test_model.ydr

  • Now click at the file path shown in your File Explorer, remove everything and type cmd and hit enter. If you do it correctly then you should have cmd opened with your RedM path shown as below.
    Before:
    image
    After:
    image
    image


  • Now for converting the model you need to run the following command and hit enter:
    .\CitiCon.com formats:convert <your_model_name_here>.ydr
    For our example the command will be:
    image

  • If everything goes well, you should have a message in your CMD showing that the model converted successuly. The converted model is now named as redm_test_model_nya.ydr and can be found in your RedM Application Data folder.
    image

  • Now we can rename this model to our original model name and place it in a stream folder of a RedM resource in your server. So we are going to rename redm_test_model_nya.ydr to redm_test_model.ydr

Creating RedM compatible YTYP
  • We are going to use this ytyp template to create a proper YTYP for our object. This YTYP was dervied from Disquse’s first post of custom objects on Cfx.re Discord.
    template_custom_object.ytyp (1006 Bytes)

  • Once you have downloaded the above YTYP file, open it any text editor

  • Now open your YTYP file which we first created for our GTA model (In our case it is redm_test_model.ytyp.xml) and copy these 4 lines from it. Values shown in the image below might differ from what you have.
    image

  • Once you have copied the lines, open up the template_custom_object.ytyp file and replace the 4 lines shown in image with the lines copied in the above step.
    image

  • Now replace all the model_name_here in the template_custom_object.ytyp file with your ydr file name. So according to this tutorial we will replace all the model_name_here with redm_test_model.

  • Now we replace ytyp_name_here with any name which you want to give to your YTYP file. We are going to replace it with redm_test_model_ytyp. Once you have done this much your contents should look something similar to the image below

  • Now you can save the file. Once you have saved the file, we need to rename our template_custom_object.ytyp with the same name which we used in the previous step. So we are going to rename our template_custom_object.ytyp file to redm_test_model_ytyp.ytyp

  • And now we can just stream our newly created redm_test_model_ytyp.ytyp and redm_test_model.ydr file and spawn it in game using any script.

21 Likes

hi, this prop entered as addon?
how did you adjust fxmanifest to load this prop as addon?

I did the whole tutorial and managed to spawn it as a replace, but as an addon it won’t.

1 Like

Add this to your fxmanifest and replace propname with whatever name you have.

files {
	'stream/propname.ytyp'
}

data_file 'DLC_ITYP_REQUEST' 'stream/propname.ytyp'

Thanks, it worked perfectly.
I would like to take one more doubt, is it possible to extract a construction from RDR to modify it in blender or 3ds?

i can extract the .ydr file in open iv, but i can’t open or operate this file.
Is there any way to convert?

2 Likes

As of now, no. There’s no RDR file exporter in my knowledge

1 Like

how would i get the name of a house from own rdm?

2 Likes

Try using external texture dictionary instead of embedded if you are using embedded

Hi.
i do it like you but i get stuckt by convert the ydr to nya.ydr dont know why can you help me pls?

I’m also having this issue…

With this method, would it be possible to say, make new horses? As in if you already have a ymt and ytd file? Or do you think you could simply duplicate a horse within any scripted stable, name it differently, and add new that way?

Hello ,
Sorry about my english ,

Tools like ninjaripper can extract model layers on CodeX , and after we can use it in 3DS with a script in ninjaripper call’s local , i don’t know i that a good reply ^^

image
We have such a mistake

Do you know how to solve this ? Thanks

The insertion on the server works wonderfully. Unfortunately I always have a milky texture when I populate it with a .ytd and do not embed the textures.


Neat info thank you. Can this work with yft files or only ydr?
Is there an easy way to port cars

There’s no YFT modification support with any tools/process for RDR at this time.

Custom water: Water shader RDR2 - 3ds Max - YouTube

Hey @ultrahacx I’m getting this error when converting the file. I’m i doing something wrong?
Can you please help

Have you found a solution?

Use CodeX to create you Library texture and in codex, use the SRGB param’ :slight_smile: