SA-MP
San Andreas Multiplayer ("SA:MP") is a user-made modification for the PC version of Rockstar Games' Grand Theft Auto: San Andreas ("San Andreas"), adding capabilities to the game's engine to allow multiple players, each on a seperate computer, to play together in the same environment.
Contents
Methods
Adding multiplayer capabilities to a single player game requires additional code in the game's engine, but like most retail games, the source code to San Andreas is not available.
Reverse Engineering
Reverse Engineering is our process of anyalizing San Andreas at it's base level, to identify portions of code that are required or useful and could be used in the development of multiple player support.
At the next step, we make changes to San Andreas' code; These changes can be as simple as "nopping" (disabling certain parts of the code that are unneeded for multiplayer gameplay), or as complex as rewriting entire engine functions.
This section needs stuff adding...
Technology
Programming Languages
SA:MP is developed using a varity of programming languages, each suited to their particular purpose.
C/C++
The core of the SA:MP client, and the SA:MP server is is written in C/C++.
Assembly (ASM)
Changes to San Andreas' engine are written in Assembly. When access to the original source code of an application is restricted, the only viable method of changing or adding code is by going to it's most base level.
Borland Delphi
SA:MP's external server browser software is written in Borland's Delphi. This language was chosen for this part of the project due to it's Rapid Application Development ("RAD") features.
PAWN scripting
SA:MP makes use of Compuphase's PAWN scripting language for user-customizable game modes and utilities.
Contributors
- kyeman (Programming, Reverse Engineering, Scripting)
- Spooky (Programming, Reverse Engineering, Scripting)
- Mike (Scripting, Website Administration)
- Cam (Scripting, SCM)
- jax (Scripting)
- Luke (Documentation)
See also