Version 0.32 Unofficial (2017/02)
Version 0.31 Unofficial (2016/05)
-
Added RPG::Action::switchIdOn & RPG::Action::switchIdOn
-
Updated RPG::Input (thanks bugmenot!)
-
Updated RPG::Map::getTerrainId(int tileId) since that did not actually use the X & Y coordinates.
-
Added RPG::Map::getEventAt(int x, int y)
-
Added RPG::MapGraphics::chipsetImage
-
Added RPG::SceneMenu::scrollUpCountItem & RPG::SceneMenu::scrollUpCountSkill
-
Added RPG::SystemGraphic::exFont
-
Updated RPG::Window and various sub-classes, although only editing existing windows works well. Most functions have been marked as experimental for now.
-
Added RPG::ScreenEffect
-
Added RPG::Actor::getTwoWeaponAttack() & RPG::Actor::getTwoWeaponAgility
-
Added RPG::Image::drawString(int x, int y, std::string text, int color) as a DynRPG 0.20+ version of drawText, since that function seems to be broken
-
Added some custom RPG::Scene and RPG::MenuSubScreen definitions to prevent duplicate ID usage
-
Added RPG::SceneFile::doesSaveExist(int saveId), RPG::SceneFile::saveFile(int saveId), RPG::SceneFile::loadFile(int saveId), RPG::SceneFile::loadFileUnpatch(), RPG::SceneFile::loadFileSimple(int saveId)
-
Added RPG::getDiceRoll(int maxValue)
-
Added RPG::goToTitle()
-
Added RPG::quitGame()
-
Added RPG::getAvgPartyAgl()
-
Added RPG::getAvgMonsterPartyAgl()
-
Added RPG::openMenu(RPG::MenuSubScreen screen, int heroId, int skillOrItemId) & RPG::OpenMenuUnpatch(). Both experimental so far (thanks bugmenot!)
-
Added RPG::Actor::isSkillKnown(int skillId)
-
Added RPG::Monster::transform(int monsterId)
-
Added RPG::Screen::toggleFullScreen(bool fullScreen) & RPG::Screen::toggleLargeWindow(bool largeWindow)
-
Added RPG::Inventory::isItemOwned(int id)
-
Added RPG::Hero::act() & RPG::Event::act()
-
Changed RPG::Character::onMap to RPG::Character::eventUpdatedThisFrame. (thanks EasyRPG team!)
-
Changed RPG::Actor::autoBattle to RPG::Actor::aiControl to match common RPG Advocate translation
-
Added resizeValue to DArray template to fix a resizing issue with conditions and attributes within RPG::DBClass, RPG::DBActor and RPG::DBMonster (and documented expected behavior)
-
Updated various other bits of documentation
Version 0.30 Unofficial (2015/01)
(Not including enumerations. Review them in the classes as needed)
-
Added RPG::Animation and RPG::battleAnimations object.
-
Added RPG::AnimationEffect
-
Added RPG::AnimationFrame
-
Added RPG::AnimationFrameCel
-
Added RPG::Animation2 and RPG::battlerAnimations object.
-
Added RPG::Animation2Pose
-
Added RPG::Animation2Weapon
-
Added RPG::AnimationCurrent, RPG::AnimationInBattle and RPG::currentBattleAnimation object.
-
Added RPG::Item, RPG::AnimationWeapon and RPG::items object.
-
Added RPG::BattleData and RPG::battleData object.
-
Added RPG::BattleEvent
-
Added RPG::BattleEventPage
-
Added RPG::BattleEventTrigger
-
Added RPG::BattleCommand
-
Added RPG::DBMonster and RPG::dbMonsters object.
-
Added RPG::DBMonsterGroup and RPG::dbMonsterGroups object.
-
Added RPG::MonsterBehavior
-
Added RPG::Skill, RPG::AnimationSkill and RPG::skills object.
-
Added RPG::Inventory and RPG::inventory object.
-
Added RPG::Attribute and RPG::attributes object.
-
Added RPG::Condition and RPG::conditions object.
-
Added RPG::SceneMenu and RPG::menu object.
-
Added RPG::SceneShop and RPG::shop object.
-
Added RPG::SceneEnterName and RPG::enterName object.
-
Added RPG::SceneTitle and RPG::title object.
-
Added RPG::SceneFile and RPG::fileSaveLoad object.
-
Added RPG::SceneGameOver and RPG::gameOver object.
-
Added RPG::SceneDebug and RPG::debug object. (because I could)
-
Added RPG::Teleport and RPG::teleportHero() function.
-
Added RPG::Panorama and RPG::panorama object.
-
Added RPG::vocabulary object.
-
Added RPG::Vehicle (part of Character.h) as well as RPG::vehicleSkiff, RPG::vehicleShip, and RPG::vehicleAirship objects
-
Added RPG::Window
-
Added RPG::WindowMessage and RPG::winMessage object.
-
Added RPG::WindowMenuTarget, RPG::WindowMenuItem, RPG::WindowMenuSkill, RPG::WindowMenuEquip, RPG::WindowMenuEnd, RPG::WindowMenuStatus, RPG::WindowMenuOrder, RPG::WindowSaveFile
-
Updated RPG::Character, RPG::Event, RPG::Hero
-
Updated RPG::Actor
-
Updated RPG::DBActor & added RPG::SkillProgression
-
Updated RPG::DBSystem
-
Updated RPG::BattleSettings
-
Updated RPG::Character and RPG::Hero
-
Updated RPG::Map
-
Functions added: RPG::getDiceRoll(int), RPG::goToTitle(), RPG::getAvgPartyAgl(), RPG::getAvgMonsterPartyAgl(), RPG::Battler::flash( int, int, int, int, int), RPG::Map::getLowerLayerTileId(int, int), RPG::Map::getUpperLayerTileId(int, int), RPG::Map::getTerrainId(int)
-
and more... (to be documented & added)
Version 0.20 (2013/12/31)
-
On-the-fly patching using IPS files or quick patches in DynRPG.ini added. See the corresponding On-the-fly IPS patches and Quickpatches sections.
-
Partial Hyper Patcher 2 picture limit changing support removed, it never worked correctly in the first place.
-
AUTO_DLLMAIN
define removed, now a DllMain
function is always inserted by default, use #define CUSTOM_DLLMAIN
to prevent this behaviour.
-
The automatic
DllMain
function now stores the plugin's instance handle in the global variable hInstance
(only if CUSTOM_DLLMAIN
is not defined).
-
Critical bug fixed: Game could hang when loading a game after a new plugin has been added due to an infinite loop bug during
Save
??.dyn file parsing.
-
Critical bug fixed: Transparency of events (including the hero) behaved weirdly (changed depending on Y position) and was thus unusable. This bug also slowed down the event rendering a lot.
-
Bug fixed: Class RPG::DList had members
count
and items
swapped. Because DynRPG classes need to have the same memory layout as the RPG Maker's internal Delphi counterparts, all accesses of RPG::DList classes (most notably RPG::monsters) crashed the game.
-
Bug fixed: RPG::Catalog::count didn't work (tried to access
list.count
where it should have been list.list->count
, causing a compiler error.)
-
Bug fixed: RPG::Image::copy was broken (didn't set the new image size but silently leaked an RPG::Image instance instead).
-
Bug fixed: RPG::Actor and RPG::System methods sometimes returned wrong strings (i.e. for RPG::Actor::getName) if they encountered a default value in the database.
-
Bug fixed: Due to missing string termination, the RPG::ParsedCommentParameter::text member of a comment command's last parameter often had garbage appended at the end.
-
Bug fixed: Negative numbers in comment command parameters were incorrectly parsed as RPG::PARAM_TOKEN instead of RPG::PARAM_NUMBER.
-
Bug fixed: RPG::Event::doesEventPageExist was broken.
-
Bug fixed: RPG::transparentWindowsEverywhere was broken.
-
Modified library to work with newer GCC compilers. Now GCC version 4.7.1 is required. (For tech-guys: Why the hell can GCC now use the
ESP
register for an inline asm parameter with the "g"
constraint?!)
-
Bug fixed: The "cross-map" pictures #1001 to #2000 were not erased when a new game was started.
-
Fixed an RPG Maker bug which caused the HP display in the save menu to be misaligned when the HP had 4 digits.
-
Removed the longer skill/item window visibility "improvement" for most scenarious because it turned out to disrupt battle event processing. Only the info window shown when a monster executes a skill is still shown longer, but now only for 50 frames (old DynRPG used 90 frames which turned out to be annoyingly long, original RPG Maker used 30 frames which I think is too short to be readable).
-
Fixed an RPG Maker bug which would cause the game to crash when a "Link to Event" battle command was used right after the item menu has been opened and then closed with ESC.
-
Added RPG::Actor::twoWeapons, RPG::Actor::lockEquipment, RPG::Actor::autoBattle and RPG::Actor::mightyGuard fields.
-
RPG::System::pedestrianBGM added. Funny name, I know.
-
The maximum number of plugins has been raised from 30 to 50.
-
Bug fixed: Under some circumstances, the game would crash during event command execution. It's hard to describe the exact triggers, but they included "Erase event" commands in common events, loading a game which was saved while a "Wait until key press" was active and some other, rarer situations.
-
Fixed two RPG Maker bugs with "Small window" mode in battle: The action, item and skill selection windows had an empty line at the bottom even though there would have been enough space. This was especially confusing for the battle action window because it looked like the actor had only 3 commands available. Also, the selection cursor for "Show choice" windows in battle was not correctly aligned with the choice texts.
-
Removed the "higher action window" workaround for the small battle window mode because a real fix has been implemented now.
-
Bug fixed: DynRPG would sometimes refuse to load a plugin with no valid reason, depending on the constellation of files in the DynPlugins directory.
-
Fixed an RPG Maker bug which would crash the game with a "Division
by zero" error on certain edge cases of picture operations (especially pictures with small zoom level partially outside the screen). This bug also affected RPG::Canvas::drawCenteredZoomed.
-
Bug fixed: The enemy attack sound was also played if the enemy wasn't doing anything at all. Additionally, sometimes sleeping or paralyzed enemies would even flash white and the "Punch A" sound would play.
-
Fixed an RPG Maker bug which caused enemies to be flashed even when they executed the "Do nothing" action.
-
The onDoBattlerAction callback has now a second parameter
firstTry
which will be true
only at the first attempt of executing the action. This allows plugins to execute code only once per action. Before, the onDoBattlerAction callback could be called multiple times without a way to distinguish between a new action and a new attempt to execute the same action. Because the information about an action's success has to be stored somewhere, the RPG::Action::userData2 member has been repurposed and is now called RPG::Action::retrying. Old plugin DLLs which are unaware of the new firstTry
parameter will still work, but if any old plugin tries to use the RPG::Action::userData2 member it will cause problems. However I've got the impression that it's unlikely that there is such a plugin out there.
-
The member RPG::Action::userData1 has been removed from public access because I realized it's not a good idea to have generic fields without defined purpose, as this could easily cause conflicts between different plugins.
Version 0.14a (2012/02/15)
Only the SDK was updated. The patch still shows version 0.13b.
-
RPG::Character::mapID was renamed to RPG::Character::mapId to follow the naming convention used at all other places.
-
The documentation now doesn't show inherited members anymore unless you click
List of all members
.
-
Bug fixed: RPG::Map::getWidth and RPG::Map::getHeight were returning nonsense due to a typo (again).
Version 0.14 (2012/02/15)
Only the SDK was updated. The patch still shows version 0.13b.
-
RPG::isBattleTest and RPG::showTitle added.
-
Critical bug fixed: The big bugfix done in version 0.13 created new bugs because I forgot to update a few things in the changed
asm
statements. Sorry for that.
-
Bug fixed: I had confused the parameters of RPG::Character::move.
-
Bug fixed: Nasty typo in RPG::encode caused it to produce garbage.
-
Type of
message
parameter of RPG::showError changed from char *
to std::string
.
-
Type of
data
parameter of RPG::Character::move changed from char *
to const char*
.
Version 0.13b (2012/02/15)
-
Bug fixed: If version 0.13a was patched over version 0.13, the game wouldn't start anymore. Patching 0.13b over 0.13a should fix the problem.
Version 0.13a (2012/02/13)
-
Bug fixed: Due to a silly typo the game crashed as soon as you would try to buy something in a shop.
Version 0.13 (2012/02/11)
-
Critical bug fixed: The
asm
statements in the SDK didn't properly tell the compiler that the eax
, edx
and ecx
registers may be changed even though they often aren't used as output registers. This could randomly lead to faulty code (depending on the surrounding code and the compiler options) which would then result in strange crashes. Please recompile all modules of your plugin with the new version of the header files and the library!
-
Bug fixed: The RPG::ParsedCommentData::command string wasn't terminated properly.
-
I realized that Code::Blocks is far better than Dev-C++ and changed the Getting Started page accordingly.
-
The RPG::showError function was added.
Version 0.12 (2012/02/07)
-
RPG::Canvas::drawStretched and RPG::Canvas::drawCenteredZoomed added.
-
Bug fixed: The DynRPG Patch caused the battle status window to be always fully opaque in battle layout "alternative", even if "transparent" was enabled. If the latter was the case, additionally the ATB bar wasn't shown.
-
Added "Powered by" on top of the DynRPG logo.
Version 0.11 (2012/02/06)
Only the SDK was updated. The patch still shows version 0.10.
Version 0.10 (2012/02/05)
This is the first release. I started this project on 2012/01/23, by the way. Just in case somebody wants to know.