EasyRPG Player 0.2.1 “Carol”

The last month was filled with lots of activity on the Player development side. Therefore we decided to publish the first bugfix release. The compatibility should have significantly increased compared to 0.2.

What is new for users?

One of the more exciting features is the automatic encoding detection. This basicly means that you don’t have to set the encoding manually (via Encoding option in RPG_RT.ini) for games that are not from your region. In our tests we couldn’t find any games where the detection fails, but the manual setting is still supported. This also resolves a problem with the wave dash (~) in japanese games which was mapped to the wrong unicode character. (#258)

Lots of movement related issues were resolved:

  • Pictures locked to a map position are supported now (#44)
  • Events face the hero now when triggered. Movement mode “spinning” added and movement with fixed orientation (#253)
  • Fix passability between events of the same layer (#259)
  • Fix HaltAllMovement with repeating move routes (#259)
  • Improve jumping, allow to jump on the same tile (#259)
  • Always block player movements when a window message is shown (#259)
  • Don’t cancel forced move routes when a new page is set up (#259)

Fixes for the event interpreter:

  • Events on the upper layer (above hero) with “On Touch” trigger execute now (#264)
  • Fix rendering for tiles when replace tile command is used. The game Tetrix 3 uses this feature in a quite clever way: It uses two tiles for a bridge that are looking the same but have different attributes (“circle” and “star” flag). When the player walks over the bridge the circle tile is used and when driving by boat under the bridge the star tile is used (#142)
  • Fix incorrect termination of parallel processes (#255)
  • Fix passability of upper layer characters over the hero (#265)
  • Fix counters (tiles with “counter” flag) (#274)
  • The Tone command was sometimes displaying wrong colors (#265)

Improvements to Image handling:

  • Some BMP images contained invalid header data and failed loading (#248)
  • The image type is now determined by reading the header. Image files with incorrect extensions (e.g. BMP files that are actually PNG) load now (#163)
  • The Player loads a dummy image (checkerboard) now when an image is not found instead of terminating (#32)
  • When a picture was loaded twice, one time with transparency flag and the second without, the second picture was transparent, too. (#86)
  • If a graphic didn’t have a file assigned the Player falls back to sane defaults now (#139)
Checkerboard for missing graphic
Checkerboard for missing graphic

Improvements to Audio handling:

  • The type of audio files is now detected by reading the header. This allows e.g. playing of “MOD” files with WAV extension (RPG_RT got this feature via the Audieremony patch) (#74)
  • Fade in support (except on Windows due to a platform bug) (#62)
  • Increase channel limit from 8 to 32 to prevent “no free channels available” warnings. (#247)

Our Font got full Cyrillic and Latin Extended A to cover all Central and Eastern European languages (#245)

Russian game
Russian game (look at the beatiful parallax mapping!)
Polish game
Polish game

Messages:

  • The “gradient” color from System graphic was misaligned for wide chars and symbols. (#145)
  • Because of the way Japanese and Korean are encoded they use Yen (¥) and Won (₩) symbols instead of backslash (\) for message commands. These command triggers are now supported (#259)
  • Show faces on the right side and choice input was broken due to a regression introduced in 0.2 (#246)
  • In TestPlay mode messages can be fast-forwarded by pressing the Shift key (#196)

Skills that change switches were implemented. (#274)

Allow creation of Monsters without graphics (#125)

The Menu scene got some bugfixes:

  • Cursor position in Save/load menu fixed (#265)
  • Using null/empty items, skills or equipment doesn’t crash anymore (#254)

Map and Battle transitions are supported now and the default transition speed was adjusted.

The Title scene window position was fixed, the opening animation speed adjusted and HideTitle command is supported now (#49)

Our FileFinder supports files in subdirectories now (this isn’t officially supported by the RPG Maker editor but somehow works in RPG_RT). Yen and Won are supported as folder seperators now (same issue as for message commands) (#259)

Handling of the RTP was improved:

  • A warning is now displayed when there is no RTP found and RPG_RT.ini doesn’t contain FullPackageFlag=1. (#247)
  • More RTP 2003 translations supported. (#244, #283, #291)
  • Fix WINE registry UTF-16 parsing (#238) and add fallback support (#250)

The Android port was updated. Get it from the Play Store or get the APK from our download section.

  • Support for Xperia Play buttons (#232)
  • The select region menu (long press on item) got an autodetect option and contains more regions/languages now (#291)
  • INI writer corrupted the INI file when [EasyRPG] was the last line (#291)
  • MIDI playback tempo is now correct. A patch for SDL2_mixer (The audio lib we use) was backported to fix this (#291)
  • The OSD buttons were hard to see and are now less transparent (#291)
  • Timidity now ships directly in the apk. MIDI playback works now without any additional user interactions. (#291)
  • Added (highly experimental) standalone mode. This allows distributing of RPG Maker 2000/2003 games inside a single .apk. We will give more details about this in a later blogpost because there are still some issues we have to resolve. (#291)

The Wii port had outdated libraries and wasn’t completly working anymore. User carstene1ns was so kind to update them for us.

The on screen console supports linebreaks now (#256).

The command line interface got a new argument –start-party option to overwrite starting party members and the Player was crashing for arguments requiring values when no value was passed (#259).

The Linux distribution Mageia provides now a RPMs for the Player (maintained by Akien). Note that there are also AUR packages for Arch Linux since a longer time (maintained by carstene1ns).

What is new for developers?

The Player got an experimental double resolution mode. (#249)

Our jenkins system supports now building of pull requests. This allows faster reviewing of new code contributons if they work correctly on our major platforms.

We were mentioned in the Press

The japanese website Gigazine posted a very detailed tutorial about correctly configuring our Android port. The related tweet was retwetted more then 300 times. Thanks for this great article!

Our project got a page in the magazine “Advanced RPG Maker: Issue 3” on rpgmaker.net.

Somebody mentioned us on Hackernews which resulted in a small discussion.

Shoutouts to that japanese person who recommends our Android Player over Neko RPGXP and Choco R2k Player (another RPG2k/2k3 interpreter) because it doesn’t want internet permission and is not from a korean developer.

 

 

EasyRPG Player 0.2 “Alex”

Only 5 months behind schedule we are glad to announce the next stable release: Version 0.2

This version is named after everyones favourite hero “Alex”.

What is new for users?

As already stated in the Android post in December, SDL2 is used now. The major differences you will notice is that you can play now in fullscreen mode without having resolution changes, so all graphics are perfectly sharp and pixelated now :).

The Android port is now also distributed via the Google Play Store. The account is managed by our developer lobomon. Because the updates are uploaded by hand and are verified everytime by Google before publishing the releases are usually some days behind. You can find more up-to-date ones on our website in the download section.

Battle System (and random encounters) for RPG Maker 2000 and 2003 (#218) with some limitations:

  • Only traditional battle style supported for RPG2k3
  • Battle event interpreter not well tested
  • Conditions (Poison, Sleep, …) unsupported
  • Some battle commands unsupported (you get a warning in that case)
RPG Maker 2000 Battle System
RPG Maker 2000 Battle System
RPG Maker 2003 Battle System
RPG Maker 2003 Battle System

Support for saving and loading (#186). The files are written in the LSD format. In theory they are compatible with the original RPG_RT. Because the LSD-format is not fully understood yet, not all data is saved/loaded yet (we support ~75% of the data), but should be good enough for most cases. As a side effect the arbitrary 50 pictures limit was removed.

All missing move commands implemented (diagonal movement and jumping). Further more some issues with incorrect passability checks (Whether you can (not) walk on a tile) were fixed and the movement frequency is now more accurate when compared with RPG_RT (#224).

Support for half-width cyrillic fonts in our built in font “shinonome” (#216).

Russian language support (old: left, new: right)
Russian language support (old: left, new: right)

Support for command line arguments (See wiki page for further details, #225).

The game title is now read from the RPG_RT.ini and displayed in the title bar (#52).

When returning to the title scene (via End Game or F12) some data was not reset (#192).

In TestPlay mode pressing F11 opens the save scene.

The annoying, game blocking warnings messages are replaced with a quake-like drop down console and therefore don’t halt the game anymore. As a side effect you get full unicode support in the messages (e.g. for asian languages). (#193).

New output
New output

What is new for developers?

Readers was renamed to liblcf and relicensed to MIT license.

Improvements in the build system. The Player and liblcf should compile on more linux distributions now.

The makefiles for the PSP (Playstation Portable) build were removed. Nobody contacted us in the last years to maintain the (broken) PSP build.

Anything else?

Yepp. MarianoGNU is working on a new editor called “Editor-Qt“. It is making good progress but is Not really in a usable state yet, but you can grab the Windows binary from our jenkins system. The Linux version will be released later.

Editor Qt
Editor Qt
Editor Qt Database
Editor Qt Database

Gameplay Video: Battle system on Android

EasyRPG Player 0.1.2 “EV0003” released

Compared to the current development state the half a year ago released 0.1.1 version is already quite dated and has bad compatibility. We continue our naming scheme for the 0.1 releases and name this one “EV0003”.

The new release adds some bugfixes, improves the compatibility in general and adds new features. Furthermore the build system was improved and should compile better on Unix systems. Bad news first: No, battle and save/load are still missing. They are planned for the 0.2 release we expect to get released this year.

Summary of changes (issue number is linked and contains further information):

  • Fixes for the games Yume Nikki (#115) and Ib (#151)
  • Status scene (#127) (see picture below)
  • Debug scene (#133) (see picture below)
  • More move commands implemented (#124)
  • Problems with picture rotation fixed (#134)
  • Writing non-ascii characters (basicly all non-English characters like äöü or あえい) to files caused corruption. This broke savegame writing and our tool LCF2XML (#135)
  • Incorrect charset rendering when charset has non-default size fixed (#137)
  • Mistakes in the RTP translation table corrected (that one is used to run japanese RPG Maker games with an English RTP and vice versa) (#149)
  • Add screen effects (Tone/Tint and flash). Tone change was already supported for normal pictures but was very slow, the algorithm was replaced with a faster one. (#118, #153)
  • Weather rendering was refactored and is faster now, too. (#118, #153) (see performance notes below)

Only for developers:

  • Build system improvements for Unix based systems (#128, #130, #132, #136 and many others)
  • OpenDingux Makefile updated (#144)

Performance notes:

Tone change and weather rendering are quite demanding and can cause lag on slow systems. I made some tests to approximate the cpu usage. Results:

  • Weather increases CPU usage by 25% (1.25 times more)
  • Tone change by 100% (2 times)
  • Reducing saturation by 300% (4 times)
  • Increasing saturation by 400% (5 times)

Calculating the CPU usage for combined effects is left open as an exercise for the reader.

Gallery: (click image for full size)

Debug scene
Debug scene
Status scene
Status scene
Darkened picture with weather effect in background
Darkened picture with weather effect in background
Tint Screen Effect
Tint Screen Effect

Bugfix Release 0.1.1 (EV0002)

As promised we want to speed up our release process. Today we want to release a minor update that fixes some bugs that were encountered in EV0001, so this is basicly EV0002 and provides some additional features.

If you don’t want to read about the changes you can grab the program directly in our download section.

Now the changelog:

  • Linux: Support for detecting the RTP path by reading the Wine Windows registry (this means you can install the RTP via Wine)
  • Fixes for the Android build system (still not working, are you an Android developer? Contact us!)
  • Wii support
  • Windows 98 support (compile with VS2005)
  • For developers: Switched to Javadoc comment style and updated Doxygen documentation with new features (e.g. call graphs) (issue #67)

Gameplay related: (when this fixes an issue in a specific game it is mentioned in [brackets])

  • Fake Battle System. The battle itself doesn’t work but you can select the outcome (Victory, Defeat (only for scripted defeats, doesn’t trigger a Game over) and Escape). Far away from being perfect but better then terminating like in 0.1
  • Fix integer overflow on large maps (resulting in incorrect passability checks)[Hero’s Realm]
  • Don’t restart BGM if the song is the same [Hero’s Realm]
  • Fix passability check for event layer chipset tiles (issue #121) [Dragon Warrior 1 Remix]
  • Fix transparency of autotiles (resulted in an orange tileset when parallax backgrounds were used, issue #104) [Dragon Slayer Gaiden] [Yumme Nikki]
  • When a party member is on the maximum level, instead of displaying “——–” the current experience is displayed now, because this was confusing
  • Adjusting music volume (needs support in SDL_mixer, probably not working for all files)
  • MessageBoxes close now when a wait event occurs, should fix many not closing message boxes
  • Experience and Level system implemented
  • Switch command: Fixed indirect switch setting via variable
  • States (Death, Poison, …): Display correct state in menu
  • Fix item count underflowing (from 0 to 99) when an item that the player didn’t have was decresed
  • Fix change hero sprite command
  • Move event: Player transparency

The Player is still not suitable for daily use, please report any bugs you encounter in games so we can make it better. Thanks!