[Release] vRP Framework


Ah - you’re unconditionally calling Citizen.Await in your proxy library, and this does not seem to check if the promise has been resolved already at wait-time, and unconditionally yields the current coroutine. This functionality was provided by a community member, and this probably was missed during code review.

Perhaps checking around that call chain should improve the performance of your proxy library, and perhaps other users of Citizen.Await.


This issue should be resolved by this commit. Performance is still not really what one would expect, now 1000 calls to getUserId take ~4 seconds but this is all CPU-locked on the main thread, leading to a main thread hitch.

I wonder if this is inefficiency in your Lua code, in the Lua scheduler code, in the Lua runtime, or in some other part of the framework… :confused:

EDIT: duh, this was a debug server build :sweat_smile: a release build does a lot more manageable 0.83s, though this still implies a single call takes 830 microseconds, which seems a bit… bad.


Thank you for your answers and for fixing the issue, I already had in mind most of the things you said, but with a lot of confusion. I couldn’t use coroutines directly, that’s the reason I used Citizen.Await in the first place. Anyway, there is a lot of intermediate design going on, so I decided to stick to the benchmark result whatever are the reasons for it being slow and just simplify everything by not calling TriggerEvent when it’s not necessary (so I’m thinking of a more straightforward approach).


What’s up guys, i want some help to change the where it says “MENU MENU” to a custom text, somone can help me with this please?



vrp\modules\gui.lua line 151


Thanks bro, i will check that when i get home!


Wonder if it means we can now safely get rid of tunnel communication delays in loading mode and cut 30 seconds of loading time after the connection on the newest server builds, or are those delays meant to deal with some other issues? @Imagic


It was done to deal with the player instancing issue, probably because of too much packets sent over a short period while connecting, no idea if the issue is still relevant, but you can disable it in the config files if you want to try.


Do you mean single sessions? Got to know what to look for while trying :wink:


@Imagic would be nice if u add the phone prop to the menu im currently using vrpex and everything seems to run perfectly +1


Hei! why when i edit on group.lua the server dosen’t work?


How i can create jobs?


i need help locking a car to a level so you can only drive it if you were that level and i would also like to lock blip to a job as well so you dont see them tell ur in that job so can anyone help me? im using vrpCapture i also want to add this


So, a little update, the next vRP version will be called vRP 2 (current is 1.0), it will have big breaking changes and aims a better design and less overhead.

(discord echo)
Especially with vRP 2, modifying vRP core files must be prohibited. The goal of vRP is to have a generic framework that everyone can use, modifying the core files is killing its purpose. This version will be much more generic and I will probably explain in the documentation why modifying vRP is killing it; instead, extensions should be created so they can communicate with each others and missing customization features should be added.


So When Will That Be Available?


Where to change so it is filled with orange and no orange when its empty?


You can join the discord or look at the commits to see the progress.


were do i find the invite?


vrp_garage take out the vehicles with tuning preparations how can I get this out?


you mean the Wheels? Im not sure (cause i not test it until now) but if thats the prob take a look in the vehicle.meta of that car…there is a line what says which wheels are normal used.