Multi Theft Auto: San Andreas 1.5.9 is released!
Happy autumn! We've been working hard and today we're proud to announce the release of MTA:SA 1.5.9. You will receive an automatic update soon, but if you don't have MTA installed, you can get it from the ModDB.
- This is the 26th 1.x.x release
- 355 days
- 49 new functions
- 16 new events
- 0 deprecations
- 77+ bug fixes and changes
- 334 commits (see comparison)
- 189 new open GitHub issues (see list)
- 81 resolved GitHub issues (see list)
- 135 closed GitHub issues (see list)
- 71 new open GitHub pull requests (see list)
- 207 merged GitHub pull requests (see list)
- 53 closed GitHub pull requests (see list)
- 38 contributors of which 11 are new (see list)
- 94+ total contributors (see list)
- 13 vendor updates
This release is (mostly) backwards compatible with the older 1.5.x releases (1.5.8, 1.5.7, all the way to 1.5).
If you're a server owner, please take note of the Changes in 1.5.9 wiki page, more specifically the Backwards Incompatible Changes. You may need to update your scripts for 1.5.9.
We hosted a community livestream event at the end of July which was very nice! We hung out and played MTA with you on various servers. You can watch a recording of the livestream on our YouTube channel at:
We wish to do more of these livestreams soon!
We launched a 100% non-profit merch store on Spreadshirt earlier this year! If you feel like getting some of that official MTA swag, check out the merch store here: Multitheftauto.myspreadshop.net and wear that MTA gang drip at school or work.
amx is a software package that allows the execution of unmodified San Andreas: Multiplayer 0.3.7 gamemodes, filterscripts and plugins on Multi Theft Auto: San Andreas 1.5.8 and higher servers. It is open source, and a prebuilt binary for Windows is available for testing purposes right now.
The AMX team hopes that more people get involved with the development on GitHub as they need some help!
Check out our GitHub repo for more information on how to use your SAMP scripts in MTA!
This release includes many additions, improvements, and fixes:
- You can now use the new onPlayerResourceStart server-side event to trigger when client is ready! Thanks to @Lpsd
- You can now detect element interior or dimension change through two new client and server-side events onElementInteriorChange and onElementDimensionChange – should reduce some of your code! Thanks to @Patrick and @Strix
- You can now edit element bone behavior through 7 new bone manipulation functions! Great for some dynamic animations. Get started at setElementBonePosition and setElementBoneRotation. Thanks to @Saml1er
- More vehicle customisation options! You can now edit vehicle dummy positions per vehicle. See setVehicleDummyPosition. Thanks to @botder
- More audio customisation with sound effect parameters! See setSoundEffectParameter. Thanks to @Strix and @Sarrum
- More client download transfer box customisation options! See for example onClientTransferBoxProgressChange. Thanks to @botder and @CrosRoad95
- You can now allocate custom objects and vehicles through engineRequestModel. One of the most sought after features in a long time. Thanks to @TheNormalnij
- You can now use scalable vector graphics (SVG) in MTA! See svgCreate for more info. Thanks to @Lpsd
- You can now use peds and vehicles as the camera target. Thanks to @TheNormalnij
- A lot more features for scripters to build even more immersive experiences with!
- Many synchronization improvements!
- Many varying size fixes, quality of life improvements, updates and security enhancements!
- Many default resource fixes, refactors and upgrades, including webmap working once again! We have also improved the detection of world objects in map editor (editor_main resource), so you can select many more objects that you couldn't before - such as bushes, fences and many more! You can now also remove world objects inside interiors. This should help mappers a lot.
If you are a scripter, you really should wanna dig in to these improvements! Show off your creations on our #showroom channel on our Discord server and have a chance at getting your work features on our social media pages.
Read the 1.5.9 release notes for a complete set of changes and more information about the improvements listed below. Watch or star our GitHub repository to keep on top of all the things we're working on. Below is a very small subset of what we've improved:
Important future script changes
This will be the last 1.5 update and in the next version of MTA there will be numerous backwards incompatible changes and refactors that may affect old code. We will try to focus on making migration from 1.5.9 to the next version smooth for everyone.
From 1.6 onwards we will be making at least the following changes:
- callRemote callbacks currently set the error code to nil when there is no error. In 1.6, to be consistent with fetchRemote, the error code reported will be 0. See GitHub #294.
- Since July 2016 if you provide an invalid string like "randomstring" when a function expects a number, the string will be treated as 0 and raise a script warning. In 1.6 this will be an error. You will still be able to provide strings containing numbers (e.g. "100" and "12.34"), this change only affects invalid strings. See GitHub #1043.
- When providing a width and height of (0, 0) to createBrowser or guiCreateBrowser you will encounter a script error instead of a warning. The warning was introduced Feb 2019. See GitHub #1069.
- Some functions expect only unsigned integers (positive numbers), and since Jan 2016 providing negative numbers would be a warning. This will now be an error. See GitHub #1070.
- Since Aug 2015, we replaced the custom mtalocal:// URL scheme with Mta. This mtalocal:// URL scheme will now be removed. See GitHub #1071.
This list is inconclusive and we may introduce more changes later.
Our eyes are now on the next version of MTA, which will break backwards compatibility in many ways as we work to refactor MTA's codebase.
We are looking to host more community livestreams in the future, especially when we get further into the development of the next version of MTA. Stay tuned for more info most likely starting next year!
We are also still working on our community 2.0 website with an internal goal of having phase 1 of development finished by August 2022. Latest news on this is that we've had major advancements on our stack which has been long overdue. We have also continued design on both backend and frontend. We will keep you updated should any news on this project surface.
Multi Theft Auto depends on community input and contributions. To keep a project like MTA going we need LOTS of people. You can help in the following areas:
Testing and bug reporting
Whenever you encounter a bug or recognise a need for improvement, we can't fix it until you tell us your problem!
We're continually working on new features and fixes for MTA, and this always needs testing. Join our Nightly release stream and make sure you keep in touch with on Discord and report issues on GitHub.
If you know C++ you may be interested in helping improve Multi Theft Auto's client. Working on open-source software may seem scary, but the best way is to try! Read GitHub's open source guide, and then find an itch to scratch, or scratch your own!
Documentation is important, but also time consuming. If you enjoy writing and have some knowledge of English, or you would like to translate the English version to your native language, you’re very welcome to do so. Just head over to our wiki, create an account, and start editing!
Do you like people? Can you give calm and thought-out responses to users needing help? Then you can spend some time providing support to those who need it. Many answers can be found on our wiki, so make sure to take some time to read it. Then, either join our chat or forums (linked below), or simply help us sort out issues and answer questions on the GitHub repository.
Want to translate MTA to your own language? Awesome! Visit us on Pootle. As soon as your translation is approved, it will be pushed to our repository for use in future releases.
Keeping the MTA downloads, master server and websites alive costs money! If you want to help us sustain our financial expenses, please donate!
Show your creativity!
We are actively looking for new creations on our #showroom channel on Discord, as well as #mtasa on Twitter for content we would like to repost on our social media pages and pin on our annual recap forum post.
Thank you to the following community members for their donations this year:
Thank you very much to the following community members for their work towards this release:
@botder, @myonlake, @Pirulax, @TheNormalnij, @sbx320, @Dutchman101, @Strix, @qaisjp, @Zango, @Sarrum, @Lpsd, @Jusonex, @Woovie, @cleopatra, @Saml1er, @Patrick, @TEDERIs, @ccw, @fastman92, @Allerek, drop-club, @CrosRoad95, @iDannz, @JeViCo, @STR6, se16n, @FileEX, delinx, emre1702, @Disinterpreter, @LosFaul, @NanoBob, @pieT, PauloKim1246, ecastro98, @Luxy.c, Unde-R, TeteX1, @The_GTA, @leetIbrahim, @mertcan4555, @Lvrent, @Inder00, @Arran, @iDannz, @xLive, jlillis, ricksterhd123, @srslyyyy, @androksi, Yamsha75, @AfuSensi, Dark-Dragon, umithyo, brenodanyel, Mkl21, 1lyncon, Dante383, @turret001, Dezash, @Deihim007, @0xCiBeR
and many others who contributed to our Wiki and helped out with issues.
(If your name is missing or you want to change your entry above, please let us know on Discord!)
You could be on this list! We're always on the lookout for new contributors. Contribute on GitHub, and chat with us on Discord. We have channels for scripting, general support (bugs), mod development, and many more!
And one more thank you to every member of the MTA staff who helps support this forum and Discord. Without your efforts, this project would not be nearly as successful as it is now. Also a big thank you to the new MTA helpers team who support our users on this forum and Discord!
Finally please give a 👋 to our newest staff members @androksi, @Pirulax, @Sarrum and @xLive; newest contributors colistro123, @Pirulax and @TheNormalnij, as well as our newest addition to the MTA team @myonlake!
Have a good autumn!
— MTA Team