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

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

当然可以啦!

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

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

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

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

1. free-python-games

Star:2.6k

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

img

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

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

扫描二维码关注公众号,回复: 14780545 查看本文章
  • 该从哪个方向着手教一个孩子学习编程?
  • 怎么提升一个小孩子对编程的兴趣?

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

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

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

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

img

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

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

img

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

  • 如何使蛇加速和减速?
  • 如何使蛇绕过边缘?
  • 如何分配新产生食物的位置?
  • 游戏中的蛇如何根据键盘操作做出相应的反应?

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

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

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

2. CDDA-Game-Launcher

Star:401

img

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

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

3. fofix

Star:375

img

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

4. Lutris

Star:6k

img

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

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

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

5. pychess

Star:556

img

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

6. PySolFC

Star:366

img

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

7. term2048

Star:798

img

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

8. Unknown-Horizons

Star:1.3k

img

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

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

https://gitee.com/sharetech_lee/DevWeekly

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

猜你喜欢

转载自blog.csdn.net/jakpopc/article/details/128348546