Leaderboard
Popular Content
Showing content with the highest reputation since 16/04/25 in all areas
-
Hey MTA community! I’m excited to release the latest version of the In-Game Lua Editor for MTA:SA, now with even more powerful features to enhance your development experience directly inside the game. What’s New in v3.0: Create Resources directly in the editor, with the ability to choose the folder (e.g., [ADMIN], [GAMEMODES]) for resource creation. Rename and Relocate Resources in one action, making resource management easier. Delete Resources with a confirmation dialog to avoid accidental deletions. Create and Edit HTML Files alongside Lua files, allowing you to handle both HTML and Lua resources directly in the game. Base Path System to restrict developers to specific folders, making it perfect for team organization and isolating workspaces. Function Blacklist: Automatically block dangerous functions like loadstring, setAccountPassword, removeAccount, and others for added security. In-Panel Notifications to give real-time feedback for every action performed in the editor. Security Enhancements: Full ACL Permission System to control access and operations. Activity Logs with SQLite tracking every create, edit, delete, and rename operation. Path Protection and additional security measures to prevent risky operations. Video Demo: Watch on YouTube Download: Download the Resource Here GitHub Repository: Visit the GitHub Repository How it Works: The In-Game Lua Editor allows you to browse, create, edit, and delete Lua and HTML files all in real-time directly inside MTA:SA. No need for external editors or FTP uploads, and no server restarts required. Installation Instructions: Download the resource and add it to your server. Grant "Admin" ACL permissions to the resource. Edit the permissionACL variable in editorS.lua with your admin group. Use the /editor command in-game to open the editor. Let me know your thoughts and feedback! This tool has saved me countless hours, and I hope it helps improve your development process as well. More updates and contributions coming soon! Developed by BranD - Trident Sky Company5 points
-
Tired of San Andreas water that looks like someone spilled green paint and called it “good enough”? Meet this shader: water so realistic, you'll forget you're in a 22 year old game. Enjoy ripples, reflections, and surface waves that almost make you wish GTA had fishing. Boats finally look like they’re actually in the water not floating on radioactive soup. Best part? It’s fully customizable tweak the look, the color, the movement, or make the water as cursed as you want. Plus, it’s at least kind of optimized to run smoothly on hopefully most rigs, so you won’t need a NASA PC to enjoy the water. Just install it, and watch your players get distracted and drive off a pier. https://community.multitheftauto.com/index.php?p=resources&s=details&id=190074 points
-
Hello MTA community! My name is Ehsan/Exxon I’m excited to share a project I’ve been working on: mtasa-nestjs – a high-level API server framework for MTA:SA, inspired by Express.js and NestJS. What is mtasa-nestjs? mtasa-nestjs is a modular, structured Lua framework that makes building server-side APIs for MTA:SA simpler and more scalable. It brings modern backend patterns like Controllers, Middlewares, Guards, Interceptors, and DTOs directly into MTA:SA resources. It’s perfect for developers who want to build secure, maintainable, and professional APIs for their game servers. Key Features Express.js / NestJS-inspired structure: Clear separation of concerns for Controllers, Middlewares, Guards, and Interceptors. JWT Authentication & Password Hashing: Built-in secure JWT (HS256) implementation and password hashing from scratch. DTO Support: Validate and structure input data for cleaner code. Middlewares & Guards: Handle CORS, JSON parsing, authentication, authorization, and more. No External Dependencies: Works out-of-the-box in Lua for MTA:SA. Why I Built This Many MTA:SA servers handle HTTP requests in an ad-hoc manner, often leading to messy and hard-to-maintain code. With mtasa-nestjs, you can structure your API like a professional backend framework, making your server easier to scale and maintain. Example Usage Creating a JWT Token: local token = jwt.encode({userId = 123, role = "admin"}, "SECRET_KEY") iprint(token) Protecting Endpoints with Guards: AuthGuard = function(ctx) local authHeader = ctx.headers["authorization"] if not authHeader then error(Exception.Unauthorized("Missing Authorization header")) end local token = authHeader:match("^Bearer%s+(.+)$") local payload = jwt.verify(token, "SECRET_KEY") ctx.user = payload return true end Why You Should Try It If you’ve ever wanted a clean, structured, and modern API architecture for your MTA:SA server, this is a great starting point. It’s fully modular, fully Lua-based, and ready to handle complex server-side logic with minimal fuss. Where to Get It Ready on my github repository called mtsa-nestjs Make sure to create your own controllers, guards and etc. I’d love to hear feedback from the community. If you try it out, let me know what features you find most useful or what could be improved. Happy coding!3 points
-
MTA UI Editor is a project created with the goal of making interface creation for Multi Theft Auto (MTA) much easier and more accessible. The editor provides a dedicated visual application for building interface windows for MTA, supporting both DxDraw-based interfaces and MTA’s native UI system. With it, you can visually design your interfaces and export them already prepared for direct use in your MTA resources, saving a significant amount of development time. This is the first version of the project, so some configurations may still be inconsistent or incomplete. If you encounter any issues, unexpected behavior, or have suggestions for improvements, please open an issue on the project’s GitHub repository. Feedback from the community is extremely important to help improve the tool. Requirements Windows .NET Framework 4.7.2 Open Source The source code is completely open and free. Anyone is welcome to modify it, improve it, or contribute to the project in any way. Download: https://github.com/was547/MTAUIEditor/releases Official Repository: https://github.com/was547/MTAUIEditor Picture: https://ibb.co/LXYgXdqV I don't know if I have published in the right place on the forum, sorry if this is the wrong category for this kind of resource, greetings!3 points
-
3 points
-
-> develop and sell cheats for players to abuse in servers -> develop and sell anti-cheat for servers to defend from cheating players -> win-win with both sides3 points
-
Hi, There is an upcoming build being prepared by Dutchman101 and releasing later today that should solve this issue. Make sure to update your game once the build is out and check whether the issue persists or not.2 points
-
This fan-made list features free, open-source, popular and reputable Multi Theft Auto resources containing Lua scripts that are not compiled or obfuscated. The goal is to provide a simple starting point for developers who want to learn from high quality code, reuse well maintained systems and contribute to projects that benefit the entire community. All resources included here are publicly available, actively used by players or servers, and shared with the intention of supporting collaboration, transparency and better development practices. Anyone is welcome to suggest additions or improvements so the list can stay accurate and useful for newcomers and experienced developers alike. The Multi Theft Auto server comes with a pack of official resources preinstalled. The full list of these default resources (and more information) is available on this MTA Wiki Article. Highlights: Map Editor Freeroam "play" gamemode Race gamemode Handling editor "hedit" Map fixes Scoreboard (TAB player list) Country of IP Address Admin Panel Performance Browser The list of the community/fan-made MTA resources is hosted on the following Google Spreadsheet for ease of maintenance and accessibility for everyone. https://docs.google.com/spreadsheets/d/1bbr-cXRvWQuyaNx0KtI2Imk4bD0UTWKxx0x8sh2FGKM/edit?usp=sharing Want to suggest a change or addition to that list? Reach out to us on the MTA Discord or here on the forums. It helps if you share your resource on #showroom (MTA Discord), community.multitheftauto.com, forums 'Resources' section, etc...2 points
-
Sphene is now officially open source! https://github.com/sphene/sphene-mta Excited to work with all of you, to turn this highly experimental pile of trash into something beautiful! Remember, Sphene historically has been very experimental. Many different approaches were tried and researched and that has left a lot of experimental, legacy and unfinished code. It's not the most glamorous, but we're still proud of it! Together we'll refactor the legacy code, we'll finish the unfinished pieces and we'll work through all the large problems that are ahead of us. Repository wiki will be filled with information, and lists (current states of each mission, etc) in the coming days. REMEMBER! Sphene is NOT production ready. We will only help those who want to contribute to our development with setting up their local development versions.2 points
-
I am working with Cursor. Which is a fork of Visual Studio Code modified with AI in mind. It is my daily driver. The free version should give you enough monthly requests to finish your script. An no this is not a stupid AI, it is a optimised version for coding after all. You can even choose which AI you want to use, but some advanced may be behind a paywall.2 points
-
PARKING METER SCRIPT COMPATIBLE WITH THE NEWEST OWLGAMING VIDEO SHOWCASE INTERESTING FEATURES OF THIS SCRIPT: dxDraw UI – modern and user-friendly display (like a real parking meter). Hourly parking system – players can choose how many hours they want to park up to 24 hours (to prevent unrealistic over-parking) Dynamic price calculation – price is automatically calculated based on time. Active/expired parking check – players can extend their active parking or start a new one. Sound effects – confirmation, payment. and error sounds. MDC integration – all payments and parking data are stored and then shown in MDC. Multiple parking zones – you can add unlimited zones and meters via config file. PAYHIP LINK If you have any questions, feel free to text me on Discord! (fajlyp)2 points
-
MTA:SA - Claire Anticheat Claire is a modular, lightweight anticheat resource for MTA:SA, designed to improve the integrity and fairness of servers. Its core philosophy is simple: organize detections into clean, independent modules, make them easy to configure, and build an open platform that others can expand and improve. Claire runs silently in the background, acting as a guardian layer — constantly monitoring player behavior, network conditions, and client-side integrity without interfering with gameplay or degrading performance. Its design favors discretion and precision, targeting cheats without disrupting legitimate users. If you're looking for a solid, customizable way to secure your MTA:SA server, try out Claire. Why does it matter? By being fully open-source, Claire gives server owners an accessible and transparent tool to detect common exploits and improve their server environment. But more than that, it invites collaboration. The idea is that, together — through testing, feedback, improvements, and shared knowledge — we can create a more solid, trustworthy anticheat resource that benefits the entire MTA community. Current features Claire currently includes over 20 independent detection modules, covering movement, combat, environment manipulation, network spoofing, and more. All detections are modular, configurable, and designed to operate silently in the background with minimal performance impact. False positives are rare thanks to tolerance-based logic, score systems, and heuristic analysis. Overall reliability across all modules is expected to be around 95%, all features are listed at our GitHub page. Contributing Claire is an open-source project — contributions are welcome! Feel free to contribute with PRs, reports, or suggestions at our GitHub page. You can also reach out to us on Discord. Download Download from MTA Community: latest release - 1.1.5 from 2025/04/22 Download from GitHub: latest release - 1.1.5 from 2025/04/22 Please check our GitHub page before downloading it, I'm open for suggestions.2 points
-
It is indeed a kind of attack. It means that the player is able execute clientside-code on demand. The attacker is triggering 'known generic events' which might be handled by the server. The ones that are unknown are in your logs, the ones that are known and trigger able are not. But that does not mean that the ones that did trigger didn't cause unwanted results. You might want to consider to restart the resources, just to make sure there is no memory leak. The event which AngelAlpha mentioned can indeed help with detecting that kind of attacks. As an extend you can also add a honeypot, which in this case are 'unkown' events for your server but know for other servers. When a player uses this kind of attack again, you can ban them automatic. You might want take a closer look at your logs for candidates (for example money related). There is also this event: https://wiki.multitheftauto.com/wiki/OnPlayerTriggerEventThreshold But be careful with automating things, always test these kind of stuff or you might accidentally nuke your own player base.2 points
-
Subject: Seeking Paid Assistance for Vultaic MGM Setup & Debugging Hello everyone, I am currently working on a project using the Vultaic Multigamemode (MGM) framework, but I am encountering several persistent issues during the installation and configuration phase. Despite my efforts, I haven’t been able to get the environment fully stable and functional. I am looking for an experienced developer who is deeply familiar with the Vultaic framework, its module dependencies, and SQL integrations. What I need help with: Proper installation and resource structuring of the Vultaic MGM. Fixing script errors (nil values, database connection issues). Ensuring all game modes (Race, DM, Shooter, etc.) load correctly without map errors. General optimization for server performance. I value your time and expertise, so I am willing to pay for professional assistance to get this resolved efficiently. If you have experience with this specific framework and are interested in helping out, please send me a PM here or add me on Discord: [Discord istifadəçi adınızı bura yazın] Looking forward to hearing from you. Thanks! discord:calmn91 point
-
1 point
-
Take a look at the example on this page what you're looking for is here https://wiki.multitheftauto.com/wiki/IsLineOfSightClear You can use this function to move the character https://wiki.multitheftauto.com/wiki/SetPedControlState1 point
-
Do you really have nothing better to do than post BS? It's just sad, man. I see why Ardic blacklisted you - you never could help yourself. None of this helps your cause at all. Not surprised at your inability to understand that though.1 point
-
Yeah. I've seen this documentation. So much to start with xD. But yesterday i checked it and downloaded server folder from github repo. I thought that there will be more code. But for my luck that code is acceptably short. Like i guess still month to understand all functions, and how to call them. But one month to start code something is not that wrong. Anyway. Thank you so much for your help. For now i decided to make my own buffer system as module. As im not having problems with understanding C/C++ it will be easier even for me to make whole server as C code lol. I can make that module as lua script. But i like to keep everything organized. When i'll get courage to make that module. Maybe also i'll get will to make my own documentation and publish it. So no one longer gonna strugle with modules. Anyway. Thank you for your help again and your recomendations. From me i can recommend you getting in to C languages. Getting point of how them work improve also skills in lua. As you are "closer" to machine. I think that this topic can be locked.1 point
-
UPDATE: I figured that it was an acl issue, that I had to enable HTTP for everyone, so the created API can be available for everyone, even the ones who don't have any auth But I will be needing help on ACL, since I am creating a new form scratch gamemode, I will need to write my own and custom acl as well. Or perhaps use the current account system of MTA as well since I can't edit to create my own And I appreciate a lot for the helps IIYAMA gave me during this issue with the stuff I had with CEF and how they should communicate.1 point
-
Добрый день! При присоединении к серверу появляется данная ошибка "АС#4 Malicious activity". Переустановка Windows не помогла. В чем может быть проблема?1 point
-
Vehicle handling doesn't affect aircraft top speed because MTA has a separate velocity cap specifically for flying vehicles. This is controlled by setAircraftMaxVelocity. The default value is 1.5, which roughly translates to that 270 km/h limit you're hitting. To increase it: setAircraftMaxVelocity(3.0) The parameter is a multiplier, not an actual speed value. Some reference points: - 1.5 = default (~270 km/h) - 2.0 = ~360 km/h - 3.0 = ~540 km/h - 5.0 = ~900 km/h There's no documented maximum limit for this value, but extremely high values may cause physics instability or unexpected behavior. Keep in mind this applies to all aircraft globally, not per-vehicle. If you need to check the current value, use getAircraftMaxVelocity. local currentMax = getAircraftMaxVelocity() outputChatBox("Current aircraft speed cap: " .. tostring(currentMax)) So yeah, handling is for ground vehicle physics. Aircraft speed limits are a separate system entirely.1 point
-
Really cool project! It's nice to see someone putting effort into tooling for MTA. The community really lacks this kind of stuff and it's a shame these posts don't get more attention. I'm actually working on something similar myself, a direct converter for developers that goes from Figma to MTA. You design your UI in Figma, tag your layers with suffixes like _checkbox, _image, _button, etc., and it exports the whole thing ready to use. Different approach but same goal: making UI development less painful. Good luck with the project, hope it gets the traction it deserves.1 point
-
I cannot seem to find unstable variant of net.so/net_64.so anywhere. The install-data script (which uses https://mirror-cdn.multitheftauto.com/bdata/net_64.so) fetches untested one. The same site does actually provide unstable net.dll for windows. https://nightly.multitheftauto.com also just provides untested one. So, if anyone could provide me with the link to unstable net_64.so v1.7, that'll be wonderful. I'm specifically looking for rev-25899 but any of the recent revision will work.1 point
-
PRO|Race Slipstream DRS System | Advanced Aerodynamics for MTA:SA Developed by Hunterix and AI ------------------------------------------------------------------------------------------ PRO|Race Slipstream DRS, a fully custom Drag Reduction System designed to bring tactical depth and realism to MTA racing servers. Unlike standard nitro scripts, this system manipulates the vehicle's physical handling and aerodynamics in real-time. How it Works: 1. Kinetic Energy Recovery (Slipstream Charging) The system encourages aggressive close-range racing. The DRS battery only charges when you are drafting behind another opponent. Requirements: You must be traveling above 150 km/h and maintain a distance of less than 10 meters from the car ahead. Visual Feedback: As you draft, the custom 3D light bar on the rear of the car creates a dynamic gradient, shifting smoothly from Red (Empty) to Yellow, and finally Green (Ready). 2. Active Aerodynamics & Physics Once the battery is fully charged (Green), the system is primed. Activation: Pressing 'X' engages the DRS. Visuals: The rear wing physically rotates 90 degrees to an open position to reduce air resistance. The light bar begins a rapid strobe effect to indicate active discharge. Physics: The script modifies the vehicle's dragCoeff (Drag Coefficient) in real-time. This effectively removes air resistance, allowing the car to break its natural top speed limit without unrealistic acceleration boosts. 3. Safety & Strategy Just like in Formula 1, the system is designed for straights, not corners. Brake Cut-off: Touching the brakes immediately deactivates the DRS, closes the wing, and restores normal downforce to ensure cornering stability. Dynamic Consumption: The charge drains while active, shifting the light bar color back from Green to Red, forcing players to strategically decide when to deploy their boost for the perfect overtake. Technical Features: Custom 3D Wing & Light Bar models. HLSL Shaders: Dynamic texture coloring with alpha blending and neon glow effects. Vector Math: Precise slipstream detection using dot products and velocity vectors. Custom Audio effects for activation and deactivation. https://www.youtube.com/watch?v=mvPintb-5GU Download : https://www.mediafire.com/file/ptmdt6rcjquq4rz/ProRaceDRS.zip/file https://discord.gg/PM6axzEZ1 point
-
1 point
-
Welcome to **SAS Network**, a next-generation MTA:SA community combining the best game modes in one place! Play your way: • **CNR (Cops and Robbers)** – create chaos, chase criminals, earn reputation • **ClanWars** – build your team, dominate the battlefield • **Freeroam** – explore, drift, chill, and show off your rides • **Race** – master custom-made tracks and climb the leaderboards What makes us special: • Smooth, lag-free EU servers • Fully optimized custom systems • Active and friendly international community • Frequent updates, challenges, and seasonal events • Discord integration & ranking system Whether you’re into competition, cruising, or pure fun — **SAS Network** has a place for you. Join now: **Server IP:** Coming Soon **Discord:** https://discord.gg/rrFJ5CPsjz **Website:** Coming Soon1 point
-
Hello, when I reviewed your code I came across many issues, and I fixed them through testing. You can check again if you’d like. Let me tell you about the changes I made: The requested "proper zombie system" is now ready: Uses a single timer Controlled animations Smooth flow Performance optimized function findRotation(x1, y1, x2, y2) local t = -math.deg(math.atan2(x2 - x1, y2 - y1)) return t < 0 and t + 360 or t end local zombies = {} function createZombie(x, y, z, firstTarget) local zombie = createPed(0, x, y, z, 0, true) zombies[zombie] = { target = firstTarget, state = "spawning", lastAnimation = nil, spawnTime = getTickCount(), updateDelay = getTickCount() } setPedAnimation(zombie, "ped", "getup_front", 2000, false, true, true, false) setTimer(function() if isElement(zombie) and zombies[zombie] then zombies[zombie].state = "idle" end end, 2000, 1) end function setZombieAnimation(zombie, anim) if not isElement(zombie) or isPedDead(zombie) then return end local data = zombies[zombie] if not data then return end if data.lastAnimation == anim then return end setPedAnimation(zombie) if anim == "idle" then setPedAnimation(zombie, "ped", "WALK_drunk", -1, true, true, true, false) elseif anim == "chase" then setPedAnimation(zombie, "ped", "run_fatold", -1, true, true, true, false) elseif anim == "attack" then setPedAnimation(zombie, "medic", "cpr", -1, true, true, true, false) end data.lastAnimation = anim end function updateZombieState(zombie, data) if not isElement(zombie) or isPedDead(zombie) then zombies[zombie] = nil return end if not isElement(data.target) or isPedDead(data.target) then data.target = findNearestPlayer(zombie) if not data.target then data.state = "idle" return end end local tx, ty, tz = getElementPosition(data.target) local zx, zy, zz = getElementPosition(zombie) local distance = getDistanceBetweenPoints3D(tx, ty, tz, zx, zy, zz) setElementRotation(zombie, 0, 0, findRotation(zx, zy, tx, ty), "default", true) if distance <= 1.5 then if data.state ~= "attack" then data.state = "attack" setZombieAnimation(zombie, "attack") end elseif distance <= 50 then if data.state ~= "chase" then data.state = "chase" setZombieAnimation(zombie, "chase") end local angle = findRotation(zx, zy, tx, ty) local moveX = math.cos(math.rad(angle)) * 0.1 local moveY = math.sin(math.rad(angle)) * 0.1 setElementPosition(zombie, zx + moveX, zy + moveY, zz) else if data.state ~= "idle" then data.state = "idle" setZombieAnimation(zombie, "idle") end end end function findNearestPlayer(zombie) local nearestPlayer = nil local nearestDistance = math.huge local zx, zy, zz = getElementPosition(zombie) for _, player in ipairs(getElementsByType("player")) do if player ~= zombie and isElement(player) and not isPedDead(player) then local px, py, pz = getElementPosition(player) local distance = getDistanceBetweenPoints3D(zx, zy, zz, px, py, pz) if distance < nearestDistance then nearestDistance = distance nearestPlayer = player end end end return nearestPlayer end function updateZombies() for zombie, data in pairs(zombies) do if data.state == "spawning" then if getTickCount() - data.spawnTime > 2000 then data.state = "idle" setZombieAnimation(zombie, "idle") end else if getTickCount() - data.updateDelay > 100 then updateZombieState(zombie, data) data.updateDelay = getTickCount() end end end end local updateTimer = setTimer(updateZombies, 200, 0) addEventHandler("onClientElementDestroy", root, function() if zombies[source] then zombies[source] = nil end end) addCommandHandler("zombie", function() local x, y, z = getElementPosition(localPlayer) createZombie(x, y + 4, z, localPlayer) end)1 point
-
why is it so hard to find a decent server to play on without admins being so toxic and rude? why is it only in mta? Last server I played on was a default server not even a minute has passed and I got banned and called the n word by the owner. That's not it I played on another server which was called default P and I got muted for no reason, I only asked why the server was lagging and they muted me without any explanations. I even got blown up over and over again when I joined a random rpg server, not even a second in and I just kept getting blown up repeatedly. I did play mta since 2012 and I did play on cit ( not like it's any different lol the mta admins there are way worse ) I even remember that there was an event in cit where you had to steal a car and deliver it somewhere while everyone is chasing you and I even got chased by an admin with super speed ( they had the cit tag by the way ) and got destroyed by them, another time I literally got banned for delivering the vehicle and accused me of exploiting bugs. I only stole the car and drove it. the point is I really wanna find a decent server to play on, a server that respects its player community. MTA doesn't have that sadly and it breaks my heart that one of my favorite games has a very toxic community and very sadistic admins. I really wonder if I should make my own server and I wouldn't mind if anyone wants to help me make it and spread positivity with me I'd be glad to welcome you in. Thanks for listening.1 point
-
The arms dealer script is something I made recently, this script can be used in different game modes. Dealers can be found in various locations around Los Santos. Here's a preview video For more information, feel free to join my discord server: https://discord.gg/Nex7e6JUhe Discord account is mehdi46641 point
-
1 point
-
# UPDATE * Added sounds when the player doesn't have enough money or when the purchase is done ( different sounds for both). * Dealers now have voices that are triggered when the the bag is opened or when the player can't buy the weapon. * The bag now remains open even when the transaction is failed.1 point
-
Looks great, I can definitely say it’s a solid script. There are just a few small things that could make it even better if improved. For example, you could add a dialogue system with Arms Dealers, letting players buy weapons through that. Maybe also throw in some 3D sound effects when purchasing a weapon it’d give the whole thing a richer, more immersive feel.1 point
-
good job, if you have a different problem please post it here or create a new topic and tag m1 point
-
There are two kinds of methods, one with setTimer and the other with the alternative onClientRender setTimer : The cursor always appears in the center for one frame after showCursor(true). function openPanel() showCursor(true) -- Save the last cursor position (values between 0 and 1) local x, y = getCursorPosition() -- Get the screen resolution local sx, sy = guiGetScreenSize() -- After 50ms, set the cursor back to its previous position setTimer(function() setCursorPosition(x * sx, y * sy) end, 50, 1) end onClientRender: Use a timer or onClientRender to set the position after showing the cursor. function panelAc() showCursor(true) local x, y = getCursorPosition() local sx, sy = guiGetScreenSize() local function imlecDuzelt() setCursorPosition(x * sx, y * sy) removeEventHandler("onClientRender", root, imlecDuzelt) end addEventHandler("onClientRender", root, imlecDuzelt) end your fixed code : local toggle = false local savedCursorX, savedCursorY local function togglePanel() toggle = not toggle if toggle then showCursor(true) if savedCursorX and savedCursorY then local screenX, screenY = guiGetScreenSize() -- Wait one frame before setting the cursor position setTimer(function() setCursorPosition(savedCursorX * screenX, savedCursorY * screenY) end, 50, 1) end else savedCursorX, savedCursorY = getCursorPosition() showCursor(false) end end bindKey("k", "down", togglePanel) I think you understand, if you have a different problem please post it here or create a new topic and tag me1 point
-
Is there any error on debug or F8? I dont understand why its not working1 point
-
MTA:SA Lua Enums - TypeScript-inspired Enumerations for Lua Overview A lightweight, type-safe enumeration library for Multi Theft Auto: San Andreas, bringing TypeScript-like enum functionality to Lua. This library provides a clean, intuitive way to define and use enumerations in your MTA:SA scripts. Key Features Multiple Syntax Styles: Create enums using traditional function calls or with a more elegant syntax similar to TypeScript Global and Local Enums: Define global enums for application-wide constants or local enums for module-specific use Type Safety: Validate enum values and prevent modification after creation Auto-incrementing Values: Automatically assign sequential values to enum members Utility Methods: Easily convert between enum values and names with built-in helper functions Example Usage -- Global enum with string name and curly braces enum 'Direction' { NORTH = 1, EAST = 2, SOUTH = 3, WEST = 4 } -- Local enum with direct table assignment local HttpStatus = enum { OK = 200, NOT_FOUND = 404, SERVER_ERROR = 500 } -- Auto-incrementing values enum 'Size' { "SMALL", "MEDIUM", "LARGE" } -- Using enum values local direction = Direction.NORTH local status = HttpStatus.OK -- Get name from value local directionName = Direction.getName(1) -- Returns "NORTH" -- Check if value belongs to enum if HttpStatus(200) then -- 200 is a valid HttpStatus value end Why Use This Library? Clean Code: Eliminate magic numbers and strings with descriptive enum constants Error Prevention: Catch typos and invalid values at runtime Self-documenting: Make your code more readable and maintainable Flexibility: Choose the syntax style that best fits your coding preferences Lightweight: Minimal overhead with no external dependencies Installation Simply include the enum.lua file in your project and add it to your meta.xml: <script src="path/to/enum.lua" type="shared" cache="false" /> Check out the full source code at: https://github.com/norelockk/mtasa-lua-enums This library is perfect for MTA:SA developers looking to write cleaner, more maintainable code with proper type safety. Whether you're building a simple gamemode or a complex resource, these enums will help organize your constants and prevent common errors.1 point
-
Shared\sdk\version.h #define MTASA_VERSION_MAJOR 1 #define MTASA_VERSION_MINOR 6 #define MTASA_VERSION_MAINTENANCE 0 #define MTASA_VERSION_TYPE VERSION_TYPE_CUSTOM #define MTASA_VERSION_BUILD 0 MTASA_VERSION_BUILD это то, что ты ищешь. Можно указать например #define MTASA_VERSION_BUILD 230881 point
-
1 point
-
1 point
-
Honestly, the issues you listed are all issues that are caused by a combination of bad scripts and a bad infrastructure. There's only so much Multi Theft Auto can do if server owners don't bother to learn proper security practices and implement them. Also, anti-cheat clearly has seen updates numerous of times since 2023 (obviously they're not open about all the changes). Development is happening on a nearly daily basis with plenty of new updates coming available. The community is far from being neglected, a lot of the community is on the Discord server nowadays though. Please get your facts straight before you make such accusations.1 point
-
@thebossofc O erro está dizendo que o 4º argumento do seu setPedAnimation deveria ser um número, mas vc colocou um true no lugar. setPedAnimation(source, "crack", "crckidle"..math.random(1,4), true, false, false, false ) -- 1 2 3 4 (era pra ser um número inteiro, o true é só depois) Faltou você declarar o parâmetro time. Normalmente o valor dele é -1.1 point
-
The warning occurs because onMarkerHit can be triggered by other elements like vehicles, not just players. This means you're sometimes passing a non-player element to getPlayerAccount, which results in returning false instead of an account. You should check if thePlayer is actually a player element before doing anything: function moveGate(thePlayer) if getElementType(thePlayer) == "player" then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(thePlayer)) , aclGetGroup("PMESP")) then moveObject(gate, 1500, 1334.8000488281, -1334.1999511719, 10) end end end addEventHandler("onMarkerHit", marker, moveGate) You should do the same in the move_back_gate function, otherwise, it will execute twice when a player enters with a vehicle, for example.1 point
-
v5.1.0 released (forgot to announce it here) v5.2.0 released, changelogs: https://github.com/Fernando-A-Rocha/mta-add-models/releases/tag/v5.2.01 point
-
ChatGPT ist eine weltverändernde Form von künstlicher Intelligenz. In ihrer Art die Mehrdeutigkeit der Kommunikation zu erfassen und daraus zielgerichtet Antworten zu geben stellt eine Gefahr für unsere heutige Gesellschaft dar. Die grundfesten Ideale des Kapitalismus, der Wertschätzung werden beraubt in dem man seine eigene Existenz in diese Netzwerke opfert. Mit meinem Expertenwissen versuche ich euch zu erklären worum es in Wahrheit geht:1 point
-
Map files Table of contents: Introduction How to read a map file? Broken map file, what to do? Editor bugged, what to do? Modify your maps outside of MTA Extra links Introduction A map-file! What is that? The name already gives away the definition. It is a file which contains a MTA map. The format makes maps portable, so that you can send them over to your friends. You can recognize map-files by the extension: .map Here is an example of a map: Syntax highlight When you open a map file in your text editor. The syntax highlight you should use is XML (HTML will work as well, but the semantic is different and could cause issues with auto complete features, that is if you have enabled those). Changing syntax highlight in for example Visual Studio Code. How to read a map file? Before we start, this is what we call a node: <tagName></tagName> If we take a closer look to the following map file: <map> <object id="object (bevgrnd03b_law) (1)" interior="0" collisions="true" alpha="255" doublesided="false" model="6094" scale="1" dimension="0" posX="635.234375" posY="-3827.2275390625" posZ="5" rotX="0" rotY="0" rotZ="0"></object> <object id="object (gaz9_law) (1)" interior="0" collisions="true" alpha="255" doublesided="false" model="6133" scale="1" dimension="0" posX="625.49114990234" posY="-3771.6955566406" posZ="11.479743003845" rotX="0" rotY="0" rotZ="0"></object> <object id="object (CE_grndPALCST03) (1)" interior="0" collisions="true" alpha="255" doublesided="false" model="13120" scale="1" dimension="0" posX="573.09802246094" posY="-3847.013671875" posZ="3.6442375183105" rotX="0" rotY="22" rotZ="352"></object> <object id="object (CE_grndPALCST03) (2)" interior="0" collisions="true" alpha="255" doublesided="false" model="13120" scale="1" dimension="0" posX="572.64624023438" posY="-3769.0698242188" posZ="4.9519920349121" rotX="0" rotY="21.99462890625" rotZ="343.24649047852"></object> <object id="object (CE_grndPALCST03) (3)" interior="0" collisions="true" alpha="255" doublesided="false" model="13120" scale="1" dimension="0" posX="669.66534423828" posY="-3856.0627441406" posZ="3.6442375183105" rotX="0" rotY="63.99462890625" rotZ="175.99389648438"></object> </map> > we see in there the map node: <map></map> When the map is loaded <map></map> will become our map element. And inside of the map node we see more nodes: <object id="object (bevgrnd03b_law) (1)" interior="0" collisions="true" alpha="255" doublesided="false" model="6094" scale="1" dimension="0" posX="635.234375" posY="-3827.2275390625" posZ="5" rotX="0" rotY="0" rotZ="0"></object> <object id="object (gaz9_law) (1)" interior="0" collisions="true" alpha="255" doublesided="false" model="6133" scale="1" dimension="0" posX="625.49114990234" posY="-3771.6955566406" posZ="11.479743003845" rotX="0" rotY="0" rotZ="0"></object> In this case these two nodes will become two in-game objects. Tagname <tagName></tagName> Each node in the map file will become an element in game. !important A node has a tag name. In this case I gave it the name: "tagName" This tag name specifies in MTA the element type. For example: If it has the name <object></object>, the element-type is an object. If it has the name <ped></ped>, the element-type is a ped. What if the tag name is not matching with one of these entities? (The list is not complete, the rest can be found in this class list, only if the XML syntax is implemented) Then the elements are considered custom elements. They are not visible in game. Custom elements Custom elements have their own purposes. You often see those custom elements used in game modes, for example stealth: <mercenaryspawn id="mercenaryspawn (1)" posX="635.58117675781" posY="-3770.458984375" posZ="18.97974395752" rotX="0" rotY="0" rotZ="0"></mercenaryspawn> The tagname for this node is "mercenaryspawn". The element that is produced after loading the map, is used as a spawnpoint for in a stealth map. Custom elements are invisible. Custom elements do have an orientation. The getElementsByType function can be used to get custom elements. Attributes Attributes are properties applied to a node. They are used to attach data to an element. Example: <entity name="IIYAMA" age="5" type="device" resolutionX="1920" resolutionY="1080" displaySize="31"></entity> An attribute exist out of two parts: <entity name="value"></entity> Name Value The name specifies if the node has the attribute. <entity name></entity> <entity age></entity> If the name is "name", then the node has the attribute "name". And if the name is "age", then the node has the attribute "age". The value will be used for the data for each attribute. <entity name="IIYAMA" age="5"></entity> Identifiers (ID) Every elements can have an identifier attribute, which is used to make it accessible for scripting functions. <tagName id="identifier"></tagName> The identifier of an element can be used in getElementByID to grant access to it. Even though identifiers normally should be unique for each individual, it is not the end of the world if they are not in MTA. They might also be considered as unnecessary for map files without scripts. Element specific attributes There are some attributes that do more than just applying properties. They will change the element appearance and orientation. For example this object: <object interior="0" collisions="true" alpha="255" doublesided="false" model="6094" scale="1" dimension="0" posX="635.234375" posY="-3827.2275390625" posZ="5" rotX="0" rotY="0" rotZ="0"></object> It will be created in interior 0. It will have collisions. (You can walk on it) Alpha. It's opacity is 100%. It is not doublesided. (When you stand inside of the object you can look through it. If doublesided is enabled the same colors/paint from the other side will be applied.) It's model is 6094. It is scaled 100%. (0.5 = 50%, 2 = 200%) Etc. If you want to know which attributes do have influence on the elements appearance and orientation, you have to look that up on the wiki. Here a small list of some those attributes: Broken map file, what to do? If your map file is broken. Step 1 Make a backup. + Always make a backup when re-editing your map. Settings can get lost! Step 2 The first thing you want to do, is just open it in a text-editor. Just give it a quick look and check for anything strange. The file could be empty or some strange values could be used. Do you want to know all the syntax rules (XML)? You can find a list right here: http://www.adobepress.com/articles/article.asp?p=1179145 Step 3 Remove the editor definition. This definition could cause problems in case of invalid characters. From: <map edf:definitions="COBDEF,editor_main"> <!-- Map elements --> </map> To: <map> <!-- Map elements --> </map> Step 4 If you can't find the problem, then you could validate the file. There are services out there that validate XML files. They can help you to find out where your file is broken. Validation tool by W3C: https://validator.w3.org/#validate_by_input Note: You need to do step 3 first. Else you can't parse the file. Step 5 In case of re-opening map files in the editor, but doesn't want to get open. Make a backup. Remove custom elements. See chapter How to read? Retry to open the file. Editor is bugged, what to do? Your editor could be bugged and you are not able to save the map or open a new one. The first thing you want to do is backup the editor_dump folder in your server. This folder is located between all your resources. server\mods\deathmatch\resources\editor_dump Rename the folder name. editor_dump > my_broken_map Stop the map editor. Check if there is a new editor_dump folder. If there is, rename that one as well. Start the map editor again. Modify your maps outside of MTA Sometimes you want to modify your maps without going back in to the editor. Your text-editor is in most cases the way to go. For example you want to move all objects to a new dimension. In Notepad++: Make a backup! (if you are new to this) Select in your file the part you want to replace: dimension="0" Commando: ctrl + H (replacement overlay) Fill in the replace field: dimension="1" Click on: replace ALL. Moving your map? There is a nice online tool that can help you with that: https://mtaclub.eu/converters Edit your map with the DOM (Document Object Model) Knowing JavaScript? Your browser inspector can be used to modify your maps at a higher level. (If you so desire) Extra links: Parent, child and how this is reflected in MTA https://wiki.multitheftauto.com/wiki/XML https://wiki.multitheftauto.com/wiki/Element_tree Elementdata <sync_map_element_data /> https://wiki.multitheftauto.com/wiki/Meta.xml Load maps (manually + including in meta.xml) https://wiki.multitheftauto.com/wiki/Meta.xml https://wiki.multitheftauto.com/wiki/LoadMapData Save maps https://wiki.multitheftauto.com/wiki/SaveMapData1 point
-
Important note: before using this patch, first re-download the latest version of MTA from https://multitheftauto.com/ and re-install it, as the installer contains a procedure to automatically make your GTA installation compatible (without modifying original game files) that for technical reasons isn't included in the MTA auto-updater, on which many users may rely for years without installing MTA, therefore creating a problem if their GTA installation changes at some point. So, if you currently have no compatibility or have an unsupported version of GTA (prompting you to come here) or any other similar problem, please first re-install MTA. If this doesn't help, then proceed with the below instructions. This topic offers a patcher which will patch the following unsupported versions of Grand Theft Auto: San Andreas: USA 1.01 USA 2.00 European 1.01 European 2.00 German 1.00 German 1.01 German 2.00 This patch does NOT turn your gta_sa.exe into a crack/No-CD, but converts your gta_sa.exe to a 1.00 EU version. Please make necessary backups in case something goes wrong; we are not responsible for damaged or lost files. I have tested this personally, though please post if you have any problems while using the patcher. Although you will be reverting back to a fully moddable version of the game, you will also lose improvements contained within 1.01+, so downgrade at your own risk. Remember, you can always upgrade back to 1.01 from this patched version. Should you experience any problems you can always reinstall GTA:SA. Pick one of the following mirrors to download: DOWNLOAD MIRROR 1 (files.mtasa.com) DOWNLOAD MIRROR 2 (MediaFire) Thanks to Mike for testing and mista.maja for helping me get a German gta_sa.exe, and to nippy401 for letting me get ahold of GTA:SA 2.00 I have added 2.0 support for DE, untested. Regarding users of the Steam version of GTA: San Andreas This patch is not compatible with the Steam version of San Andreas, primarily because the .exe is completely different. You don't need to use this patcher for the Steam version, as the procedure to make MTA compatible with it is now included in the installer of recent MTA versions. So if you have the Steam version, follow these steps: 1) install the Steam version of GTA. If you already have it installed, make sure the game, more specifically the EXE is unmodded, or else MTA may be unable to perform the operation. 2) download the latest version of MTA (make sure of this) from https://multitheftauto.com/ > "Download" and install it. If MTA was already installed, make sure to re-install it (your files and saved settings won't be lost, MTA will be overwritten only) to ensure the Steam compatibility operation is performed by the installer. * Make sure to repeat this process every time you re-install your Steam version of GTA, or "verify files" (repair install it) in Steam, or whenever a problem occurs with launching GTA. Last resort This topic and the patcher was created to help a group of users that happen to have either modded, or upgraded versions of GTA:SA. MTA San Andreas is designed for, and thus best supported on, the original versions of GTA:SA (US 1.0 and EU 1.0 EXE's) without later GTA updates (1.01 and later) applied to it.. these updates only change the EXE and not other game files, and break MTA compabibility. So that also means if nothing in this topic works for you, the last resort (actually the method of preference in any case) would be to re-install GTA from DVD so that you will get the original EXE (US or EU 1.0) which MTA supports entirely. As far we know, no DVD version contains an updated EXE (1.01 or later) and they are all 1.0. If you find a retail version with an updated EXE, this patcher is still likely to work for it, unlike any modded GTA versions (based on 1.01 or later) from shady sources which the patcher may not recognize. So because of the higher success rate for original game in any shape, we recommend you to only get the original game from retail (DVD or digital download) and we tend to only offer support if this is the case. MTA will not provide support for attempts to downgrade/make compatible cracked, or heavily modded installations of GTA. Besides the ethical aspect, MTA is also designed to best support unmodded versions and stability or functioning isn't even guaranteed in other scenario's. For more information on places where you can buy legitimate and supported versions of GTA, we advise you to visit this wiki page: https://wiki.multitheftauto.com/index.php?title=Where_to_buy_GTASA NOTE: There have been numerous cases of people externally linking directly to the file. If you wish to link to the downgrader, I request that you link to this TOPIC, not directly to the file. This is to ensure that users having trouble post in this thread rather than creating new topics. If you would like to mirror it please contact an administrator. * Topic update date: 29th March 2020 Changelog: updated Steam compatibility information added more information1 point
-
Section Rules 1. Any fulfilled requests or discarded offers shall be reported via the report system in order to be locked and/or archived. This is mandatory, as the goal is to keep this section as clean and accurate as possible. 2.Topics must have a sufficient description of what are you offering or looking for. Eg. if you're looking for a scripter for your gamemode, you must detail what would you need the scripter for. This doesn't exactly involve giving away the whole concepts or whatever you don't want to disclose to the public, but it would be appreciated if you could include more details than just straight single line offers, such as "I need a scripter for a zombie gamemode". Whether or not the amount of detail is sufficient for the nature of your request is a subject to moderator judgement, and failing to meet criteria may result in your post being discarded. Formatting your topic In order to keep the section clean, accurate and easily viewable, it would be appreciated if you could use the following guidelines for your topic: 1. Topic titles should have the form [LF/OFFERING] Brief description [Paid/Non-Paid]. Please make the description as brief as possible here. Eg: [OFFERING] Skilled scripter [Paid] [OFFERING] Rookie modeller looking for some practice [Non-paid] [LF] Any-level scripter for a small server [Non-Paid] 2. The first post should be written in at least 2 parts: first part should contain a brief description of yourself (and/or the server or community you are from) second part should elaborate on what are you requesting/offering, once again, as detailed as you possibly can/want1 point
-
This is a really big MTA problem. In MTA when you play animation on ped / player It was always be frozen and he can't move. You can work around this but this way sucks too.. but working. This way is using binds and setControlState function. Look at my video.1 point
-
Info: After finding the awesome "snow" script by R3mp i just had the idea to make a winter map ..and here it is: a winter version of my "green valley" map with snow textures and falling snow(thanks a lot to R3mp who made this script and allowed me to use it). Features: - falling snow (by R3mp) - custom snow textures for objects and skins (by SATAN) Supported Gamemodes: - Stealth Download: https://community.multitheftauto.com/index.php?p=resources&s=details&id=611 ------------------------------------------------------------------------------------------------------------ Check out R3mp's resources: https://community.multitheftauto.com/index.php?p=profile&id=4541 point
