[多平台]pymo – 手机上的 GalGame 引擎
[多平台]pymo – 手机上的 GalGame 引擎
介绍下这个能在手机上玩移植 GalGame 的游戏引擎,不知道有多少人听过呢?相信如果有喜欢在手机上玩 GalGame 的同学肯定听过类似的东西,比如 ONS 什么的,而这个 pymo 的话,实际上已经很有些年头了。早在博主还在玩 S60 手机的时候,就已经有它了,而且那时虽然 ONS 支持 S60,只是可惜运行起来问题多多,远没有 pymo 好用。可以说,在那个年代,pymo 可是 S60 上玩 GalGame 的神器。而到了现在,Android 普及开来了,能玩的东西也多了,有些 GalGame 制作公司本身就推出了针对手机端的游戏,需要用 pymo 的时候少了很多。不过,如果想在手机上玩一些移植的 PC 端游戏的话,pymo 有时候也能派上用场哟~而且看到开发者这么多年还在开发,实在是不易,所以我想写点什么给大家介绍一下。
以下是官方文档里的简介,我复制出来给大家看看熟悉一下这个 pymo(稍有修改):
pymo 全称 Python Memories Off,是由 chen_xin_ming 开发的一款 AVG 游戏引擎。因其基于 python 平台,且适合于创建“秋之回忆”风格的 AVG 而得名。
pymo 专为手机平台开发,注重运行效率和针对手机屏幕的优化。目前可以运行于 S60v3、S60v5 和 Symbian^(补充:现在也支持 Android,Linux,Windows)平台,即使在低端的 S60v3 也可以稳定流畅地运行,是为塞班手机开发 AVG 游戏的首选。
嗯,正式的介绍说完了,下面是关于 pymo 的来历八卦。
pymo 诞生于2011年5月,那时我刚刚完成了 NDS 版本秋之回忆的移植,正在意犹未尽的时候,想到了把秋之回忆移植到手机上的想法,那时我用的还是一款老旧的 S60v3 手机,上面的 Galgame 引擎只有一个 bug 多多、一点都不流畅且不支持中文的 ONS。这时掌叔的一个 demo 启发了我,可以使用 pyS60 来自己开发一个引擎。于是经过 3 个月的编写,第一个版本的 pymo 和秋之回忆 S60 版一起问世了。
受益于 python 开发的便捷,引擎的开发一开始没什么难度。但是后期要考虑到多游戏共存、不同屏幕分辨率的适配、配置和存档的向前兼容、不同用户环境的安装、向开发者开放哪些 API 等,还是很麻烦的。pymo 经过一年 7 个版本的演化,出了 18 款游戏,也因其流畅的效果、良好的操控性收获了良好的口碑。
因为之前使用谢叔的 AVG MAKER DS 的开发经历,pymo 的设计理念和 AMDS 很像,都是在受限的机能里,开发出特效简单但尽可能流畅的游戏。pymo 的很多指令设置都参考了 AMDS 的指令,甚至目录结构都和 AMDS 基本一样,因此有 AMDS 开发经验的移植者可以很快上手。
下面是 pymo 的一些优点:
- 配置要求极低,运行十分流畅
- 支持 jpg、bmp、png 等多种图片格式和 wav、mp3、amr、aac、midi 等多种音频格式
- 图片支持 256 级透明度
- 音频文件大小和长度不限
- 支持 BGM、语音和音效同时播放
- 立绘大小随意,支持同屏显示任意多的立绘,可以设置立绘的位置和图层顺序
- 选择肢支持动画提示
- 自适应横屏和竖屏设备。
- 100 个存档,记忆上次用户存读档位置
- 用户可设置字体和字号
- 支持多个游戏共存
- 使用资源预取机制,提升流畅度
当然,再好的引擎,没有优秀游戏的加持,玩家也不会安装。使用 pymo 制作游戏并不需要编程基础,游戏的存档、鉴赏系统这样复杂的地方都由引擎完成。游戏制作者只需要有基本的图片、音频转换能力,进行简单的脚本编写就可以完成一部游戏的开发。希望对 AVG 开发、移植感兴趣的朋友们,在阅读完这份文档之后,能够成功开发出自己的游戏。相信我,你将从中收获一份非凡的成就感。
pymo 的运行界面:
上面的图很小,因为这是我在我老旧的诺基亚 5630 上截的图(是的你没有听错,这就是用运行 S60 系统的手机截的图~截图的 pymo 版本为 0.08),不过 Android 端的我也玩过,都没有什么问题~
PS:不要在意上面的游戏!我当时真的只是好奇才下的!
pymo 相关信息
名称:pymo
开发者:chen_xin_ming
支持平台(到1.1版止):Android,S60v3/S60v5/Symbian^3,S60v3 MR,Windows,Linux
语言:目前只知道有中文
官网(安装,移植游戏,移植教程等下载):http://pymo.github.io
官方贴吧:http://tieba.baidu.com/f?kw=pymo
GitHub:https://github.com/pymo/pymo
嗯,介绍就说到这,事实上前面的内容是博主早先就打好的草稿,现在想接着写却发现不知道该说些什么了,于是就到这里止住吧······pymo 贴吧人气不怎么足,对这个引擎感兴趣的,可以去那活跃下气氛哟,当然有人愿意去移植游戏就更好了~
pymo 软件及相关移植教程&工具下载
20180616更新说明:上次写这篇介绍博文的时候有点匆忙,其实还有很多东西是我没有说的,在今天(20180616)我再更新一点内容,主要是软件在各平台的安装说明和下载链接。要弄这个是因为 pymo 很久没有更新的迹象了,可能是作者精力有限弃坑了之类的,但对于还有此类需求的朋友,我觉得我还是有必要备份一下东西的,方便后来的人发现官网挂了之类的找不到下载的地方。不过现在还在用旧系统的朋友应该不多啦,以后估计只会越来越少就是了······
pymo for Android
【安装方法】
1. 从Google Play安装或者直接安装apk。如果有旧版本最好先卸载再安装新版本。
2. 下载游戏数据包,在电脑上解压,然后拷贝到手机里。
3. 在手机上打开pymo,选择游戏所在的文件夹就会开始游戏。
【按键说明】
快进:快速跳过对话 自动:自动播放/停止自动播放
上下左右确定键:上下左右确定 左方向键:隐藏/恢复对话框
返回键:返回/退出 菜单键:系统菜单
音量键:降低/升高音量
【下载】
百度网盘下载(官网提供):http://pan.baidu.com/s/1i3LTeBj
SourceForge 下载(官网提供):http://sourceforge.net/projects/pymo/files/pymo_1.1/pymo_v1_1_0_for_Android.apk/download
pymo for S60v3/S60v5/Symbian^3
【安装方法】
(已安装pymo 旧版的可以跳过第1步)
1.依次在手机上安装游戏引擎压缩包里的pips.sis、Python_2.0.0.sis(如果装pips.sis显示更新错误,可以不安装pips.sis),推荐安装到C盘
2.安装pymo_v1_1_1.sis,要和Python平台安装在同一盘符下。之前安装过旧版本的pymo的话,可以覆盖安装。
3.在电脑上解压游戏数据压缩包,把解压出来的Python文件夹放到存储卡(E盘)的根目录下。如果提示是否覆盖,覆盖无妨。(注意:不要用手机直接解压这么大的文件,很有可能解压失败。)
4.运行pymo即可进行游戏
【按键说明】
导航键、2/8/4/6/5键:上下左右确定键 1键:快速跳过对话
3键:自动播放/停止自动播放 0键:系统菜单
*键:降低音量 #键:升高音量
左方向键:隐藏/恢复对话框
【下载】
百度网盘下载(官网提供):http://pan.baidu.com/s/1bpBrLAv
SourceForge 下载(官网提供):http://sourceforge.net/projects/pymo/files/pymo_1.1/pymo_v1_1_1_S60.zip/download
pymo for S60v3 MR
此版本适合N73、N80等早期S60v3手机。安装方法和普通塞班版相同。
【下载】
百度网盘下载(官网提供):http://pan.baidu.com/s/1jHIUMdo
SourceForge 下载(官网提供):http://sourceforge.net/projects/pymo/files/pymo_1.1/pymo_v1_1_1_S60_MR.zip/download
pymo for Windows
Windows版的pymo。把游戏文件夹放在pymo.exe同一目录下即可开始游戏。
【下载】
百度网盘下载(官网提供):http://pan.baidu.com/s/1gdYiyyf
pymo for Linux
感谢网友345865759打包,解压后双击pymo.sh即可开始游戏。目前只有64位版。
【帖子原文】
作者在github上的源码里里,有个pc版,我试了一下,在我的debian jessie上欢乐的跑了起来。
移植主要工作:
增加Linux版 Pygame库;
增加一些必要.so依赖库;
增加一个启动脚本——pymo.sh,双击这个就可以运行pymo,类似于win的exe;
删除python2exe脚本,这个对Linux没用;
目前只有64位版。
下载地址(已失效,下载见下文的个人备份):http://mirror1.gamux.org:8080/gamux/emulator/pymo/
【下载】
原作者提供的资源已失效,补档看下文的个人备份。
pymo 游戏制作教程和工具
是否想制作你自己的AVG游戏呢?赶快下载pymo的开发教程和开发工具吧!
【下载】
开发教程下载(官网提供):https://pymo.github.io/PYMO%E6%95%99%E7%A8%8B.doc
开发工具下载(官网提供):http://pan.baidu.com/s/1bfelpO
PS:以上内容均从官网复制得到,个人的补档已移至下文。
pymo 个人备份
你想知道的,你想了解的,你苦于找不到的,都在这里了。
[多平台]pymo – 手机上的 GalGame 引擎的更多相关文章
- 如何在Android手机上进行自动化测试(下)
版权声明:允许转载,但转载必须保留原链接:请勿用作商业或者非法用途 前言 通过阅读本篇教程,你将会了解到: 如何使用Poco对Android原生应用进行测试 Poco支持直接对任何Android原生应 ...
- SNF开发平台WinForm之六-上传下载组件使用-SNF快速开发平台3.3-Spring.Net.Framework
6.1运行效果: 6.2开发实现: 1.先在要使用的项目进行引用,SNF.WinForm.Attachments.dll文件. 2.在工具箱内新建选项卡->选择项,浏览找到文件SNF.WinFo ...
- 移动平台3G手机网站前端开发布局技巧
本文转载至:移动平台3G手机网站前端开发布局技巧汇总 - 前端开发-武方博 您或许正在或准备参与一个WepApp项目,您或许正在Google搜索mobile development相 关的文章,您或许 ...
- libmad和libmpg123解码mp3在安卓手机上的比较
libmad和libmpg123解码mp3在安卓手机上的比较1. libmad 选自 http://sourceforge.net/projects/mad libmad-0.15.1b.tar.g ...
- 移动平台3G手机网站前端开发布局技巧汇总
移动平台3G手机网站前端开发布局技巧汇总 作者:前端开发-武方博 发布:2011-05-10 09:11 分类:移动开发 阅读:120,618 views 7条评论 您或许正在 ...
- 在安卓手机上通过虚拟机运行Windows XP
转自:https://www.ithome.com/html/android/302170.htm 细数当年的桌面版Windows,似乎针对ARM架构处理器的版本并不多,小编曾用过一段时间的Windo ...
- 我手机上常用的app和常访问的网站
====常用======Opera Mini browser 浏览器(版本26.0.2254.117241以上) 老版本7.7最最经典, 但该版本在新的安卓手机上总有部分区域显示空白. 现在的 Ope ...
- NFC手机上基于软件的卡模拟 重大利好还是安全噩梦?(转)
Software Card Emulation in NFC-enabled Mobile Phones: GreatAdvantage or Security Nightmare? Michael ...
- 安卓手机上微信无法打开Https网址的完美解决方案
1,第三方网站检测网站的SSL证书是否正确的安装 https://www.geocerts.com/ssl-checker,大概率你会看到下边的场景,一个证书链完整的警告,如果想知道我的基础配置是什么 ...
随机推荐
- javascript中的Date数据类型
javascript中,Date代表日期对象,其常见的用法如下: 一.Date的构造函数 有四种形式的Date构造函数,详见下面代码的注释: //1.构造函数没有参数,则返回当前日期的Date对象 v ...
- PHP Storm Built In Server Doesn't Recognize mod_rewrite
http://stackoverflow.com/questions/22139032/php-storm-built-in-server-doesnt-recognize-mod-rewrite 版 ...
- 预处理、const、static、sizeof-说明内联函数使用的场合
1:首先使用inline函数可以完全取代表达式形式的宏定义. 内联函数在C++类中的应用最广的应该是用来定义存取函数.我们定义的类中一般会把数据成员定义成私有的或者保护的,这样,外界就不能直接读写我们 ...
- mybatis 操作其他数据库的数据表
配置文件里面配置的数据库只是默认数据库,并不是只能操作默认数据库.(被自己蠢死了,唉) 1. 注解方式 使用BaseMapper方式操作数据表时,在表对应的实体类上的 @table 注解描述表名时加上 ...
- LNMP和LAMP的搭建
LNMP 环境:阿里云ubuntu 16 mysql: apt-get install mysql-server mysql-client php: apt-get install php-fpm p ...
- GDB之常见错误
1. dl-debug.c:74: No such file or directory. 如上图,当使用 gdb 调试执行 r 时,会出现如上打印. 解决方法如下: apt-get install e ...
- Qt应用Redis实现消息队列
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/liulihuo_gyh/article/details/78425763 类似BS模式,客户端发 ...
- Flutter移动电商实战 --(11)首页_屏幕适配方案和制作
1.flutter_ScreenUtil插件简介 flutter_ScreenUtil屏幕适配方案,让你的UI在不同尺寸的屏幕上都能显示合理的布局. 插件会让你先设置一个UI稿的尺寸,他会根据这个尺寸 ...
- Django admin site应用
django自带的admin后台管理,可以实现对数据库表的增删改查,用起来十分方便.其使用和配置主要分为三个步骤: 1,创建超级用户 需要创建超级用户来登陆admin后台系统,在命令行中输入 pyth ...
- Spring对象依赖关系
Spring中,如何给对象的属性赋值? [DI, 依赖注入] 1) 通过构造函数 2) 通过set方法给属性注入值 3) p名称空间 4)自动装配(了解) 5) 注解 package loade ...