写在最前

这次想要做一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方在地图上轮流行动,并向对方发动攻击,先消灭掉所有敌人的一方将获得胜利。

今天我们来实现一个入门级的数据配置工具。

使用excel配置数据

我们当前游戏中的配置:角色技能、道具等,都是通过手动创建ScriptableObject得到的,这在开发初期没什么问题;但是当游戏内容逐渐丰富后,这种添加方式便不再可取。因为不仅在新增数据时效率很低,做大批量的编辑和数据对比时也很麻烦。

因此,我们把这些配置都放到excel中编辑,然后通过python的xlrd库生成Json文件,最后在Unity的Editor模式下一键生成对应的ScriptableObject。

excel中编辑

在excel下编辑技能、道具数据表

编辑技能、道具数据表

通过脚本将xlsx转换为json并导入工程

在Editor模式下一键生成对应的ScriptableObject

由于目前的技能、道具系统很简单,因此表的设计也轻量化;以后当系统变得复杂时(如技能中增加了buff等),表的设计也会有所调整;比如在字段中放入Json串,或通过索引建立表和表之间的关系等。

好吧,这里不会出现代码;因为这部分内容很简单,而且所用的脚本和关键代码,都在工程里,如果有兴趣的话,自取即可。

| 写在最后

至此,《用Unity做半个2D战棋小游戏》就差不多完事了。

从渣画质到3A水准的演变过程

身边也有朋友问我,“你把时间花在这个事儿上,有意义么”。

确实,项目的整体难度很低。但是她给我提供了不少尝试想法的机会,所以对我个人而言,是有收获的。

至少在文章的排版上面,我自认为比刚开始写东西时成熟了一些。

而且,一直以来,我都想着能给自己圈出一个小花园来,如今算是把篱笆钉好了,所以对我个人而言,也是有意义的。

这并非是一个结束,而是一个开始。

最后

分享一个自己的掏心窝的小经验:

如果希望自己能够坚持做一件事情,最好的方法是发朋友圈。

Unity制作2D战棋小游戏相关推荐

  1. 从零点五开始用Unity做半个2D战棋小游戏(完)

    好久不见. 这是第29篇与游戏开发有关的文章. | 写在最前 这次想要做一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方在地图上轮流行动,并向对方发动 ...

  2. 用Unity做半个2D战棋小游戏

    写在最前 这次想要做一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方在地图上轮流行动,并向对方发动攻击,先消灭掉所有敌人的一方将获得胜利. 今天我们来 ...

  3. 从零点五开始用Unity做半个2D战棋小游戏(五)

    写在最前 这次想要一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方依据体力在地图上轮流行动并向对方发动攻击,先消灭掉所有敌人的一方将获得胜利. 预计将 ...

  4. 从零点五开始用Unity做半个2D战棋小游戏(十一)

    好久不见. 这是第28篇与游戏开发有关的文章. | 写在最前 这次想要做一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方在地图上轮流行动,并向对方发动 ...

  5. 从零点五开始用Unity做半个2D战棋小游戏(十)

    好久不见. 这是第27篇与游戏开发有关的文章. | 写在最前 这次想要做一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方在地图上轮流行动,并向对方发动 ...

  6. 从零点五开始用Unity做半个2D战棋小游戏(九)

    写在最前 这次想要做一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方在地图上轮流行动,并向对方发动攻击,先消灭掉所有敌人的一方将获得胜利. 预计将分为 ...

  7. 从零点五开始用Unity做半个2D战棋小游戏(八)

    写在最前 这次想要一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方在地图上轮流行动,并向对方发动攻击,先消灭掉所有敌人的一方将获得胜利. 预计将分为以 ...

  8. 从零点五开始用Unity做半个2D战棋小游戏(四)

    写在最前 这次想要一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方依据体力在地图上轮流行动并向对方发动攻击,先消灭掉所有敌人的一方将获得胜利. 预计将 ...

  9. 从零点五开始用Unity做半个2D战棋小游戏(七)

    这是第24篇与游戏开发有关的文章. | 写在最前 这次想要一个简单且传统的战棋小游戏,大概的玩法是:在2D世界里创建一张由六边形地块组成的战斗地图,敌我双方依据体力在地图上轮流行动并向对方发动攻击,先 ...

最新文章

  1. 关于分布式多级缓存架构,也许你一直考虑的太简单了
  2. PP生产订单的BADI增强 WORKORDER_UPDATE
  3. JavaScript高级之ECMASript 7、8 、9 、10 新特性
  4. 【Kafka】Kafka 如何读取offset topic内容 (__consumer_offsets)
  5. 今后,去踢“大数据足球”
  6. MATLAB计算不定积分与定积分
  7. 台式计算机安装无线网卡驱动程序,台式电脑无线网卡驱动程序怎么安装
  8. 内存分配 与 const
  9. Python 使用UDP 协议实现内网瘫痪 网吧网络瘫痪
  10. 通信网实验_Kruskal算法_Mininet_Ryu
  11. BUU-0CTFpiapiapia(反序列化字符串逃逸)
  12. Android UI 测试框架Espresso详解
  13. win7 关闭计算机休眠,Win7关闭休眠的方法
  14. MacOS Big Sur 11.6 (20G165) OC 0.7.3 / Cl 5139 / PE 三分区原版黑苹果镜像
  15. Unity3d绑定键盘弹出UI
  16. Z2021年全球家用自动血压计收入大约1018.7百万美元,预计2028年达到1194.2百万美元,2022至2028期间,年复合增长率CAGR为 %。同时2020年全球家用自动血压计销量大约 ,预计
  17. Jetpack-Compose之三附带效应(副作用)
  18. 小学计算机老师师德师风演讲稿,小学教师师德师风的演讲稿(精选5篇)
  19. 程序史记:从巴贝奇、爱达到图灵
  20. 提高个税起征点可增加工薪层可支配收入

热门文章

  1. html 设置移动端页面滚动,a.html · 焚心/移动端页面上下滚动加多页面上拉加载功能及mescroll插件的使用 - Gitee.com...
  2. 使用python清空文件夹
  3. 中国城市竞争力排名出炉
  4. 遇到数据库隔离性问题(读已提交和可重复读、可重复读导致调息前后两次查询数据一样)
  5. javaweb网页上传图片并显示在页面上,并在服务端存到磁盘(base64编码解码)
  6. 鸿蒙应用开发 | 文本框(Text)和编辑框(TextField)的功能与用法
  7. 从表征到行动---意向性的自然主义进路(续六)
  8. 充分利用计算机在教学中的作用,浅谈多媒体在教学中的作用
  9. 如何使用 Podman 签署和分发容器镜像
  10. 2022年P气瓶充装特种作业证考试题库及模拟考试