- 【游戏内容介绍】环节让先提交【版本审核】,但是提交【版本审核】时又提示让先通过【游戏内容介绍】?
提审时间:2024-02-23 ,下午02:40 提审类型:【游戏内容介绍】& 【版本审核】 具体问题和截图: 【游戏内容介绍】环节让先提交【版本审核】 [图片] 提交【版本审核】时,又让我先通过【游戏内容介绍】: [图片]
02-23 - 主管部门审核中
日思夜想,心心念念,等了一个多月的今天,终于等到了消息,第一眼看到结果的时候并没有感到意外,反而死了的心也彻底可以放下了😂 [图片] 收到以上结果后,立马去看了消息中心,心想应该有所解释吧,果然不出所料,请看下图[图片] 抛开其他原因,当前审核被驳回的意思就是:小游戏名称有变更,不一致。What? 首先“资质审核”这一块,如果“资质审核”所需提交的材料中游戏的名称与游戏“基本设置”中的名称不一致时,“资质审核”应该是不能通过审核的,但是当前游戏“资质审核”是审核通过的,说明名称是没问题的,况且“资质审核”是进行“游戏内容介绍”审核提交的前置必要条件,能进入“游戏内容介绍”审核这也说明名称没问题。 然后这边也是花了30大洋认证了最新的游戏名称,并且名称与游戏“基本设置”中的名称也是一致的。 最后“游戏内容介绍”中提到的游戏名称,都是一致的且与游戏“基本设置”中的名称不说大小一样吧,简直就是一摸一样。 So!看到这个“被驳回”的原因我也表示有点摸不着头脑,一脸懵逼,差点一口浓血没饮恨西北,还好及时掐住了人中保住小命。再看看官方给出的解决方案,感觉就是:你!啥问题也没有!但是!必须得重新提交一遍。就这样~😂 所以有时候真是莫名其妙、匪夷所思、百思不得其解。 没办法又重新提交“资质审核”,一天后终于又收到了好消[图片] “资质提交”项也显示“已完成”[图片] 所以又立马重新提交“游戏内容介绍”审核[图片] 现在静等拨云见日的那一天。【标记-2024年5月15日】 还是太乐观了,什么叫希望越大失望越大,今天5月29号请看下图[图片] 🤔又出什么幺蛾子了吗?今天一过就整整两周过去了,这是在搞啥子嘛花。【标记-2024年5月29日】 [图片] 终于进入“主管部门审核中”。【标记-2024年6月18日】 目前仍旧处于“主管部门审核中”,如下图。【标记-2024年7月24日】 [图片] 又一周过去了。【标记-2024年7月31日】 一个月真快啊,现在还在主管部门审核中😂【标记-2024年8月27日】 我滴个神,今天终于“主管部门已通过”,可以进行下一步了。【标记-2024年9月25日】 [图片]
09-25 - onShareAppMessage分享后,分享者能看到内容,被分享者看不到
如图所示: [图片] [图片] AppID:wx58d9b35006135800
08-27 - 微信小游戏内自定义按钮发起直播
微信小游戏想在游戏内点击按钮实现如 小游戏点开右上角三个点,发起直播 的功能,需要调用的sdk或文档链接地址
08-23 - 关于小游戏互推行为是否违规,求解答
小游戏是否可以互推自己其它的小游戏呢?我看运营手册里说是不可以,会违规,但是我又看到线上很多小游戏都在自己的游戏内开发了互推模块,例如玩一玩等,能否给解答一下这种行为是否违规?是否可以?
08-22 - 我的小游戏激励广告的ecpm太低了,官方可以帮查一下原因吗?
[图片] 激励广告的ecpm一个月基本保持在1到2元之间,不知道是什么原因?
05-06 - 开发的时候需要原生广告,结果每次都是1004就不能给个测试广告?
开发的时候需要原生广告,结果每次都是1004就不能给个测试广告? wx.createCustomAd customAd.onError(err => console.log("createCustomAD error:",err)); 错误id:1004 "no advertisement"
2022-04-22 - RewardedVideoAd.onError 返回1004错误码后,以后还可以看广告吗?
今天一个账号在点击看广告时,一直返回1004错误码,看到了官方的解释为没有合适的广告,那么请问以后还是仍然可以正常看广告的吧?不会就此ban了这个功能吧?
2022-04-15 - 小游戏被恶意举报,提交审核3天显示还在审核中
我们小游戏10月7号被恶意举报,申诉之后到现在都还在审核中,麻烦官方大大看一下 [图片]
2019-10-10 - 小程序被恶意举报并被官方永久封禁后申诉处理问题
2022.4.2 这天突然收到微信公众平台安全助手推送的一条消息,说我的小程序违规了,赶紧登录微信平台查看,看到了下面这样一个页面,当时就懵逼了 [图片] 问题处理看到这个第一时间就是想得是不是我真的那里违规了不知道呢,就去看看他们给出的违反规范内容(平台有说明是第5.15条),对比了一下,没发现自己哪里违规,已经贴上小程序所有功能截图并进行申诉, 而且阅读了一下他们的规定,就算违规了文档说明也是对违规模板进行删除,限制相关接口使用,为啥我的上来就是永久封禁账户?想不透,希望能给个解释 [图片] 关于申诉把所有功能界面都截图提交了,但是感觉审核的人根本没有干,直接一句确实违规了,我想知道的是,就四个界面的小程序,如果违规应该很明确吧,到底哪里违规审核人员都说不出来么 [图片][图片][图片][图片] 最后想确认对于这种恶意投诉与举报他人的人,平台如果查明了是否有惩罚呢?2022.4.2 这天突然收到微信公众平台安全助手推送的一条消息,说我的小程序违规了,赶紧登录微信平台查看,看到了下面这样一个页面,当时就懵逼了 [图片] 问题处理看到这个第一时间就是想得是不是我真的那里违规了不知道呢,就去看看他们给出的违反规范内容(平台有说明是第5.15条),对比了一下,没发现自己哪里违规,已经贴上小程序所有功能截图并进行申诉, 而且阅读了一下他们的规定,就算违规了文档说明也是对违规模板进行删除,限制相关接口使用,为啥我的上来就是永久封禁账户?想不透,希望能给个解释 [图片] 关于申诉把所有功能界面都截图提交了,但是感觉审核的人根本没有干,直接一句确实违规了,我想知道的是,就四个界面的小程序,如果违规应该很明确吧,到底哪里违规审核人员都说不出来么 [图片][图片][图片][图片] 最后想确认对于这种恶意投诉与举报他人的人,平台如果查明了是否有惩罚呢?
2022-04-13 - 小程序恶意举报,怎么解决?
小程序名: 福禄喜 AppID:wx06abbaa45d99624c 腾讯平台,你好!我司主要做的是针对宝妈人群(主要是身边的亲戚)提供图文小程序以及文章,文章类型主要涉及 美文、情感、祝福等类型内容。宝妈通过专属的小程序,发到他的家人群、亲戚朋友群、以及一些宝妈加进去的聊天群等地方去,通过流量主进行变现。我司后台提供具体如下:文章类目、文章内容、流量主等三大核心。由于没有新闻评论的资质,所以提供的是 美文、情感、祝福等内容。 问题出现的场景:可能在别人群里发了后,被恶意举报 [图片][图片] [图片] 申诉后显示,仍说是煽动,由于申诉那里篇幅较短,所以重新在这里详细讲述: 关于低俗煽动言论,我猜想,说的其实还是那张图片二维码里面的。但我们真的是无法理解: 1.首先这张图片,并非我们的。我们没有这种“犯罪动机”,宝妈人群,根本没时间去管群,还发这种危害国家,甚至是谣言的图片。这个我们真的不知道该如何证明,待会直接看后台截图最直接。关于这个,我们可以写下保证书。另外如果可以,我私下给审核人员后台账号和密码。或者有没有安全审核机制,我们平台直接加入到安全审核的平台里面,我们直接提供接口 [图片] 2.关于其他内容涉及低俗,我们反复斟酌,唯一有可能的是情感类别里面,但具体是哪篇,我们真的看不出来哪篇煽动。需要什么支持我们完全可以配合的哦。需要账号可以私下我,我直接把我们的后台账号给您。这是小程序的所有文章 [图片][图片][图片] 我认为,我们不是为了封而封,只是我们的发展模式收到了挑战。市场只能劣币驱动良币,我的团队(初创)真的需要腾讯的支持,再次重申,我们敢写下法律保证书,绝不会涉及违规违反犯罪的文章。 [图片] 我们团队的创业思路是这样:顺应平台、发动宝妈人群,在疫情当下,给宝妈们增加创收! 所以,我们要保证宝妈们每个月都结算到流量主(封了是没流量主),不会为了个别文章去做影响整个平台的事情,而且现在都有主体连带,会影响到法人信誉,所以更不可能去为了一两篇文章去特意做低俗内容。我们希望腾讯的小程序平台生态能好转,不会去做违规、甚至违法的事情,我们只希望有一个好的反馈机制。 我们初步怀疑:是被恶意举报,恶意举报者去截一张二维码图,里面有煽动言论,然后就拿来举报我们平台的小程序。所以,真诚希望能引起官方注意。他们 至于他们是否有其他黑科技,直接爬取我的代码做其他或者什么方式来黑我们,我们就真的查不出来,需要官方帮忙,帮我们维持正义!真诚的需要贵司的协助。 逛了一圈的论坛,发现好多绕开的,但请审核的人员,真的务必看到我这边。我们真的愿意做任何配合,包括源代码,后台账号,我们都可以直接放开给贵司的审核人员。 我们反复推敲我们的创业模式,真的挺有前景。我们推动宝妈人群去推广我们的小程序,目前是图文,后续会做更多有趣的好玩的工具。但恶意举报这种,真的会直接导致我们的创业模式直接中断。对于前期创业的我们来说,也是致命打击!真的恳请恳请恳请,跪求小姐姐小哥哥们,务必要着重看看。疫情单下,创业不易,恳请给个机会,给我们指引。好不容易发展了一些宝妈团队,刚开始推,就遭受被封,现在团队人心惶惶,非常难受。疫情单下,很难,希望希望希望,真的给与我们指引!我们愿意做任何配合。联系电话:15622774208
2022-08-10 - 激励视频广告每天每人限制观看7到10次?是每天晚上12点开始重新计数么?
激励视频广告每天每人限制观看7到10次?是每天晚上12点开始重新计数么?
2019-03-13 - 有开通小程序流量主的吗?收益怎么样啊?
求大神赐教。想开发
2019-01-07 - 微信小游戏审核是腾讯内部人工?还是外包给第三方了?还是AI机器人?
从11月底开始提交做好的微信小游戏开始审核,主体信用分100分,但平均每次提升 审核时间长达120多个小时,也就是5天。每次不过,或多或少都有一些小问题,那就按照审核结果回复整改吧。第四次提交审核,但最终也还是没通过。理由是:1、经平台审核,你的小游戏存在恶意注册嫌疑,本次提审已被驳回。 主体信用分扣除-5分 [图片] 违规图片: [图片] 游戏上面的这个“违规截图” 是正常的游戏画面,我看不懂哪里违规了 。其次这张图片,是第三次提交审核中的版本里面的,第三次不过,顺便做了障碍物图片素材优化,上传了新版本,提交审核的,也不可能出现在第四次审核中? 还有就是 我真的搞不懂,什么是我恶意注册了 ,而且信用分扣5分 有没有明白的伙伴,给我点建议。同样麻烦官方审核人员能不能给开发者一种认真对待且专业的态度,既然做好的产品提交到微信小游戏平台,也是因为这个平台的优势与对平台的信任,忙了好几个月,难道我们就是为了恶意注册?想不通。也思考了半天,是不审核的是机器人呢?还是外包给第三方了?
2022-12-20 - 小游戏红包提现,需要版号?
请问一下,小游戏如果要开通红包提现功能,是不是需要版号?
2022-08-11 - 小游戏因为违规被下架,申诉成功后没有恢复上架,需要怎么处理?
小游戏(appid:wx3d3cdcc363216e35)因为违规被下架,申诉成功后没有恢复上架,需要怎么处理?
2022-01-05 - 菜鸟教程 - 如何实现 邀请好友送金币
这期菜鸟教程我们会用一个具体的产品方案来为大家解答以下这些问题—— 1. 小游戏基于关系链的互动玩法有哪些? 2. 邀请好友的后续互动, 如何通过关系链互动 和 定向分享能力实现? 3. 开放数据域UI绘制太麻烦了,怎么办? 产品方案 · 在游戏内,定向邀请未注册的特定微信好友加入游戏;(也可以是游戏自定义条件的已注册好友,例如7天未登陆游戏的好友) · 成功邀请后,开发者可监听成功事件。 · 邀请者可获取已邀请的好友信息。 [图片] 案例实现 1 邀请好友 | 获取未玩过该游戏的好友 开发者需要在开放数据域通过 wx.getPotentialFriendList接口获取可能对游戏感兴趣的未注册的好友名单。该接口可以一次获取至多5个非同玩好友,每次拉去都会刷新名单。开发者拿到好友的openid、昵称和头像等数据,然后就可以开始提示玩家邀请啦! [代码]wx.getPotentialFriendList({[代码][代码] [代码][代码]success: (data) => {[代码][代码] [代码][代码]let list = data.list || [];[代码] [代码] [代码][代码]console.log([代码][代码]'getPotentialFriendList'[代码][代码], data);[代码][代码] [代码][代码]}[代码][代码]});[代码] | 向指定用户发起分享 获取到好友数据之后,在开放数据域,通过wx.shareMessageToFriend接口可以给指定好友定向分享。 [代码]wx.shareMessageToFriend({[代码][代码] [代码][代码]openId : [代码][代码]''[代码][代码], [代码][代码]// 这里填写好友的openid[代码][代码] [代码][代码]title : [代码][代码]'快来探索浩瀚星空'[代码][代码],[代码][代码] [代码][代码]imageUrl: [代码][代码]'https://mmocgame.qpic.cn/wechatgame/TKicR7oWel4znvwMdwOpuwoy1ntVB44kT9ZSse2u0xNcO5SaxIS2UwU0GdUfA2Al0/0'[代码][代码]})[代码] | 设置分享参数 wx.shareMessageToFriend的分享参数,只能从主域传入。 故拉起开放数据域前,开发者需要先通过wx.setMessageToFriendQuery 接口设置。目前该接口只允许传入一个参数 shareMessageToFriendScene,并且仅可以在游戏域使用。 [代码]// 设置定向分享参数(这里假设1代表的是邀请新玩家场景值)[代码][代码]wx.setMessageToFriendQuery({[代码][代码] [代码][代码]shareMessageToFriendScene: 1[代码][代码]});[代码] | 监听邀请成功事件 用户发起定向分享之后,在基础库2.9.4以上支持通过接口wx.onShareMessageToFriend监听邀请成功事件(链接待补充),给予邀请者激励。 [代码]wx.onShareMessageToFriend && wx.onShareMessageToFriend((res) => {[代码][代码] [代码][代码]console.log([代码][代码]'wx.shareMessageToFriend'[代码][代码], res);[代码][代码] [代码][代码]let tips = res.success ? [代码][代码]'分享成功'[代码] [代码]: [代码][代码]'分享失败'[代码][代码];[代码] [代码] [代码][代码]wx.showToast({[代码][代码] [代码][代码]title : tips,[代码][代码] [代码][代码]icon : [代码][代码]'none'[代码][代码],[代码][代码] [代码][代码]duration: [代码][代码]2000[代码][代码] [代码][代码]});[代码][代码] [代码][代码]// 这里可触发游戏逻辑[代码][代码]});[代码] | 小结 至此,拉取好友、定向分享、监听成功通知的操作就完成了,几个接口的调用顺序如下,我们通过一个图来简单梳理这里的流程: [图片] 2 新玩家加入游戏,双方领奖励 | STEP1: 接受邀请 新玩家点击卡片进入游戏,开发者可通过 wx.getLaunchOptionsSync接口获取启动时候的信息,返回的对象中会有 query 参数,之前邀请者设置的 shareMessageToFriendScene 就会出现在 query 里了。我们直接判断这个值是否为 1(前文,我们设置了1为邀请新玩家场景值),然后发送事件给开放数据域,表明接收到了邀请。 [代码]wx.onShow((options) => {[代码][代码] [代码][代码]console.log([代码][代码]'onShow options'[代码][代码], options);[代码] [代码] [代码][代码]// 玩家通过被邀请的卡片进入,向子域发送消息,要求修改开放数据域消息[代码][代码] [代码][代码]if[代码] [代码](options && options.query.shareMessageToFriendScene === [代码][代码]'1'[代码] [代码]) {[代码][代码] [代码][代码]this[代码][代码].openDataContext.postMessage({[代码][代码] [代码][代码]event: [代码][代码]'reciveInvite'[代码][代码],[代码][代码] [代码][代码]});[代码][代码] [代码][代码]}[代码][代码]});[代码] | STEP2: 修改卡片分享人的托管数据 敲小黑板了!关键点来了!最多人问就是这里了!分享点进来不知道谁分享的,怎么办? 开放数据域收到 event 为 ‘reciveInvite’ 的消息之后,开发者可通过wx.modifyFriendInteractiveStorage接口修改邀请者的托管数据来做回馈。这个时候需要带上一个特别的参数 quiet: true 来表示修改卡片分享人的数据。设置了quiet:true的互动,开发者无需填入touser,用户侧也无需确认噢。 [代码]wx.modifyFriendInteractiveStorage({[代码][代码] [代码][代码]// 这里定义key“2”代表邀请玩家的数量[代码][代码] [代码][代码]key :[代码][代码]'2'[代码][代码],[代码][代码] [代码][代码]opNum : 1,[代码][代码] [代码][代码]operation: [代码][代码]'add'[代码][代码],[代码][代码] [代码][代码]// 静默修改需要用户通过快捷分享消息卡片进入才有效,代表分享反馈操作,无需填写 toUser,直接修改分享者与被分享者交互数据[代码][代码] [代码][代码]quiet : [代码][代码]true[代码][代码],[代码][代码] [代码][代码]complete:(res) => {[代码][代码] [代码][代码]console.log([代码][代码]'modifyFriendInteractiveStorage'[代码][代码], res);[代码][代码] [代码][代码]}[代码][代码]});[代码] | STEP3: 数据校验 及 记录赠送关系 通过wx.modifyFriendInteractiveStorage我们可以修改卡片分享人的互动型托管数据,但是这个API看起来并没有记录邀请人和被邀请人,只是简单修改卡片分享人的数据,如果我想校验下哪些用户是已经邀请过的,或者想展示邀请记录该怎么做呢? 这里我们需要了解下JSServer: wx.modifyFriendInteractiveData接口在具体写入操作之前会默认执行开发者托管在JSServer上的一段代码,要求开发者使用开发者工具上传文件checkInteractiveData.js。 而在JSServer运行环境下,可以调用wx.getOpenId()、wx.getFriendUserStorage()和wx.setFriendUserStorage()这几个接口,此外还可以拿到用户本人openid:wx.getOpenId()、目标好友openid:toUser和增加的数据opNum,这样除了执行校验,还可以顺带将邀请和被邀请记录写入普通托管数据,如下图所示(JSServer的校验逻辑可以参考本文附上的源码): [图片] || TIPS:游戏过审发布后,记得在工具上将checkInteractiveData.js文件发布上线,校验才会在正式环境生效。否则,修改互动型托管数据也会失败。 [图片] | STEP4: 触发邀请成功后游戏逻辑 按照上面的步骤,互动型托管数据和邀请记录都已经记录起来了。 但这些数据都是在开放数据域才能拿到的,如果想在主域根据这些邀请记录来做发放奖励逻辑该怎么做呢?这里我们在主域提供了wx.getUserInteractiveStorage接口,可以拉取互动性关系链数据。 [代码]// 获取用户的加密交互数据[代码][代码]wx.getUserInteractiveStorage({[代码][代码] [代码][代码]keyList: [[代码][代码]'2'[代码][代码]],[代码][代码] [代码][代码]success: ({cloudID}) => {[代码][代码] [代码][代码]// 该接口拿到的是加密数据,数据解密可以通过开发者自己的后台也可以通过云函数,这里演示云函数[代码][代码] [代码][代码]wx.cloud.callFunction({[代码][代码] [代码][代码]name: [代码][代码]'getUserInteractiveStorage'[代码][代码],[代码][代码] [代码][代码]data: {[代码][代码] [代码][代码]userInteractive: wx.cloud.CloudID(cloudID),[代码][代码] [代码][代码]}[代码][代码] [代码][代码]}).then(res => {[代码][代码] [代码][代码]console.log([代码][代码]'cloud getUserInteractiveStorage'[代码][代码], res);[代码][代码] [代码][代码]});[代码][代码] [代码][代码]}[代码][代码]});[代码] 通过上述接口拿到的最终数据如下,代表邀请了3个玩家,开发者根据这个数据就可以给玩家发放奖励了! [代码]{[代码][代码] [代码][代码]"data"[代码][代码]:{[代码][代码] [代码][代码]"kv_list"[代码][代码]:[[代码][代码] [代码][代码]{[代码][代码] [代码][代码]"key"[代码][代码]:[代码][代码]"2"[代码][代码],[代码][代码] [代码][代码]"value"[代码][代码]:[代码][代码]"3"[代码][代码] [代码][代码]}[代码][代码] [代码][代码]][代码][代码] [代码][代码]},[代码][代码] [代码][代码]"openid"[代码][代码]:[代码][代码]"xxxxx"[代码][代码]}[代码] 至此,如何实现邀请好友,双方激励的案例实践讲完啦!而且,我们的开发GG还把上面的示例代码提供给大家,下载换个APPID,做个UI就可以跑咯,源码链接 [图片] 上面的case能力都是在开放数据域实现,但我们有收到很多反馈:在开放数据域做UI界面太难了!! “我只是想绘制一个简单的好友列表,最多加个赠送或者邀请按钮,在开放数据域做UI界面太难了!!” “开放数据域引入一个独立的游戏引擎会占据好多代码包体积” “纯canvas开发真的太麻烦,代码可读性差,事件处理也很麻烦” 这是很多开发者的心声。 为此,开发哥哥们也提供了开放数据域UI绘制的解决方案——轻量级的canvas渲染引擎。 体积小!性能还杠杠的!上面的demo就是用它完成的。 轻量级的canvas渲染引擎 这款轻量级的canvas渲染引擎,它具有以下特点: · 引擎体积很小,压缩之后仅~50kb; · 类Web开发,只需提供XML + CSS即可渲染界面,提高代码可维护性; · 性能强大:长列表滚动可跑满60帧; [图片] | 使用教程: · step 1:克隆本项目到合适的文件夹,引用引擎 [代码]// 通过Git的方式安装[代码][代码]git clone https:[代码][代码]//github.com/wechat-miniprogram/minigame-canvas-engine[代码] [代码]// 引用渲染引擎[代码][代码]import Layout from [代码][代码]'minigame-canvas-engine'[代码] · step 2:为UI界面编写模板和样式 [代码]let template = `[代码][代码]<view >[代码][代码] [代码][代码]<text value=[代码][代码]"hello canvas"[代码][代码]> </text>[代码][代码]</view>[代码][代码]`[代码] [代码]let style = {[代码][代码] [代码][代码]container: {[代码][代码] [代码][代码]width: 200,[代码][代码] [代码][代码]height: 100,[代码][代码] [代码][代码]backgroundColor: [代码][代码]'#ffffff'[代码][代码],[代码][代码] [代码][代码]justContent: [代码][代码]'center'[代码][代码],[代码][代码] [代码][代码]alignItems: [代码][代码]'center'[代码][代码],[代码][代码] [代码][代码]},[代码][代码] [代码][代码]testText: {[代码][代码] [代码][代码]color: [代码][代码]'#ff0000'[代码][代码],[代码][代码] [代码][代码]width: 200,[代码][代码] [代码][代码]height: 100,[代码][代码] [代码][代码]lineHeight: 100,[代码][代码] [代码][代码]fontSize: 30,[代码][代码] [代码][代码]textAlign: [代码][代码]'center'[代码][代码],[代码][代码] [代码][代码]}[代码][代码]}[代码] · step 3:调用渲染API,执行真正的渲染 [代码]// 将模板和样式传给渲染引擎,渲染引擎会生成布局树和渲染树等,准备渲染到canvas上面[代码][代码]Layout.init(template, style);[代码][代码] [代码] [代码]// sharedContext自行创建[代码][代码]Layout.layout(sharedContext);[代码] [代码]/**[代码][代码] [代码][代码]* 设置sharedCancas在主域绘制的物理尺寸和位置信息,这一步非常重要,[代码][代码] [代码][代码]* 因为子域渲染引擎并不关心外部使用的引擎是什么,而是自己监听触摸事件来进行事件处理,[代码][代码] [代码][代码]* 因此需要拿到真实的物理尺寸、位置信息来执行事件处理。[代码][代码] [代码][代码]*/[代码][代码]Layout.updateViewPort({[代码][代码] [代码][代码]width : 200,[代码][代码] [代码][代码]height: 100,[代码][代码] [代码][代码]x : 100,[代码][代码] [代码][代码]y : 100[代码][代码]});[代码] · step 4:效果预览 [图片] || TIPS: 详细的教程可以查看文档; 为了方便调试,还可以使用在线编辑功能; 上面的邀请好友获得激励的demo示例,也是用这个canvas渲染引擎实现的喔。 对定向分享奖励还有什么疑问或者经验分享?希望了解哪些方面的实践教程?欢迎在评论区留言。
2019-12-09 - 所有消除游戏背后那些看不见的数字
嗨!大家好,我是小蚂蚁,这是消除游戏系列教程的第 2 篇。 在上一篇中我们讲到所有消除游戏(严格来讲是所有的非纯物理的消除游戏)的背后都有一张看不见的“网格”,这张“网格”是一个消除游戏的基础,有了它才有了行列式的布局,你才能够把指定的元素(图标)放置在指定的位置上,就像下面这样。 [图片] 在有了这样的基础之后,我们下一步是不是就可以开始实现各种各样的操作,去进行消除啦?且慢,在处理各种操作进行消除之前,你还需要理解一个东西,那就是所有消除游戏背后那些看不见的“数字”。 作为一个游戏制作者,你应该对自己有更高的要求,除了看见玩家所能看到的东西,也需要具备一双可以洞穿游戏的眼睛,看到那些玩家看不到的东西。除了看见那张“网格”,还需要再进一步,看见那张网格上面的“数据”。 [图片] 如图,这是一个典型的三消游戏的样子。一个 6 x 6 的布局,共包含 4 种不同的元素。 任意交换相邻的两个元素,交换后,如果在水平或者竖直方向上满足相邻的至少 3 个元素相同这一条件,就消除这些元素。因为规则是满足 3 个相同的元素即可消除,所以又被称作是“三消”。下面用你的眼睛扫描一下上方这个三消游戏的图片,看到那个“网格”了吗?(没看到的话证明你的“游戏创作者之眼”没有修炼好,请回顾一下上篇文章,继续修炼一下)。 [图片] 如果你的“游戏创作者之眼”修炼合格的话,你应该是可以看到下方的这张“网格”的,一个 6 行 6 列的网格,上方的那些消除游戏中的图标一个一个老老实实的按照这样的布局安放到每一个格子中。 接着,我们在看见“网格”的基础上,再进一步。 [图片] 如图,网格中不再是空空如也了,而是填满了数字。这些数字是根据什么来填的呢?看一下右侧,我们用 1 表示黄色的正方形,2 表示红色的三角形,3 表示绿色的五边形,4 表示蓝色的六边形。然后对照着上方的游戏界面,我们将这些数字填入到了下方的这个网格中。接下来,我们的注意力将都会放置在这张填满数字的网格上,因为我们将借助它来完成查找,匹配,以及后来的消除和移动等操作。 你可能会问,为什么放着上方这个直观的图形界面不用,非要把它转换成下方这个看起来晦涩的数字网格呢?这个问题非常好,值得好好的回答一下。 如果你想要和一个只懂英语的人交流,那你会怎么做?先要把你想要表达的内容转换成英语,然后传达给对方,这样对方才有可能理解你的意思。如果,你上来冲着对方来一通汉语,那结果会怎样?大概只能看到对方一张布满问号的脸。 现在我们把外国人换一下,如果你想要和一台计算机交流,你会怎么做?先要把你想要做的东西转换成它能够理解的语言,然后传达给它,这样它才能够理解你的用意,做出你想要做的东西。如果,你上来冲着计算机说:嗨,哥们!我想做一个三消游戏,就那种三个一样的图标凑在一起就可以消除的,怎么样?很简单吧!帮我来一个。你猜结果会怎样。 对于人类来讲,我们更擅长处理表象化的东西,黄色的正方形匹配黄色的正方形,红色的三角形匹配红色的三角形,这样很直观,很容易理解。但是对于计算机来讲,它无法理解这些东西,它擅长处理的是“数据”。所以,为了能够和它顺畅的交流,我们就必须要把表象化的东西转化成它所能够理解的“数据”。这个东西还有一个高大上的词汇,叫做“数据抽象”。 其实说白了,就是如果你想要计算机帮你干活,那你就必须跟它说点儿它能够听的懂的“话”。 解答完了这个问题之后,我们就能够踏踏实实的看看这张填满数据的表格了。对于一个“三消”游戏来讲,我们如何把它的规则翻译成计算机能听得懂的“话”? [图片] 任意交换网格中两个相邻的数字,交换之后,如果满足在当前行或者列上至少 3 个相邻的数字相等,那么这 3 个相邻的数字就满足消除条件,就可以进行消除。 [图片] 如图,我们将第 4 行第 4 列的 “1” 和第 4 行第 5 列的 “4” 进行交换,交换之后,竖直方向上的 3 个数字 4 相等,此时就满足消除消除条件。 好了,这就是消除游戏背后的那些看不见的“数字”了,对于玩家来讲,看到的是一个一个的游戏图标在移动,在消除,在下落,而对于游戏创作者来讲,你所做的其实是在一张布满数字的表格上,交换,比较,移动。这是两个完全不同的目光所及的两个完全不同的世界,是不是特别的神奇呢? 我们如何在游戏制作时构建这张填满数据的网格呢?仔细再看一下这个网格,它是不是很像是一个表格,二维数组,数组的数组......根据你所使用的编程语言和游戏制作工具的不同,一定都能找到对应的数据类型来呈现出这样的一个布满数据的表格。 在上一篇的基础上,我们在构建“网格”时,就可以再增加一个对应位置上的数字了。 ->计算起始点的位置x0,y0 ->循环(行数)次 ->循环(列数)次 ->创建元素 ->根据当前的行列,设置元素的位置xn,yn ->根据当前的行列,在网格上的对应位置设置表格当前元素的数字(新增) ->列循环结束 ->行循环结束 这样在绘制出可见的图标的同时,我们也绘制出了一张看不见的填满数据的“网格”。 在你的“游戏创作者之眼”得到进一步的提升之后,我们再来看一下那些常见的消除游戏吧! 三消[图片] 交换两个数字,水平或者竖直方向上有 3 个相等的数字即可消除。 1010[图片] 对于1010类型的消除游戏来说,数据格式要简单很多,因为只需要 0 和 1 (计算机最喜欢的东西),只要一行或者一列的数字都是 1 就满足消除条件,是不是有一种豁然开朗的感觉。 连线消除[图片] 连线消除游戏,水平,竖直或者倾斜方向,只要数字相等,就可以把它们连起来,连起来的数字等于或超过 3 个就可以消除。 点击消除(消星星)[图片] 点击任意一个数字,水平或者竖直方向上只要有相同的数字就消除。 仔细的观看上方的这 4 种不同类型的消除游戏的动图,来提升你的“游戏创作者之眼”的等级。 看起来千变万化类型各异的消除游戏,其实背后只不过是在包含着 "0,1,2,3,4" 这 5 个数字的表格中进行着各种各样的操作和处理,是不是有种“不过如此”的感觉呢? 在表象的游戏世界之下总有一些看不见的东西,作为游戏的创作者你需要具备一双“创作者之眼”来发现它们。很多看上去神奇的东西背后,只不过是一些简单的原理。发现它们就如同是捅破了一层窗户纸,让复杂多变的世界瞬间变得清晰而简单,此时,你可能会禁不住感叹:哦!原来是这样,不过如此啊! --- 这是消除游戏系列文章的第 2 篇,很可能将是全网最全的消除游戏系列教程,所以,关注公众号追一下子吧! [图片] 欢迎体验我制作的消除小游戏【精致1010】。 [图片] 也欢迎加小蚂蚁微信,交个朋友。 [图片]
2021-12-31 - 请问流量主的广告分成如何计算?
不知道作为流量主,可以如何获得收入? 不同类型的广告不同的收益吗? 相同的广告类型,不同的广告主,收益也不同吗? 找了半天也没有看到相应的说明文档?请教大神~!
2019-07-16 - 小程序 云开发 企业付款到零钱
终于轮到我来装一次b了 之前总是有求于各位神,现在来回馈了。 各位用小程序云开发,要实现退款、企业零钱的可以看过来。 // 云函数入口文件 const cloud = require('wx-server-sdk') cloud.init() const config = { appid: '**************', //小程序Appid,填自己的小程序id envName: '*************', // 小程序云开发环境ID mchid: '***********', //商户号,填自己的商户号 pfx: require('fs').readFileSync('./apiclient_cert.p12'),这里是下载的api证书。证书怎么下在呢?网上有 partnerKey: '123111111111111111111111111111111111111111111111111', //此处填商户密钥 notify_url: ' ', //支付回调网址,这里可以随意填一个网址 spbill_create_ip: '127.0.0.1' //不用改 }; const db = cloud.database(); const TcbRouter = require('tcb-router'); //云函数路由 const rq = require('request'); const tenpay = require('tenpay'); //支付核心模块 这里要是报错,直接搜 nps + 报错内容 // 云函数入口函数 exports.main = async (event, context) => { const wxContext = cloud.getWXContext() console.log("提现走到了函数",event) const api = tenpay.init(config); var tixian = event.tixian // 申请企业付款到用户零钱 const orderNumber= 'dlbmoney' + new Date().getTime() + Math.floor(Math.random() * 1000) const datas = { partner_trade_no: orderNumber, openid: wxContext.OPENID, amount: tixian * 100, desc: "订单说明", check_name: "NO_CHECK", //不检查实名 spbill_create_ip:"123.151.79.109" } const result = await api.transfers(datas) return { event, openid: wxContext.OPENID, appid: wxContext.APPID, unionid: wxContext.UNIONID, } }
2021-07-07