Python 游戏开发:发行选项有限?

发布于 2024-12-28 20:46:19 字数 570 浏览 3 评论 0原文

我听说过一些东西,如 py2exe 等,但我读过一些关于它如何与下载的库(如 pygame、numpy 或 pyglet & )一起使用的不清楚的东西。 cocos2d。您是否必须将整个模块复制到主游戏 .pyw 的顶部才能使 exe(或 .app 或其他)成为单个文件?看起来很混乱并且容易出错。

理想的情况是有一个包含背景图像、精灵、音乐等资源的文件夹,一个用于保存文件的文件夹,以及一个运行良好的单独可执行文件。这有多容易实现?我现在正在使用 pygame 来学习和进行演示/测试,并计划在开始真正的游戏时使用 cocos2D。

我们的最终目标是在 Windows、Mac 和 Linux 上的 Steam 上发行。我们不希望人们必须安装 python 才能玩我们的游戏,即使它从来没有被任何人发现。但我听说其中一些应用程序创建实用程序与以前版本的 Windows 不兼容,这太糟糕了。我使用 7,但我希望任何使用 XP 或 Vista 的人都可以玩。

(拥有 Playstation Vita 版本或其他版本会更加梦幻,但我想那是完全不同的游戏,对吧?可能必须重新编码整个项目才能兼容?)

顺便说一下,如果重要的话,使用 Python 2.7。

I have heard of some things like py2exe, etc. but I have read some unclear stuff on how it works with downloaded libraries like pygame, numpy, or pyglet & cocos2d. Do you have to copy the whole module into the top of your main game .pyw in order to get the exe (or .app, or whatever) to be a single file? Seems messy and prone to error.

The ideal is having a folder for resources with background images, sprites, music, etc., a folder for save files, and a lone executable that functions well. How achievable is this? I'm using pygame to learn and do demos/test right now and am planning on using cocos2D when we start the real game.

Our ultimate goal would be to distribute on Steam for Windows, Mac, and Linux. We don't want people to have to have python installed to play our game even if it never gets picked up for anything. However I heard some of these application creation utilities are not compatible with previous versions of Windows, which is too bad. I use 7 but I'd like anyone with XP or Vista to be able to play.

(It would be even more dreamy to have a Playstation Vita version or something, but I imagine that's a whole other ballgame, right? Probably have to recode the entire project to be compatible?)

Using Python 2.7 by the way, if it matters.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

蓬勃野心 2025-01-04 20:46:19

当您分发游戏时,您可以使用 py2exe 或 py2app 之类的工具来编译 Python 应用程序。在此过程中,应用程序需要运行的所有内容都将复制到最终的可执行文件中。这意味着,不,您不必将库复制到本地文件夹中,并且客户端不需要安装 Python 即可运行。

唯一需要注意的是,这样做可能会很棘手。您可能需要:

  • 确保捆绑文件(这样您的目录中就不会出现大量帮助文件)。
  • 确保重新分发应用程序所需的 .dll 等(例如,SDL.dll)。您必须向图书馆核实法律问题。
  • 有时,库会出现其他问题(例如,PyGame 有默认字体,PyOpenGL 需要特别注意)。一般来说,这些都是可行的,但并不总是很好。

When you distribute a game, you can use something like py2exe or py2app to compile your Python application. During this process, everything your application needs to run is copied into the final executable. This means that, no, you do NOT have to copy libraries into your local folder, and no, clients do NOT need Python installed to run.

The only caveat is that doing this can be tricky. You'll likely want to:

  • Be sure that you bundle up your files (so you don't have a lot of helper files cluttering up your directory).
  • Make sure you redistribute .dlls, etc. that your application needs (for example, SDL.dll). You'll have to check with your libraries for legal issues.
  • Occasionally libraries have other issues (e.g., PyGame has default fonts, and PyOpenGL needs special attention). Generally, these are workable, but it's not always nice.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文