Closed BlisterB closed 8 years ago
Okay, have fun :)
Actually, I added Solarus to Retropie and I'm currently taking a look at doing the same thing with Easy RPG Player. I'll post here when I have any progress to note.
Oh, apologizes for the mistake!
Please have a look at the Jenkins server, the easiest way to get the last build. https://ci.easyrpg.org/ Nightlies are recommended to have the best experience with EasyRPG.
Guess I'll stick on the Android port ^^.
The Jenkins automatic builds won't work @BlisterBoy, because they are not for ARM :D. But recompiling is easy.
@zerojay Some compile instructions: https://wiki.easyrpg.org/development/compiling/liblcf/autotools
https://wiki.easyrpg.org/development/compiling/player/autotools
I recommend compiling liblcf with ICU and expat. Otherwise it's not feature complete. And the Player with the newest SDL2 you can find (2.0.1 ^^) because this version (together with 2.0.1 mixer) fixed many problems, especially with Audio.
And SDL2(_mixer) should support at least WAV, OGG, MIDI and MP3. Without MP3 most games will be silent :/. Libmad for MP3 is also more stable then smpeg (but I guess you can't change this because you use the SDL2 of the distribution) The audio is really an issue, we have to replace this someday...
For RetroPie, we basically write up scripts that compile, install and setup ports and apps for users and those that get into RetroPie officially also get official binaries as well, so while I appreciate being pointed to Jenkins, it's not going to work for us.
Thanks for the compile tips.
Alright, I have it up and running on the Pi 2. I went through RTP hell to extract the files needed but it's clear that something's wrong when looking at the sprites. Incorrect sprites are being used everywhere. It's clear that the game is looking for, for example if sprite X was a door, it asks for sprite X from the RTP and the sprite is actually a set of stairs. And it's like that everywhere. The character sprites appear to be fine. I'm using A Blurred Line as my test game of choice here and I have both rtp2000 and rtp2003 being found and apparently read from.
Can you post the easyrpg_log.txt? (is in the working directory of the Player, or in --save-path if you passed that arg). The file could give some hints about which RTP is used.
Here's the log:
2016-03-11 20:00:23] Debug: EasyRPG Player 0.4.0 started [2016-03-11 20:00:23] Debug: ============================ [2016-03-11 20:00:23] Debug: CLI: [2016-03-11 20:00:23] Debug: Opened audio at 44100 Hz (stereo), format: S16LSB [2016-03-11 20:00:26] Debug: Detected encoding: ibm-5348_P100-1997 [2016-03-11 20:00:26] Debug: Using ./blurline as Game and Save directory [2016-03-11 20:00:27] Debug: Loading game A Blurred Line [2016-03-11 20:00:27] Debug: Using RPG2k Interpreter [2016-03-11 20:00:27] Debug: wine prefix not found: "/home/pi/.wine" [2016-03-11 20:00:27] Debug: wine prefix not found: "/home/pi/.wine" [2016-03-11 20:00:27] Debug: wine prefix not found: "/home/pi/.wine" [2016-03-11 20:00:27] Debug: wine prefix not found: "/home/pi/.wine" [2016-03-11 20:00:27] Debug: Adding /home/pi/games/data/rtp/2000/ to RTP path [2016-03-11 20:00:28] Debug: Starting new game [2016-03-11 20:00:28] Debug: Loading Map Map0004.lmu [2016-03-11 20:00:28] Debug: Tree: Blank (Leave START here) < Introduction [2016-03-11 20:00:30] Debug: Loading Map Map0001.lmu [2016-03-11 20:00:30] Debug: Tree: Introduction [2016-03-11 20:13:16] Debug: possible leak in cached bitmap System/ablskin [2016-03-11 20:13:16] Debug: possible leak in cached bitmap Title/ABL20Title
All I can think of is either an issue with the encoding of the filenames or the RTP is somehow wrong.
The log looks fine. So must be something with the RTP, probably the wrong one. Can I have a directory listing of the whole RTP (with subdirs)?
I now see what the problem is. The encoding of the filenames got screwed up when I scp'd them across. Blocks everywhere.
That RTP is fine.
I can only make an educated guess: Because it's an English game it uses Don's inofficial RTP translation (with English filenames). EasyRPG Player has a mapping table implemented which maps that English files to the Japanese. Maybe there is a bug in this mapping table.
Could you try with Don Miguels RTP?
Welcome to RTP hell :(
There are games using characters existing in the Don Miguel RTP translation, which adds more than 30 new assets, including characters. The RTP table replacement is doing a fallback of missing files to unrelated characters in these cases. Details: https://wiki.easyrpg.org/development/rtp-database/2000-rtp#don-miguel-s-rpg-maker-2000-rtp-changes
Okay, so... what can I do to ensure that I have proper RTPs for just about anything I'm going to be playing? Have the Japanese RTPs in 2000/ and 2003/ and define a fallback with the environment variable?
Well for Europe and USA for 2000 Don and for 2003 RPG Advocate. Newer (2015) games use the official English RTP. For Japanese the official ones. For other languages... other translations.
Hm, guess we have to adjust the Player to allow more then one RTP via env vars.
Basicly it's hopeless... You will not find an ultimate solution for this. (And you can't legally distribute the RTP btw)
But not all games need the RTP :)
Well, thanks. I do appreciate your attempts to help me out here but I think I'm going to pass on this.
EDIT: Nevermind, I think I figured something out here. Work continues on.
I now have a working installation script for installing EasyRPG Player into RetroPie. It can be found in my repo: https://github.com/zerojay/RetroPie-Extra/
Looks okay, but please ensure that liblcf links against ICU. Otherwise non-English people won't be happy (without ICU the encoding is not autodetected and non-ASCII characters will be broken)
my 2 cents:
liblcf
is not really needed if you just want to use it for the Player
. It can be included statically and does not need headers installed then, use
./configure […] --disable-shared --prefix="$PWD/build"
Then you do not need to do the copying and removing either, just give the configure script of the Player
the proper path to liblcf, i.e.
./configure […] LCF_CFLAGS='-I$PWD/../liblcf/build/include/liblcf' LCF_LIBS='-L$PWD/../liblcf/build/lib -llcf'
Otherwise looks fine.
Thanks zerojay for porting EasyRPG Player to RetroPie, I guess BlisterBoy's proposal for this issue is solved.
Hi everyone! This is just an idea, but Christopho (the developper of the Solarus Engine) added the Solarus Project to RetroPie. https://twitter.com/ChristophoZS/status/705418608067928065
Imho it would be a nice thing to include EasyRPG to some gaming solution such as RetroPie (since the GameBrowser is operationnal and allow to play to games stored in a directory). It already permit to play to a lot of cool games and it would be a good promotion for the project :). And it should be really simple because of the Jenkins automatic builds.
I plan to buy a Raspberry Pi 3 after my exams (3 weeks to handle!), i can work on the idea :).