Pymo Game Engine implement in C.

Overview

cpymo

此项目尚在工作中!欢迎提交代码!

这是一个使用C实现的pymo引擎的复刻,以方便在各种平台上运行pymo游戏。

pymo原版参见:https://github.com/pymo/pymo
pymo官网:https://www.pymogames.com/
原作者:chen_xin_ming

主要目标:

  • 兼容原版pymo的游戏、存档的情况下运行游戏
  • 提供与原版pymo兼容的pymo开发工具
  • 在带有硬件加速的情况下跨平台
    • Windows
    • Linux
    • Android
    • Nintendo 3DS
  • libcpymo库可将cpymo或cpymo中的组件嵌入到其他应用程序中

cpymo-tool

该工具用于实现pymo原版开发工具的功能。

用法

cpymo-tool
Development tool for cpymo.

Unpack a pymo package:
    cpymo-tool unpack <pak-file> <extension_without "."> <output-dir>

编译到任天堂3DS平台

首先你需要确保已经安装了devkitPro及其中的3DS开发套件,在其控制台中,于./makefiles/3ds/目录下执行make即可生成3DSX程序。

Issues
  • [Bug]: 运行时闪退

    [Bug]: 运行时闪退

    基本信息

    CPyMO运行环境

    • CPyMO版本:3DS CIA/3DS 3DSX
    • 3DS设备:N3DSLL(XL)(如果不是3DS设备请删去此项)

    详细描述

    没有放入游戏时会提示没有游戏,一放入游戏再运行软件就会出现系统崩溃,出现以下提示: Exception:data abort Fault status:Translation - Section (没有手机没法拍照)

    报错日志 crash_dump_00000000.zip

    bug 
    opened by zhishixiang 20
  • [Compatibility]:  天使的星期日 呼出菜单和重启游戏卡顿

    [Compatibility]: 天使的星期日 呼出菜单和重启游戏卡顿

    基本信息

    CPyMO运行环境

    • CPyMO版本:3DS CIA
    • 3DS设备:2DSLL(XL) (如果不是3DS设备请删去此项)

    兼容性不佳的应用程序信息

    • 不能运行的PyMO应用程序名称:天使的星期日
    • 可能发生错误的脚本文件名称:
    • 可能的行号:
    • 应用程序数据包版本:s60v3
    • 问题类型:性能较差

    详细描述

    呼出菜单和重启游戏卡卡的

    bug compatibility 
    opened by chacha1355 10
  • [Compatibility]:  天使的星期日 显示不了某些字

    [Compatibility]: 天使的星期日 显示不了某些字

    基本信息

    CPyMO运行环境

    • CPyMO版本:3DS CIA
    • 3DS设备:2DSLL(XL) (如果不是3DS设备请删去此项)

    兼容性不佳的应用程序信息

    • 不能运行的PyMO应用程序名称:天使的星期日
    • 可能发生错误的脚本文件名称:
    • 可能的行号:
    • 应用程序数据包版本:s60v3
    • 问题类型:图像瑕疵/CPyMO报告错误后退出/CPyMO报告错误后运行不正常/致命性错误导致3DS崩溃或在其他平台上不正确退出/性能较差

    详细描述

    天使的星期日 在3ds有显示不了文字的现象,显示个问号,在windows下则正常,不知道是不是自带字体的问题 1 2

    bug wontfix compatibility 
    opened by chacha1355 6
  • [Compatibility]: 秽翼的尤斯蒂娅不显示人物

    [Compatibility]: 秽翼的尤斯蒂娅不显示人物

    基本信息

    CPyMO运行环境

    • CPyMO版本:3DS CIA
    • 3DS设备:Unknown

    兼容性不佳的应用程序信息

    • 不能运行的PyMO应用程序名称:秽翼的尤斯蒂娅
    • 可能发生错误的脚本文件名称:
    • 可能的行号:
    • 应用程序数据包版本:s60v3/s60v5/Android
    • 问题类型:图像瑕疵

    详细描述

    秽翼的尤斯蒂娅不显示人物

    bug wontfix compatibility 
    opened by Seng-Jik 2
  • [Compatibility]:  《海猫鸣泣之时 羽》菜单背景文字溢出

    [Compatibility]: 《海猫鸣泣之时 羽》菜单背景文字溢出

    基本信息

    CPyMO运行环境

    • CPyMO版本:3DS CIA
    • 3DS设备:2DSLL(XL) (如果不是3DS设备请删去此项)

    兼容性不佳的应用程序信息

    • 不能运行的PyMO应用程序名称:海猫鸣泣之时 羽
    • 可能发生错误的脚本文件名称:
    • 可能的行号:
    • 应用程序数据包版本:s60v5
    • 问题类型:图像瑕疵

    详细描述

    《海猫鸣泣之时 羽》呼出菜单,字跑背景外了

    WeChat 圖片_20220313141849

    bug compatibility 
    opened by chacha1355 1
  • Update android signature file

    Update android signature file

    1. Add keystore file
    2. Update ci.yml for signature
    3. Update build.gradle for signature
    4. chmod +x cpymo-backend/android/gradlew and delete corresponding command in ci.yml
    5. Fix extract-text related macro in Android
    opened by tuyunlei 0
  • Update android signing key

    Update android signing key

    1. update ci.yml to use signing file
    2. update build.gradle to use signing file
    3. add keystore.jks (signing file)
    4. fix two "extract_text" macro in Android
    5. chmod +x cpymo-backends/android/gradlew
    opened by tuyunlei 0
  • fix bug and update android version number

    fix bug and update android version number

    1. split NON_VISUALLY_IMPAIRED_HELP macro into ENABLE_TEXT_EXTRACT and ENABLE_TEXT_EXTRACT_ANDROID_ACCESSIBILITY
    2. update versionCode to 2, versionName to '1.1.1'
    opened by tuyunlei 0
  • 为Android端添加无障碍

    为Android端添加无障碍

    修改与添加的代码及说明

    CPyMO 部分

    1. cpymo_game_selector
    • cpymo_game_selector_item结构体添加gametitle_text,用于无障碍访问游戏标题
    • 通过cpymo_list_ui_set_selection_changed_callback添加回调,用于选择游戏时进行读屏
    1. cpymo_list_ui, cpmo_rmenu, cpymo_select_img, cpymo_textbox 在以上文件中添加了一些音效

    CPyMO backend

    1. cpymo_backend_text 修改cpymo_backend_text_visually_impaired_help函数,用于支持安卓读屏
    2. cpymo_backend_audio 添加了无障碍模式下安卓端的音效播放函数

    Android 部分

    1. CMakeLists.txt 删除-DNON_VISUALLY_IMPAIRED_HELP
    2. AndroidManifest.xml 添加了TTS_SERVICE
    3. SDLActivity.java
    • onCreate中添加所有文件的权限请求,Android11之后需要此权限才能访问/sdcard根目录
    • onCreate中添加VisualHelper.setup(),用于初始化无障碍帮助类
    • SDLSurface中修改了onTouch并添加了onTouchEvent,以及若干回调函数,用于处理无障碍手势
    1. xyz.xydm.cpymo.Config 从C层级获取无障碍配置
    2. xyz.xydm.cpymo.VisualHelper 无障碍的工具类,都是静态方法
    3. xyz.xydm.cpymo.gesture.GestureDetector 通过状态机的方式识别手势
    4. xyz.xydm.cpymo.gesture.OnGestureListener 手势回调接口
    5. xyz.xydm.cpymo.gesture.SlideDetector 检测手势滑动的方向
    6. 添加了若干音效文件并修改了themes.xml文件
    enhancement 
    opened by tuyunlei 0
Releases(v1.1.1)
Owner
许兴逸
I ♥ F#\OCaml\Rust\Haskell
许兴逸
This is a c++ implement of yolov5 and fire/smoke detect.

A C++ implementation of Yolov5 to detect fire or smoke in the wild in Jetson Xavier nx and Jetson nano This repository uses yolov5 and deepsort to fol

null 11 Aug 8, 2022
SIMULATeQCD is a multi-GPU Lattice QCD framework that makes it simple and easy for physicists to implement lattice QCD formulas while still providing the best possible performance.

SIMULATeQCD a SImple MUlti-GPU LATtice code for QCD calculations SIMULATeQCD is a multi-GPU Lattice QCD framework that makes it simple and easy for ph

null 10 Apr 23, 2022
The MOT implement by Solov2+DeepSORT with C++ (Libtorch, TensorRT).

Tracking-Solov2-Deepsort This project implement the Multi-Object-Tracking(MOT) base on SOLOv2 and DeepSORT with C++。 The instance segmentation model S

ChenJianqu 31 Jul 1, 2022
A Cross platform implement of Wenet ASR. It's based on ONNXRuntime and Wenet. We provide a set of easier APIs to call wenet models.

RapidASR: a new member of RapidAI family. Our visio is to offer an out-of-box engineering implementation for ASR. A cpp implementation of recognize-on

RapidAI-NG 80 Aug 11, 2022
AGE is a simple 2D console game engine runs in UNIX using third library Ncurses.

AGE-Game-Engine AGE is a simple 2D console game engine runs in UNIX using third library Ncurses. How-To-Run You need to install ncurses using the foll

SIHAN LI 1 Dec 16, 2021
A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support.

Libonnx A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support. Getting Started The library's

xboot.org 411 Aug 8, 2022
Deep Scalable Sparse Tensor Network Engine (DSSTNE) is an Amazon developed library for building Deep Learning (DL) machine learning (ML) models

Amazon DSSTNE: Deep Scalable Sparse Tensor Network Engine DSSTNE (pronounced "Destiny") is an open source software library for training and deploying

Amazon Archives 4.4k Jul 30, 2022
Nimble: Physics Engine for Deep Learning

Nimble: Physics Engine for Deep Learning

Keenon Werling 271 Aug 2, 2022
CTranslate2 is a fast inference engine for OpenNMT-py and OpenNMT-tf models supporting both CPU and GPU executio

CTranslate2 is a fast inference engine for OpenNMT-py and OpenNMT-tf models supporting both CPU and GPU execution. The goal is to provide comprehensive inference features and be the most efficient and cost-effective solution to deploy standard neural machine translation systems such as Transformer models.

OpenNMT 315 Aug 8, 2022
Benchmark framework of compute-in-memory based accelerators for deep neural network (inference engine focused)

DNN+NeuroSim V1.3 The DNN+NeuroSim framework was developed by Prof. Shimeng Yu's group (Georgia Institute of Technology). The model is made publicly a

NeuroSim 24 Jul 19, 2022
PPLNN is a high-performance deep-learning inference engine for efficient AI inferencing.

PPLNN, which is short for "PPLNN is a Primitive Library for Neural Network", is a high-performance deep-learning inference engine for efficient AI inferencing.

null 847 Aug 6, 2022
The core engine forked from NVidia's Q2RTX. Heavily modified and extended to allow for a nicer experience all-round.

Nail & Crescent - Development Branch Scratchpad - Things to do or not forget: Items are obviously broken. Physics.cpp needs more work, revising. Proba

PalmliX Studio 13 Jul 6, 2022
A fast and modern voxel based raytracing engine

CubiCAD A fast and modern voxel based raytracing engine Currently in heavy development and unusable at its current state. This reposity will hold the

RedNicStone 12 Jul 30, 2022
Python Plug-in for the Rime Input Method Engine

librime-python 为什么你需要 librime-python? 1. Python 是解释执行的脚本语言,因此可以在 rime 输入法的基础上动态地添加功能,而无需重新编译源代码、重启输入法程序,甚至无需重新部署。 2. 与 librime 本身使用的 C++ 语言相比,Python 提

Ayaka Mikazuki 14 Jan 24, 2022
An open source metroidvania engine.

OpenMV An open source metroidvania. Created from the ground up in C99. I'm creating this project to build the foundations for many games to come. It i

null 48 Jul 26, 2022
DeepSpeech is an open source embedded (offline, on-device) speech-to-text engine which can run in real time on devices ranging from a Raspberry Pi 4 to high power GPU servers.

Project DeepSpeech DeepSpeech is an open-source Speech-To-Text engine, using a model trained by machine learning techniques based on Baidu's Deep Spee

Mozilla 20k Aug 8, 2022
DeepRec is a recommendation engine based on TensorFlow.

DeepRec Introduction DeepRec is a recommendation engine based on TensorFlow 1.15, Intel-TensorFlow and NVIDIA-TensorFlow. Background Sparse model is a

Alibaba 513 Aug 11, 2022
Beringei is a high performance, in-memory storage engine for time series data.

** THIS REPO HAS BEEN ARCHIVED AND IS NO LONGER BEING ACTIVELY MAINTAINED ** Beringei A high performance, in memory time series storage engine In the

Meta Archive 3.1k Aug 4, 2022
PocketSphinx is a lightweight speech recognition engine, specifically tuned for handheld and mobile devices, though it works equally well on the desktop

PocketSphinx 5prealpha This is PocketSphinx, one of Carnegie Mellon University's open source large vocabulary, speaker-independent continuous speech r

null 3.1k Aug 9, 2022