乐于分享
好东西不私藏

爆款潜力!《水果凑对对》完整源码解析!助你轻松上手二次开发

爆款潜力!《水果凑对对》完整源码解析!助你轻松上手二次开发

《水果凑对对》基于 Cocos Creator 3.8.8 引擎精心打造的休闲消除类小游戏,今天正式发货!

原价 4998元,上新特惠仅需2199元

晓衡知道,有客户拿到源码后,是计划进行二次开发,比如增加新玩法、换皮新美术包或者接入平台广告变现上线。

本篇文章就来做一次全面的项目拆解,从资源结构、配置玩法到周边系统,带你快速上手二次开发!

📂 01 模块化结构

打开项目,最直观的感受就是极其规范的目录划分。

《水果凑对对》全面采用了 Cocos Creator 的 Asset Bundle(资源包) 机制,于微信小游戏的性能优化和秒开体验至关重要。

核心的 Bundle 划分如下:

  • • bundleMain:主界面及大厅通用 UI 资源。
  • • bundleGame \ bundleGameUI:核心战斗/消除场景的资源、特效与内部 UI,做到玩的时候才加载。
  • • bundleCommon:存放项目跨模块通用的公共资源和核心数据结构。
  • • bundleTujian:图鉴系统的独立包,充分解耦。
  • • bundleAudio:所有音频资源的集中存放地。

运营上线,需针对用户地域、文化、人群等属性,对游戏进行二次开发,只需更换游戏中的美术资源。

依据对应的 Bundle 文件夹,替换相同名称和尺寸的图片素材即可如 assets/resources/textures 等,引擎会自动刷新。

另还有客户问,美术换图用什么 AI 出图比较好?我自己常用的有即梦Ai,生成 2D 游戏图集图标很方便!

看下面这套小动物的圆形图标,效果还不错吧?

提示词如下:游戏图集设计,羊了个羊风格图标包含羊、猫、狗、牛、猪,多行多列整齐排列在纯白色背景上,图标大小一致,圆润造型设计,明亮饱和色彩,Q版比例夸张,可爱表情元素,柔和光影效果,统一风格,高清质感,游戏美术资源,杰作

需要特别注意的是,替换的图片素材可使用 TinyPNG 等压缩工具减小文件体积。

⚙️ 02 配置文件

对于消除类或者关卡类游戏来说,调换关卡难度是日常操作。

《水果凑对对》提供了一套极度舒适的配置表驱动工作流。

Excel 数值源:在项目根目录的 cfg 文件夹下,包含了一个 关卡.xlsx 文件。

策划可以直接在这里配置每一关的水果种类、数量、层数和难度节奏。

JSON 数据直读:配置表的产物放置在 bundleCommon/data/levels.json 中。游戏运行时直接读取此 JSON 文件。

Python 导表工具: tools/cfg_xlsx_to_levels.py 这个 Python 脚本,它是跨平台的。

并且只依赖 Python 标准库,不需要安装额外的第三方包。

配套还有一个 bat 脚本在 windows 系统下又击即可生成配置文件。

就是说,完全不需要动代码,只需修改 关卡.xlsx 即可打造你自己的无限关卡模式。

另外再说一点,关于新手引导关卡。

它是一个固定布局的一组坐标,代码文件在assets/script/logic/LevelPositionPlan.ts ,有一个 GUIDE_POSITIONS 数组:

//引导关 12 个固定位置,与 PosConfig 规则一致//此处独立定义避免逻辑层依赖 constsconstGUIDE_POSITIONSPosition2D[] = [    { x0y240 },    { x: -120y340 },    { x120y340 },    { x0y440 },    { x: -220y2000 },    { x: -340y2100 },    { x: -100y2100 },    { x: -220y2200 },    { x220y2000 },    { x100y2100 },    { x340y2100 },    { x220y2200 },];

03 核心玩法与道具

作为一款物理凑对消除游戏,爽快的消除手感和恰到好处的卡点是核心。

源码中的逻辑代码集中在 assets/script/logic 目录下,纯粹的数据驱动计算,不与 UI 强绑定。

为了帮助玩家过关(同时也是重要的商业化/看广告触点),游戏内置有两种道具系统(详见 ItemLogic.ts 和 UIGame.ts):

  1. 1. 🔨 消除道具:实现了自动在收集槽底部,选取最上层的一颗水果,并在上方寻找同类别的“最近”水果直接配对消除,用于化解卡槽被填满的危机。
  2. 2. 🌪️ 打乱道具:对当前场上“空中且未碰屋顶”的所有水果进行重新洗牌重新排列,打破死局。

道具的使用次数、按钮的防抖动画(如玩家5秒未操作时的按钮晃动提示 itemBtnShakeTimer)均已内置完善。

/** 打乱道具本关已使用次数(每关最多 3 次) */privatedisruptUseCountnumber = 0;/** 记录最近一段时间内消除“成对水果”的时间戳(用于连消语音判定) */privatepairClearTimestampsnumber[] = [];/** 上一次连消语音播放的时间(毫秒) */privatelastComboVoiceTimenumber = 0;/** 道具按钮抖动计时(秒):玩家未点击水果超过 5 秒时随机晃动一个按钮 */privateitemBtnShakeTimernumber = 0;/** 是否已完成本局水果初始化(节点全部创建完成) */privatefruitsInitDoneboolean = false;/** 是否已完成本局绳索初始化(无绳索关卡视为已完成) */privateropesInitDoneboolean = false;/** 是否已完成本局闪电效果(无闪电关卡视为已完成) */privatelightningDoneboolean = true;

你可以轻松接入微信的激励视频广告 API,直接将这些道具变更为“看广告获取”。


04 周边系统

一套商业级源码,不仅要有核心玩法,还要有完善的外围系统来保证玩家的次日留存活跃度

《水果凑对对》已经为你准备好了一切:

  • • 📅 7日签到:纯净的签到规则运算,不依赖任何 UI 即可算出玩家当前所处的签到周期。
  • • 🖼️ 图鉴系统 :消除类游戏容易枯燥,增加收集元素,满足一些玩家的收集癖。
  • • ⚡ 体力值系统:每次开局消耗指定体力,轻松“防沉迷”与“促变现”。

💡 总结

《水果凑对对》是一个套拥有MVC 架构思维 (ctrl, logic, ui 目录分离)组件解耦商业化基建完善的强大二次开发脚手架。

无论是将其改造成“水果、蔬菜、果冻……等物品消除”,还是时下热门的“萌宠龙虾”,它都能为你剩下几周甚至几个月的开发时间!

该源码已在微店商城正式上架发货,欢迎咨询购买!另外,凡关注晓衡微店的老铁,可免费领取《Cocos 入门专栏教程》。

☝︎扫码领取兑换券☝︎

复制兑换码后,小报童小程序兑换

打开微信输入链接并打开:#小程序://小报童/yU20IP0YOB80Met 进入小报童小程序!