Popular Content

Showing content with the highest reputation on 08/07/19 in all areas

  1. 1 point
    If you're having issues with models or are looking for help on how to achieve certain results, feel free to ask in here. Note: Please check the Guide section before asking questions in here. Frequently Asked Questions on GTA modding the FAQ is on 3DS Max, though can be applied for various app's Lighting and Shading #1 Why can't I change the smoothing of my model? Your model contains duplicate vertices - this is a typical issue within GTA importers. They tend to break the vertices/split the edges on import, requiring to be welded. View the spoiler for a potential fix. #2 My map model is overexposed in day and night time. Your model lacks vertex color and illumination respectively. The GTA engine uses vertex color information to define lighting which is baked into the model. View spoiler for a potential fix. #3 Why is my Infernus model so bright? GTA engine calculates brightness of vehicles based on map objects collision brightness (that it's standing on) and the vehicle surface properties. View the spoiler for a potential fix. #4 My striped Bullet has different brightness for primary and secondary colors. GTA engine uses different lighting techniques for vehicles than map objects. Some of which are specular lighting, which in short brings a fake highlight onto the vehicle surface, illuminating it. View spoiler for a potential fix. Modeling #5 Certain polygons are not visible ingame, but looks fine on 3D editor. GTA engine among most other game engines uses backface culling, which kills the faces that are not facing/are blocked by ones facing the camera. This procedure is done to save memory. View the spoiler for a potential fix. #6 Can I make scissor doors for my vehicle without requiring scripts? It is possible to modify how vehicle doors appear in their open phase. It involves changing the rotations of dummies and their children objects, the doors. View the spoiler for a potential method. #7 How does vehicle reflections and chrome work? GTA vehicles uses 2 UV channels; first for diffuse, second for env and chrome mapping. If the secondary UV channel is not unwrapped properly, the env/chrome will either not work or flashes too often. View the spoiler for a potential method. #8 I can see through my vehicle chassis when looking at the police decals, why is that? Materials that are responsible for alpha needs to be last in the multimaterial list. If this is not done, textures like police decals will not render parts of the vehicle behind the alpha. View the spoiler for a potential fix. #9 How do I make a vehicle paintable? GTA SA requires models to have a certain colorcoded material applied to the surface of vehicles that needs to be paintable. It also needs (optionally if using textures) a texture that is not black. As anything that isn't black will be. If parts of the texture is grey, the color ingame will look sort of dirty or old. View the spoiler for a method. Miscellaneous #10 I have imported des_sherrifsgn1.dff into 3ds and extracted the textures into a folder, but they aren't displayed. It is not enough to extract the images, you'll have to tell the program where your textures are stored for it to apply them on the model. View the spoiler for a potential solution. #11 I want to remove Wuzimu's glasses and export it to my game. How do I do this? You're going to need a GTA formats importer. I prefer Kam's vanilla tools for skins due to its decent support for bones and skinned models. View the spoiler for a potential method. #12 What file types are worth to know about? GTA has many, many file types, and a lot of them are not natively available in MTA unless you modify your server's anti-cheat system to allow locally custom data files etcetera. So if we're going with MTA friendly files, there are a few. View the spoiler. #13 Where do I find shared vehicle textures, and what's each their use? You can locate the .txd for shared textures in GTA SA dir\models\generic\vehicle.txd. It stores textures which are used for SA vehicle lights, lighting and many more textures, which are used across hundreds of vehicles. As these textures are found in your local files, none of them are required to be added to custom vehicle .txd files, making for potentially very low file sizes. View the spoiler for a full list. #14 I have downscaled my model, but in-game it remains the same size as before. If your model's scale values says something like 76,144, 76,144, 76,144, it will reset to 100, 100, 100 on export. To correct this, go to Utilities panel, click Reset xForm, Reset selected, then right click the modifier and collapse to. Now your model will have its new scale applied. #15 I have converted a Counterstrike map and turned the main mesh into a collision which is 250kb. I am getting invisible walls, why is that? GTA has a very low polycount limit in regards to collision models. Not to be confused with collision primitive models, which are spheres or boxes, but the CM itself. If it is above or around 5000 (needs additional sources...) polygons, issues will occur, such as invisible walls or as if there's a large box blocking the entire model off. Another culprit for collision issues is the pivot point and position that the collision is exported at. You need to set the collisions to 0, 0, 0 and pivot point needs to resemble that of the main model, otherwise they will not line up properly. #16 My character movement is bugging on custom modeled stairs. GTA III, VC and SA do not have support for advanced staircase collisions, and so they require a different approach, which is a planar ramp or slope if you will. This may not look very good when the character steps on the stairs, however it is the most performance and bug-less method around. **Please feel free to contribute to the FAQ by leaving a comment here or through PM. It will be greatly appreciated.** little note for colors #B8E0B6 #4A4A4A
  2. 1 point
    Slipe is an open source framework that enables anyone to write scripts for MTA:San Andreas in C# instead of Lua, wrapping all MTA elements and classes and including some .NET Core namespaces. It is based on CSharp.Lua by Yang Huan. Slipe features: Runs on Windows and Linux Built in continuous deployment support with (GitHub) webhooks Object oriented wrappers for all MTA elements Async/await for MTA functions that use callbacks C# style Http requests, sockets and XML methods. Use Visual Studio and its Intellisense Type safety You can find more information about the project on https://mta-slipe.com. Our Discord Our Github The project is still in Alpha, and since it is open source anyone is welcome to contribute
  3. 1 point
    السلام عليكم و رحمه الله و بركاته اليوم حبيت اسوي مود سهل و خفيف بيساعد المبرمجين في البرمجه بشكل كبير طبعا كنت معتزل و لي سنه ما نزلت شي جديد فحبيت اسوي خير شويه المود عباره عن نظام صلاحيات للحسابات وش فايدته .... ؟ مثلا عندك لوحه و تبي تخليها لكم لاعب فقط تقدر تستعمل السكربت عشان تخصص اللوحه لحسابتهم فقط او مثلا عندك لوحه و بها ازرار كتير و مثلا تبي زر يكون خاص للاعب بكل سهوله تقدر تستعمل السكربت السكربت هدفه توفير الوقت + طبعا عدم استخدام طرق التحققات الشائعه بين المبرمجين الي احيانا تسبب مشاكل للسيرفر --------------------------------------------------------------------------------------------------------- Export Functions / الوظائف الي تستطيع استدعائها Server Side : createPremission deletePremission addPremissionToAccount removePremissionFromAccount Client/Server ( Shared ) : getAllPremissions isAccountHasPremission getAccountsWithPremission getPremissionTable isPremissionExist Client Side : getClientAccount ------------------------------------------------------------------------------------- شرح الوظائف : createPremission تستخدم هذه الوظيفه لعمل صلاحيه جديده Usage : createPremission ( premissionName ) premissionName = اسم الصلاحيه الي تباها deletePremission تستخدم هذه الوظيفه في مسح صلاحيه موجوده من قبل Usage : deletePremission ( premissionName ) premissionName = اسم الصلاحيه addPremissionToAccount تستخدم هذه الوظيفه لاعطاء صلاحيه للحسابات .. Usage : addPremissionToAccount ( AccountName , Permission ) AccountName = اسم الحساب Permission = الصلاحيه removePremissionFromAccount تستخدم هذه الوظيفه في مسح صلاحيه من حساب Usage : removePremissionFromAccount ( Account , Permission ) Account = اسم الحساب Permission = الصلاحيه getAllPremissions تجيب لك الصلاحيات الموجوده Usage : getAllPremissions () الوظيفه ترجع لك جدول فيه الصلاحيات الي موجوده isAccountHasPremission تتحقق اذا كان الحساب عنده الخاصيه او لا Usage : isAccountHasPremission ( AccountName , Permission ) ترجع القيمه boolean getAccountsWithPremission تجيب لك الحسابات الي عندها صلاحيه محدده Usage : getAccountsWithPremission ( Permission ) Permission = اسم الصلاحيه ترجع لك جدول فيه اسماء الحسابات الي عندها الصلاحيه ذي getPremissionTable تجيب لك الجدول الكامل للصلاحيات الجدول كالتالي : Permissions = { PermissionName = { Accounts ...... }, etc........... } isPremissionExist تتحقق لك اذا كان في صلاحيه بالأسم الي انت مسويه من قبل او لا Usage : isPremissionExist ( PermissionName ) getClientAccount تجيب لك اسم حساب اللاعب في الكلينت سايد Usage : getClientAccount ( Player ) لو اللاعب مو مسجل بيرجع لك قيمه guest -------------------------------------------------------------------------------------------- طبعا المود يحفظ الصلاحيات لو وقف المود و اشتغل مره تانيه .. *NOTE : لسا ملاحظ اني كتبت كلمه Permission غلط معلش مخدتش بالي رابط التحميل : PERMISSIONS SYSTEM Ver: 1.0.0 المود مو مشفر للي حابب يتعلم كدا كدا المود مخصص للمبرمجين :- UPCOMING SCRIPT / السكربت القادم Resources Manager ( V3 )
  4. 1 point
    Lo que te he pasado yo funciona. Lo tengo yo puesto en mi servidor... Fijate que lo has copiado bien y lo has puesto bien. function cancelarDisparos ( attacker, weapon, bodypart, loss ) if getElementInterior(attacker) == 11 and getElementInterior(source) == 11 then setElementHealth( source, getElementHealth(source) + loss ) cancelEvent() end end addEventHandler ( "onPlayerDamage", getRootElement (), cancelarDisparos )
  5. 1 point
    🤗الحمدلله اني قدرت اساعدك ، حياك الله
  6. 1 point
    مدري كيف ما نسيت ارستر السيرفر صراحة شكرا لكم جميعا وخصوصا @HassoN أحب أشكرك كل الشكر
  7. 1 point
    Olhando seu código aqui por cima, é válido lembrar que não é necessário kickar o jogador pra bloquear o logout, pode ter jogadores que entraram a pouco tempo no seu servidor e nem jogaram o suficiente pra entender como funciona e continuar jogando dai eles tomam um kick desnecessário e nunca mais voltam, você pode cancelar, fazendo desta forma: addEventHandler ("onPlayerCommand", root, function (cmd) if cmd == "logout" then -- Se o comando digitado for o "/logout", então: outputChatBox ("Comando bloqueado: /"..cmd, source, 255, 30, 30) -- Envia output informando o jogador. cancelEvent () -- Cancela a execução do comando. end end)
  8. 1 point
    @edge Slothbot nu conduce, e doar pieton @Idwk45 Poti incerca cu NPC high-level control (HLC), o gasesti pe pagina asta impreuna cu alte resurse
  9. 1 point
    اوو اذيك يسطا ايه الاخبار , فينك ياعم
  10. 1 point
    بتضبط بس بذي الحالة استعمل guiSetVisible بدل الفاربل
  11. 1 point
  12. 1 point
    @majqq is right, but I don't think a loop would be needed anyway. Just set the voice you want for each player when they spawn or when they change skin.
  13. 1 point
    Thanks for the help, it's something like @majqq I've already done in my scripts!
  14. 1 point
    تأكد من اسماء التيمات اللي ما تبيها تخش الوظيفة addEventHandler( "onClientMarkerHit", resourceRoot, function ( player ) if ( source == Marker and player == localPlayer ) then if ( getElementData ( player, "Job" ) == false ) then local team = getPlayerTeam ( player ) if ( team ) then local teamName = getTeamName ( team ) if ( teamName ~= "Police" and teamName ~= "Medic" ) then guiSetVisible ( WindowJob, true ) showCursor ( true ) end end else Exports ( "#FF0000F5قم بالخروج من الوظيفة السابقه من خلال" ) end end end )
  15. 1 point
    ! طيب قالولك الاخوان حط كودك عشان يساعدونك
  16. 1 point
    @slapz0r If you're considered about performance. You should use int loop. local players = getElementsByType("player") for i = 1, #players do local player = players[i] -- do your stuff end Source: https://springrts.com/wiki/Lua_Performance
  17. 1 point
    Hi everyone, a long time ago (novermber 2018) i started making new project called MTA Racing. This project has an own unique atmosphere legendary games such as: NFS Underground 1/2 + Midnight Club games series by Rockstar games. I am a big fun of it and we started implement it, but this project has status abandoned in april 2019. But right now i decided to finish it in free time. Now i gonna tell you more info about this. Features: Custom mapping around Los Santos, 70% remake. Custom race tracks. Tuning: Spoilers Front/Rear/Side bumbers Neon Lights Windows tinting Race modes: Circluit Sprint URL Speedtrap Top Time Drift Street-X Drag Vehicles: BMW M3 Camaro SS Audi TT Mercedes AMG Subaru Impreza Lexus IS 300 Nissan Skyline R34 Toyota Supra Mitsubishi Lancer Evo X Dodge Viper 2018 Lamborghini Huracan Mercedes E63 Audi R8 Custom OST: 60+ songs (via stream) Languages (You can send me your language and i gonna add it) Russian English Now i gonna show you some screenshots: Relase date: N/A Groups: VK: https://vk.com/mta_race Facebook: http://fb.com/mtarace Discord: https://discord.gg/ac5puD I don't have so much time to finish it. Any ideas/feedback/support will be appreciated. Thank you MTA Community and everyone.
  18. 1 point
    وعليكم السلام موفق في عملك اخوي زيادة على كلامك اللعبة زمان كانت توصل 25 الف الان صارت توصل 29 الف
  19. 1 point
    No puedes inventarte eventos... ¿No es más fácil utilizar onPlayerDamage y añadirle el 'loss' a la vida? No sé... function cancelarDisparos ( attacker, weapon, bodypart, loss ) if weapon == 0 and getElementInterior(attacker) == 11 and getElementInterior(source) == 11 then setElementHealth( source, getElementHealth(source) + loss ) cancelEvent() end end addEventHandler ( "onPlayerDamage", getRootElement (), cancelarDisparos )
  20. 1 point
    Amigo, tu código no tiene mucho sentido... Te daré una pequeña ayuda con este y después lo continuarás tú para que puedas aprender. --CLIENT addEventHandler("onClientRender", root, function() -- Con esta función se tomara el interior del jugador constantemente. local int = getElementInterior(localPlayer) -- Se toma el interior del jugador. setElementData( localPlayer, "Interior", int ) -- El dato "Interior" guarda en que interior se encuentra el jugador. end ) addEventHandler("onClientElementDataChange", root, function(key,oV,nV)-- Esta función se iniciara cuando se detecte un cambio de interior por el jugador. if key == "Interior" then -- Detecta si el dato que cambia es "Interior". triggerServerEvent( "onPlayerInteriorWarped", source, oV, nV ) -- Inicia un evento enviado al lado del servidor donde source es el jugador que cambió de interior, oV es el antiguo interior y nV es el nuevo interior. end end ) --SERVER SIDE addEvent("onPlayerInteriorWarped", true) -- Añade el evento 'onPlayerInteriorWarped' al lado del servidor. addEventHandler("onPlayerInteriorWarped", root, function(oldInterior,newInterior) -- Tu función. --TU CODIGO end ) Te aviso que no probé el script así que, si hay un error, dime. Mucha suerte
  21. 1 point
    that will do only for one specific player, if you want all the players with this skin model use a loop like: for i, v in ipairs(getElementsByType("player")) do
  22. 1 point
    @majqq Using triggerClientEvent you can actually making it harder as you can create your own keys to secure the scripts. But it will comes at a huge price. You are risking your variable names. You have to create your own security. You are risking your security keys. Converting your encrypted code to loadstring code comes at a cost of performance. (+ it is done in Lua and not C++) The download speed isn't optimised as you are requesting files per resource. The start sequence of the files for all resources in total is something you do not have full control over. ... My recommendation for high security: compile them (losing variable names +) (Optimised +) obfuscation (secure layer +) (decrypt time - ) disable cache (not available as file) (download time - ) But if you want to give high load/download time to the players. Do only step 1.
  23. 1 point
    As i thought, i wasn't sure about that. So at the moment, there's no any other extra possibility to "secure them more", excluding cache="false" and compiling with highest level of obfuscation?
  24. 1 point
    Sending code with triggerClientEvent's and loading it with loadstring can give the stealer not just the code, but the exact same code as you wrote it. Note: If a stealer has stolen compiled code (event without obfuscation), the variable names you gave before are gone.
  25. 1 point
    nothing can protect your resources except for modules or some magic tricks
  26. 1 point
    fileDelete download the file and then delete (and not secure bc the file visible for 3-5 seconds while the server is still downloading), cache false not download the file but load it into the memory.
  27. 1 point
    What's the point for that? If cache="false" does same?
  28. 1 point
    You can add at the end of client side script code fileDelete("client-script-name.Lua")
  29. 1 point
  30. 1 point
    كالعاددة بدون فواصل و لا كلام ابدااع مشاء الله عليك اخوي احمد 🤖🔥
  31. 1 point
    Folosești funcțiile createVehicle, createPed, warpPedIntoVehicle și setPedControlState. Și cred că și de resursa asta ai nevoie: https://wiki.multitheftauto.com/wiki/Slothman/Slothbot
  32. 1 point
    Hey, folks! I've decided to release this lobby I made about a year ago since it's been left unused (the project disbanded). The lobby itself is fully functional and dynamic, meaning it can (should) adjust to any amount of rooms available (pagination). There's also a fancy effect when you hover over a room, plus a few other cool features. Should you look at the code, you may notice that it's not fully finished. The design was made by airplanE, and I put it into effect. Let me hear what you think! Grab it here: https://github.com/ce2kettu/unison-lobby
  33. 1 point
    Quest-System Salut jucatori de MTA, am lucrat la un sistem de quest pentru voi am sa las mai jos un link de descarcare. Creat de catre : Felix5k Discord : Felix5k#2041 Link : https://community.mtasa.com/index.php?p=resources&s=details&id=16061
  34. 0 points
    isn't your server called Balkan Roam a clone of grafuroam?