前后端 json 服务器变量 装备变量实现前后端通讯

image.png

游戏开发入门:搞懂前后端如何“对话”

上课日期: 2025年8月5日

上课时间: 下午 1:02

上课时长: 57分钟 50秒


一、这节课到底在学什么?

这节课的核心是学习游戏开发中一个非常基础且重要的概念:前端(客户端)和后端(服务端)之间如何进行数据通讯。简单来说,就是游戏界面(你看到的)和游戏服务器(处理逻辑的)之间如何安全、高效地传递信息,比如点击按钮后如何让服务器知道并处理。

二、课程时间线梳理

  1. 开场-10分钟:课程引入与目标说明

    • 明确了本节课的主题:前后端通讯。
    • 展示了最终要实现的效果:一个能与服务器交换信息的NPC界面。
  2. 10-25分钟:第一种通讯方式 - 协议直传

    • 讲解了如何通过自定义协议 在打开界面时,直接从服务端发送数据到前端。
    • 核心操作:将复杂的Table(表)数据 转换成JSON字符串 进行传输,因为协议不能直接传输Table。
    • 在前端接收到字符串后,再将其转换回Table格式使用。
  3. 25-40分钟:第二种通讯方式 - 变量传递

    • 讲解了如何利用引擎的T变量(系统变量) 作为数据中转站。
    • 服务端修改T变量的值,并开启前端变量推送(如1秒1次),前端即可近乎实时地获取到变化后的值。
    • 同样需要处理字符串和Table之间的转换。
  4. 40-50分钟:实战应用 - 装备强化功能

    • 综合运用通讯知识,实现一个具体的游戏功能:点击按钮强化装备。
    • 重点强调: 前端发送的请求(如“升级”)只应表达意图,所有核心逻辑(如扣除资源、计算成功率)必须在服务端进行审核和执行,即“前端不可信”原则。
    • 演示了如何通过后端指令操作物品对象,修改装备属性(如星级),并刷新前端显示。
  5. 50-57分钟:优秀代码框架赏析与课程总结

    • 简要分析了一个官方提供的、结构更清晰的UI模块代码,介绍了面向对象的写法优势。
    • 预告了下节课内容:后端面向对象编程。

三、重点知识点总结

  1. 通讯必要性: 前端负责展示,后端负责逻辑和数据,二者必须通讯才能实现完整功能。

  2. 数据格式转换: 前后端通讯无法直接传输Table,必须使用 TableToJsonJsonToTable 进行转换。

  3. 三种通讯方式:

    • 协议传递: 点对点发送,可控性强。
    • 变量传递: 通过引擎变量中转,适合频繁更新或状态同步。
    • 物品属性: 通过游戏内物品固有的属性(如名称、等级)间接传递信息。
  4. 核心安全原则: 前端不可信。所有重要的逻辑判断和数据校验必须在服务端完成,前端操作仅作为触发意图的参考。

  5. 前端开发方向: 使用面向对象的方式编写前端代码,会使代码结构更清晰、更易维护。

四、学完这节课你能掌握

  1. 理解概念: 明白为什么游戏需要区分前端和后端,以及它们之间为什么要通讯。
  2. 掌握方法: 学会至少两种实现前后端数据交互的基本方法(协议和变量)。
  3. 建立安全意识: 深刻理解“前端不可信”原则,知道如何设计功能才能保证游戏公平和安全。
  4. 动手基础: 能够模仿课程内容,实现一个简单的、带有前后端交互的界面功能(如显示信息、强化装备)。

课程评价:

这节课老师讲解得非常细致和实用。从最简单的例子入手,逐步深入,让没有基础的同学也能跟上思路。老师特别强调了在实际开发中容易踩坑的地方(如数据格式转换、安全性),这些经验非常宝贵。同时,通过分析对比不同的实现方式和展示优秀代码,拓宽了学员的视野,为后续学习打下了坚实的基础。课程节奏适中,理论与实践结合紧密,是一节对小白非常友好的入门实践课。

课程入口

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

举报

改内容来自
开发实战
进入
快速回复 返回顶部 返回列表