Any way to access the raw XML Data?


#1

Title.

I would like to access the raw xml data, e.g. from all vehicles.meta combined. Without having to extract them and process them to a json ending up sending 5MB more to clients than needed.

It is not just the vehicles.meta’s I would like to get data from…


#2

What? Like Vehicles.meta is already streamed and loads right. Why do you want to access it?


#3

If you want to replace certain UI parts e.g. you might want to access the vehicle meta to get certain information out of there, like the manufacturer.

Or there is a large file with all preconfigured outfits in the gamefiles. If you could access it, then a random ped composition on freemode models might not need to look shit anymore.


#4

You can access manufacturer without the xml.


#5

I guess that means the general answer is very likely no. Time export all the meta files I need to json and migrate to C# completely. If I have to send now like maybe 50MBs of data to the client I might at least compress them beforehand.


#6

why would you have to access ‘all’ data, that’s so unlikely


#7

Because to implement certain things to buy you could e.g. access shop_tattoo.meta instead of implementing the tattoo data yourself. Want to browse outfits? scriptmetadata.meta Shop vehicles? Well I think it is clear by now.

At the moment you would need to implement all data again, that you want to use in a variation, instead of starting with the core meta files and replacing them, if needed. Or just use their data partially.


#8

but there’s natives R* made for those already, like GET_SHOP_PED_OUTFIT


#9

but many/most of the natives need knowledge prior to calling the natives that you could get from the data files instead of hardcoding it.

If I would ask you to get a list of all vehicles in game including maybe the cost (in one of the metafiles) and then sort them by manufacturer. What would you do?

At the end of the day, you would still have to hardcode all the vehicle names / hashes or just iterate blindly through the hashes. Unless I am missing something.


#10

Could you explain how? I was stuck on this a while back searched everywhere and eventually gave up.

– Vehicle name
vehicle.display_name = GetLabelText(GetDisplayNameFromVehicleModel(vehicle_model))
– Vehicle brand ?


#11

Gonna add here, if someone else comes here in their journey to the brand/manufactuerer name for their journey.

There is NO native that does that.

The names are hardcoded into the LSC / other display scripts.

e.g. sub_9bc49 in https://raw.githubusercontent.com/brendan-rius/gta-v-decompiled-scripts/master/carmod_shop.c4