samp.directory
← Scripts e bibliotecas

mgmoldova/sanmap-studio

Visual 3D map editor and retexturing suite for GTA San Andreas and SA-MP

Ferramenta★ 3atualizado ago. de 2026MITTypeScript
Abrir no GitHub

README.md

Download · User guide · Русский

SanMap Studio is a standalone Windows desktop editor for building SA-MP maps without running GTA, SA-MP, MTA, or Texture Studio. It reads assets from a GTA San Andreas installation selected by the user; no game files are bundled with the application.

Highlights

  • Browse and preview DFF models and TXD textures indexed from GTA IMG archives.
  • Place, select, group, duplicate, and transform objects in a Three.js viewport.
  • Edit material slots, colors, textures, and SetDynamicObjectMaterialText properties.
  • Import and export native SA-MP and streamer Pawn object code.
  • Preview the GTA world through opt-in IPL streaming and export RemoveBuildingForPlayer calls.
  • Save versioned .sanmap projects with undo/redo, autosave, and crash recovery.

Screenshots

Download

Download the installer or portable build from the latest GitHub Release:

  • SanMap.Studio.Setup.0.1.0.exe — Windows installer.
  • SanMap.Studio.0.1.0.exe — portable executable.
  • SHA256SUMS.txt — checksums for both binaries.

The v0.1.0 binaries are not code-signed. Windows SmartScreen may show an “Unknown publisher” warning; verify the SHA-256 checksum before running the application.

Requirements

  • Windows 10 or 11, 64-bit.
  • GPU with WebGL 2.0 / Direct3D 11 support.
  • A legally acquired GTA San Andreas installation for loading game models, textures, and world data.

SanMap Studio never modifies the selected GTA installation.

Quick start

  1. Launch SanMap Studio and select the GTA San Andreas directory containing models/gta3.img and data/gta.dat.
  2. Create a new project or import existing Pawn code.
  3. Drag models from the Object Catalog into the viewport.
  4. Adjust transforms and materials in the Inspector.
  5. Save the .sanmap project or export Pawn code.

See the user guide for the complete workflow and controls.

Essential controls

ShortcutAction
WASD / arrowsMove camera
Q / EMove camera down / up
Shift / AltFast / precise camera movement
FFocus the selected object
HomeReset camera
1 / 2 / 3Translate / rotate / transform-duplicate gizmo
LToggle local/world gizmo space
Ctrl+DDuplicate selection
DeleteDelete selection
Ctrl+Z / Ctrl+YUndo / redo
Numpad 1 / 3 / 7 / 0Front / right / top / isometric view

Development

Prerequisites: Node.js 22.13 or newer and pnpm 11.8.0.

git clone https://github.com/mgmoldova/sanmap-studio.git
cd sanmap-studio
corepack enable
pnpm install --frozen-lockfile
pnpm dev

Verification and packaging:

pnpm run agent:check
pnpm test
pnpm run lint
pnpm run typecheck
pnpm run build
pnpm run build:win

Windows packages are written to dist/ and are intentionally excluded from Git.

Architecture

  • src/main/ — Electron main process, file access, settings, and typed IPC handlers.
  • src/preload/ — isolated renderer bridge exposed as window.sanMapApi.
  • src/renderer/ — React workspace and Three.js viewport.
  • packages/shared/ — serializable types, migrations, schemas, and shared utilities.
  • packages/gta-assets/ — IMG/DFF/TXD/IDE/IPL parsing and asset catalogs.
  • packages/samp-map/ — Pawn lexer, importer, and exporter.

Detailed documents: architecture, agent architecture, and roadmap.

Contributing and security

Contributions are welcome. Read CONTRIBUTING.md before opening a pull request. Report security issues privately as described in SECURITY.md.

Legal notice

SanMap Studio is an independent community project and is not affiliated with or endorsed by Rockstar Games, Take-Two Interactive, or the SA-MP team. The repository and release archives do not contain GTA San Andreas models, textures, archives, or other proprietary game assets. Users must supply their own legally acquired installation.

Third-party acknowledgements are listed in THIRD_PARTY_NOTICES.md.

License

SanMap Studio is released under the MIT License.

electrongta-san-andreasmap-editorpawnreactsampthreejstypescript

Esta página é montada com o que o GitHub publica sobre o repositório. O samp.directory não hospeda o código. Avisar de um problema com esta página