Leaderboard
Popular Content
Showing content with the highest reputation since 30/04/23 in all areas
-
Hello dear MTA players,My name is Eren(Shady) ,today I will show you String and Strings types in a simple and short way with examples, this string formula, which I needed very much at the time, is very useful for me today, so I decided to use it and make this tutorial to learn more, I hope I was able to explain it well. Strings and String Methods In Lua, a string is a sequence of characters that represents text data. Strings are used extensively in programming for storing and manipulating text-based information. In this tutorial, we will explore the different string types in Lua and how to manipulate them. Single Quoted Strings A single-quoted string is created by enclosing a sequence of characters between two single quotes. For example: local str = 'Hello, world!' Single-quoted strings are useful for creating short, simple strings that do not contain any special characters. If you need to include a single quote character within a single-quoted string, you can escape it using a backslash: local str = 'It\'s a beautiful day!' Double Quoted Strings A double-quoted string is created by enclosing a sequence of characters between two double quotes. For example: local str = "Hello, world!" Double-quoted strings are useful for creating more complex strings that may contain special characters such as escape sequences or variables. If you need to include a double quote character within a double-quoted string, you can escape it using a backslash: local str = "She said, \"Hello!\"" Long Strings A long string is created by enclosing a sequence of characters between two square brackets. For example: local str = [[This is a long string that spans multiple lines]] Long strings are useful for creating strings that contain multiple lines of text, such as paragraphs or blocks of code. They can also be used to create strings that contain special characters without the need for escape sequences. String Concatenation You can concatenate two or more strings together using the .. operator. For example: local str1 = "Hello" local str2 = "world" local str3 = str1 .. ", " .. str2 .. "!" In this example, str3 would contain the string "Hello, world!". String Manipulation Lua provides a number of built-in functions for manipulating strings. Some of the most commonly used string functions include: string.sub(str, start, end): Returns a substring of str starting at start and ending at end. string.len(str): Returns the length of str. string.lower(str): Returns str with all letters in lowercase. string.upper(str): Returns str with all letters in uppercase. string.rep(str, n): Returns str repeated n times. Pattern Matching Lua also provides a powerful pattern matching library that can be used to search and manipulate strings based on a pattern. The string.gsub() function is particularly useful for replacing parts of a string that match a pattern with another string. Here is an example of using string.gsub() to replace all occurrences of the word "dog" with the word "cat" in a string: local str = "I have a dog, but my neighbor has two dogs." local newStr = string.gsub(str, "dog", "cat") In this example, newStr would contain the string "I have a cat, but my neighbor has two cats.". The string we are working with is "My name is John_Smith". We want to swap the order of the two names in the string, so that it becomes "My name is Smith_John". str = "My name is John_Smith" new_str = string.gsub(str, "(John)_(Smith)", "%2_%1") Here's how the code achieves this: string.gsub() is called with the original string str, and two patterns to match: (John) and (Smith). The parenthesis around "John" and "Smith" indicates that they are capture groups, which means that any match to these patterns will be stored as a variable. The replacement string "%2_%1" is passed as the third argument to gsub(). This string contains the % modifier, which is used to reference the captured groups. In this case, %2 refers to the second captured group ("Smith"), and %1 refers to the first captured group ("John"). gsub() performs the substitution on the original string, replacing the matched pattern (John)_(Smith) with the replacement string "%2_%1". The resulting string, "My name is Smith_John", is stored in the new_str variable. So essentially, this code swaps the order of two captured groups in a string using the gsub() function and the % modifier. But how to make it dynamic and so it matches even if it's another First and Lastname (like Bruce_Willis) ? Well, we can use what we call character classes. They are special "codes" to match a specific type of thing in your string. For example, %a means "any letter", %d means "any digit". Here is the full list those character classes: . all characters %a letters %c control characters %d digits %l lower case letters %p punctuation characters %s space characters %u upper case letters %w alphanumeric characters %x hexadecimal digits %z the character with representation 0 So in our previous example we can replace the pattern like so: str1 = "My name is John_Smith" str2 = "My name is Bruce_Willis" new_str1 = string.gsub(str1, "(%a+)_(%a+)", "%2_%1") new_str2 = string.gsub(str2, "(%a+)_(%a+)", "%2_%1") new_str will contain "My name is Smith_John" and new_str2 will contain "My name is Willis_Bruce". So it works as long as it finds one or more letters followed by an underscore followed by one or more letters. Here I also used a modifier (+) to tell the matcher he has to look for 1 or more repetition of a letter. Here are the list of the possible modifiers: + 1 or more repetitions * 0 or more repetitions - also 0 or more repetitions ? optional (0 or 1 occurrence) More infos here In Lua, "\n" is known as a newline character. It is used to represent a new line of text in a string. When a newline character is encountered in a string, it tells the computer to move the cursor to the beginning of the next line. For example : local myString = "Hello\nworld" print(myString) In this example, the string "Hello" is followed by "\n" which tells Lua to add a new line. The string "world" is then printed on the next line. Output : Hello world You can also use multiple "\n" characters in a row to add multiple new lines: local myString = "This is the first line.\n\nThis is the third line." print(myString) In this example, two "\n" characters are used to add two new lines between the first and third lines. Output : This is the first line. This is the third line. You can use newline characters to format your text in a more readable way. For example, if you want to print a list of items, you can use a newline character to separate each item: local myString = "List of items:\n- Item 1\n- Item 2\n- Item 3" print(myString) In this example, the string "List of items:" is followed by "\n" to add a new line, then each item is listed on a new line with a hyphen (-) to indicate a bullet point. Output : List of items: - Item 1 - Item 2 - Item 3 In summary, "\n" is a newline character in Lua that is used to add a new line in a string. It is a useful tool for formatting text and making it more readable. string.sub(str, start, end): This function returns a substring of the input string, str, starting at the start index and ending at the end index. For example: local str = "Hello, World!" local subStr = string.sub(str, 7, 12) -- This will return "World!" string.len(str): This function returns the length of the input string, str. For example: local str = "Hello, World!" local len = string.len(str) -- This will return 13 string.lower(str): This function returns a new string with all letters in the input string, str, converted to lowercase. For example: local str = "HeLLo, WoRLd!" local lowerStr = string.lower(str) -- This will return "hello, world!" string.upper(str): This function returns a new string with all letters in the input string, str, converted to uppercase. For example: local str = "HeLLo, WoRLd!" local upperStr = string.upper(str) -- This will return "HELLO, WORLD!" string.rep(str, n): This function returns a new string that is n copies of the input string, str. For example: local str = "Hello" local repStr = string.rep(str, 3) -- This will return "HelloHelloHello" string.format string.format is a Lua function that is used to format strings based on a pattern. The basic syntax of string.format is: string.format(formatstring, ...) Here, formatstring is a string that contains placeholders for values that you want to include in the formatted string. The placeholders are indicated by % symbols followed by a letter that indicates the type of value to be included. The ... is a variable argument list that contains the values to be formatted. Here are some of the most commonly used placeholders in string.format: %s: Inserts a string value %d or %i: Inserts an integer value %f: Inserts a floating-point value %%: Inserts a literal % symbol Let's see some example codes that use string.format: -- Example 1: Formatting a simple string local name = "John" local age = 25 local formattedString = string.format("My name is %s and I am %d years old.", name, age) print(formattedString) -- Output: My name is John and I am 25 years old. -- Example 2: Formatting a floating-point value with a specific precision local pi = math.pi local formattedString = string.format("The value of pi is approximately %.2f.", pi) print(formattedString) -- Output: The value of pi is approximately 3.14. -- Example 3: Formatting an integer value with leading zeros local number = 42 local formattedString = string.format("The answer is %04d.", number) print(formattedString) -- Output: The answer is 0042. In Example 1, we format a simple string with placeholders for name and age. In Example 2, we format a floating-point value for pi with a precision of two decimal places. In Example 3, we format an integer value with leading zeros to make it four digits long. Hope this helps!6 points
-
Hello my name is : Shady,I will show you some examples and tutorials that can be done with the math method. Lua provides a set of built-in math functions that can be used to perform various mathematical operations. Here are some of the most commonly used functions: math.abs(x) This function returns the absolute value of a given number x. Example cd: local x = -10 local abs_x = math.abs(x) -- abs_x is 10 math.ceil(x) This function rounds up a given number x to the nearest integer. Example cd: local x = 3.5 local ceil_x = math.ceil(x) -- ceil_x is 4 math.floor(x) This function rounds down a given number x to the nearest integer. Example cd: local x = 3.5 local floor_x = math.floor(x) -- floor_x is 3 math.max(x1, x2, ...) This function returns the maximum value among the given numbers. Example cd: local max_value = math.max(10, 20, 30) -- max_value is 30 math.min(x1,x2, ...) This function returns the minimum value among the given numbers. Example cd: local min_value = math.min(10, 20, 30) -- min_value is 10 math.random([m [, n]]) This function returns a random number between m and n. If m and n are not provided, it returns a random number between 0 and 1. Example cd: local random_value = math.random(1, 100) -- random_value is a random number between 1 and 100 math.sqrt(x) This function returns the square root of a given number x. Example cd: local x = 16 local sqrt_x = math.sqrt(x) -- sqrt_x is 4 In Lua, math.huge is a special value that represents positive infinity. It is often used in mathematical calculations where a number needs to be compared or used as a placeholder for a very large number. For example, let's say you want to find the maximum value in an array of numbers. You could start by initializing a variable max to -math.huge, which is the smallest possible number in Lua. Then you could loop through the array and compare each element to max, updating max if the element is larger. By starting with -math.huge, you can be sure that the first element in the array will always be larger than max, allowing you to update max with the first element. Here's an example code snippet that demonstrates the use of math.huge: local numbers = {5, 10, 2, 7, 15} local max = -math.huge for _, number in ipairs(numbers) do if number > max then max = number end end print("The maximum value is:", max) In this code, we start by defining an array of numbers. Then we initialize max to -math.huge before looping through the array using ipairs. For each number in the array, we check if it is greater than the current value of max. If it is, we update max with the new value. Finally, we print out the maximum value. Here are some examples of how these functions can be used in MTA scripts: Example 1: Calculating the distance between two points. getDistanceBetweenPoints2D function getDistanceBetweenPoints2D(x1, y1, x2, y2) local dx = x2 - x1 local dy = y2 - y1 return math.sqrt(dx*dx + dy*dy) end local distance = getDistanceBetweenPoints2D(10, 20, 30, 40) -- distance is the distance between the two points (10,20) and (30,40) Example 2: Generating a random number outputChatBox local random_value = math.random(1, 100) outputChatBox("The random number is: " .. random_value) Here I will show you 5 script sample codes with MTA Lua math function. In this direction, you can find some methods and information on how to create scripts with the math function. 1-) Generating Random Colors: string-methods function generateRandomColor() -- Generate random numbers from 0 to 255 local r = math.random(0, 255) local g = math.random(0, 255) local b = math.random(0, 255) -- return color code return string.format("#%02X%02X%02X", r, g, b) end 2-) Calculating the Distance Between Players: getElementPosition getDistanceBetweenPoints3D function getPlayerDistance(player1, player2) -- get the positions of the players local x1, y1, z1 = getElementPosition(player1) local x2, y2, z2 = getElementPosition(player2) -- calculate the distance local distance = getDistanceBetweenPoints3D(x1, y1, z1, x2, y2, z2) -- return the distance return distance end 3-) Calculating Vehicle Speed: getElementVelocity function getVehicleSpeed(vehicle) -- get the speed of the vehicle local speedX, speedY, speedZ = getElementVelocity(vehicle) -- Calculate the magnitude of the velocity vector local speed = math.sqrt(speedX^2 + speedY^2 + speedZ^2) -- return speed return speed end 4-) Showing Player's Health in Percentage: getElementHealth function getPlayerHealthPercentage(player) -- get player's health value local health = getElementHealth(player) -- Calculate percentage of health value local healthPercent = math.floor((health / 100) * 100) -- return health percentage return healthPercent end 5-) Calculating the Two-Dimensional Distance of Players: getElementPosition function getPlayer2DDistance(player1, player2) -- get the positions of the players local x1, y1, _ = getElementPosition(player1) local x2, y2, _ = getElementPosition(player2) -- calculate the distance local distance = math.sqrt((x2 - x1)^2 + (y2 - y1)^2) -- return the distance return distance end As you can see, here are 5 script examples with the MTA Lua math function4 points
-
^ The above post is because again, we know you're spreading false stories about MTA (AC team/me) and the TOP-GTA DayZ server owner samr46, besides that you have a lot of friends you're spreading it to as well, who may believe you on your word. This is the debunk, information to fight your disinformation, everyone should know you're a ** cheater. No one likes cheaters, and no, you will never play MTA again. Have a good evening!2 points
-
Вечер в хату всему люду добропорядочному! Делаю свой сервер для МТА и столкнулся со следующей проблемой: Я скачал мод Drift Paradise из 2018 года. Большая часть скриптов от туда (панель F1, автосалон, гараж, и т.д.) связанна с базой данных. При попытки запустить скрипт, который отвечает за ее соединение с сервером, вылазит следующая ошибка: Bad usage @ 'create' [Can't connect to MySQL server on 'здесь вписан мой IP адрес' (10061)] ERROR: Database.connect: failed to connect ERROR: Database connection failed Вот так выглядит скрипт: local options = DatabaseUtils.prepareDatabaseOptionsString(DatabaseConfig.options) dbConnection = Connection( DatabaseConfig.dbType, host, DatabaseConfig.username, DatabaseConfig.password, options ) if not dbConnection then outputDebugString("ERROR: Database.connect: failed to connect") root:setData("dbConnected", false) return false end В конфиге указаны следующие параметры: local db = db_main DatabaseConfig = { dbType = "mysql", host = 'здесь вписан мой IP адрес', port = '22003', dbname = 'data.db' } options = { autoreconnect = 1 } Так же есть еще вот эта часть скрипта, который как я понял игнорируется: local db_local = { host = "здесь вписан мой IP адрес", dbName = 'local_dev', username = "nikey", password = "123" Как исправить эту ошибку?1 point
-
You can't "create" new dimensions. But the element limit is 2^16 = 65536. And there are also 65536 dimensions - just enough to store each element into its own separate dimension. This allows you to create your own dimension system, based on the built-in one. In fact, I tried something like that a long time ago. A dimension system that used arbitrary values as dimension IDs, with each value being assigned a unique integer from 0 to 65535. You can use tables to track things like which elements each dimension contains and which custom dimension system ID corresponds to which built-in dimension system ID.1 point
-
Ban expires later today, the game should tell you if you connect to any server (though, you may have to be on MTA's default client for it to show). I have merged your relevant threads into the existing thread.1 point
-
WeaponIDs = { [36] = true, -- ID da bazuca por teleguiado [35] = true, -- ID da bazuca comun [38] = true, -- ID da minigum } function banPorArma(previous, next) if (WeaponIDs[next]) then -- verifica se a arma contém o ID na lista banPlayer(source) -- source é o player no evento onPlayerWeaponSwitch end end addEventHandler("onPlayerWeaponSwtich", root, banPorArma) Esse código é acionado quando um player troca de arma com o evento onPlayerWeaponSwitch e detecta se a arma 'seguinte' contém o ID na tabela weaponIDs, caso sim, o player é banido. Você pode adicionar mais pârametros na função banPlayer, só pesquisar na wiki os pârametros disponiveis. Lembrando que para usar a função banPlayer o resource precisar ter permissões Admin. Você pode adicionar mais IDs de armas, na página weapons tem todos os IDs de todas as armas do MTA.1 point
-
This part of Starfish Island, was used to make the first-ever MTA:SA Race Map. Thanks to lukum, we can see how it looks like. Simply beautiful. Join the uDka Racing server and play it on there! However, this map has one pesky bug: Whenever map is ending and going back to normal SA Race maps, the collisions stops working on some roads. If somebody has a script to fix that, lukum and I would be appreciated1 point
-
اهلا وسهلا يتم الرد على التذاكر خلال 24 ساعة وغالبا يتم الرد خلال ساعة واحدة نظرا للأنشغال بتحديث موقعنا فقد يكون هناك تأخير اضافي، ونعمل على اضافة المزيد من طرق الدفع1 point
-
nice, i am not sure maybe the game does not load properly if u switch between maps i mean the vc one needs to be loaded and the old one unloaded if i remember correctly or something like that, and when u go back the game will not load properly the original map i think. I could be wrong also.1 point
-
1 point
-
JUEGO DE ROL l LIBERACIÓN DE GM NEVADA (Sacada de liberación) Buenas noches, comunidad de MTA . El día de hoy me gustaría realizar la liberación de una GM que costo bastante trabajo, pero nos robaron la GM y la estan queriendo usar para otro proyecto llamado Genesis Roleplay ( 46C51.AG#2210 o 46C51#6644 ), entonces llegamos a la conclusión de que deberíamos liberar la GM, fue dura de tomar la decisión pero pensamos que es lo mejor. VIDEO DEL SERVIDOR (Sacada de liberación) Disfruten la GM, Suerte.1 point
-
bengines provides custom engine sounds for vehicles. The resource is not focused to be ultra realistic, it is designed to use for casual servers. Not useful for me anymore so sharing with community. Used on old project. Sounds are copyrighted content not owned by me. Features: ready to use, chooses the best engine for vehicle depending on handling! easy to customize & expand for Lua programmers 30 soundpacks for vehicles (buses, bikes, sport cars etc.) stable code with quite high performance used on server with 600 players ALS effect (exhaust flames) Turbo (satisfying whistle and blow-off sounds) Videos: https://streamable.com/n7k40 https://streamable.com/lp14t https://streamable.com/q5e9g Download: Github: https://github.com/brzys/bengines (feel free to send pull requests) Community: to-do For programmers: --[[ Element datas used by resource [array] vehicle:engine - stores basic info about engine type, sound pack etc. (synced) [string] vehicle:type - used for engine calculation, useful for servers. Available: Bus, Truck, Sport, Casual, Muscle, Plane, Boat, Motorbike (synced) [string] vehicle:fuel_type - customized for each engine. Useful for servers. Available: "diesel", "petrol" (synced) You can use setElementData(vehicle, "vehicle:upgrades", {turbo=true, als=true}) to add turbo or ALS. --]] --[[ Exported functions --]] exports.bengines:getVehicleRPM(vehicle) -- returns RPM of given vehicle exports.bengines:getVehicleGear(vehicle) -- returns current gear of given vehicle exports.bengines:toggleEngines(bool) -- true / false, restore GTA engine sounds1 point
-
-- Client-side script addCommandHandler("setunit", function(command, unitNumber) -- Check if the unit number is valid (must be a number) if not tonumber(unitNumber) then outputChatBox("Invalid unit number! Please enter a valid number.", 255, 0, 0) return end unitNumber = math.floor(tonumber(unitNumber)) outputChatBox("You have set your unit number to: " .. unitNumber, 0, 255, 0) end)1 point
-
1 point
-
You should attach the hunter to theObject, not the other way around. attachElements(hunter,theObject)1 point
-
1 point
-
Добрый день. Начал играть в МТА:Privince в прошлом году и ни разу не использовал читы, ничего противозаконного. Несколько дней назад столкнулся с блокировкой моего серийного номера. Могу предоставить любые доказательства, которые будут необходимы для разбирательства. Прошу разобраться в данной проблеме и прошу разблокировать мой серийный номер. Мой серийный номер: F6AE69981F3B6E30C67625D9D7CD92E4. Ссылка на окно блокировки: https://yapx.ru/album/V99rw1 point
-
1 point
-
1 point
-
hello @kukimuki welcome the forum , I sent you 2 different pieces of code regarding your question, you can try both, if you want a different way, you can tell me, I can help you 1. code function onPlayerCommand(command) if command == "teleport" then -- get the player's current position local x, y, z = getElementPosition(getLocalPlayer()) -- set the new position where you want to teleport the player local new_x, new_y, new_z = 123.45, 67.89, 10.11 -- change these values to your desired position -- set the player's new position setElementPosition(getLocalPlayer(), new_x, new_y, new_z) end end addEventHandler("onClientCommand", getRootElement(), onPlayerCommand) 2. code function onPlayerCommand(command, arg1, arg2, arg3) if command == "teleport" and arg1 and arg2 and arg3 then -- get the player's local element local player = getLocalPlayer() -- get the position to teleport the player to local x, y, z = tonumber(arg1), tonumber(arg2), tonumber(arg3) -- set the player's new position setElementPosition(player, x, y, z) end end addEventHandler("onClientCommand", getRootElement(), onPlayerCommand)1 point
-
in setElementData and getElementData functions you're using the "player" variable which is not defined in the code. In the for loop where you set the element data for the player's hunger you not specified the value that has to be set. Im cleaned your code a little bit. Try it, please. Hope it works. local db = dbConnect("mysql", "dbname=test; host=127.0.0.1;charset=utf8", "root", "", "share=0") -- This function loads the player's data from the database function loadPlayerData(player) -- Load the player's data from the database local query = dbQuery(db, "SELECT * FROM players WHERE serial = ?", getPlayerSerial(player)) local result = dbPoll(query, -1) -- If loading the data failed, use default values if not result or #result == 0 then setElementData(player, "money", getPlayerMoney(player)) setElementData(player, "hunger", 100) else setElementData(player, "money", result[1].money) setElementData(player, "hunger", result[1].hunger) end end -- This function saves the player's data to the database function savePlayerData(player) local money = getPlayerMoney(player) local hunger = getElementData(player, "hunger") -- Save the player's data to the database local query = dbQuery(db, "REPLACE INTO players (serial, money, hunger) VALUES (?, ?, ?)", getPlayerSerial(player), money, hunger) dbFree(query) end -- Function to return the player's hunger value function getPlayerHunger(player) return getElementData(player, "hunger") end -- Load the player's data when they join the server addEventHandler("onPlayerJoin", root, function() loadPlayerData(source) end) -- Save the player's data when they quit the server addEventHandler("onPlayerQuit", root, function() savePlayerData(source) end) -- Save the player's data when a parameter is changed addEventHandler("onElementDataChange", root, function(dataName) if dataName == "money" or dataName == "hunger" then savePlayerData(source) end end)1 point
-
1 point
-
local msg = false function checkVehHealth() local veh = getPedOccupiedVehicle(localPlayer) if veh then local currHealth = getElementHealth(veh) if currHealth <= 0 and not msg then outputChatBox("Your vehicle HP is 0", 255, 0, 0) msg = true elseif currHealth > 0 then msg = false end end end addEventHandler("onClientRender", root, checkVehHealth) u can use a boolean variable to ensure the message is only displayed once1 point
-
you can get the pilot with getVehicleOccupant function and check if it exists an example that maybe can help you function VehicleHealth(attacker, weapon, loss) local HealthOfVehicle = getElementHealth(source) local driver = getVehicleOccupant(source) if driver then outputChatBox("life before the crash: "..math.floor(HealthOfVehicle)) outputChatBox("life after the crash: "..math.floor(HealthOfVehicle - loss)) outputChatBox("damage taken: "..math.floor(loss)) end end addEventHandler("onClientVehicleDamage", root, VehicleHealth)1 point
-
the event triggers because u dont use the loss parameter to check the amount of health the vehicle lost in onClientVehicleDamage addEventHandler("onClientVehicleDamage", root, function(loss) local vehHP = getElementHealth(source) if currentHealth - loss <= 0 then end end)1 point
-
seems to have solved the problem. I made GTA material as indicated by instructions, transparency 230-210. But when I set it to 255, that is, without transparency, everything is displayed well.1 point
-
when you use the onPlayerJoin event you are trying to create a vehicle too quickly its not guaranteed that the player will have finished loading in before the event is called If you try to create a vehicle before the player has finished loading in the game will probably crash onClientResourceStart --//-- executeCommandHandler("fahrzeugErstellen") Those will Check if the resources has been loaded it will use the command1 point
-
1 point
-
Multi Theft Auto: San Andreas 1.6 is ready for testing! Our next major build is coming along nicely, so we are keen to let you guys into the action ASAP. Main highlights Two of the main exclusive highlights of this release is the script support for custom IMG containers, and ability to set model flags. Big thanks to @TheNormalnij for his efforts on making these happen! There are also numerous other changes such as updated translations and main menu texts, new GTA skins, improved sync, improved GTA camera screenshot quality and many other bug fixes and improvements which you can find on our Wiki page. By having you join us to test 1.6 we can make sure we catch any new bugs and fix them before the full release. Backwards compatibility 1.6 is not compatible with the older MTA:SA versions (including the most recent release - MTA:SA 1.5.9). This means that you need to connect to a 1.6 server if you wish to test the 1.6 client. There were a bunch of technical reasons for this incompatibility and they were all necessary for us to continue improving the mod. Currently 1.6 includes 10 backwards incompatible changes which you should be aware of. There may be more incompatible changes to be added during this testing phase. Please check out our preliminary release notes on our Wiki page. Public test servers We are hosting a number of official 1.6 public test servers during the 1.6 testing phase for you to try out. Welcome! After the testing phase is over, our public test servers will be shut down. Full release schedule We are planning a full release of 1.6 around May–June if testing phase goes well. To guarantee a smooth transition for your server, we recommend that you try out and upgrade your scripts on this new testing version before the full release. There will be a new announcement once 1.6 is fully released. Keeping your 1.6 up-to-date Once you've installed 1.6, MTA will automatically prompt you to update to a newer version whenever there is an update available, including once we release 1.6 in full - so no need to download and reinstall 1.6 again. What happens to 1.5? 1.5 installations will be kept intact even after the 1.6 release, to let players and server owners switch over to the new version whenever they feel they are ready. However, new features and changes will only be available on 1.6. Note, that you can have both 1.5 and 1.6 installed at the same time on your computer to allow you to switch between if you want. MTA will prompt you to switch to the correct version if the server doesn't support your current version. CLICK HERE TO DOWNLOAD MTA:SA 1.6 BETA If you spot a bug in MTA, please report it here, or if you spot a bug in of our default resources, please report it here instead. See you in game! --MTA Team1 point
-
Thats bad news, but GTA SA is very old and you cant fix the graphics/physics or even the popularity of the game thats why they made the remastered version1 point
-
Salutări tuturor! Recent a fost lansată versiunea 1.6 (beta) pentru platforma Multi Theft Auto! Aceasta aduce schimbări substanțiale, unele incompatibile cu versiunile anterioare, motiv pentru care a fost luată decizia de a lansa noua versiune într-un stadiu beta. Vă invităm să luați parte la demersurile de testare a noii versiuni pentru a accelera această perioadă beta (estimată să dureze până în jurul lunii mai-iunie dacă toate condițiile necesare sunt întrunite). Cum puteți ajuta? Cel mai simplu și eficient mod este conectarea pe unul dintre serverele publice deschise provizoriu de către echipa MTA cu scopul de a facilita testarea noilor funcționalități. Puteți descărca și instala cea mai recentă versiune de MTA aici: https://nightly.multitheftauto.com/?mtasa-1.6-latest Puteți găsi detaliile de conectare pentru fiecare server în parte aici: MTA 1.6 Official Beta Server #1 Europe - IP: 57.129.0.210:22003 MTA 1.6 Official Beta Server #2 America - IP: 51.222.139.212:22003 Puteți avea două versiuni de MTA instalate simultan (versiunea anterioară 1.5.9 și versiunea nouă 1.6-beta), fiecare versiune instalată într-un folder diferit! În acest fel, puteți comuta cu ușurință în orice moment între versiuni fără să fie necesară o reinstalare sau modificare a fișierelor. Puteți citi mai multe în acest anunț: Distracție plăcută!1 point
-
Hello everyone! We have prepared a special gift for you to celebrate Multi Theft Auto's 20th Anniversary! Here is an exclusive interview with IJs (also known as IJsVogel), the founder and first developer of the Multi Theft Auto project. Read on to see his thoughts on the project in retrospective. Note: more details about Multi Theft Auto's history and timeline can be found on our Wiki article. What had prompted you to create the very first multiplayer mod for GTA3 - a game that did not offer such a feature out of the box? Wow, it has already been 20 years.. I remember the reasoning behind it very vividly! As I grew up in the 90s I was lucky enough to be surrounded by PCs, early internet and PC games from the very beginning (of myself). I was a very fanatical player of Grand Theft Auto 1 and 2, especially so because these games had a multiplayer mode that I could play at home with my brothers. Then, finally in 2002 when GTA3 came out for PC, I was 13 at the time and completely astounded at the possibilities of this 3D open world version of my favourite game for the first couple of months. After a while, it sinked in that this game was missing any ability at all to play with others, which put a huge dent into my appreciation for the game... At the time, I never really played the storylines of games because it didn't quite fit my youthly attention span (my older brother always left the savegames for me to play) and was usually more into the multiplayer and modding aspects anyway. Two completely coincidental things then sparked the start of an attempt at multiplayer. First, a fake French screenshot was being sent around forums, showing a multiplayer mod for GTA3. This raised my hopes tremendously and I was looking forward to testing this so much. When it turned out to be another hoax, my hopes were in shambles and I began thinking about hacking something together to do it anyway. A screenshot of a fake multiplayer mod in GTA3. Surfaced in July, 2002. Secondly, some coders had just released a trainer/cheat tool for GTA3 including its source code in Visual Basic 5 or 6, which was the only language I knew at that time as I was only 14 by then. I started hacking around with the tool to make a synchronized trainer tool, and figured I might as well synchronize car positions, and a very crude attempt at multiplayer was born and it was dubbed GTA3: Alternative Multiplayer (GTA3AM). It was amazing to see it work, it seemed such a stupidly simple hack! This was the first effective prototype of Multi Theft Auto. A not-so-fake GTA3AM 0.1 Client window, win9x style! February, 2003. Were there other people who shared your idea and wanted to contribute? Was it easy to find them? The initial GTA3AM was posted on a well-known Dutch tech forum, and this raised some attention from people over there. It wasn't so much a conscious decision to find people, people really wanted to contribute and we gathered on IRC, with some people helping out with the website, server donations and coding. This grew organically as the users grew. The first months or so was mostly Dutch techies helping out, including a well-known provider sponsoring our hosting, and after the first year or so the team became very diverse, international and well skilled. I am still very grateful for each and every contributor to this project from the very start and later, also because I was still very young at the time, and the project would not have been able to thrive on my contributions alone. I have had the fortune to meet and work together with some of the most skilled people I've met in my entire life, as well as people who simply loved playing around with our creations. Work on ambitious projects like this typically involves solving tough and unusual problems. What was the most significant one that you and the team had to deal with during your time in MTA? And perhaps, maybe there was a really peculiar problem that you also would like to share? MTA has been an amazing learning curve for me, and I believe many other contributors in its 20 year lifetime, to acquire a very special mix of skills. We have had tremendous fun and also frustration engineering the hell out of all sorts of things, and trying to tie worlds together over a network. There are countless things that were tackled and pioneered (even if only personally) in this project, so it is hard to pinpoint out a single thing. I think one of the most groundbreaking efforts of this project however was to restructure the entire project and release it as open-source to the world. As part of that we spent much effort to restructure everything using git (this upset quite a few developers at the time) and published it in 2009 or so on GitHub when it was still in its infant stage (GitHub even mentioned us on their blog at the time). A bit messy in MTA:SA Racemod internal tests. Some time in the second half of 2005. If you had a chance to start this project again, would it be closed-source as it initially was, or would you prefer it to be open-source like it is now? It would certainly be open-sourced again, probably as early as possible. The facilities for open source projects are much, much better now than 20 years ago as well. The move to GTA:SA kind of left the multiplayer mods for GTA3 and GTA:VC in the dark. While there were some alternative mods developed for these games, they did not really leave a lasting impact in the long run. Have you or the rest of the team ever considered bringing back the support for GTA3 or VC after MTA:SA DM 1.0 was released? I do not think there was ever a strong will to revive the GTA3 or GTA:VC versions, because GTA:SA by all means had a better and more capable engine. Perhaps in today's open source world, where contributors are easy to find, it could have had a better chance. My personal opinion (or fantasy) at the time was to "just" build our own game behind it instead, but that obviously never took off. Development build of MTA:VC Blue. Some time in the second half of 2004. What in your opinion are the strongest points of Multi Theft Auto (be it the original 0.x series or MTA:SA)? What do you think the project especially succeeded in? The critical mass of players and contributors, that never seems to die out, and it keeps surprising me. The incredibly challenging technical issues we have had to solve (and still do), sometimes from the ground up. This makes for a very exciting sandbox to work in as a developer or hacker. And in contrast, do you feel there are any shortcomings in MTA? I think one of the missed opportunities in MTA is that we could have developed a bigger framework or other products on top of all the codebase we had written. A bit messy again, this time during MTA:SA DM internal tests. December, 2007. Thinking back, are there any things in the project that you think you would have done differently nowadays? I would have loved to have set up a much more professional collaboration with the entire team that were around at the time the project was open sourced around 2010, using all the knowledge we had all acquired in the process of making MTA:SA 1.0 when it was still very hot. With the knowledge on startups that I have now, I realize that had I been 5 or 10 years older, I might have had some better idea on how to take it to a level to possibly develop our own game(s) or framework on top of it. But alas, for MTA's sake it turned out good either way! The MTA Community is very large these days and scattered across all continents, but that was not always the case. What was the community like back in your time? As with most (modding) projects you usually start out with a very niche audience. For MTA, this was a direct result of me posting on a Dutch tech forum and as a result, the initial contributors in the first months were mostly (if not all) Dutch and Belgian. With the GTA series obviously being a hit in the Western world, more people wanted to contribute (and play). Nearly all of them came from the US, UK, Central and West Europe and the Nordic countries, with a few notable exceptions. I think this pretty much mirrored the demographics of the GTA series themselves. Let's race! Beta tests of MTA:SA DM. December, 2007. I have noticed that you have been involved with various tech projects after retiring from MTA. What are you up to currently? Was your experience from working on MTA useful in these projects? Among some other startup adventures in the past years, I currently lead an audio software company called KoalaDSP that develops virtual audio plugins, instruments, effects and algorithms for a bunch of very big companies out there. We started this company around two years ago in Amsterdam after some previous endeavours, and with around 10+ people working on some crazy software being used in music and home studios around the world. But Multi Theft Auto has given me a lifetime passion for video game development, and after many years or scribbles and notes, I have finally found the time and people around me to developing my second (..after MTA) game idea using 90s retro graphics and voxels. I feel quite strongly that my experience with Multi Theft Auto has been a unique and once-in-a-lifetime gift of skill, much adventure and lasting connections with others. I can't quite pinpoint it, but it feels special. I hope that also still holds to this day for any contributors out there. A long-running project like MTA also means a lot of memories. Do you have any fond or interesting memories from your time working on the project that you would wish to share? I have so many memories of my time during MTA, it is hard to pick out something! Apart from the early memories of all the excitement, healthy stress and testing with all these people during the very, very early days, there is something I remember from a bit later: There was a pretty far-fetched and secret clandestine plan from some of our developers to put a live editor into one of the first MTA:SA releases. Like often with our features, it was really a coding challenge, a show of skill. Are you skilled enough to build this crazy thing? They figured that, in order for the community to enjoy using our mod, they needed an engaging way to create content. So they started building a complete editor inside the game. It required a tremendous amount of work, but they kept to it, others started contributing, and it ended up as one of the key features of the entire release! Some say that editor served as an inspiration to other mods, possibly other games afterwards. Internal tests of the cancelled MTA: Orange. April, 2010. To wrap things up, is there anything that you would like to say to current MTA Team members and/or to MTA fans? Thanks for putting your enthusiasm (and many wasted hours of gaming!!) into this amazing project. Props to all the contributors, past, present and future. MTA, the way it's meant to be played! Interviewed by jhxp.1 point
-
eğer farklı sorunlar yaşıyorsanız yapmanız gereken 2 şey vardır. 1.si MTA Forum TR "YARDIM" tarafından bir gönderi yapmanız ve ekran görüntüsü ile göstermelisiniz. 2.si olarak'da MTA Discord "LINK ICIN TIKLA" tarafından TR-Destek bölümünden bir konu açmanızdır ve aynı şekilde ekran görüntüsü göstermelisiniz, bu durumda yapılacak en iyi iş ve işleyiş MTADiag kurmaktır. peki ya! Nedir bu MTADiag Towncivilian tarafından hazırlanımş bir MTA programıdır, bu program sayesinde bir çok sorunların üstesinden çıkmamıza yarayan prototip yazılım programıdır, sorunlarınızı daha iyi anlamamıza yarayan ve hızlı bir şekilde sizlere yardımcı olabilmek için kullandığımız bir programdır. peki ya! bu programı nasıl indirebilirim.... DOWNLOAD MTADiag MTADiag is opensource, check out the repository at https://github.com/multitheftauto/mtadiag1 point
-
OneDrive Sorunu " GTA:SA Ve MTA:SA dosyalarınızı kuracağınız vakit kurulum yollarını iyi değerlendirmelisiniz, örneğin YerelDisk : C tarafında kurulum yapmalısınız çünkü MTA:SA kurulum esnasında bütün .Net ve Direct X yazılımları genellikle YerelDisk tarafında kurulur, eğer siz GTA:SA Ve MTA:SA kurulum yollarını OneDrive yaparsanız, bu kurulumları bir nevi yok sayacaksınız demektir, bu yüzden kurulum yollarını iyi tercih ediniz." Bu Örnek Doğru örnektir : GTA path: C:\Program Files\Games\GTA San Andreas bu şekilde kurulum örneği yapabilirsiniz. - Bu Örnek Yanlış örnektir : GTA path: C:\Program Files\OneDrive\Games\GTA San Andreas ------------------------------------------------------- MTA Harita Editör obje delete sorunu " MTA harita editöründe bir objeye tıklıyorsunuz ve DEL yani Delete tuşuna basıyorsunuz ancak siliinmiyor bunun için kalıcı bir çözüm vardır, MTA Nighlty Sürümünü indirmek ve denemektir." Nightly MTA indirme bağlantısı : https://nightly.mtasa.com/mtasa-1.5.9-rc-21595-20230215.exe ------------------------------------------------------- Error FindPID [CL22] sorunu "eğer FindPID sorunu ile karşı karşıya gelirseniz vay halimize derim çünkü bu sorun genellikle HardDisk/SSD sorun ile karşı karşıya kalabilirsiniz yada izin verilmeyen Windows hatası gibi." bu sorunun en kolay ve basit çözümü olarak ilk öncelikle anti virüs programından tam virüs taraması yapmalısınız ve son sürüm MTA:SA tekrar kurmalısınız, eğer hala sorun düzelmediyse Windows yazılımını tekrar kurmalısınız yani tabiri ile Format atmalısınız. çünkü disk tarafında bu hasar kaydıdır. ------------------------------------------------------- .asi sorunu "eğer (.asi files are in the MTA or GTA:SA installation directory.) tarzında bir sorun hatası alırsanız, yapmanız gerekenlerler şunlardır, ilk öncelikle GTA:SA dosyalarınızı kontrol etmenizdir, eğer GTA:SA dosyalarınızda .asi uzantılı yada cleo gibi modlar bulunuyorsa bunları silmelisiniz&kaldırmalısınız. " ------------------------------------------------------- Rar Modül Hatası : "eğer bu tarzda Module = C :\User\Games\AppData\Local\Temp\Rar$EXb3772.21948/GTA:SA... bir mesaj alacak olursanız, yapmanız gerekenler, sadece GTA:SA dosyasını RAR klasöründen çıkarmaktır, yukarıdaki örneklerdeki gibi (GTA path: C:\Program Files\Games\GTA San Andreas) GTA:SA kurulumu yapabilirsiniz. böylelikle sorununuz çözülmüş olacaktır"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
-
Hello, Effective immediately it's no longer possible to: - Report players to AC team - Appeal any global bans Do not attempt to report players to MTA staff team, or appeal any bans. It doesn't matter what you think or believe in, they will no longer be processed. A) If you need to report a player, please contact admins on the server they are playing on. Server admins should pay the amount of attention that staff in other multiplayer games (with hosted servers) typically pay, and owners should be mindful of script security and scripted anti-cheat solutions to fill in some cracks that started to be created over the past few years, and continue to do so as a result of lowered manpower within the MTA AC team. B) Appealing bans is no longer needed as permanent bans have been removed last month, and any of the handful of cases not covered aren't meant to ever be appealed, without exception. Temporary bans were never meant to be appealed, although some staff member's intepretation of that (while redirecting users) has varied - if you got a temporary ban, wait for it to expire and surely you got a feeling of what not to do/not to run next time while MTA is opened, to avoid getting banned again. AC team is actively monitoring the reliability & integrity of standard detections that may lead to temporary bans, that's one of the things its manpower still allows it to do, so you can see why we're confident to go this route - any leakage of appeals in places they don't belong/users contacting MTA about their bans anyways, our experience has learned is 99.9% users that know why they got banned but won't accept it and are persistent.. as before, all such inquiries won't lead anywhere, but especially now we said "No appeals anymore" there will be zero interaction and certain behaviors may also lead to removal from the respective platforms where inquiries are made in a persistent or disruptive fashion. Finally, regarding cheaters - the level of sophistication that our AC has reached due to years of playing a cat mouse game with cheaters, is a hugely raised border for cheats to be made and will continue to do so (as methods that were used in the past were patched as per the spoilered text in this topic, so they can't be re-used). However, with the loss of dedicated AC developers within AC team, comes that we can no longer keep up as before, this situation has existed for the past 2 years so as of this post nothing is abruptly changing, it's just the point of admitting we won't be tryharding as much as in the past to be known as totally cheater-free game, a reputation we held for long. If you look around in the gaming industry, you'll see that we held up pretty well in comparison, but the cheating industry (due to toxicity demand) has also hardened, and after 20 years we are low on manpower which is fully understandable. We will continue to bring AC improvements and get rid of emerging cheats and cheaters, but at our own pace, without external pressure or too high community expectations, from now on everything is on a best-effort basis and the point is that there may be periods during which we can't make any waves due to manpower constricts. You can see that this topic intends to lower your expectations and respect the amount of free time we (as volunteers) are able to invest, and get off our backs for things being different compared to some years ago. We're also OK to restrict ban appeals and player reports so we can delegate all of the manpower that's left on our new strategy, breaking cheats (patching them) and just preventing them from working to begin with, instead of permanently banning cheat users and having to deal with them "regretting" in ban appeals. We are also OK to restrict reporting cheaters as our focus shifts to breaking the cheats, and to get the required information to break one, we have our own methods and channels so much that we don't need any sort of reports. Due to the state of anticheat and heuristics, we always have a good picture of abnormalities and what cheats are doing, so the main limiting factor is manpower to get to work with what we have & know. Enjoy the game, and remember that player desires make the market for servers - so if you see too many cheaters, ask server owners to invest their time in training server admins to be on the lookout for cheaters and ban them, script protection/alert systems, and after all, have some peace of mind because cheating in MTA will always be a raised border and still won't be as common as in directly competing projects. // Note: using the bug bounty program for security bugs remains possible, end user security will always be among MTA team's top priorities. The program has been frozen for cheats, though, and documentation will soon reflect that.1 point
-
To take away some confusion, understand that the changes being announced here are mostly focussed on cutting out the 'community front' of AC team operations, so that we can optimize limited manpower and rebalance expectations for our users to accept there will be periods we can't make waves, if you were able to move yourself into our perspective on how people always want everything solved, fixed, sorted out immediately on their whim, and how persistent they are in that (and in most cases bring something misconceived/invalid, after which they can't even be convinced otherwise or that would take from our time disproportionally), you'd be straight out scared and quickly stressed out. OP was clarified by adding in this segment 1 day after the topic was made: We will continue to bring AC improvements and get rid of emerging cheats and cheaters, but at our own pace, without external pressure or too high community expectations, from now on everything is on a best-effort basis and the point is that there may be periods during which we can't make any waves due to manpower constricts. You can see that this topic intends to lower your expectations and respect the amount of free time we (as volunteers) are able to invest, and get off our backs for things being different compared to some years ago. We're also OK to restrict ban appeals and player reports so we can delegate all of the manpower that's left on our new strategy, breaking cheats (patching them) and just preventing them from working to begin with, instead of permanently banning cheat users and having to deal with them "regretting" in ban appeals. We are also OK to restrict reporting cheaters as our focus shifts to breaking the cheats, and to get the required information to break one, we have our own methods and channels so much that we don't need any sort of reports. Due to the state of anticheat and heuristics, we always have a good picture of abnormalities and what cheats are doing, so the main limiting factor is manpower to get to work with what we have & know. After all, cheating on MTA will not be left alone, and AC team will disrupt it and raise the border even more whenever manpower allows it to do so. Cheaters should realize that their fun may come to an end at any unexpected moment, and that if they're too used to being able to cheat, they will be very upset to have to adapt to playing normally for as long it takes the cheat devs to catch back up to us again.1 point
-
E aí, @Joao_Preis! O nome não é alterado pois contém acentuação. Nesse caso, nós temos um til (~). O MTA só aceita caracteres de A até Z, sem nenhuma acentuação. Fique esperto também no tamanho do nome, o limite é de 22 caracteres, sem espaços. Você pode conferir os caracteres válidos aqui. Aparecerá da seguinte forma:1 point
-
По факту топик должен называться "Паранойя и шизофренический бред Easterdie" Айдл меню / подключенный геймцикл / проверки античита / процессы обновления. 15-20% это офигеть как много, чтобы на это жаловаться))) Если был бы достаточно смышленным. то мог бы прикинуть, что майнинг на процессоре в таких маштабах принесет примерно нифига. А обновления у тебя откуда качаются? Сервера откуда ищутся? Крашдампы и стата куда шлется? Если больно печет от этого, режь трафик, подключайся только через хостгейм в хамачи. Если их функционал предполагает возможность редактирования/чтения памяти, изменения траффика, то нафиг они нужно, чтобы они были включены при игре. Для увлекательного гемплея с читерами есть другие проекты, например samp.1 point
-
Trabalhar com gráficos é muito complexo no MTA. Comece tentando fazer gráficos para coisas mais simples para estudar como criar um. Só depois tente implementar oq você descobriu naquilo que você deseja. Imagino que você vai precisar de um DxDrawLine e vários DxDrawRectangle.1 point
-
الله يعطيك العافيه شروحك دايم جميله من شخص اجمل يعطيك العافيه تقبل مروري1 point
-
Buenas, vengo a compartir esta gamemode desarrollada de 0 por Clawsuit y Yo (decidimos publicarla debido a un robo) Actualmente El Servidor Se Llamaba Chicago Roleplay débido a que fué mi último proyecto, Antes Se LLamaba OlympusNew Roleplay No tengo fotos o videos pero pueden verla ustedes mismo Cualquier cosita estare Respondiendo en el Post Link (GM Sacada de Liberacion)1 point
-
1 point
-
Mas o que é isso que eu tô vendo na tela do meu computador? Caraca, salvando aquilo tudo de dados numa conta. Imagino que tenha bastante tendas e veículos, não é a melhor forma. ?Mas enfim, tente remover a senha, deixe só o nome da pseudo-conta.1 point
-
1 point
-
JConvertor Ever wanted to put an SA map into MTA but had issues with Scene2Res and found it impossible to do manually?; well here I present Convertor (For use with J Streamer) What does this do? - Converts the map (IPL and IDE files) - Only copies needed files (If it's part of the standard SA it'll only print the position and name into the JS Placement file - Converts water (If there are too many planes then you need to manually make the water - Converts train track placement //WIP will come soon - Can seamlessly load a map MTA so long as it's converted and made correctly - Manages vegetation swaying - Automatically fades objects that shouldn't be visible during night or day - Properly assigns LODs - Gives objects proper tags such as ALPHA, CULLING, etc Usage Drag the maps Data folder into the root of the convertor resource(This handles IPLs, IDEs, Water, Etc) Drag all DFF and TXD files into the resources folder Place Collisions into their own folder Open Colleditor2 http://www.steve-m.com/downloads/tools/colleditor2/ Drag and drop all of the collisions into COL editor Select all of the collisions (In COL editor) Right click - > Export - > Single Col files -> then export into the resources folder Change name or position in config file Run the Convertor as a resource and watch the magic happen Fix any errors in Debug.txt (If any) Run again (If needed) Run the map with OBJs running https://github.com/CodyJL/J-Map-Convertor J 3Ds Max Tool Kit What does this do? - Export JSP strings - Export JSD strings - Export Meta strings - Export COLs - Export DFFs (If you wanna use it figure it out yourself) https://github.com/CodyJL/JStreamer/tree/master/Tools JStreamer (OBJs) What does this do? - Load maps - Automatically assigns IDs to objects - Tries to allow you a full range of possibilities (Using SA content along side custom content seamlessly) - Allows you to create maps in a very tidy way. https://github.com/CodyJL/JStreamer JResources Discord1 point
-
ATTENTION! First thing you must do before starting to script for MTA is to learn Lua. If you don't learn the basics of Lua language, it will be hard for you to script anything. I've compiled this list of tutorials and manuals, which should be useful for scripting beginners. http://www.lua.org/manual/5.1/ ( recommended ) http://www.lua.org/pil/index.html ( recommended ) http://lua-users.org/wiki/TutorialDirectory ( recommended ) http://lua-users.org/wiki/LuaFaq http://nixstaller.sourceforge.net/manua ... ler_9.html http://en.wikipedia.org/wiki/Lua_(programming_language) ( recommended ) http://lua.gts-stolberg.de/en/index.php http://www.luxinia.de/index.php/Tutorials/Lua http://forum.toribash.com/showthread.php?t=74001 http://lua-av.mat.ucsb.edu/blog/?p=39 ( recommended ) http://www.ozone3d.net/tutorials/lua_coding.php http://luatut.com/ ( recommended ) http://nixstaller.sourceforge.net/manua ... ler_9.html ( recommended ) http://wiki.roblox.com/index.php/Beginn ... Coroutines ( recommended ) Lua demo: http://www.lua.org/demo.html codepad.org: http://codepad.org/ ideone.com: http://ideone.com/ MTA scripting IRC channel: #mta.scripting List will be updated. If you have any other useful tutorial/manual links — post it.1 point
-
1 point
-
UPDATED: http://forum.mtavc.com/viewtopic.php?t=10965 Read all about it here Your chances of moderator response should be 100% now.1 point