曹操传吧 关注:83,725贴子:1,280,270

【测试】原版曹操传PVP联机对战

只看楼主收藏回复

引子:
过年的时候无聊就在盘算在今年还有什么东西可以玩。当时感觉曹操传补丁这方面似乎没什么新东西能够继续进行下去的了——除了联机对战!虽然在补丁的发布贴里从没人提过这个功能,但是相信不少老玩家应该都有想过希望试试曹操传PVP是什么感觉。继而花了几天时间先查看和调试原版代码分析可行性和实现的复杂程度,最终得到的结论是:有点麻烦但也不是不能做。
说做就做吧,首先还是要整理一下代码和完善一些将来可能会用到的细节,算是为1.0版本的做一个最终版。毕竟,接下来2.0的版本,一开始肯定是不会那么稳定的。有心的玩家或许也能在1.61版本更新说明里看出点端倪,当时那几项改动对于单机版来说是意义不大的,其实都是在提前为2.0PVP的发布做准备。经过这几天的修改和测试,总算是完成了一些基本的功能。
好了,开场白结束,接下来是正文。
首先声明,这里只针对原版讨论,如需玩mod请自行测试恕不提供技术支持。
原因一:联机测试比单机测试过程要繁琐很多,需要的测试量完全就不是一个数量级的,即使有心也是无力。
原因二:mod作者大概也不愿意自己精心设计过的作品被随意应用到对战当中。
原因三:原版不少战场地图设计十分巧妙,攻防方面跟mod相比也相对均衡,不需要做太多变动即可使用。
目前的设定/规则有:
【轮流指令系统】必须开启
【固定物理伤害】自动开启但【残血必杀】禁用
【以命换命】和【待机蓄力】还有【手动双暴】禁用
禁用命令:道具,围攻,交换(后两项是原版本来就没有的,道具这块由于仓库共享敌军要吃的话有点麻烦)
禁止策略:沙暴(主要出于是规则上建议,程序里并没有做任何限制)
禁止装备:绝影,方天画戟等(还有其他特殊装备需要进一步测试验证是否支持)
禁止经验获取(打一局应该也升不了几级吧)
友军不可控(【轮流指令系统】暂不支持友军指令数)
扳手无用(友情提醒:因为对战时双方只同步操作命令并不同步内部数据,所以修改的只能是本机数据丝毫影响不了对方)
全剧情剧本自动禁止(某些道具可能也会因此而失效)
操作步骤:
1. 双方预先使用同一【新存档】记录进入战场。当前补丁压缩包【SaveEx】里附有某关对战地图示例,大家可以先采用它进行快速测试。
2. 在主窗口菜单里选【CczHelper】->【网络】->【建立连接】,
同一个局域网内两人玩的话,只需一人设为【TCP Server】,另一人设为【TCP Client】,把做为服务端的IP填好,再点OK就可以了。切记服务端需先开,客户端才能连接上。
3. 两人都建立好连接后,可以先试试发送【发送消息】,打一句话看看对方能否收到。此步骤通常可跳过。
4. 确定双方通信无碍后,由其中一方【发起挑战】,等待另一方确定应战即可。
5. 对战中双方按指令数交替控制(先手每轮指令数可在【战场配置】期间预先设定)。
6. 右键结束指令操作。
7. Ctrl+Enter 发送即时聊天消息。
胜负:
先手方主将被杀或回合耗尽则判定失败。
后手方主营被占或全员被杀则判定失败。
注:主营位置可在【战场配置】期间到【轮流指令系统】菜单项下自定义。
将来可能会实现的一些想法:
每轮固定等待时间超时自动结束
双方战前准备,整理装备和一定区域内自由移动以布阵,即正式开局前不知道对方具体位置和装备。
支持敌我友三方混战(这个非常麻烦,估计最终不会去弄,姑且记下)。
前面也说了,现在发布的版本绝对不可能是稳定的,不少的地方实现起来都很粗糙。直接下载打开很可能会无从下手,需要对补丁以前的拓展功能有一定了解才行。要到简单下载就能玩的程度估计还得等个大半年吧,到时候大家再上来看看好了。
总而言之,发这个贴的目的主要是:
1. 召集几个愿意帮忙测试的小伙伴。以前在补丁发布贴里有反馈/建议过的吧友优先考虑,因为目前测试使用的是免费的R云IM接口,提供的服务相当有限,它的免费服务器对于多人在线后的稳定性怎么样我完全不了解。所以不敢给大家提供太多的账号进行测试。自认为有查bug能力想提前体验的朋友,可把希望在游戏里登陆用的ID私信给我,我会为你的ID注册一个AppToken,只要使用它登陆游戏建立连接就能实现PVP网络对战了。(Tips: 其实如果你是公网IP的话,可以直接使用TCP方式联机,不需要再找我要什么Token。或者局域网内两人玩也可以直接使用TCP方式,我单独本机调试的时候就是程序多开再TCP建网来测)
2. 向广大爱好者征集制作好的适合对战用的地图,只需上传分享【新存档】文件即可。在【建立连接】的情况下保存新存档即可显示为【Map V.S.】标志。
3. 目前网络通信是写在另外一个新的CczSvr.dll,里面仅简单实现了点对点通信,只是为了满足测试需要而已。不少应该有的功能(如查看全部在线用户,查看战绩等)都未实现,将来真要建立战网的话,这个dll是必须要重写的。dll对外接口也就几个(补丁打包里有说明),不知是否有哪位在这方面有余力且感兴趣的朋友,愿意帮忙改成cs构架并自建服务器为大家提供平台。
4. 想了解一下大家对于PVP有什么好的想法和建议。其实我感觉可能只是看上去跟人打比较新鲜,真正玩起来或许也没那么有意思。不过没关系,反正我写这个也是用来消磨时间的,即使最后没人玩我也不会特别在意。
5. 我在做分析可行性时,曾搜索到一篇强文《从曹操传分析战棋类游戏的精神 》(相关链接就不贴了百度一下就有了),里面 @胖史来姆@无敌神鸟人 之间的讨论十分精彩。看过后真的很想见识一下这两位不同理念的高人之间的对决,因此这里冒昧地@一下邀请试试,不晓得胖史来姆是不是这个百度ID现在还有没有在玩呢。
补丁链接在二楼发吧,发了后估计又会被系统删还得再去申诉才能看到,不过熟悉的吧友应该都知道到哪下吧。
然后三楼会留来专门发直*播预告,以后条件允许的话可能会跟吧友联机测试时候进行直*播。觉得有点意思但是又懒得下载尝试的朋友,届时不妨顺道去瞧瞧。
最后,希望大家不要在此贴里发一些没讨论价值的回复,如“顶”“支持”“圣小白”“字多不看”之类。主要是考虑到如果此楼含水量太大就有可能令后来的人“只看楼主”,这样一来中间那些吧友提出有价值的回复就很难被后来的人注意到了。谢谢合作,如删莫怪。


IP属地:广西1楼2016-02-28 11:31回复
    伯伯真天神也!那么,311是否能实现PVP呢?


    来自Android客户端7楼2016-02-28 12:49
    收起回复
      我没看错 楼主才是能救市的人。不过曹操传玩家习惯了和AI博弈,对PVP感兴趣的不多


      IP属地:河北来自iPhone客户端9楼2016-02-28 12:55
      收起回复
        是这样么?谁来玩玩


        IP属地:浙江10楼2016-02-28 12:56
        收起回复
          有点没看懂。有什么改动吗


          来自Android客户端14楼2016-02-28 13:17
          收起回复
            儿时的梦想似乎成真了...有一种人在梦中的感觉...
            目前观望中,等闲下来准备尝试(每天都很闲的我


            IP属地:北京18楼2016-02-28 13:24
            回复
              伯伯真是救市主,不过联机的话,貌似先手的优势会很大


              IP属地:河南来自Android客户端22楼2016-02-28 14:00
              收起回复
                我可以帮忙设计服务器(不过显然需要详细交流一下)。
                伯伯有哪些实时联系的账户?


                IP属地:加拿大来自iPhone客户端25楼2016-02-28 15:05
                收起回复
                  我去,技术宅真可怕。这样玩的话,双方不得玩集火模式了?


                  IP属地:山东来自Android客户端26楼2016-02-28 15:06
                  回复
                    挺有意思


                    IP属地:浙江27楼2016-02-28 15:18
                    收起回复
                      服务器确实很不稳定啊,刚才玩了几次,最后都是卡死了。
                      (好像也就四个人在线,我鸟叔卡密三国k迷,最后四个人两局同时卡死)

                      还有,上图回合后括号里这个数字3应该是目前可行动人数吧?不过它有的时候是3有的时候是6,有什么规律吗?而且这一栏有时会出现不显示的bug,然后整一局都不知道可以行动多少个人,打得一脸懵逼。
                      网络延迟的原因,【a打b受b反击,c打d受d反击】显示成了【a打c受c反击,b、d直接损血的】,这个有点不习惯
                      还有建议加个可以看聊天记录的功能。
                      最后感谢伯伯,联机对战挺新鲜的。


                      IP属地:广东29楼2016-02-28 16:23
                      收起回复
                        纯支持~我的研究方向并不在这块,所以可能帮不上太多忙= =
                        只是建议的话,如果想把这个对战扩展化,可以参考三国志10的得点试炼,或者炉石的卡组。
                        比如每名玩家2000点配额,选择兵种,武将,道具都要消耗点数,越强的自然消耗越多。
                        PVP操作差距是一方面,而玩家自配置阵容是另一个重点。


                        30楼2016-02-28 17:10
                        收起回复
                          不知有没有哪位熟悉 补丁的热心吧友有空帮忙在 本地联机测一下[血量加成系 统]和[火攻增强系统]在对战 时是否能用,如果能正常使 用的话会增加不少变数,使 得对战更有趣些。目前太多 东西要改,而且下周可能也 没太多时间弄,要等我自己 去验证的话估计还要过些日 子才行。当然主要也还是想 先提一下有这么两个功能, 是在联机需要支持的计划里 的,让不了解的朋友可以先 有个概念。


                          IP属地:广西来自手机贴吧32楼2016-02-28 19:16
                          回复
                            很多朋友对于【轮流指令系统】不甚了解,说到底这个还是怪我,当初发布v1.56的时候就没有详细说清楚。也不全是因为我懒,只是要描述起来真的不太容易。下面我就举例说明看看能否说明白吧:
                            就拿汜水关来说,当前回合我军存活7人,敌军18人,【最少指令】设定数为3.
                            因为7<18,所以我军每轮(注是【轮】而非【回合】)只能获得最少指令数3.
                            然后7/3=2.33,也就是说我军要完成当前回合,必须得经过3(2.33)轮才行。
                            这样敌军每轮所获得的指令数也就可以算出来了:18/3=6,也就是敌军每轮能动6人。
                            注:如果手头上有剩余的指令数而没有执行完就结束回合的话,系统会帮你自动待机灰掉未行动的相应数目人员。
                            通常的战旗游戏不是每回合全部动一遍人物就是根据速度排时序,这个系统初看上去是有点难理解。但是,这不是我一拍脑门突然想出来的新东西,完全是模仿了ps2上《贝尔维克传说》(Berwick Saga)的战斗系统。它的系统还稍微更复杂些,先手只能控一子。此游戏在我心目中地位绝对是能排进前三的,因此我先前以为不用介绍大家应该都玩过的,也懒得再对此系统多做说明了。现在看来似乎这里玩过这个游戏的吧友并不多,可惜了。我当年玩的时候还是日文,现在汉化都有了而且模拟器也能十分顺畅地玩了,还是推荐大家有空的话玩一玩吧。难度可是很高的!
                            言归正传,在我看来这个系统有几点好处:
                            1. 把先手的优势减小;
                            2. 让中途等待的时间可以分割成一小段一小段,心理容忍程度相对会好些;
                            3. 每回合先走后走哪个棋子需要做的战略考虑更多。
                            当然,如果是觉得这样轮来轮去实在搞不懂,老子就是想回到原版这样每回合动完所有人。也很简单,只需将【最少指令】的值设为16(原版其实是15但是有的mod是16,考虑到兼容程序里是取16),就能够保证我方回合可以获得足够的指令来把人物执行完再交出控制权了,如此一来相当于得到没有【轮指系统】的效果。这也符合我的一贯宗旨,不会去强迫用户接受任何设定,尽量让用户有选择权。因为我相信即使你认为是最好的东西,也未必会人人喜欢,没必要强求也无须争论。


                            IP属地:广西38楼2016-02-29 09:01
                            收起回复
                              是否可以根据指令信息自动保存成文本战报呢?(感觉在游戏里播放不太现实的,用文本应该容易点?)


                              IP属地:广东来自Android客户端41楼2016-02-29 09:39
                              收起回复