Skip to content

Latest commit

 

History

11,935 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

MTA:SA Neon Engine: native AI, extended worlds, and new Lua APIs

Open the Neon documentation and Lua API

Download the latest MTA Neon client for Windows Download the latest MTA Neon server for Windows x64

Players only need the Windows client installer. Server owners should use the separate server package. Both links track the latest explicitly published Neon release.

New to Neon? Start with the documentation, feature guides, and complete Lua API.

Join the Neon Discord View the MTA:SA upstream project

An independent MTA:BLUE-derived playground for deeper GTA:SA engine work.

MTA:SA Neon is an experimental fork of Multi Theft Auto: San Andreas that opens up parts of the GTA:SA engine that were never exposed to scripts: a bigger world, higher engine limits, and GTA's own native systems turned into Lua primitives.

Its flagship system brings GTA:SA's single-player NPCs and traffic into a shared multiplayer world, running the original AI on one authoritative client.

See it

Neon renders all of this itself. Nothing to install and no ASI files: every option is a toggle in the settings menu, and servers can drive them too.

Draw distance

Rooftop view over Los Santos: distant buildings are flat low-detail blobs in MTA:SA and resolve into detailed geometry in Neon

Distant lights at night

Night view over the city: fogged out beyond a short distance in MTA:SA, full skyline with hundreds of distant lights in Neon

PS2-style color

Street-level view in Ganton: neutral colors in MTA:SA, warmer and more saturated PS2-style grading in Neon

Neon also ships its own GTA:SA-inspired menu and server browser, with an optional Discord identity.

Neon main menu in the GTA:SA visual style, with browse servers, quick connect, map editor, settings, about and quit entries, and a Discord connected badge

Neon server browser showing community servers with flags, ping and player counts, and a details panel for the selected server

GTA systems, now scriptable

Nine systems that used to be locked inside the engine. Each clip is a real in-game recording.

Native CULL-zone editing
Native CULL zones
Edit GTA's culling from Lua
Scripting GTA's own physics objects
Dynamic world objects
Track, move, damage and break San Andreas' own props
Collision generated at runtime
Runtime collision
Build collision shapes from Lua, no .col file
Custom foliage
Custom foliage
Grow GTA's own vegetation anywhere
Managed fire following a car
Managed fire
Synchronized fires that keep their identity and follow a target
A retextured SA-MP interior
SA-MP maps
Load Pawn exports directly, retextured material slots included
A Lua-controlled flock of birds
Scriptable birds
Steerable flocks with their own renderer, past GTA's six slots
A runway of GTA lamp posts running a colour wave
Model 2DFX effects
Drive the lights baked into GTA models, no custom assets
An ordinary GTA prop breaking into fragments
Object fracture
Make any object breakable at runtime, no .dff editing
-- Build a wall's collision from a Lua table, then change it live
local col = engineLoadCOL({
    boxes = { { position = { 0, 0, 0 }, size = { 6, 0.5, 2 }, material = 1 } },
})
engineReplaceCOL(col, modelId)

-- Grow GTA's own grass inside a triangle
local patch = createFoliage(v1, v2, v3, 10, 1.5)
patch.density = 2.0

-- Light a synchronized fire, then move it onto a car while it burns
local fire = createFire(x, y, z, { duration = 10000, strength = 1.5 })
setFireTarget(fire, theVehicle)

Play

Download the Windows client installer, run it, and join a server from the Neon browser. Neon checks for newer signed releases on launch and offers them as optional updates.

Server owners use the separate server package. Both downloads are linked at the top of this page.

What changes versus MTA:SA

Area MTA:SA MTA:SA Neon
Ambient NPCs and traffic Local only, disabled by MTA Server-owned peds running GTA's native AI, with one syncer and handoff
World size Approximately -3,000 to +3,000 -10,000 to +9,999, with matching radar and F11 map
GTA corona pool 64 4,096
GTA 3D marker pool 32 4,096
Visible entity pointers 1,000 8,192
Collision authoring A packaged .col file Generated from a Lua table and rebuildable live
Vegetation placement Whatever the map contains Resource-owned foliage driving GTA's plant manager
Fire Client-only, returns a boolean, no handle Synchronized fire elements you can retarget and change while burning
Ambient birds Six native slots, no script access Resource-owned bird elements you steer, restyle and shoot; 128 verified at once
Model 2DFX effects Baked into models, not exposed Read, edit, add and remove them from Lua, with per-resource rollback
Breakable objects Only models shipping the breakable plugin Any streamed object, fractured from its own geometry
Distant lights and draw distance Not integrated Built in, 300 to 5,000 units, off by default

That is the short list. The full comparison table covers every pool, boundary and subsystem.

For scripters

Neon adds 254 documented Lua functions on top of MTA's API, plus new elements and events. A few, to give the shape of it:

engineSetRadarMapTile(column, row, txd)        -- resource-owned extended radar tiles
engineCreateCullZone(...)                      -- native CULL zones from Lua
createFoliage(v1, v2, v3, surface, density)    -- GTA's native vegetation
engineSetCOLData(col, collisionTable)          -- rebuild collision in place
getAmbientPedSpawnCandidate(origin, "cop")     -- ask GTA where a ped belongs
setFireTarget(fire, vehicle)                   -- a burning fire follows an element
createBird(x, y, z, { preset = "desert" })     -- flocks with their own renderer
setModel2DFXProperty(1226, 0, "color", c)      -- recolour every lamp post of a model
createObjectBreakEffect(obj, { force = 4 })    -- fracture any object, no breakable DFF

The Neon Lua API is the complete reference, with signatures, lifecycle rules, source commits and test evidence for every entry.

Documentation

Neon wiki Everything: guides, Lua API, evidence
Synchronized NPCs How shared native AI works
Extended world Boundaries, radar, water, seabed
Tooling and verification What is actually proven, and what is not
BUILDING.md Compiling the client and server

Deeper technical notes live in LIMIT_PATCHING.md, EXTENDED_RADAR.md, STORY_RUNTIME.md, ENTITY_PERFORMANCE.md and MULTI_CLIENT.md.

Upstream relationship

Neon is built on Multi Theft Auto: San Andreas and preserves its complete history and GPLv3 licensing. Neon-specific experiments and builds are maintained independently; use the upstream project for official MTA:SA downloads, documentation, and support.

Neon is not affiliated with or endorsed by the Multi Theft Auto team.

License

Unless otherwise specified, all source code hosted on this repository is licensed under the GPLv3 license. See the LICENSE file for more details.

Grand Theft Auto and all related trademarks are © Rockstar North 1997–2026.

About

Experimental Multi Theft Auto: San Andreas (MTA:SA) engine fork focused on larger worlds, expanded engine limits, and new Lua capabilities.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

46 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages