快速导航
点击此处Github链接直接跳转sa-mp服务器转open.mp服务器 教程与帮助主题
如打不开上面链接,请往下翻,或点击目录找到教程与帮助
索引
推荐大家加入我们QQ群和QQ频道以获得最新资讯和支持,打造互相探讨学习交流的净地
此篇文档的版本号为1.0,是首版本,因此可能会有纰漏的部分,后续发现问题将会更新,如果你发现迁移open.mp的教程无法解决你的某些问题,请及时和本人联系。
或者你希望补充此文档未提及到的部分,或愿意改善此文档的可读性,欢迎提交拉取,为国内社区做贡献。
此文档由本人原创编写完成,制作不易,希望大家可以积极把此链接分享给更多的人以提供帮助和发挥此文档的真正作用。
San Andreas Multiplayer
圣安地列斯多人游戏(简称 SA:MP)是《侠盗猎车手:圣安地列斯》电脑游戏的第三方多人游戏模组。圣安地列斯多人游戏是由《侠盗猎车手》系列游戏的忠实粉丝组成的团队开发的,他们利用业余时间开发 SA:MP 是他们的业余爱好。
SA:MP下载地址
背景信息
SA:MP最初是罪恶都市的多人游戏修改版,2005 年 4 月初被命名为Vice City Multiplayer(VC:MP)。由于团队开始工作时,即将推出的《圣安地列斯》游戏尚未发布,因此决定将 VC:MP 作为 SA:MP 的代码库进行开发。该团队由GTA modding社区的一些知名成员组成,由GTA modding社区的杰出人物 kyeman 领导。通过提供预览视频和截图来展示正在进行的开发工作,该模组很快在GTA modding中赢得了大批粉丝,其小型论坛在更换新家之前吸引了大约 120 名用户。VC:MP 经过几次公开测试后,获得了极高的关注度(以至于在测试服务器上等待很长时间都是很常见的事),最终以热烈的反响发布,并从 v0.1 升级到 v0.1d,同时正在发布开源代码。现在,在 SA:MP 的主要团队工作期间,另一位社区成员利用该源代码推进 VC:MP。
多人合作模式的失败
2005年6月10日《圣安地列斯》PC版发售后,开发团队继续以《VC:MP》相同的方式开展工作–私下工作,定期在网站上发布截图和视频,并通过论坛回答玩家的问题(论坛最终从小型主机转变为最大的GTA社区GTANet/GTA Forums的子论坛,同时也是IRC频道的主机)。一切都在预料之中,直到发生了一件出乎社区意料且不受欢迎的事情:开发团队决定,为了保持《圣安地列斯》的原汁原味,MOD 的开发路线将彻底改变–不再是支持大量玩家的死亡竞赛式(Deathmatch)多人游戏,而是将其完全改为仅支持 6 名玩家的多人合作式 Mod。他们的想法是,你可以像单人游戏一样进行游戏–与行人、警察追逐你,并跟随不断变化的故事情节–但你的 5 个朋友会和你一起玩。这是一个非常新颖的想法,但却遭到了社区的广泛反对,GTANet 的新论坛上充斥着对 SA:MP 开发团队的仇恨,无论团队如何努力推广这个想法。像这样一个需要社区支持的大型项目,情况并不乐观。
kyeman 离开 / GTA:Multiplayer
2005 年 9 月 18 日,首席编码员兼团队负责人 kyeman 在合作模式讨论中途离职,原因是工作繁忙,无法继续开发该模式。他将所有现有工作移交给了第二位主要编码员 spooky,后者接管了开发工作,并将项目重新命名为 GTA:Multiplayer (GTA:M),以表示管理层的新变动。
kyeman 回归
大约一个月后,kyeman 整理好了自己的个人生活,决定开始帮助团队做一些事情。他并没有宣布复出,只是说他会帮助团队解决遇到的任何困难,以确保他的代码库工作得以继续,并在社区中保持信心。在此期间,由于技术上的限制,以及收到曾经热心的社区失望的反馈,多人合作模式的想法也被取消了,最终 kyeman 正式重新加入团队,并再次负责游戏的进程。
回到 SA:MP
在解决了 kyeman 回归负责和开发方向回归大型死亡竞赛风格(deathmatch-style)游戏初衷的所有问题后,项目的正式名称又重新改为 San Andreas Multiplayer(SA:MP)(圣安地列斯多人游戏),以避免混淆,同时也避免与 Rockstar Games 就使用 “Grand Theft Auto” 商标产生任何法律纠纷。
SA-MP的生日
2006年5月10日,San Andreas MultiPlayer 正式发布
经历了十几年的发展,SA-MP最终不复存在
- 2019年11月11日 SA-MP的唯一开发者 Kalcor/kyeman 在SA-MP官方论坛上发帖:“我在这个主题上发帖的目的是让大家知道 SA-MP的开发即将结束。将不再为 SA-MP 提供更新,也许只是安全更新,我/我们不得而知”
- 2019年11月22日 Kalcor更新了SA-MP 0.3.7-R4客户端,修复菜单系统中的安全漏洞,请不要再使用以前版本的 SA-MP客户端
- 2020年9月下旬 SA-MP 维基百科彻底下线
- 2022年11月16日 SA-MP 0.3.7-R5客户端更新,修复重要漏洞
游戏模式(Gamemode)
在SA:MP中有多种所谓的游戏模式,这是因为游戏使用了创新的 PAWN 脚本引擎,允许任何用户在《圣安地列斯》地图中创建任务,并以特殊的文件格式提供给服务器使用–这与普遍的游戏为相同的模式设置单独关卡的方式非常相似。SA:MP的一些特色玩法包括突击(攻击/防御)、夺旗(夺取对方的车、船、自行车或飞机)、团队死亡竞赛(Team Deathmatch)、死亡竞赛(Deathmatch)、赛车(Racing),甚至是必须拥有最多金钱(通过赌博或杀害其他玩家获得)的玩家才能获胜的模式。您还可以选择一般的自由模式(freeroam),在这些模式中,您可以随心所欲地按照自己的目标行事。
创建游戏模式
创建游戏模式的范围很广,从简单地将地图坐标放入PAWNO编辑器中编译,到创建包含出生点、各种目标、自定义游戏指令的完整成熟的任务,不一而足。
官方提供的游戏模式示例
游戏模式 | 描述 |
---|---|
GRAND LARCENY | 地图横跨San Andreas的SA-MP 0.3 版本的自由游戏模式,拥有更多的一些脚本示例 |
LVDM (aka Moneygrub) | 以任何您认为合适的方式获得最多金钱的玩家即可赢得该游戏模式。由于没有任何 “真正 ”的目标,因此是一种自由游戏模式,在许多服务器中都很受欢迎。 |
San Fierro TDM | 在San Fierro进行的团队死亡竞赛中,您必须与您的队伍团结一致,成为得分最高的玩家. |
Rivershell | 一种基于在水面上游玩的夺旗模式(CTF, Capture The Flag),在该模式中,您的团队必须在对方占领您团队的基地之前,从对方基地夺取一艘缓慢移动的船,从而赢得胜利。在 SA-MP 0.2 中,Rivershell 2 模式可用,但没有源代码. |
Local Yokel SE | 与 Rivershell 相同,但以陆上跑车为基础(SE 代表运动版) |
Cops ‘n’ Gangs | 另一种夺旗模式(CTF, Capture The Flag),这次是在Los Santos警察局和当地帮派之间进行,目标车辆是一辆缓慢行驶的面包车. |
Area 51 | 这是一种进攻游戏模式,攻击者必须通过跳伞闯入 69 区,而军方和科学家则进行防守。在该游戏模式中,69 区被称为 51 区(其真实原型位于内华达州). |
Freighter | 51 区模式的水上版本,三合会必须使用快艇和直升机闯入敌对帮派(岘港男孩)的货运船. |
Manhunt-LV | 其中一名玩家被选为 “被狩猎对象”,其他人必须追上并杀死他。杀死 “被狩猎对象 ”的人自己也会成为 “被狩猎对象”. |
LS Parachute | 一个有趣的游戏模式,除了从高楼跳伞外没有其他目标–受到制作游戏视频的人的欢迎 |
Minigun Madness | 这是另一种有趣的模式,让玩家从标准的基于目标的游戏模式中解脱出来。所有玩家都被关在一个小院子里进行自由混战,只能用加特林防卫。 |
Monster | 一种自由模式,每个人都会在沙漠简易机场出生,只有怪物卡车(monster)可以作为交通工具。在私人 Beta 测试期间很受欢迎,以展示游戏的稳定性和同步性 |
Sniper Madness | 每个人都有一把狙击步枪互相击杀的游戏模式。是对新的 SA-MP 0.2 的狙击步枪支持的某种演示. |
RC Barnstorm | 每个人都要控制一辆遥控Baron的游戏模式。是对新的 SA-MP 0.2 版遥控车支持的某种演示. |
open.mp(Open Multiplayer)
什么是 open.mp?
open.mp (Open Multiplayer, OMP) 圣安地列斯的多人游戏模组,是为了应对 SA:MP 的更新和管理问题的不幸增加而推出的,SA:MP客户端可以连接到此服务器,将来将提供新的open.mp客户端,从而可以发布更多有趣的更新
open.mp下载地址
open.mp是SA:MP的分支吗?
不是,这是一次利用的几十年的知识和经验进行的彻底的重写,之前有人试图制作SA:MP分支版本,但我们认为有两个主要的问题:
它们基于泄露的SA:MP源代码,这些作者对于这部代码没有合法权利,因此在道德和法律上总是处于劣势。我们坚决拒绝使用此代码,虽然这略微阻碍了发展速度,但从长远来看是最正确的举措
他们试图重新开发太多内容,要么替换所有的脚本引擎,要么在添加新功能的同时删除功能,要么只是以不兼容的方式进行修改调整,这会给很多庞大的服务器迁移造成很大的阻碍,因为如果他们要迁移,必须重写部分代码,这是一项艰巨的任务。
我们打算随着时间的推移添加功能和调整,但我们也专注于支持现有的服务器,允许他们在不更改代码的情况下使用我们的代码
为什么要开发open.mp
尽管测试团队以建议、劝说和提供帮助的形式,多次尝试推动 SA:MP 的官方开发; 社区中的人们也对任何新事物都充满了渴望; 但还是完全看不到任何进展。大多数人普遍认为只是因为联机模组领导层失去了兴趣,但这并不是主要的问题,主要问题是没有其他人能够继续开发。
创始人并没有把开发权交给那些有兴趣继续开发联机模组的人,而是只想把所有的事情都拖垮,而显然用最少的努力就可以把事情拖得很久。有些人声称这是因为被动收入,但没有证据表明这一点。尽管我们有着巨大的兴趣和像家一样强大的社区,但创始人仍然认为联机模组只剩下 1-2 年的时间了,社区如此努力地运作却使 SA:MP 成为今天的样子,不值得继续下去,但我们并不这么认为。可前往B站视频查阅详情
你对于Kalcor/SA:MP有什么看法
我们喜欢SA:MP,这就是我们来到这里的首要原因-这点要归功于Kalcor,多年来,他为SA:MP做了大量的工作,这一贡献不该被遗忘和忽视,导致open.mp开发行动的原因,是因为我们不同意最近的几项决定,尽管我们一再试图引导SA:MP朝着不同的方向发展,但似乎都没有得到任何解决方案或回应,因此我们被迫做出了一个不幸的决定,试图在没有Kalcor的情况下继续保持SA:MP的精神。这不是对他个人采取的行动,也不应该被视为是对他的一种攻击行为,我们不会容忍任何人对任何人的人身侮辱,无论他们在open.mp问题上的立场如何,我们都应该在不进行人身攻击的情况下合理的辩论
开发open.mp难道不是在分裂社区吗?
这不是我们的意图,在理想情况下,没有任何理由会导致社区分裂,但分裂也好过让社区枯萎。事实上,自从open.mp公布以来,大量非英文社区已经和英文社区开始接触,然而在以前,他们还在慢慢地被排挤边缘化,所以他们重新融入实际上反而是将一个分裂的社区重新团结在一起,大量用户被禁止进入SA:MP论坛(在某些情况下,他们的帖子被清除),但Kalcor本人指出,官方论坛不是SA:MP论坛,只是SA:MP的一部分,许多玩家和服务器所有者从未在这些论坛上发帖,甚至从未加入过这些论坛,因此,再次与这些人联系将使更多的社区成员团结起来
改进和新增内容?
open.mp完全向后兼容,现有的SAMP客户端能够连接服务器,同时添加额外的功能,旨在构建1:1的SA:MP服务端还原
- 许多古老众所周知的SAMP错误和BUG已被修复(可参考sa-mp fixes)
- 包含大量安全、游戏行为和脚本修复
- 更高效的性能和效率,更现代化、且优雅的开发体验
- 也将会有新的open.mp客户端体验更有趣的内容
- 同时支持0.3.7和0.3DL客户端
- 内置了超过150个YSF的native功能,可前往open.mp功能列表了解详情
- 许多功能加入和大量原生功能升级,更多函数添加{Float, _}:…format的支持
- 关于标签矫正以及const矫正的规范性
- 包含最新版本编译器3.10.12,新增功能包含见此处,修复了原版3.2.3664的所有已知错误和BUG,同时能检测到更多你代码里的问题或者需要改善的地方,为 SA:MP 社区提供更好的开发体验
- 新的Pawn编辑器qawno编辑器包含在其中
- 符号长度限制增加到了64,你不再需要缩写你的函数名,同时一些原生的sa-mp函数名的缩写也变为了阅读性更好的全称,如GetRandomCarColPair变为GetRandomVehicleColourPair,以及更加规范的命名
SA:MP兼容性
虽然这个项目的目标是与现有的SA:MP服务器的功能接近,使移植变得容易(在我们可以开始做更有趣的事情之前,我们有很多很多的想法),但100%的兼容性是不可能的。原因很简单–SA:MP服务器有错误*。复制这些错误是愚蠢的–
这个项目的另一个目标是修复和改进服务器。因此,这些目标必须得到平衡,虽然我们相信我们已经在维护向后兼容性方面做得很好,但仍有一些地方原来的行为不太正确(或根本就是坏的),我们已经从fixes.inc中得到了语义方面的启发。如果你想了解这些变化的完整列表,你可以查看fixes.inc的readme(那些已经在使用该include的人现在可以删除它),但有几个值得注意的变化被反复提起。
open.mp其它问题解答
重要的事情说三遍,open.mp和samp服务器开发完全一致,open.mp和samp服务器开发完全一致,open.mp和samp服务器开发完全一致
- 如果你先前有开发过SA:MP服务器的经验,或者你不是一个小白,请不要再问open.mp怎么开发服务器诸如此类的低端且空泛的问题,因为这会让你显得是个小白,而我不希望解答一些你可能原本就清楚的问题,以免浪费彼此的时间和精力
- 如果你是个小白,你希望能创建一个游戏模式,自己创造玩法并和朋友/陌生人一起玩耍,那你可以随意提问,我们也会耐心提供帮助
- 虽然我很不想用“相当于samp的版本更新”去形容open.mp,因为open.mp完全从零开发的,而不是基于泄露的samp源代码更新,部分人可能会因为两者名称的不同而觉得陌生。
- open.mp目前对于玩家而言无任何区别,请不要再问手机能不能玩omp服务器,最终版能不能玩omp服务器,这里统一回复,对于玩家而言只要能玩samp就能玩omp,并且无需做出任何改变,除非open.mp为了能够实现需要客户端配合的功能,否则,玩家照旧使用SA:MP客户端进行GTASA联机
- open.mp服务器支持中文昵称进入吗?你可以暂时通过在脚本中添加以下代码,让你的服务器支持中文名,而不需要任何插件,后续请等待open.mp内置昵称字符的支持
for (new i = 0; i <= 255; i++) { if (!IsNickNameCharacterAllowed(i)) AllowNickNameCharacter(i, true); }
手机安卓版SA:MP
目前市面上SAMP安卓客户端app使用了从SA:MP团队窃取的源代码开发完成,因此这不在我们的讨论范围之内
open.mp历程简要概述
- 2019年初 open.mp项目启动,并在曝光后获得了大量关注
- 2021年6月 经历3年实验和改写,操之过急的工作给管理、团队和代码库带来了一些问题,我们实施的功能强大同时也很复杂,难以继续,这样我们很难按照正确的路线走下去,2021年6月,open.mp团队决定开始重写,目标是建立一个1:1的向后兼容SA:MP的程序
- 2022年1月 首次尝试测试第一个版本,并支持PC端、GTASA最终版、安卓端同时游玩一个服务器 详情请看Youtube视频
- 2022年4月20日 open.mp正式进入公开测试版,这是项目开源和正式版发布前的最后一步,请注意,这只是SA:MP服务器替代项目,我们的客户端仍在开发中,还有很长的路要走
- 2022年5月10日 open.mp beta4发布
- 2022年7月11日 open.mp beta6发布
- 2022年8