TG游戏开发的一些总结, 想到哪写哪

机缘巧合下接到了一个开发Telegram游戏的活, 现在把相关的技术进行整理, 想到哪写哪

相关的使用技术/工具

CocosCreator

  • ForgeX
  • QueenTween
  • Cocos Inspector

TelegramBot

  • GrammY

Others

  • GitHub Copilot
  • Luban

随记

  • 修改CocosCreator中的preview-template进行telegram-web-app.js的加载, 也可以下载下来当成插件引入
  • 现阶段的Game或者MiniApp就是一个网页, 没有国内小游戏有一个有独立的RunTime, 所以现在各种游戏使用的技术五花八门, 有使用游戏的进行开发, 也有网页.
  • 测试环境相关:
    • 只有测试环境下能可以把BotURL映射到本地的地址, 且可以用http协议
    • 如果使用MacOS注意下载的Telegram的版本, 不同的版本进入测试环境的方法不同
    • iOS现在国区并没有下载渠道, 手机验证码这些自己得想办法.
    • 移动端测试环境只有iOS版本才能进入
    • 如果不想用测试环境进行开发, 可以尝试反代工具如(nogrk)进行开发,不过有些慢, 而且如果自己全栈开发, 自己的机器人加上客户端, 但nogrk免费的只有一个地址.
  • photo_url有时候没有头像地址(Only returned for Mini Apps launched from the attachment menu), 需要用户通过Bot进入游戏后, 服务器对userId进行getFile获取对应的头像链接, 注意头像链接只有1小时左右的有效时间, 所以开发需要想办法把头像存储到自己服务器中.
  • MiniApp与Game区别的, 打开的是全屏, 还有音乐是否自动播放, 现在环境下有有用MiniApp性质做的, 也有用Game,
  • 调试机器人记得把不光要在命令行里修改proxy, 还需要在机器人初始化代码时所Socks也设置了.
  • 做内购不要使用telegram, api的openLink传回打开支付链接, 这样是收不到支付状态的回调的, 应该使用openInvice,然后去监听支付后的回调
  • 使用 initDataUnsafe.start_param 获取 Telegram的启动链接参数.
  • telegram的校验记得要在HTTP header校验中加上”tma xxxxx” https://core.telegram.org/bots/webapps#validating-data-received-via-the-mini-app
  • 机器人有两种响应方式一种是WebHook , 一种是sockets具体看业务的拆分.
  • 宝塔面板是个好东西, 如果没有太强的配置和运维经验或者能力, 这东西挺好用, (如果在国外配置可以用aaPanel,其实是一家的
9赞

很强兄弟,现在就缺这类的记录

大佬 有详细的流程不 急需来一个

现在做相遇遇到了个问题,就是要分享我的bot链接时总是会关闭正在运行的MiniApp
,我看了其他的tg游戏,有些也会直接关闭有些就不会关闭
不知道大佬是怎么解决这个问题的?

解决了,使用Telegram.WebApp.openTelegramLink(url)

1赞

tg还有小游戏么,入口在哪? :rofl:

miniapp
通过机器人打开

实际上就是在tg环境打开一个网页,所以游戏也是可以的

甚至有人搬了套传奇上去 :rofl:

那只能引流吧,能赚点刀乐么

大佬你的游戏有加Ton的钱包吗,
我现在对如何链接TON钱包没有什么头绪

https://cocosstudio.gitbook.io/cocosstudio-docs/jian-ti-zhong-wen?fallback=true

2赞

佬牛逼…

啥项目 炼油吗