Leaderboard
Popular Content
Showing content with the highest reputation since 21/01/25 in all areas
-
Hello MTA players, I realised that I had to create this post because I got a lot of feedback, I stopped all my activities in MTA and I don't play MTA anymore because I had to make some changes in my life and change my life direction, I saw MTA in 2010 and I started playing, during this time I made very good friends, developers and players, so I would like to thank you all endlessly, 3 months ago I stopped all my activities in MTA, but I was still receiving a lot of message requests (for paid development or other issues) after that I gave everyone goodwill feedback, but I had to stop this because I was receiving a lot of messages from MTA servers and players, Anyway I have to say that I will miss all MTA players and developers, I will visit from time to time but I won't have much time for that, for some players who will try to contact me I have to say that I don't have a discord server and I don't answer private messages, I think you will be understanding and thanks for that... I have reached the end of my career in MTA. I have worked voluntarily on many servers and participated in numerous projects. I have sold all the projects I worked on, both paid and free, and I would like to announce that I will no longer be continuing my projects. I had a great time on many servers, and for that, I want to express my gratitude. Finally, I am deeply grateful to the valuable members of the MTA team, as they have helped me in many ways. Some of them include @Sarrum, @Vinyard, @Citizen, @IIYAMA, @AlexTMjugador, and myonlake (Patrik). I will miss you, guys!6 points
-
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
-
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
-
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
-
Hello all. The holiday season is finally here, and we have prepared a more compact summary post for you than usual. Please read on to see, what we have been up to lately. GTA VI The upcoming year will bring us the next game from the Grand Theft Auto series - GTA VI. Planned to launch in Fall 2025 on consoles, it will likely arrive on PC as well, just some months later. The second trailer for GTA VI is also rumoured to be shown soon, with some elaborate fan theories backing these rumours. Will the game be good? Only the time will tell, but looking back, there was not a major GTA game release from Rockstar Games that was bad (for the sake of this argument, let's consider the Trilogy as a minor release ). That alone makes it worth to look forward to it, and it will be also nice to re-visit Vice City similar to how we did it with Liberty City and San Andreas. MTA Status and Updates Not much to report in regards of MTA - we have been focusing on improving various parts of our infrastructure, which is not immediately visible at first glance. Still, since there are many areas that need the attention, there is a lot of work involved. Thankfully, CiBeR, Botder, Lopsi, Dutchman and others have been looking into it. Thanks to the hard work done by our Helper - FileEX, we have also refreshed the Lua syntax highlighting system on our Wiki. For a long time it was unmaintained, causing many of the recent MTA scripting functions and events to be not correctly highlighted in the code snippet examples on the wiki. This has changed though, and it should be working much better now. We have been also tinkering with our #MTASpotlights hashtag on X / Twitter. We are still exploring this idea, but nonetheless, thank you for your submissions so far. If you would like to share some media that we could promote, you can do so on our Discord, just please make sure to read the guidelines beforehand. And, naturally, there have been additions to the mod's source code now and then, bringing in new scripting functions and bugfixes. Similarly, we have been pushing those as client updates for you, also now and then. Player Counts and Other Statistics Type Amount of players Date / Time Recent peak number of concurrent unique players 24,808 players 2024.12.22 (at 18.13 GMT) Highest recorded number of concurrent unique players 52,098 players 2020.04.02 (at 18.00 GMT) Recent number of daily unique players 95,445 players 2024.12.15 (Sunday) Highest recorded number of daily unique players 185,818 players 2018.02.03 (Saturday) Recent number of monthly unique players 478,736 players September, 2024 Highest recorded number of monthly unique players 805,903 players January, 2018 For a mod for a game that is nearly 20 years old now, these are fairly good numbers. Smaller than last year, but still impressive. We are glad that you are still with us. MTA:SA version or series Percentage of players using that version or series as of 24th of December, 2024 1.6.0 99.5% 1.5.9 0.4% <1.5.9 0.1% Also, as of 24th of December, 2024: there are over 90,000 members on our Discord server, we have got 13,790 followers on X/Twitter, 58,000 users follow our Facebook fanpage , and our Steam Community group has nearly 50,000 members. --- To end this post on a high note, we would like to take this moment to wish you all Happy Holidays and a Happy New Year. Enjoy the Season and take care. -MTA Team2 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
-
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
-
Добрый день! При присоединении к серверу появляется данная ошибка "АС#4 Malicious activity". Переустановка Windows не помогла. В чем может быть проблема?1 point
-
i'm planning to purchase a snapdragon X powered laptop which is ARM based, will i face problem playing mta or gta sa?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
-
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
-
Given that this topic gained more Turkish-speaking traction, we will move this to its language-specific section.1 point
-
eyvallah o kadar uğraşamam olmuyorsa olmuyordur bir şey yapmışsın ama anlayamıyorum o kadar kod bilgim yok. oyunda açtıktan sonra silah değiştiremiyorum ve sesler gelmiyor silahtan1 point
-
Hi, No need for a specific license, just run your server as usual. At most, define an e-mail address in your mtaserver.conf (look for the owner_email_address field) and you're good to go. Sidenote: please avoid tagging staff members.1 point
-
Vending Machine script inspired from the singleplayer version. Player health will be refilled a bit after each drink. It verifies the money and responds based on that. Works with every vending machine in the map. Video to explain it more: For more information, feel free to join my discord server: https://discord.gg/Nex7e6JUhe Discord account is mehdi46641 point
-
cursorX, cursorY = getCursorPosition() -- showCursor(false) <-- Use Before Then ... -- showCursor(true) <-- Use After Then screenX, screenY = guiGetScreenSize() setCursorPosition(cursorX*screenX, cursorY*screenY)1 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
-
LINK: https://payhip.com/TheDarkQ Specification: Low poly ✔ Full lighting Day/Night ✔ Materials ✔ Optimization ✔ Lighting effects [lamps] ✔ LOD ✔ Any question contact me on discord: TheDarkQ#17071 point
-
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
-
@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
-
I edited owl vehicle system so if someone want and reading this post you can use this: Using NewModels Here is github where you find edited vehicle system: https://github.com/Reynikk/OwlGaming-MTA-Addon-Models-Without-Replacing1 point
-
When you set the property, it stays frozen. So for example if you call getWorldProperty and then pass its return value to setWorldProperty, that value will stay until you call resetWorldProperty. But some of those functions (including getSkyGradient) are limited because they can only return the values previously assigned by script - meaning you can't get the unmodified value and assign it to freeze it. It seems that smooth transition is possible for color filter, because getColorFilter has isOriginal argument, allowing you to take the values that would be there if they weren't overridden by script so you can know exactly what values to interpolate to. But it doesn't help much when the same can't be done to other parameters.1 point
-
You can save your coordinates to the variables, and the use them to build text. Like: local rectangleStartX = x*1200 local rectangleWidth = x*1400 dxDrawText(rectangleStartX + rectangleWidth + 10, etc...) But i'm not sure right now about your coordinates, because "width" for dxDrawRectangle - it's not the endpoint, if wiki is right And then code will be more easy, because for width you can use just "200". As for take coordinates from rectangle - well, looks like it can't be done in MTA. P.S. I'm not good in UI scripting, just trying to help with simple logic.1 point
-
function onClientResourceStart() map = Map.new():init() map:setBounds(x*30, y*30, x*1306, y*708) map:setAlpha(200) radar = Map.new():init() radar:setBounds(x*20, y*560, x*281, y*193) radar:setStyle(2) radar:setAlpha(200) radar:setBlipSize(x*24) radar:setVisible(true) -- Variables to track mouse movement mouseDown = false lastX, lastY = 0, 0 map.Switch = function() local wasVisible = map:isVisible() map:setVisible(not wasVisible) radar:setVisible(not wasVisible) showChat(not wasVisible) -- Only show cursor and bind keys when map is visible if not wasVisible then showCursor(true) addEventHandler("onClientCursorMove", root, handleMouseMovement) addEventHandler("onClientMouseWheel", root, handleMouseWheel) addEventHandler("onClientClick", root, handleMouseClick) bindKey("mouse_wheel_up", "down", function() zoomMap("in") end) bindKey("mouse_wheel_down", "down", function() zoomMap("out") end) else showCursor(false) removeEventHandler("onClientCursorMove", root, handleMouseMovement) removeEventHandler("onClientMouseWheel", root, handleMouseWheel) removeEventHandler("onClientClick", root, handleMouseClick) unbindKey("mouse_wheel_up", "down") unbindKey("mouse_wheel_down", "down") end end bindKey('F11', 'down', map.Switch) setPlayerHudComponentVisible("radar", false) toggleControl("radar", false) end -- Function to handle mouse clicks for dragging function handleMouseClick(button, state) if map:isVisible() and button == "left" then if state == "down" then mouseDown = true local x, y = getCursorPosition() lastX, lastY = x, y else mouseDown = false end end end -- Function to handle mouse movement for dragging the map function handleMouseMovement(_, _, x, y) if map:isVisible() and mouseDown then local currentX, currentY = x, y local deltaX, deltaY = currentX - lastX, currentY - lastY -- Move map based on mouse movement local mapX, mapY, mapW, mapH = map:getBounds() -- Adjust movement sensitivity as needed local moveSpeed = 1.5 map:setBounds(mapX - deltaX * moveSpeed, mapY - deltaY * moveSpeed, mapW, mapH) lastX, lastY = currentX, currentY end end -- Function to handle mouse wheel for zooming function handleMouseWheel(direction) if map:isVisible() then zoomMap(direction > 0 and "in" or "out") end end -- Centralized zoom function function zoomMap(direction) if not map:isVisible() then return end local x, y, width, height = map:getBounds() local zoomFactor = 0.1 -- Adjust for faster/slower zooming if direction == "in" then -- Zoom in: decrease size, adjust position to zoom toward center local newWidth = width * (1 - zoomFactor) local newHeight = height * (1 - zoomFactor) local newX = x + (width - newWidth) / 2 local newY = y + (height - newHeight) / 2 map:setBounds(newX, newY, newWidth, newHeight) else -- Zoom out: increase size, adjust position to zoom from center local newWidth = width * (1 + zoomFactor) local newHeight = height * (1 + zoomFactor) local newX = x - (newWidth - width) / 2 local newY = y - (newHeight - height) / 2 map:setBounds(newX, newY, newWidth, newHeight) end end addEventHandler("onClientResourceStart", resourceRoot, onClientResourceStart) function onClientResourceStop() setPlayerHudComponentVisible("radar", true) toggleControl("radar", true) -- Clean up any remaining event handlers if map:isVisible() then removeEventHandler("onClientCursorMove", root, handleMouseMovement) removeEventHandler("onClientMouseWheel", root, handleMouseWheel) removeEventHandler("onClientClick", root, handleMouseClick) end end addEventHandler("onClientResourceStop", resourceRoot, onClientResourceStop)1 point
-
Кикает с локалки с той же самой ошибкой? Скинь скриншот её полный. Выходит, что возможно и в самом деле бан, хотя с какого перепугу не пускать даже не локалку... Сбой? Вот кстати сообщение от администрации из похожей темы в этом году:1 point
-
Hi... I don't know what you mean by coreconfig.xml (I don't think this comes with the default MTA SA server... But in the server files you can find mtaserver.conf file which had all of the loaded resources. Down almost at the bottom (of mtaserver.conf): --You'll see this area which is where you put your Resources... --resource src is the name of the resource. --startup="0" means don't start up when server starts and startup="1" means DO start up when server starts. --and protected="1" means don't shutdown server while this service is active (it should be used for database scripts. --I think what you want is: <resource src="YourResource" startup="0" protected="0" /> (startup="0" is what I think you want to do.) <resource src="admin" startup="0" protected="0" /> <resource src="Commands" startup="1" protected="0" /> <resource src="Database" startup="1" protected="1" /> <resource src="DXRec" startup="0" protected="0" /> <resource src="GPS" startup="1" protected="0" /> <resource src="HUD" startup="1" protected="0" /> <resource src="JobSystem" startup="1" protected="0" /> <resource src="LoginSystem" startup="1" protected="0" /> <resource src="MiniMap" startup="1" protected="0" /> <resource src="RadioSystem" startup="1" protected="0" /> <resource src="Spawns" startup="1" protected="0" /> <resource src="Speedometer" startup="1" protected="0" /> <resource src="FuelSystem" startup="1" protected="0" /> <resource src="VehicleSystem" startup="1" protected="0" /> <resource src="YouTubePanel" startup="1" protected="0" /> </config> Sorry if I am way off on this... I am an amateur coder just trying to help.1 point
-
1 point
-
1 point
-
This feature is already available under Preferences -> Appearance tab, in the Skin section, select DarkVector for dark mode https://imgur.com/a/KyPB57e1 point
-
Bom dia, tudo bem @Dadinho? Bom, eu dei uma pesquisada sobre e infelizmente não é possível alterar aquele chat por script... (digo o nativo rs) apenas fazendo um novo utilizando funções dx ou até mesmo gui (não recomendo) Ou você pode alterar apenas pra você nas configurações do próprio MTA local... (local onde mudar)1 point
-
Hi! Following the community discussion in our forums, we have created an official Discord server quite a while ago, as an alternative (and maybe a full replacement in the future) to our current IRC channels. We kept it in under the radar while we were fine tuning things, but we believe we can now present it to you guys. All MTA players and fans are welcome to join our Discord server (though please behave while you are in there ). You can join it by using this link: https://discord.gg/mtasa What is Discord? Discord is a hybrid of IRC, an Instant Messenger and a Voice Chat software. It incorporates the most important features of these elements into a handy and multiplatform app which you can run on your desktops, smartphones or tablets. Why is it cool? Compared to IRC, it offers a built-in chat history buffer, so even if you are offline, you can still catch up with what happened in the channels then. IRC also offers that, but only through an IRC Bouncer that you either need to pay for, or have someone host it for you. It also has a modern look and features such as URL embedding (regular websites, but also pictures and videos), handy syntax colouring for pasted code snippets, emojis (also custom ones), chat messages reactions, Steam integration and more. What can I find while I am there? We currently have some channels created, including: #general - for general MTA and offtopic chats #scripting - for Lua scripting-related queries #support - for any problems related to MTA:SA client or server #announcements - for all important messages from us as well as some others. We are still thinking of how to put our Discord server into its full potential, so we may add more channels soon. Can I have Discord app installed and/or running on several of my devices concurrently? Can I use more than one server? Sure, absolutely. It will sync the messages automatically. And yes, you can add more servers than just our one. How do I join it? Hey, we have mentioned that already. Just click the link below and follow the instructions: https://discord.gg/mtasa I have a suggestion about the Discord... Okay, let us know. As usual, we are open for suggestions. Just post in this topic or hit us up directly on Discord. Hope to see you there! -- MTA Team1 point
-
Hello! I would like to show you the developments of my project about vehicle registration plates for different countries. Here's what it looks like: I am always open to hearing the feedback or insights of those who have a better understanding of the registration plates. Thank you!1 point
-
Introduction: Blender is an open-sourced piece of software which provides various of features that are available through different of 3D tools, attempting to offer a componation of different applications like zBrush, Maya, 3dsmax and Substance Painter, from modelling (obviously), sculpting, animations to texture painting, in this tutorial, we are going to introduce you to the basics of Blender and prepair you to be able produce 3D models that can be used in MTA:SA and RenderWare GTA games (3D franchise), we will use a plugin called "DragonFF" for this tutorial so any pre-2.8 versions of Blender will not be compatible with this topic. We may update this topic regularly to cover newer features of the plugin. Q&A What can Blender do using DragonFF? - Export and Import DFF (vehicle, skin & object) meshes including vertex painting, UV (multiple) maps, materials, material effects (Environment - UV Animation). - Export and Import COL collision meshes (vehicle, skin & object). - Import map files (ipl/ide). (More features available here) Can blender do animations? Yes, but no, as DragonFF plugin doesn't support pre-2.8 Blender versions but you could use this for < 2.8 versions of Blender. Downloading Blender: - Head to https://www.blender.org/ and press "Download Blender". - Choose your operating system and make sure you are downloading the latest version. Before you continue (do not skip this part if you have barely any skills about Blender or 3D modelling). It is highly advised to watch the following video multiple of times in order to get a brief idea about the controls and what will be used, it is recommended to watch the first 3 parts of the tutorial. Installation of DragonFF: 1. Head to https://github.com/Parik27/DragonFF. 2. Click the green "Code" button and click "Download". 3. Open Blender, click anywhere to hide the splash screen. 4. Head to Edit > Preferences. 5. Click "Add-ons" then at the top-right "Install". 6. Locate the downloaded .zip file and click "Install Add-on". 7. Tick/Activate the plugin (use the search box). In order to make sure that the plugin is installed and activated successfully head to "File" > "Import" and check if "DragonFF DFF" is available as an option. Blender Controls There is a lot of controls in Blender and it is mandatory to learn at least the following: Camera Navigation: - Scroll Up/Down: Zoom In/out. - Scroll Button: Rotate view. - Scroll + Shift: Pan. - . (dot in Numpad): teleport to selected object/mesh. Selection: - Left Mouse Button: Selects an object/vertex/line/face. - Right Mouse Button: Opens the context menu. Toggling: - Tab: Toggle between Edit and Object Mode. Different behaviors between Edit and Object Mode: (with a combonation of X, Y and Z, you could move/scale/rotate in the desired axis.) - G: Move the selected object/mesh. - S: Scale the selected object/mesh. - R: Rotate the selected object/mesh. these are also available through the bar on the left: - Z: toggle between Solid, Rendered, Wireframe and Material Preview modes. Working with Models for MTA 1. Let's start with making our model, you can just use the default cube as a starting point, I have made this house for this tutorial. 2. Now let's do some pre-lighting, vertex painting is a technique used in game models to manipulate lighting in meshes, we will use the vertex painting interaction mode in Blender. (this is an example of bad Vertex Painting). - Head to interaction mode selection combobox, selected Vertex Paint. - go to "Paint" tab > Dirty Vertex Color. - Make sure to add "2" color Attribute for day & night prelight via the object data properties, work on both. - If there are bright areas in the model, try using a black brush and start painting the model. 3. Exporting the model to MTA. - Head to Object Properties > DragonFF - Export Object and make sure to be on "Object" mode. - go to File > Export > DragonFF > select .dff (make sure to name your model and choose a path, otherwise it's going to show you an error and export a corrupted model.) (If your model looks different than what it looks in the viewport, then make sure to apply the object transforms). Exporting the collision I highly recommend you to export the object and import it back as the current option will export it 1:1 (1 by 1), even if the mesh is simple the game's engine is not optimised to handle large amounts of collision meshes, collisions are meant to be extremely simple, this is a well known mistake made by modellers within the community that causes crashes and lag even with high-end PCs. - Head to Object Properties & Select "Collision Object" as the export type. - as a final step, it is highly recommended to import the mesh into Col Editor before importing it to the game, col editor will adjust the bounding box and optimise certain aspects of the collision mesh. - Edit > Add > Select the collsion model > right click the collsion mesh and click "Optimize". - To export the mesh head to FIle > Save As. Importing game assets Extracting the game assets can be useful to modify the game assets to your liking. Head to the following topic and read through the Extracting game assets section. - I highly recommend you to make a shared folder to include .png textures and model assets to be able to import the textures automatically into Blender. - Head to File > Import > DFF > Select the file (make sure the .png textures are in the same folder). (To check if you have sucessfully imported the texutres, hold Z & hover over "Material Preview") Changing Object Material/Texture - Go to the "Shading" tab, down below (by the default layout, zoom into the material tab). - - By default, DragonFF creates a "texture" node, you could simply click the folder image to replace the image. (You could rename the image texture to the current one "semi2Dirty.PNG" to match the name on the texture file) - If the texture looks "streched" then you need to adjust the UV wrapping. - Export the model (follow the steps above within the "Working with Models for MTA). - Now you need to update the texture file (TXD), to look up for the right TXD file, you could to search it through prindeside.com. - Enter the Model ID/Name and click search. - Click the model picture, expand & press Details. - The TXD file name should be under Files > TXD. - Find the TXD file within your game assets folder (or export it via gta3.img/other img container files using alic's img tool). - Open the TXD file using Magic.TXD > find & select the texture > replace > select the same image you used in Blender. - Change the "Texture Name" to match the name on texture node. - For Raster Format it's recommend to use DX3/DX4/DX5 for textures with an alpha channel (images with transparency as DX1 does not support transparency). - Press Replace > File > Save. - Replace both of the model & texture files in-game to apply the new changes. UV Wrapping - Switch to the UV Editing tab & switch to Edit Mode (Press Tab). - Select the faces you want to adjust and adjust accordingly to your desire. - Controls (you can use the following binds or the buttons on your left): A: Select all. S: Scale. G: Move. R: Rotate. - Watch the following video for more details: https://www.youtube.com/watch?v=Y7M-B6xnaEM1 point
-
Default MTA Server || Freeroam [P] EN The classic freeroam experience with unlimited chaos, drifting, shooting other players (or just using /peace for passive mode), hydra dogfighting and fun arena's. As a classic freeroam there are no restrictions to spawning in vehicles & weapons, and freedom applies to all other game aspects as well. Average players online is 100, so there's always someone to troll or fight! Click to join (mtasa://149.202.51.189:22005) ______ Prime Freeroam EN (Freeroam, NPC, AI) Click to join (mtasa://149.28.237.162:22003) ______ Welcome To San Andreas (Single Player Features!) EN (Freeroam, NPC, AI) The old-school single player San Andreas experience! Click to join (mtasa://wtsa.mtasa.moe:22003) SAES:RPG EN SAES:RPG is a gaming community and server which has ran on MTA since 2003 on both MTA:VC and MTA:SA, Our current server is an RPG based gamemode in which you can be Cops, Robbers, Gangs, Dealers, Medics, Mechanics and participate in Roleplay, Bank Robberies, Store Robberies, Racing, Hunting down criminals, Monthly giveaway events and much much more! Click to join (mtasa://51.38.67.64:4999) ______ CIT Cops 'n' Robbers, Gang Wars, Civilians | cit.gg EN/PT/AR/TR (CnR, Turf wars, Civilian jobs.) A community mainly focused on cops 'n' robbers, gang turf wars and a variety of civilian jobs, community made events, joining groups to play and have fun together. Click to join (mtasa://94.23.158.180:22003) ______ SAUR Utopia RPG EN An RPG server with multiple unique features and activities, with an active staff team. Click to join (mtasa://phoenix.saur.co:22003) FFS Gaming DM/Race/DD/Hunter/Shooter/Stuntage/Trials/HP/RUN/CW/PTP/CarBall/Training/Minigames/Geogesser EN FFS Gaming provides a vast amount of race type gamemodes all in one server. From regular races to be the fastest one, kicking your opponents into water in destruction derby or simply having a fun time in minigames, we provide everything to enjoy your stay. Click to join (mtasa://54.37.245.209:22003) ______ /TfF\ The Favoured Few - DM/HDM/OS/STUNTAGE/MINIGAMES/SHOOTER/CATCH/DD/POWERDD/HUNTER/RACE/CLANWARS/TRAINING The Favoured Few delivers thrilling Race Deathmatch (Regular, HDM or OS), competitive Clanwars, and an exclusive Power Destruction Derby mode, along with a wide range of gamemodes including Shooter, Hunter, Stuntage, Minigames, and Training. Take part in daily events to earn exclusive rewards, and explore the garage to customize your infernus! Click to join (tff.gg:22003) Drift Paradise MTA RU/UA/EN/US/PL/Global (Drift, Touge, Freeroam) Create the car of your dreams and travel to iconic places! All servers are synchronized, which means that you can play on any server on 1 account. #1 Drift Paradise [RED] MSK mtasa://95.129.234.27:22001 #2 Drift Paradise [RED] MSK mtasa://95.129.234.27:22002 #3 Drift Paradise [RED] MSK mtasa://95.129.234.27:22003 #4 Drift Paradise [RED] MSK mtasa://95.129.234.27:22004 #5 Drift Paradise [RED] MSK mtasa://95.129.234.27:22005 Note: Some users will need to use a VPN with a server in Russia to connect due to some restrictions. ______ Need For Speed: San Andreas Global/EN/PL/RU/ES/PT/TR/CZ/FR/DE/HU/ID (Race/Freeroam/Other) Racing server inspired by various nostalgic Need for Speed titles such as Underground 1/2, Most Wanted, Carbon, World where you start out with a slow car and progress by racing, participating in AI police pursuits and numerous other activities, all of which let you buy new cars and and upgrade their performance and visuals with hundreds of unique custom made body parts and complete customization of paintjobs through a NFS Carbon-like vinyl editor. Click to join (mtasa://178.33.54.30:20256) ______ Mr. Green Gaming EN/PT/AR/TR/RU/PL/DE/FR (Race, DM, CTF, Shooter, MIX) The classic racing experience! Join Race (mtasa://race.mrgreengaming.com:22003) Join Mix (mtasa://racemix.mrgreengaming.com:22003) ______ Sofa King Cool EN/Global Click to join (mtasa://87.98.182.70:22005) Epic-Row Zombie RPG EN (Zombie, RPG) PvE based zombie gamemode with RPG elements. Click to join (mtasa://s.epicrow.com:22003) ______ StoneAge [DayZ] EN, PT (Survival/Zombies/DayZ) Fight against other survivors, make new friends, trade items, get rid of zombies, and don't forget: here your goal is just to survive, whatever the cost! Click to join (mtasa://158.69.122.226:22003) San Andreas Police Department: First Response EN (Emergency Services Simulation / RPG / AI) Step into the life of a Police Officer, Paramedic or Firefighter and react to a wide variety of callouts all over San Andreas. Click to join (mtasa://37.187.250.129:22004) ______ SAAW World War II EN (Team deathmatch / War (Conquest) / Airstrike / Sea war / Tank war) A team-based tactical world war II server featuring third person and first person gameplay and dozens of different vehicles, weapons, classes and maps. Main objective in every map is to bring the enemy ticket count to zero by capturing points, shooting enemies or sinking convoy ships. Click to join (mtasa://116.203.196.16:22003)1 point
-
1 point
-
Introduction This guide intends to teach 3ds Max users the basics and more advanced ways of working with Vertex Colors, in order to achieve lighting solutions for enhanced quality of game models, or blend several textures together using Vertex alpha. A lot of games utilises vertex colors to accomplish lighting or blending effects, which usually impacts the performance less than model shaders. Types of shaders such as Texture Splatting are pixel based techniques for rendering multiple textures onto a model, where each texture e.g earth, grass, gravel, has their own color on the splat map. This however may use up significantly more resources than its alternatives in some cases. As result, game developers may move their aim towards Vertex Alpha and Color rather than geometry shaders. Vertex Color works almost the same way, however it renders per vertex and not per pixel unlike shaders do. This may result in very poor results if the geometry is not subdivided at the places it is painted at. Besides texture blending, vertex colors are also widely used in games for fake lighting baked into models. This is due to some game engines not supporting Ray Tracing or other rendering, or they simply prefer using vertex colors over per-pixel lighting. In GTA:SA the only light rendering is done by vertex colors and 2DFX. In the days that the game was developed, vertex colors was a more sustainable rendering method over other options. Table of contents Different model lighting depending on game time Importance of vertex colors Importance of vertex illumination Basics of per-vertex Radiosity workflow Hard surface prelighting Faking ambient occlusion Texture blending with Vertex Alpha The vertexPaint modifier Extracting channel info Working with several VertexPaint modifiers Different model lighting depending on game time Game models use two vertex channels for lighting. Vertex color is displayed around 06:00 - 20:00. Vertex illumination is displayed outside that timeframe, that is, between 20:00 and 06:00. Between these timeframes, the two channels blends into eachother, creating a realistic daytime and nighttime visualization of the map. Remembering which channel is used for what can be a little troubling, on top of the many other things. Artists could consider Vertex Color = daytime, Vertex Illumination = nighttime. Below are various demonstrations of vertex color and illumination channels. Importance of vertex colors Below video demonstrates the effects of not prelighting game models for GTA:SA. The results are very easy to differ from prelit models, as the only depth seen on the models is made by the diffuse maps, which usually does not add sufficient shadows. That is where the artist may consider prelighting his model. As seen on the video, first footage is of San Fierro chunk without diffuse maps (textures) nor vertex colors. This results in completely white meshes. If however, the artist decides to utilise vertex colors, the model will have a lot greater depth added, without the need to bake light into textures at the expense of computer memory. The video's contents are 1:1 to how San Fierro would be rendered in-game around 12:00. No post processing or edits made to the models. Compression methods, post processing, sky and fog done by the Renderware engine will make it a tad different though. Below screenshot is taken from a Dust2 model ripped from Counter Strike. It shows how the vertex channel brings shadows and ambient occlusion into the model. If it did not have the vertex channel changes made, it would be completely flat, corridors would have no depth whatsoever, only some by the difference between the textures. Importance of vertex illumination Not all models use fancy colors like the pirate assets by Las Venturas strip. A lot of models use the same, though slightly darkened, version of vertex colors for the vertex illumination channel. The result of this is a darker object during night and brighter during day. Perhaps some has some highlights that are cast from streetlights and other light sources that appear during nighttime. Some models, notably light objects use vertex colors in conjunction with 2DFX in order to create realistic light with a real light source. Below example is a runway light. The white version is during day time, where the inner light mesh (the extruded part) is grey to represent an deactivated light. The red version is during night time, where the top surface has light reflected onto it, together with a corona image, more commonly known as 2D billboard or sprites. The corona acts as the light source and creates a bloom alike effect. (Not seen in image) Basics of per-vertex To get a somewhat understanding of how vertex colors work, below demonstration should be helpful. The triangle's top left vertex is painted blue, top right painted green and bottom painted red. This creates an RGB blend display of the triangle. The planar model has its bottom vertices painted black while the top ones are white. This creates more of a gradient across the entire model.To put the difference between per-vertex lighting and per-pixel lighting short, Vertex based lighting creates a gradient from one vertex towards the nearest one(s), and stops there. If a model has only 4 vertices, it is not possible to have circular or very detailed IES-like lighting, as the model would have only 4 points that can have light data. Pixel based lighting can have as many abstract details as artist wishes. It works as if there is a grayscale image on top of the model with a different blend mode, or dynamic lighting based on world models, hence the two are called per-vertex and per-pixel. Radiosity workflow Tired of painting vertex colors onto models with silly brushes all day? 3ds Max has an amazing light renderer, which can produce stunning renders and best of all, stunning prelights. As if it was made for GTA:SA era games! Not to forget, a 3rd party Max script was made to make the workflow a lot less difficult - can be found on: http://www.scriptspot.com/3ds-max/scripts/vertex-color-tools-1. With this script, artists can with a few clicks create a skylight, ground plane (for AO), then render a radiosity solution in less than a minute total. No more setting up radiosity settings, only a few adjustments to your likings if needed. I use it all the time myself, and in fact, I learned to create beautiful prelights by using this tool with radiosity rendering. Before moving on, ParoXum's Radiosity tutorial and the Radiosity wikipedia page contains extra information that is not covered in this thread, for instance particular use of point lights. For that reason they may be benefitable to read through. WARNING! Pressing the AO button on the Vertex Color Tool script, ALL materials will be reset to standard. This can not be reversed! Adding to the above. Make sure to create a backup Max project file prior to working with Radiosity. Use the backup Max project file for vertex colors, leave original file for modeling! This process is covered in the guide. Hard surface prelighting Most artists starting out with vertex colors have probably grown tired of selecting faces of a model, then painting a different value onto each to replicate a hard surface look. As it turns out, this is not an efficient way. The model will look odd if the artist has not put enough time (hours with sweat) into it. That is where automating it with Radiosity rendering is a fantastic solution. To get started, download the following FBX scene https://cdn.discordapp.com/attachments/308956559201796097/632340906170908673/demo.zip. Each point contains a spoiler with a video clip. For those who would like to mess around with the final result of mine, download FBX here: https://cdn.discordapp.com/attachments/308956559201796097/632559814387695626/demo_result.zip (video below) Important thing to note, when using Radiosity for prelights, the shading/lighting which is baked into the model entirely depends on the smoothing of the model. If it's set to Auto Smooth value 2 the shading will resemble 3ds Max's shading 'facets', while if the model has only one smoothing group, the shading will be incredibly smooth and generally won't have any facet shading. San Andreas models generally had very low smoothing value for its models at their creation, judging by their hard surface appearence. If a modeler were to create models that blend in with the game environment, they should strongly consider the above. Video tutorial: Text tutorial: Import the file Click the 3ds max upper left corner, at Import hover over the arrow for a drop down menu to appear. Click Import. Click the demo.FBX. Ensure to include Smoothing Groups on import, and units setup in Meters. Reset X, Y, Z positions to 0, 0, 0. At import the model is not centered. Create light Navigate to Create tab, click the gears icon, finally select the Daylight button. Max will ask if it can set an exposure control flag (not a country flag bleh), click Yes. Click anywhere, this sets the compass. Then, drag the mouse up into the sky, press LMB to spawn the daylight system. The compass position is not important. Alter light Navigate to Modify tab, change Sunlight from Standard to IES Sun. Likewise for sky, make it IES Sky. On Sun Parameters uncheck Shadows. Ensure the sun's state is On. On IES Sky Parameters it is possible to modify the intensity of the sky, as well as the sun. Some of the settings that affect the sun is whether the weather is clear or clouded. Leave default. On hierarchy list, select the Daylight001 item. While on Modify tab, click the Setup button for setting the scene weather. As the light system works like real daylight, the lower the number of hours, the darker the scene. Set hours at 9, month at 9, orbital scale at 320-360. Initiate the radiosity solution by running Vertex Color Tools Ver1.0. Press the AO button. Keep in mind, that this will remove all materials and cannot be reversed with undo. The render setup window opens. Another window from Rendering > Exposure Control is needed. On Exposure Control, change from none to Logarithmic. Tick on the Exterior daylight checkbox, which is required due to scene using a daylight system. Optionally, start rendering previews via the Exposure Control window. These previews are very low resolution and may help visualise the lighting. Or, real renders by SHIFT Q, although this may take significantly more time and processing power. On Render Setup window, reset value of Indirect Lighting Filtering. Increase the Direct Lighting Filtering to a value of 8. Under Radiosity Meshing Parameters tick the Include Skylight checkbox. Under Rendering Parameters select Re-Use Direct Illumination from Radiosity Solution. On Render Setup window, make sure to press Reset, to then start a clean rendering with the updated settings. Click Start. This may be an incredibly slow process, even on high end computers. If it gets stuck, set quality to less. It does not really have much of an impact for GTA:SA light anyway. Voila, done. The final result will be displayed in viewport. The result is equal to what is seen in-game during day hours. If something looks off, go back and tweak settings. Bake Radiosity lighting solution into vertex channel. Navigate to Utility tab, click More..., select Assign Vertex Colors. Upon scrolling down the utility tab, the Vertex Colors settings appear. Vertex Color is for day time, Vertex Illumination is for night time. Choose Vertex Color. Set light model as Lighting + Diffuse. Set Color Assignment as whichever seen fit. On Rendering options, enable Mapping and Radiosity, Reuse Direct Illum. from solution. Finally, click Assign to Selected View vertex color result in viewport. On the VertexPaint modifier, select the channel that was just modified. On the VertexPaint GUI, click the shaded box to the left. This displays the model with only vertex channel rendering, no other 3D shading will be used. Further tweaking If one wishes night time lighting, the best to do is render a new radiosity solution with less sun and daylight intensity, in order to darken the scene. Eventually change to clouded or mess with weather settings. The new radiosity solution will be equally the same as the one for daytime, although a tad darker. When rendered, assign to illumination channel. The letters can be painted for night time to look extra cool. This is where painting by buckets onto face selections of the mesh can come in handy, using the VertexPaint modifier. Odd looking shadows can be fixed up with the blur brush (VertexPaint modifier). Those who are able to get results with the above Radiosity workflow, may utilise their knowledge and take prelighting a next step with other types of lights, in order to create environment lights such as shadows for light poles, torches, buildings etc. Point lights, more specifically Free Light, were used a lot in the ship model further down the topic. Scene lighting is generally hit and miss. There are many settings which may need to be changed e.g scale of daylight and smoothing groups of models, in order to get the right look. Faking ambient occlusion Vertices can easily store ambient occlusion details, negating the need for geometry shaders. Some models may require additional geometry through subdividing the mesh, in order to achieve proper ambient occlusion details with vertex colors. The type of light used is usually skylight or daylight, this creates subtle shadows around corners and creaks, as well as maintaining global lighting. The below model has vertex AO baked by using a Skylight with the following settings. *you can eventually utilise a plane as ground for the ambient occlusion to calculate a lot better. The above practise can be used for GTA:SA assets as well, some settings may require to be tweaked first though. Prelighting in general is trial and error unless the artist has a solid background with lighting and rendering. Generally though, ambient occlusion should not be the only layer for lighting a model. Hard surface lighting as well as adding point lights is highly recommended. Without these, models with AO will still look rather flat in most cases, as there is not much definition between corners, other than soft shadows. Adding point lights to radiosity render will also give the lighting a more natural feeling, this can be done by adjusting the temporature of the light or its color. Combining point lights (free light, omni light, etcetera) with 2DFX can give stunning results. Texture blending with Vertex Alpha Texture blending on MTA was thought to only be possible by shaders, e.g texture splatmap. Instead, we can now blend textures using Vertex Alpha channel. On December 27 2019 we discovered that Vertex Alpha works without need for additional scripting (MTA Discord #modelling). We also need to thank Deniska for writing this guide (gtamaps) on vertex alpha plus creating a maxscript that exports vAlpha channel! Vertex Alpha works based on grayscale values just like alpha masks. Any vertex that's black will not be rendered - any vertex that's not black will be rendered. White is fully opaque, while the greyer it gets, the more transparency is made. Vertex Alpha will not render water behind its faces, so it's important to place an opaque object behind the vertex alpha mesh. This must be a separate model, not part of the mesh that uses vertex alpha. As with vertex prelights, vertex alpha needs geometry to work with. It's highly recommended to turbosmooth/subdivide the mesh so that you can paint in more detail. In the video below, I show how quickly the vertex alpha can be added to your models, and once that's done, you can export the model using the script from this page. Create a plane primitive. Give it 16x16 segments. Convert it to editable mesh. Give it the material that needs to blend using alpha. Set opacity of material to 98. Add a VertexPaint modifier. Select the vertex alpha channel. Use paint bucket with black color, 100 intensity, to paint entire mesh black. Add a secondary vertexpaint modifier. Grab your brush, adjust its size and strength. Begin painting a path from one end to another. Use the blur brush to finetune the semi-transparent edges of your path. Sharp edges ain't good. Looks OK? Start the export-script. You don't need to collapse your modifiers when exporting. Keep them in stack for later adjustments. Export with MMC. Remember to always set alphaTransparency enabled when replacing the model, or else only part of alpha will show. If you want to use another DFF script (for a higher quality dff), simply copy paste the sections e.g "Extra Vertex Colors" via RWanalyze. (Script will break (in which case, close script and run again) if you try to export vertex colors without having first assigned vertex colors/illumination to the model via its respective channels) List of model ID's that use the flag 68 (NO_ZBUFFER_WRITE(64) + DRAW_LAST(4)), which is required for Vertex Alpha: 2728, 3872, 3910, 4227, 4636, 4637, 7892, 9831, 9896, 9897, 11678, 11679, 11680, 11681, 13494, 13495, 13496, 13497, 13498, 13499, 13500, 13501, 13502, 13503, 13504, 13505, 13506, 13507, 13508, 13509, 13510, 13511, 13512, 13513, 13514, 13515, 13516, 13517, 13518, 13519, 13520, 13521, 13522, 13523, 13524, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13534, 13535, 13536, 13537, 13538, 13539, 13540, 13541, 13542, 13543, 13544, 13545, 13546, 13547, 13548, 13549, 13550, 13551, 13552, 13553, 13554, 13555, 13556, 13557, 13558, 13559, 13560, 13561, 13563, 16375, 16445, 16498, 16623, 16676, 16677, 16733, 16734, 16753, 16754, 16756, 16757, 16758, 16783, 16784, 17436, 17437, 17438, 17439, 17440, 17441, 17442, 17443, 17444, 17448, 17450, 17451, 17451, 17452, 17458, 17459, 17460, 17461, 17462, 17463, 17464, 17465, 17466, 17467, 17468, 17469, 17470, 17474, 17524, 18073, 18112, 18610, 18611, 18612, 18613, 18614, 18615, 18616, 18617, 18618, 18619, 18620, 18621, 18622, 18623, 18624, 18625, 18626, 18627, 18628, 18629, 18630, List of model ID's that use the flag 64 (NO_ZBUFFER_WRITE(64)) which are not tested, but might work for Vertex Alpha: 1315, 2981, 4712, 4724, 4554, 8004, 8044, 11306, 14765, Below are a few examples of how vertex alpha can be used to blend several textures together. Above image courtesy: worsas @ project tamriel (see link for more) 128x128 textures, 8192 polygons (can be a lot less!) You can probably create something a lot better than this. Time to get creative! If you're looking for additional inspiration, see the videos in spoiler. Note: The below spoiler contains information that does not apply to vertex alpha method, but instead to vertex colors. This requires shaders, since SA uses the colors for lighting, but is a decent alternative if the model use lighting shaders. The vertexPaint modifier VertexPaint is the modifier that houses the WIP vertex colors, illumination and alpha modifications. It may be accessed on Modifiers tab. While it is open, it allows the artist to do various changes to the vertex channels. Ranging from painting with the use of brushes, to refining vertex colors by blurring, adjusting hue, saturation, lightness etcetera. This is a very powerful tool, despite not having been updated for years. To get started, the modifier works with a float GUI with all of its necessary functions in it. It is worth noting that the modifier can not change existing vertex channel data, only the data that is stored in the modifier. That means it is not possible to import a GTA:SA asset and modify the hue of the vertex color channel. For an exhaustive list of what the modifier offers, check Autodesk's page on the VertexPaint Modifier. Brief explanation of what the modifier has to offer, from top to bottom: Extracting channel info For whatever reason, an artist may want to copy the vertex channel data, that is, the custom vertex information, and paste that onto their latest version of the mesh. This could be due to an irreversible action that would prevent the artist from undoing the lighting changes on present model, resulting in work lost and having to redo it all over again. Although this may seem like a promising solution to regain old channel data, it can generate problems if the two models contain different geometry counts. Below steps explains how to copy/paste data. Navigate to Utilities tab, click the More button, after which, click Channel info. At last, press the button that appeared on the bottom of the utilities tab. At first, the Channel Info GUI may seem complicated; but it really is not. The only information to look out for is the ID column and Channel Name column. The Num Verts, Faces etc. are only important to verify that the two model contains the same model geometry count. In the above example, the model has no custom channel data. The -2:Alpha, -1:Illum and 0:vc are the types of channel info's that are relevant for GTA:SA, although the Alpha data currently isn not compatible with MTA. To copy data, simply select either of the rows and press the Copy button. Then, highlight the present model, select the corresponding channel and paste. Working with several VertexPaint modifiers On more advanced tasks it may be necessary to use multiple VertexPaint modifiers stacked onto the model. Artist may find it helpful if they are doing several versions of prelighting for their model and wants to go through each result, picking the one that suits them the most. This means that each type of radiosity lighting solution will be stored in its own modifier, allowing artists to go through all of them and delete the poor ones. Having multiple modifiers on stack can also improve workflow by utilising each modifiers for each element of the model, such as Modifier1 for bonfire logs, Modifier2 for bonfire shadows, Modifier3 for ambient occlusion, Modifier4 for moonlight etc. Modifiers can also be renamed to quickly tell the artist what they are representing. The model can have as many modifiers in its stack as the artist wishes (or until the software times out), and they do not require to be collapsed when exporting the model to MTA. This means that the modeler simply needs to select the model, export it and load into MTA. Modifiers can then be collapsed to stack when job's done, however, it is strongly recommended to keep them in stack for future, in case of parts requiring rework. Below model may give a good look into just how much it helps to utilise multiple modifiers. The ship has its own modifier for virtually any type of light emmitting source. The rectangular screens to the right are symmetrical on the other side, so there is one modifier that represents those 6 rectangular emmissive screens. Same goes for the cyan U-shaped engravement, which uses its own independant modifier, and so on. This allowed to change the engravement prelight from initially dark blue to cyan, by not affecting other lights when modifying the hue, as the modifier was only used by that particular area. The stack works like so: By clicking the bottom modifier, only that one's layer will show. If clicking the one above it, assuming it is same channel, it will show both of them. Now, if clicking the top modifier, it will show all layers e.g the rest 4 that are associated with Vertex Illum channel. It will only display the channel that is selected on the right most panel. (This depends on version of Max)1 point
-
Hello. I want to present you my game mode based on Counter Strike. The server with this game mode was not popular and died. I get some break and now I decided to continue this project and release for Multi Theft Auto community. Features interface based on CS: Source full dynamic and easy customizable weapons & shop (including grenades as flashbang, decoy; nightvision goggles etc.) own damage system carrying weapons on the back, C4 in the hands spectator mode with freecam and "wallhacking" friends from your team and weapons on ground weapon drop planting & defusing bomb hostages server Message of The Day, global news, new version notification and auto update master server list Rock The Vote and nominating maps to the next vote; auto vote after 30 rounds support for different languages (standard is english and polish) Screenshots (click me) Videos (click me) Download Community: https://community.multitheftauto.com/?p ... s&id=10487 Thanks to Ren712 - ped wall shader & mapfix shader1 point
-
Get everything in the file as a string and put it on a variable. Get the position where you want to write and remove everything infront of that position and put that onto another variable. When you writed, paste the strings together and put them into a file (create a new file, overwrite it IF succeed) and save it. I think there better ways to do it, but atleast you are sure it won't overwrite is if you do it like this...1 point
