〖植物大战僵尸TV触控版〗相关问题解答Q&A

前言:除前五条Q&A为本人编写,剩余均搬运原作者@宫水一个半叶 (UID:480240783)所写的〖TV触控版问题解答〗
触控版交流反馈群:852728335(不是资源群!)
植物大战僵尸TV触控版下载链接:https://wwkb.lanzoue.com/b02eiqv6d
密码:et8u

Q1:相比北美版/乐Pad版等一众安卓版本,TV版优势在哪里?
A1:TV版作为主机Xbox版移植,是在安卓平台里最接近PC原版的游戏数据和特性内容的版本,并且是全安卓里唯一有十卡槽和智慧树的版本,同时还有独具特色的对战/结盟模式,再加上高视野和宽屏体验更是独树一帜,非常推荐大部分玩家游玩。
虽然乐Pad版的游戏数据也与PC原版相近,但作为安卓最早的PvZ,游戏易闪退、动画易掉帧、无解谜无花园、半透明贴图变黑等问题难以解决,综合游玩体验是不佳的。

Q2:听说TV版官方魔改了冒险模式,1-7出铁门/3-9出巨人,难度太高怎么办?
A2:TV触控版支持在『附加设置』--『游戏设置』中更改冒险难度,并且默认设置为PC版正常难度,若想体验官方魔改的加强难度可手动开启。
移植TV版的渡维公司在魔改关卡3-10的出怪代码时少了一个半角引号,这导致了后面关卡的出怪异常,具体表现为3-10出怪少了一大波,4-1后面的关卡进度条无旗帜的Bug;
虽然渡维本来是魔改了全部冒险关卡,但即便是修复了出怪Bug,从4-1开始关卡出怪种类也是不变的,密度也只是原版的1.5倍。所以3-9关卡仍是冒险难度的分水岭,还请大家多注意甄别这类似的难度修复版。

Q3:TV触控版只是给游戏增加了触控适配吗?
A3:当然不是。❶在『游玩体验』方面,触控版增加了许多特性,例如在游戏主界面设置里新增切换用户按钮、点击制作人员可以播放MV、关卡内道具栏内购破解、补全被阉割的音乐、开放隐藏小游戏、修复向日葵生产阳光/植物和僵尸受击闪光动画播放、去除TV-1.1.5原版主界面的更多游戏方式进入限制、开放TV-1.1.1原版的对战/结盟模式等等;
❷在『游戏优化』方面,作者重新编译了游戏的Java层,去除大部分屎山代码、去除游戏所有权限、去除贴图最高RGBA 4444色深的限制、适配刘海屏、挖孔屏和全面屏、TargetAPI 33、存档文件路径修改为『Android/data』、可自由调节画面长宽比、免存储权限移动存档和自动备份存档、完美支持小窗运行等等。
在一般玩家看来,TV版游戏内容完整、高视野+宽屏画面等薄纱绝大部分安卓版本。但在『代码层面』,TV版程序员水平非常低下,例如为了适配遥控器操作导致与原有的手柄操作发生逻辑混乱,致使后续版本对战/结盟模式Bug频多,无法正常游玩;
TV原版还有一些关于贴图和动画的小错误官方并未在意,但作为玩家难免会察觉官方对这些细节方面的不作为,官方TV版于2015年左右便停止了更新,并未对后续安卓系统更新对其进行维护,所以上方列举的游戏修复和优化均由触控版作者等人完成!

Q4:TV版后续版本对战/结盟模式不是无法正常游玩吗?
A4:现在经过作者修复,TV-1.1.1/1.1.5触控版均可正常游玩(仅限触控和键盘操作),并且在『键盘双人模式』下,你可以双人游玩原版的迷你游戏/益智/生存三大模式的关卡,可玩性更加丰富。
触控版作者还给最早的TV-1.0.1对战版制作了修复版,该版本原生支持手柄操作,并且同样破除了三大模式的双人游玩限制,非常值得有手柄玩家一试。

Q5:TV触控版支持哪些操作方式游玩?
A5:一共有四种:遥控器、触控(部分映射)、手柄(映射)、键盘(映射);
❶TV-1.1.1原版仅支持遥控器操作,TV-1.1.5原版官方添加了手柄操作,但仅是将手柄按键映射为遥控器,体验较差;
❷TV触控版则额外支持了触控和键盘操作,除主菜单和图鉴是调用游戏自带的触控函数之外,大部分界面的触控实现都是作者通过『Hook框架』自写10万多字符的触控代码完成;
❸键盘操作需要长按桌面游戏图标或在附加设置打开键盘双人模式,即可使用键盘操作游戏,注意进入该模式后游戏只支持键盘操作。

Q6:为什么桌面没有附加设置图标/点击附加设置却打开了游戏本体/点击游戏本体却打开了附加设置/隐藏附加设置桌面图标后无法长按进入附加设置?
A6:❶这是因为你的桌面不能够正确处理一个App具有多个桌面图标的情况/你的桌面不支持长按桌面图标打开快捷操作;
❷尝试在『附加设置』--『隐藏附加设置桌面图标』,或者使用创建快捷方式App打开游戏本体或附加设置。当然,换个桌面也可以。

Q7:爆炸坚果图标是干啥的?
A7:❶这是Mod Menu,也就是菜单修改器,主要用在作者开发TV触控时能够快速测试新功能。如果您使用了Mod Menu导致游戏闪退等相关问题,实属正常现象。请尽量不要向作者反馈此类问题;
❷如果您想关掉它,请打开『附加设置』--取消勾选『使用菜单修改器』。

Q8:如何取消种植当前植物/取消发射当前加农炮?
A8:❶拖动种植时如果拖出了不想要的植物,将植物拖回植物栏即可取消种植;
❷点击种植时如果点击了不想要的植物,再次点击它即可取消种植;
❸发射加农炮时如果选取了某个加农炮后又不想发射了,手指拖进植物栏即可取消发射。

Q9:触控玩对战模式需要注意什么?
A9:❶对战模式支持点击种植和拖动种植;
❷如果某个手指落在红线左侧,游戏就认为是1P在操控,反之就是2P;
❸如果僵尸方要使用飞贼,请先选取飞贼,然后手指落在红线右侧,并划动至左侧的目标植物上,再松手即可;
❹如果植物方要使用咬咬碑,请先选取咬咬碑,然后手指落在红线左侧,并划动至右侧的目标墓碑上,再松手即可;
❺僵尸方的脑子和植物方的阳光都会自动收集。但如果在附加设置开启了手动收集,则二者都需要手动收集;
❻如果植物方要使用铲子,点击或拖动植物栏左侧的阳光图标即可;
❼按返回键可以唤起认输对话框,点击认输即可结束本场对战。

Q10:触控玩结盟模式需要注意什么?
A10:❶结盟模式支持点击种植和拖动种植;
❷如果某个手指落在屏幕中线左侧,游戏就认为是1P在操控;反之就是2P;
❸1P永远优先选卡,选满1P后才会为2P选卡;
❹如果1P想要退掉某个已选的卡片,直接点击植物栏中的已选卡片即可;
❺如果2P想要退掉某个已选的卡片,则需点击该卡片在可选植物列表中的原始位置;
❻1P和2P的阳光都会手动收集。这是固定不变的,『附加设置』--『手动收集』设置项不会对此起到任何作用;
❼1P和2P都只能使用自己半场的加农炮,且加农炮点射时仅支持点击自己半场的加农炮并发射至自己半场。拖动发射加农炮则没有上述问题;
❽想要在对方的半场种植物,需要玩家选中植物后先在自己的半场落下手指,然后划动至对方半场上的目标位置,再松手即可。(和对战中使用咬咬碑和飞贼的方法完全一致);
❾铲子按钮点击后会使1P拿起铲子,支持拖动铲除或点击铲除;
❿黄油按钮点击后会使2P拿起黄油,支持拖动放置或点击放置。触控版额外加强了黄油功能,请大家试试拿起黄油后在僵尸聚集处划一划。

Q11:如何导入存档/如何直接解锁对战模式和结盟模式/如何解锁商店全物品?
A11:❶作者已经在游戏里内置了一份全通关存档,您可以直接前往『附加设置』--长按『导入全通关存档』;
❷如果您想导入自定义存档而不是全通关存档,可以在『附加设置』--『从外部导入存档』 ,然后选择zip格式的存档文件;
❸游戏的存档文件位置已被修改为『Android/data/com.trans.pvztv/files/userdata』(这是TV-1.1.5触控版包名的路径,TV-1.1.1触控版包名为com.trans.pvz),在低于安卓13的设备上可以使用MT管理器等工具访问,因此您也可以手动操作存档文件。

Q12:为什么游戏自带的游戏键盘有几个按键都显示到屏幕外面去了?
A12:这是因为您的设备分辨率较低导致的。不要担心,前往『附加设置』--『设置内置游戏键盘』,在此处您可以调节所有按键的位置、大小、透明度等等。作者做了一些特殊处理,在设置内置键盘的时候,所有按键是一定不会显示到屏幕外面的。

Q13:迷你游戏坚不可摧关卡种好植物之后怎么开始?
A13:点击植物卡槽左侧的阳光图标开始,或者用内置游戏键盘的锤子键(菜单键)开始。

Q14:为什么植物模仿者模仿的植物不会变灰?
A14:TV版原本就是模仿者变的植物不变灰。一个植物是否应该绘制为灰色,由Plant结构体中的成员『mFilterEffect』的值决定。但在TV版中,处理『mFilterEffect』的函数被删除了,所以您会看到模仿植物都不变灰。

Q15:为什么图鉴界面最后两行点击无反应/点击气球僵尸会进植物图鉴/点击介绍文字会进僵尸图鉴?
A15:TV版本身的缺陷。❶作者在图鉴界面直接使用了TV版中未删除的图鉴触控函数。这虽然极大地减少了作者相应的工作量,但缺点就是出现了一堆Bug;
❷图鉴最后两行的判定偏上,所以实际上您需要点击最后两行图鉴的靠上位置(比如点击僵王博士头顶的空白处,才能查看僵王博士的图鉴)。
并非点击气球僵尸或介绍文字导致的进入另一图鉴,而是点到了图鉴首页的查看植物和查看僵尸按钮导致的。实际上,气球僵尸和查看植物、介绍文字和查看僵尸按钮的位置重合了。也就是说即便这两个按钮是不可见的,点击他们依然可以生效。

Q16:游戏支持多指触控吗?
A16:TV版的操作单位不是触控点而是光标,而光标只能有1个(也许可以用上2P的光标,从而实现双指触控?但是观感会很差),因此作者暂时只实现了单指触控。

Q17:目前游戏触控还存在一些缺陷或者是部分未修复的Bug吗?
A17:〖触控缺陷〗:
❶手持的花园工具使用一次后,会自动变回手持水壶;
❷给智慧树施肥之后立刻前往其他花园时有概率打开工具栏,需要重新进入花园来解除;
❸邮件箱、游戏玩法介绍界面还没有加入触控;
❹结盟模式中只有1P能选择模仿者,并且有些情况下1P也选不了模仿者(所以最好一开始就选择好模仿者所要模仿的植物)。
〖未修复Bug〗:
❶路灯花无法照亮周围罐子Bug;
❷对战模式中双方卡槽冷却动画无法正常显示Bug(从TV-1.0.2对战版开始);
❸对战模式中植物锁敌毁灭菇弹坑Bug(原主机版Bug);
❹迷你游戏排山倒海和打僵尸关卡中光标内无法正常显示植物预览Bug。

Q18:附加设置中的关闭游戏内道具栏是什么?
A18:❶使用游戏键盘玩一局冒险模式(非小游戏/传送带关卡),您就明白道具栏是什么了;
❷触控操作是不会打开道具栏的,只有游戏键盘才能打开道具栏;
❸游戏的内购系统已被作者破解,道具栏里的所有道具都可以直接免费使用。如果您不喜欢它,请在『附加设置』里勾选『关闭游戏内道具栏』。

Q19:如何为TV改版加入触控、附加设置、内置游戏键盘?
A19:如您所见,TV改版和TV触控版虽然都是修改了游戏,但是『修改方向』和『修改内容』都不大相同:
TV改版往往会修改游戏贴图、游戏音乐和游戏机制。移植这三方面的改动到TV触控版中是非常容易的;而如果要将TV触控版的触控、附加设置、内置游戏键盘移植到TV改版中,是比较困难的;
两种方法的最终效果都是得到了一个有触控的TV改版。那我们肯定要选择第一个方法,也就是将改版对游戏三方面的改动移植进触控版里。
〖操作教程〗:
➊首先,找出改版是基于TV-1.1.1原版还是TV-1.1.5原版修改而来,并准备好相同版本号的触控版apk。绝大多数改版都是改自TV-1.1.1,但不排除改自TV-1.1.5的可能;并且改版可能会修改apk的版本号,使得我们不能仅凭借显示的版本号判断版本。因此,最稳妥的判别方法是:游戏主界面的更多游戏方式如果不能直接进入,就说明是TV-1.1.5,否则就是TV-1.1.1;
❷其次,将改版对游戏贴图、游戏音乐的改动移植进触控版。具体方法是:删除触控版的apk文件中『assets/files』文件夹,然后将改版的『assets/files』文件夹添加给触控版;
❸最后,将改版对游戏机制的改动移植进触控版。具体方法是:解压出改版apk文件中的『lib/armeabi/libGameMain.so』,并将其一处地址中的内容修改为『4F F0 01 00』,然后替换掉触控版的apk文件中的『lib/armeabi-v7a/libGameMain.so』(这处地址在TV-1.1.1原版中为『0x2BE9D8』,在TV-1.1.5原版中为『0x2C0A44』)。
于是您就得到了一个有触控、附加设置、内置游戏键盘的TV改版。并且一些触控版特有的其他特性也会自动加入到改版中。

Q20:如何修改附加设置中各个设置项的默认值?
A20:修改apk文件内的『assets/data.xml』即可。游戏会在初次启动时从此文件载入设置项的默认值。

Q21:游戏内触控是如何实现的?
A21:❶使用『Hook框架』读取游戏场景数据、选中植物卡片序号、光标位置、光标下方的植物等等,然后根据玩家的触摸相应地做出反应;
❷直白点说,作者是通过修改器实现的触控。玩家点到哪里它就把光标位置修改为哪里,玩家点击哪个植物卡片它就修改它为选中状态,玩家点加农炮它就拿起此加农炮;
❸实际上这是一个较大的工程。真正的难点不在于如何用Hook来修改光标位置、选中植物卡片等等游戏数据,而在将触控操作转换为游戏数据变动的转换过程。

Q22:我也会一些逆向和安卓开发,可以为TV触控贡献代码吗?
A22:当然可以。目前TV触控版在花园工具栏、邮件箱、图鉴、铲子按钮、双人触控对战、双人触控结盟等等都还有不完善的地方,作者很需要您的帮助。您可以前往『https://github.com/WuDi-ZhanShen/PvZ-TV-Touch』下载TV触控版的『Android Studio』源代码。