{"id":38422682,"url":"https://github.com/adib-yg/openmp-server-installation","last_synced_at":"2026-01-17T04:16:33.820Z","repository":{"id":200135530,"uuid":"704837024","full_name":"adib-yg/openmp-server-installation","owner":"adib-yg","description":"Open Multiplayer (open.mp) server installation tutorial","archived":false,"fork":false,"pushed_at":"2024-08-18T13:02:39.000Z","size":481,"stargazers_count":17,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-08-18T14:22:54.755Z","etag":null,"topics":["installation","open-mp","server","tutorial"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adib-yg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-14T08:40:46.000Z","updated_at":"2024-08-18T14:22:55.790Z","dependencies_parsed_at":"2023-10-15T22:29:35.758Z","dependency_job_id":"b3059258-ff91-49b7-a9ea-5bac82083b7a","html_url":"https://github.com/adib-yg/openmp-server-installation","commit_stats":null,"previous_names":["adib-yg/openmp-server-installation"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/adib-yg/openmp-server-installation","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adib-yg%2Fopenmp-server-installation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adib-yg%2Fopenmp-server-installation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adib-yg%2Fopenmp-server-installation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adib-yg%2Fopenmp-server-installation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adib-yg","download_url":"https://codeload.github.com/adib-yg/openmp-server-installation/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adib-yg%2Fopenmp-server-installation/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28494632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T02:39:23.645Z","status":"ssl_error","status_checked_at":"2026-01-17T02:34:19.649Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["installation","open-mp","server","tutorial"],"created_at":"2026-01-17T04:16:33.303Z","updated_at":"2026-01-17T04:16:33.789Z","avatar_url":"https://github.com/adib-yg.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca href=\"https://www.open.mp\"\u003e\u003cimg src=\"/screenshots/open-mp-logo.png?raw=true\" width=\"128\" height=\"128\" align=\"left\"\u003e\u003c/a\u003e\n\u003ch1\u003eopen.mp Server Installation\u003c/h1\u003e\n\u003ca href=\"https://www.open.mp\"\u003eOpen Multiplayer\u003c/a\u003e server installation tutorial!\n\u003cbr\u003e\u003cbr\u003e\n\n**This tutorial is for those who want to transfer their gamemode from SA:MP server to open.mp server.**\n\n\u003e [!NOTE] \n\u003e *If you are using the FCNPC plugin, please stop for now because this plugin does not work for open.mp currently.*\n\n## Contents\n\n- [Step 1](#step-1)\n- [Step 2](#step-2)\n- [Step 3](#step-3)\n- [Step 4](#step-4)\n- [Step 5](#step-5)\n- [Step 6](#step-6)\n- [Step 7](#step-7)\n- [Step 8](#step-8)\n- [Step 9](#step-9)\n- [Step 10](#step-10)\n- [Step 11](#step-11)\n- [Compiler errors and warnings](#compiler-errors-and-warnings)\n- [Runtime errors and warnings](#runtime-errors-and-warnings)\n- [Useful documents](#useful-documents)\n- [Help](#help)\n\n## Step 1\n\nDownload the latest version of open.mp server files from [https://github.com/openmultiplayer/open.mp/releases](https://github.com/openmultiplayer/open.mp/releases/latest)\n\n\u003ckbd\u003e![](/screenshots/Screenshot%20(1).png)\u003c/kbd\u003e\n\n- `open.mp-win-x86.zip` **Windows** Server\n- `open.mp-linux-x86.tar.gz` **Linux** Server\n- `open.mp-linux-x86-dynssl.tar.gz` **Linux** Server (Dynamic SSL)\n\n## Step 2\n\nExtract the `.zip` or `.tar.gz` archive contents on your disk\n\n\u003ckbd\u003e![](/screenshots/Screenshot%20(3).png)\u003c/kbd\u003e\n\n\u003e [!NOTE]\n\u003e **components:** open.mp components\n\u003e \n\u003e **filterscripts:** Your server filter script files (side scripts)\n\u003e \n\u003e **gamemodes:** Your server game mode files (main scripts)\n\u003e \n\u003e **models:** Your server custom models (textures .txd .dff)\n\u003e \n\u003e **plugins:** Your server plugin files (legacy plugins)\n\u003e \n\u003e **qawno:** Pawn editor program and your server includes\n\u003e \n\u003e **scriptfiles:** INI files or other stuff.\n\u003e \n\u003e \n\u003e **bans.json:** Ban list file\n\u003e \n\u003e **config.json:** Server configuration file\n\u003e \n\u003e **omp-server.exe:** open.mp server program\n\u003e \n\u003e **omp-server.pdb:** open.mp server debugging file\n\n## Step 3\n\nPut your gamemode `.pwn` file in the **gamemodes** folder\n\n## Step 4\n\nPut required includes (e.g. `sscanf2.inc`, `streamer.inc`) in the **qawno/include** folder\n\n\u003e [!NOTE]\n\u003e If you are using the YSI-4 includes in your game mode, update to [YSI-5.x](https://github.com/pawn-lang/YSI-Includes/releases)\n\n## Step 5\n\nPut required plugins (e.g. `sscanf.dll`, `streamer.dll`) in the **plugins** folder\n\n\u003chr /\u003e\n\n\u003e [!IMPORTANT] \n\u003e If you use the following plugins in table, you must put a version of the plugin that is compatible with omp!\n\u003e \n\u003e Put the following plugins in the **../components** folder, not in the **../plugins** folder!\n\n| Plugin            | OMP                                                                          |\n|-------------------|------------------------------------------------------------------------------|\n| Pawn.CMD          | https://github.com/katursis/Pawn.CMD/releases/tag/3.4.0-omp                  |\n| Pawn.RakNet       | https://github.com/katursis/Pawn.RakNet/releases/tag/1.6.0-omp               |\n| sampvoice         | https://github.com/AmyrAhmady/sampvoice/releases/tag/v3.1.5-omp              |\n| discord-connector | https://github.com/maddinat0r/samp-discord-connector/releases/tag/v0.3.6-pre |\n| SKY               | Use Pawn.RakNet instead                                                      |\n| YSF               | You don't need YSF because open.mp already declared most of the same natives |\n| FCNPC             | Currently not supported                                                      |\n\n## Step 6\n\nOpen the qawno IDE program located at **Server/qawno/qawno.exe**\n\n\u003ckbd\u003e![](/screenshots/Screenshot%20(5).png)\u003c/kbd\u003e\n\n## Step 7\n\nPress **CTRL + O** then go to the **../gamemodes** folder and open your gamemode `.pwn` file\n\n## Step 8\n\nFind \n```pawn\n#include \u003ca_samp\u003e\n```\nreplace with\n```pawn\n#include \u003copen.mp\u003e\n```\nthen press **F5** to compile.\n\n\u003e [!NOTE]\n\u003e If you are get error or warning, see [Compiler errors and warnings](#compiler-errors-and-warnings)\n\n## Step 9\n\nOpen **[config.json](https://www.open.mp/docs/server/config.json)** file with Notepad or other IDEs\n\n\u003ckbd\u003e![](/screenshots/Screenshot%20(9).png)\u003c/kbd\u003e\n\n## Step 10\n\nEdit **config.json**\n\n\u003ckbd\u003e![](/screenshots/Screenshot%20(11).png)\u003c/kbd\u003e\n\nFind\n```json\n\"main_scripts\": [\n    \"gungame 1\"\n],\n```\nreplace with\n```json\n\"main_scripts\": [\n    \"your_gamemode_amx_file_name 1\"\n],\n```\n\n\u003chr /\u003e\n\nFind\n```json\n\"legacy_plugins\": [],\n```\nSpecify required plugins\n```json\n\"legacy_plugins\": [\n    \"crashdetect\",\n    \"mysql\",\n    \"sscanf\",\n    \"streamer\",\n    \"PawnPlus\",\n    \"pawn-memory\"\n],\n```\n\n\u003chr /\u003e\n\nFind\n```json\n\"side_scripts\": []\n```\nSpecify your filterscripts\n```json\n\"side_scripts\": [\n    \"filterscripts/file_name\"\n]\n```\n\n\u003chr /\u003e\n\nFind\n```json\n\"rcon\": {\n    \"allow_teleport\": false,\n    \"enable\": false,\n    \"password\": \"changeme1\"\n},\n```\nEnter strong password for rcon password:\n```json\n\"rcon\": {\n    \"allow_teleport\": false,\n    \"enable\": false,\n    \"password\": \"151sd80hgse32q1oi0v8dsge166\"\n},\n```\n\nPress **CTRL + S** to save changes.\n\n\u003e [!TIP]\n\u003e There is a guide on how to convert `server.cfg` to `config.json` at https://www.open.mp/docs/server/config.json\n\n## Step 11\n\nRun the server\n\n- **Windows**\n\nOpen the `omp-server.exe` program\n\n\u003ckbd\u003e![](/screenshots/Screenshot%20(10).png)\u003c/kbd\u003e\n\n- **Linux**\n\n```bash\n./omp-server\n```\n\n## Compiler errors and warnings\n- **warning 213: tag mismatch: expected tag \"?\", but found none (\"_\")**:\n\nFor example:\n\n```pawn\nTogglePlayerControllable(playerid, 1);\n// -\u003e\nTogglePlayerControllable(playerid, true);\n```\n\n```pawn\nTextDrawFont(textid, 1);\n// -\u003e\nTextDrawFont(textid, TEXT_DRAW_FONT_1);\n```\n\n\n```pawn\nGivePlayerWeapon(playerid, 4, 1);\n// -\u003e\nGivePlayerWeapon(playerid, WEAPON_KNIFE, 1);\n```\n\nBut you can ignore it for now:\n\n```pawn\n#define NO_TAGS\n#include \u003copen.mp\u003e\n\n// If the warning still occurs\n// Use #pragma warning disable 213\n```\n\n\u003chr /\u003e\n\n- **warning 234: function is deprecated (symbol \"TextDrawColor\") Use `TextDrawColour**\n\nPress **CTRL + F** in qawno and replace all `TextDrawColor` to `TextDrawColour`\n\n\u003ckbd\u003e![](/screenshots/Screenshot%20(7).png)\u003c/kbd\u003e\n\nOr if you prefer you can use the mixed spellings:\n\n```pawn\n#define MIXED_SPELLINGS\n#include \u003copen.mp\u003e\n```\n\n\u003chr /\u003e\n\n- **warning 234: function is deprecated (symbol \"GetPlayerPoolSize\") This function is fundamentally broken.**\n- **warning 234: function is deprecated (symbol \"GetVehiclePoolSize\") This function is fundamentally broken.**\n- **warning 234: function is deprecated (symbol \"GetActorPoolSize\") This function is fundamentally broken.**\n\nReplace `GetPlayerPoolSize()` with `MAX_PLAYERS`\n\nReplace `GetVehiclePoolSize()` with `MAX_VEHICLES`\n\nReplace `GetActorPoolSize()` with `MAX_ACTORS`\n\n\u003chr /\u003e\n\n- **warning 234: function is deprecated (symbol \"SHA256_PassHash\") Use BCrypt for hashing passwords**\n\nUse the [samp-bcrypt](https://github.com/Sreyas-Sreelal/samp-bcrypt) plugin for hashing passwords. SHA-256 is not secure.\n\n\u003chr /\u003e\n\n- **warning 214: possibly a \"const\" array argument was intended: \"?\"**\n- **warning 239: literal array/string passed to a non-const parameter**\n\nFor example:\n\n```pawn\npublic MyFunction(string[])\n// -\u003e\npublic MyFunction(const string[])\n```\n\n\u003chr /\u003e\n\n- **error 025: function heading differs from prototype**\n\nFor example:\n\n```pawn\npublic OnPlayerDeath(playerid, killerid, reason)\n// -\u003e\npublic OnPlayerDeath(playerid, killerid, WEAPON:reason)\n```\n\n```pawn\npublic OnPlayerEditAttachedObject(playerid, response, index, modelid, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ)\n// -\u003e\npublic OnPlayerEditAttachedObject(playerid, EDIT_RESPONSE:response, index, modelid, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ)\n```\n\n\u003chr /\u003e\n\n\u003e [!NOTE]\n\u003e There is also an upgrade tool that attempts to find old untagged and const-incorrect code and upgrade it.\n\u003e\n\u003e https://github.com/openmultiplayer/upgrade\n\u003e\n\u003e  Already included in `/qawno/upgrader` folder.\n\n## Runtime errors and warnings\n```log\n[Info] Couldn't announce legacy network to open.mp list.\n[Info] [Server Error] Status: 406\n[Info] [Server Error] Message: {\"error\":\"failed to query server: socket read timed out\"}\n[Info] This won't affect the server's behaviour.\n```\n\n- Your server is not accessible from the open.mp website.\n- You are probably running the server locally.\n- The firewall has blocked the connection.\n\n**This warning will not affect the behavior of the server.**\n\n\u003chr /\u003e\n\n```log\n[Warning] Insufficient specifiers given to `format`: \"?\" \u003c 1\n```\n\nThe specifiers are less than the arguments you pass in the format. For example:\n\n```pawn\nnew string[32];\nnew mp[32] = \".MP\";\n\nformat(string, sizeof(string), \"OPEN\", mp);\n// [Warning] Insufficient specifiers given to `format`: \"OPEN\" \u003c 1\n\n// Should be:\nformat(string, sizeof(string), \"OPEN%s\", mp);\n//                                  ^^\n```\n\n## Useful documents\nCheck out the new scripting functions and callbacks: https://www.open.mp/docs/server/omp-functions\n\nIf you are completely new to Pawn programming: [readme-beginner](https://github.com/openmultiplayer/omp-stdlib/blob/master/documentation/readme-beginner.md)\n\nIf you are an intermediate at Pawn programming: [readme-intermediate](https://github.com/openmultiplayer/omp-stdlib/blob/master/documentation/readme-intermediate.md)\n\nIf you are an expert at Pawn programming: [readme-expert](https://github.com/openmultiplayer/omp-stdlib/blob/master/documentation/readme-expert.md)\n\nBlog post: [Porting to open.mp](https://www.open.mp/blog/porting)\n\n## Help\nIf you still have issues running the server, please join the official open.mp Discord server: https://discord.gg/samp\n\nAsk in [#openmp-support](https://discord.com/channels/231799104731217931/966398440051445790) channel.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadib-yg%2Fopenmp-server-installation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadib-yg%2Fopenmp-server-installation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadib-yg%2Fopenmp-server-installation/lists"}