写点什么

Python 开发游戏?也太好用了吧!

作者:Jackpop
  • 2022-12-16
    浙江
  • 本文字数:1926 字

    阅读完需:约 6 分钟

程序员宝藏库https://gitee.com/sharetech_lee/CS-Books-Store


当然可以啦!


现在日常能够用到和想到的场景,绝大多数都可以用 Python 实现。


效果怎么样暂且不提,但是得益于丰富的第三方工具包,的确让 Python 能够很容易处理各种各样的场景。


对于游戏开发也是这样,如果真的要想商业化,Python 在游戏开发方面肯定没办法和 C++相提并论,但是如果用于日常学习和自己玩一玩,Python 绝对是够的。


今天,就来给大家介绍 8 个非常不错的 Python 游戏开源项目。

1. free-python-games

Star:2.6k


贪吃蛇、迷宫、吃豆人、扫雷、Flappy Bird...这些游戏可以是非常经典,甚至伴随着很多人的童年回忆。那么,你是否想过自己开发一款专属游戏?是否思考过开发这样一款游戏需要多少工作量?



free-python-games 这个项目给出的答案是 50-100 行!


几年前,我姐就曾表达了希望我能够抽空教外甥学习编程的想法。对于这份嘱托,我一直放在心上,但是却迟迟找不到合适的方向。


  • 该从哪个方向着手教一个孩子学习编程?

  • 怎么提升一个小孩子对编程的兴趣?


即便是从事几年互联网行业的我来说都对编程都觉得枯燥乏味,何况一个一无所知的孩子呢?


但是,free-python-games 这个项目让我眼前一亮,终于找到了一个合适的 Python 学习项目。当年,它对于成年人同样适用、有价值。


我之所以介绍这款项目,不单单是它实现了让人回到童年的经典游戏。更重要的原因是它能够作为一个 Python 学习、锻炼探索和理解能力的一款好工具。


free-python-games 和我们接触的大多数 Python 库那样让人如同垒积木一样去实现一项功能不同,你需要去静下心来死锁一款游戏的主题,同时需要去实现游戏中的每一个策略。



我觉得这样比拿来即用的搬运工作要有趣很多,且更加具有挑战。


以我们熟知的贪吃蛇为例,当然我们目前对于这款游戏的主题和玩法已经非常清楚了,通过方向键控制蛇的移动,每当吃到一颗食物蛇就会变长,如果撞到墙则游戏结束...



那么,对这款游戏进行拆解,就需要思考几个问题:


  • 如何使蛇加速和减速?

  • 如何使蛇绕过边缘?

  • 如何分配新产生食物的位置?

  • 游戏中的蛇如何根据键盘操作做出相应的反应?


看到这里你就会发现,它并不像我们大多数情况下使用 Python 那样,np.linespace、plt.plot、tf.Session,它更像是 LeetCode 上面的算法题,需要你从零开始去实现一款游戏,用心去思考游戏实现过程中的每个细节。而在这个过程中对人的提升会非常迅速。


详细的内容可以看我另外一篇文章的介绍:


50 行 Python 代码实现经典游戏,不仅是划水神器,更是学习利器!186 赞同 · 5 评论文章


2. CDDA-Game-Launcher

Star:401



这是游戏《大灾变:黑暗之日》的开源实现,并在原来的基础上增添了很多新特性。


这款开源项目已经实现了很多游戏模块,例如启动游戏、检测游戏版本号、模组管理、保存和自动备份等等。

3. fofix

Star:375



这是 Frets on Fire X,一款高度可定制的节奏游戏,支持最多四名玩家的吉他、贝斯、鼓和人声游戏的多种模式。 它是 Unreal Voodoo 对原始 Frets on Fire 进行的一系列修改的延续。

4. Lutris

Star:6k



严格来说,Lutris 并不是一款单纯的游戏,它是一个开源的视频游戏平台,通过它可以安装和玩来自不同年代的大多数游戏。


Lutris 通过利用和组合现有的模拟器、引擎重新实现和兼容不同平台。


客户端可以连接 Humble Bundle、GOG 和 Steam 等现有服务,使游戏库易于访问。 游戏下载和安装是自动的,可以通过用户制作的脚本进行修改。

5. pychess

Star:556



用 Python 实现的一款国际象棋客户端,适用于 Linux/Windows 系统。

6. PySolFC

Star:366



一个全面的、功能丰富的、开源的、可移植的纸牌游戏合集,适用于 Windows、Linux、macOS。

7. term2048

Star:798



曾经风靡一时的 2048 小游戏,这是用 Python 实现的一款终端下可以玩的 2048 游戏。

8. Unknown-Horizons

Star:1.3k



开源即时策略游戏《Unknown Horizons》(美丽新世界) 官方开源的代码,基于 Python 开发。


建议大家有空可以多浏览 Github,有很多好用的开源免费工具。但是,目前 Github 上项目多如牛毛,而且刷榜现在也非常严重,想要找到优质的项目变得越来越难。这里,给大家推荐 Github 上一个非常不错的项目《DevWeekly》,这个项目每周都会精挑细选一些优质的开源项目,涵盖 C++、JAVA、JavaScript、Python、Go 等不同编程语言。此外,还有一些开源工具、优秀的技术文章,而且考虑到很多同学访问 Github 不方便的问题,我还特意同步到了 Gitee,建议大家看一下:


https://gitee.com/sharetech_lee/DevWeekly


hello,大家好,我是 Jackpop,重点大学本科毕业后保送到哈工大计算数学专业读研,有多年国内头部互联网、IT 公司工作经验,先后从事过计算机视觉、推荐系统、后端、数据等相关工作。如果同学们在升学考研、职业规划、高考志愿、简历优化、技术学习等方面有困惑,欢迎大家前来咨询!

发布于: 刚刚阅读数: 4
用户头像

Jackpop

关注

还未添加个人签名 2020-09-16 加入

公众号:平凡而诗意,微信:code_7steps,全网粉丝超20万,技术进阶、优质资源、实用工具,欢迎关注!

评论

发布
暂无评论
Python开发游戏?也太好用了吧!_Jackpop_InfoQ写作社区