Changelog 2009/12/30

Version 0.15 (13.11.2010)
- Buttons “Expand All” and “Collapse All” in map tree. “Collapse All” collapses all nodes except parents of the current node.
- Support for 125 (5×25) sprites in a battle animation sheet, instead of 25 (5×5). Therefore, the maximum dimensions should be 480×2400 for normal animations or 640×3200 for large animations.
- The “Import” feature doesn’t check for the image dimensions anymore, so you can import images of any size, unless you set the option ImportCheckDimensions=1 in the configuration file.
- Option to disable the icons on database tabs. Can be set in the configuration file.
- Option to hide the RTP in the resource manager. Can be set in the configuration file.
- Switches and variables can now have longer names.
- Editbox in project selector.
- Language file editor.
- Support for longer variable/switch names.
- The whole VC9 Runtime redistributable folder, so that it should at last work with all computers.
If somebody still gets problems with Wine: I also added a script which does the same as which was previously described in wine.txt.
- When the language file is set to “?”, RM2k9U now asks you for your language at startup.
- Vertical style for database tabs where only the icon is displayed. Nice option for netbook users.
This style can be enabled by setting DatabaseTabsStyle=2 in the [View] section of the configuration file.
The DatabaseTabsStyle setting also replaces the settings DatabaseTabsAsButtons and DatabaseTabsIcons.

- The hotkey for map properties is now Shift+Ctrl+M because Alt+Enter often didn’t work.
- Modifications which are necessary for a feature are now in an “internal” UIMod file directly in the DLL.
- The hotkey for the jukebox is now F11, because F4 was already used in the database to go the the previous entry.
- Opening the database and some other windows is now faster.
- ultimate.dll is now statically linked to rpg2009.exe.

- Freeze detection. It wasn’t very reliable and created too much false alerts.
The loader will still be hidden automatically (except in debug mode).
- Settings DatabaseTabsAsButtons and DatabaseTabsIcons. Use DatabaseTabsStyle instead.

- The “Go to Map/Area” function displayed the project root folder as result if you entered ID 0.
- Undocking the tool panel and directly moving the tool panel to negative coordinates (without letting go and then moving the already floating panel) didn’t work.
- Accidentially, the OK and Cancel button in all of RM2k9U’s dialogs had stopped working.
- The icons in the file listbox for the tab “Large Animations” in the animation resources selector weren’t set.
- The preview in the tab “Large Animations” in the animation resources selector showed the file of the “Battle Animation” tab as soon as it was repainted.
- Lots of error messages would pop up when the “resource manager” button was used in a charset selector while a tileset part was selected.
- When the database was opened or its tab was changed, changes in UIMod files didn’t apply to the values of the item which was loaded by default.
So, for example, when you set the MaxValue for an ability change value for an item to 999 (instead of 500), and set the value to 999 for an item, it was reset to 500 when the database was opened and this item was the first item which was displayed.
- When a script list box was maximized, there were still some pixels around it which showed the area behind.
- Small memory leak in loader’s splash screen.
- Critical bug in exception handling. RM2k9U could get unstable after an exception was caught.
- Moving event script listboxes using UIMod files didn’t work.
- The menu bar used some access keys twice.
- The lower part of the database window’s content was invisible when the tab control had more than 2 rows.
- When the ToolPanel entry in the [Status] section of the configuration file was missing, the tool panel would behave in a weird way, until it was docked and undocked again twice.

Version 0.14 (12.10.2010)
- RM2k9U now checks if the ultimate.ini file in the AppData path (if there is any) is from another version and displays a warning in that case. It also suggests to read the changelog.
- Some map operations, as well as the draw tools are now in the main toolbar and main menu. The second toolbar at the tool panel was removed.
- Menus “Help->RPG Maker 2009 Ultimate” and “Debug”.
- New icons in map tree.
- New icon for folders in the resource manager.
- Secret events.
You can use one secret event per map. A secret event is invisible and password-protected, but can be used like any other event.
- Context menu in debug log, where can copy or clear content.
- “Exit” item in system menu.
- Custom toolbar background bitmap. You can set the filename in the configuration file.
- Lots of new tips & tricks.
- “wine.txt” file with a tutorial how to get RM2k9U working with Wine.
- The loader can’t be closed anymore while the RPG Maker is running. You can hide it, however.
If debug mode is deactivated, it will hide automatically. When the RPG Maker freezes for more than 5 seconds, it will show a message.
- Dynamic docking of the tool panel. You can drag and dock the tool panel as you like. Docking to the right side of the main window is also possible.
Hold Ctrl to prevent docking. Press Esc to abort moving. Doubleclick the title bar or the gripper, respectively, to quickly switch between docked and floating.
- Tabs in tool panel instead of a splitter. You can disable this feature in the configuration file.
- Support for lower layer tiles in upper layer.
WARNING: This feature is disabled by default. You have to set AllTilesInUpperLayer=1 in the [Common] section of the configuration file to enable it.
This is done because the feature has a big problem (which I can never solve):
The lower layer tiles get the same passability settings as the upper layer tiles at the same position.
So, you have to organize your tileset so that passable tiles will be on the same place in lower and upper layer.
This feature can only be used when the “tabs in tool panel” feature is enabled.
If you use autotiles in upper layer, only the middle tile will be used. Animated tiles work however.Unfortunately, all lower layer tiles will be unpassable in upper layer, regardless of their setting in the database.
- Support for comments with up to 128 lines. You have to use the UIMod file “highcommentbox.ini” to make this feature really useable.
- FAQ file.
- “Go to Map/Area” dialog where you can quickly jump to a map or area by either entering their ID or parts of their name. It looks for words in the name beginning with the text you entered.
You can quickly access this feature by pressing Ctrl+G.
- The Esc key now triggers the Cancel button in RM2k9U’s dialogs too.
- The new map tree icons are now also visible in other windows using the tree, like “Teleport”.

- The logfiles are now created in the AppData folder.
- The inspector can now be opened at any time.
- The toolbar separator is now a vertical line.
- The toolbar is now flat on Windows 7 too.
- The cut/copy/paste/erase buttons are now more intelligent. They are disabled if they would have no use.
- The grayed menu icons now look like all other grayed items in Windows.
- New icon for the “Show Tool Panel” menu item, because the “Draw”->”Pen” item had also a pen as icon.
- Changed some menu item labels and removed some ellipses. According to Microsoft’s guidelines, an ellipsis should indicate that additional information is needed to perform an action, not just that a window will open.

- Option “DockToolPanel” from configuration file, because it’s obsolete.
- Items “Minimize”, “Maximize” and “Restore” from the tool panel’s system menu. Minimizing it was senseless, and maximizing doesn’t work with the docking mechanism.

- The random number generator wasn’t initialized, thus the “random” tips had always the same order.
- The icons for the different resource types looked ugly because a random color was set transparent.
- RM2k9U aborted with “Loading project failed” when the project path ended with “\”.
- The “Previous” button at the tips & tricks dialog didn’t work with tip #1.
- When the tips & tricks dialog was opened a second time, it just showed “” instead of a tip.
- On a system with more than one monitor: When the tool panel was on a different monitor than the main window, at the next start the main window was moved to the window where the tool panel is located.
- Donate button wasn’t repainted properly.
- In the event search window, the original hotkeys where active instead of those from RM2k9U.

Version 0.13 (28.09.2010)
- Button style for database tabs. You can set this style in the configuration file. When this style is used, the first and second row won’t switch anymore.
- Many comboboxes now show the IDs of their items. You can enable or disable this feature or change the alignment in the configuration file.
- RPG Maker 2009 will now look for the configuration file, the uimod folder and the language folder first in “%appdata%\CherryTree\Ultimate”, then in the directory where ultimate.dll is located.
To avoid problems when a crash occured, “%appdata%\CherryTree\Ultimate\ultimate.ini” will be deleted if it’s empty.
- Because the change from DirectX to GDI done in v0.12 created problems with some computers (although it solved problems with VM’s), the driver can now be set in the configuration file.
- Sytax highlighting for events.
You can set the color theme in the configuration file. Color themes are INI files in the folder “colorthemes”.
- F9 (test play) now works in the database too.
- Donate button.
- Option to disable the exception handling. This option should only be activated when you are running linux and experience problems with Wine.
When this option is enabled, a default error message (”Access violation in xyz.dll at address ………..”, etc.) will be displayed when a crash occurs during window initialization.
- Better debug output.
The debug output is now shown in a resizeable window instead of that ugly console window, plus, there is more debug info than before.
Additionally, a logfile named “ultimateXX.log” in the loader’s directory will be created, where “XX” is the instance ID.
- You can now use %ultimate% for user tools as a placeholder for RPG Maker 2009 Ultimate’s path and %rpgmaker% for the RPG Maker 2000/2003’s path.
- Placeholders like %project%, as well as all other environment variables like %windir%, now also work for the filenames of user tools.
- Icons in the main menu.
- Icons at the database’s tabs.
- Different icons for the various resource types.
- All database tabs can now be directly selected from the menu. They have hotkeys too.
- Button in toolbar to directly open the “Common Events” tab in the database.
- The last used subfolder for a resource type is now saved. To restore it, hold the Shift key while opening a resource selector.
Using the RememberLastSubfolderDefault setting in the configuration file, this behaviour can be reversed.
When this option is set to “1″, the last subfolder will always be restored unless you hold the Shift key down.
The resource selector always remembers the last used subfolder and ignors the Shift key.
- The first 10 user-defined tools have the hotkeys Ctrl+Alt+1, Ctrl+Alt+2, …, Ctrl+Alt+0.
- R.D.’s Color Theme Editor (for editing event color themes) is now included. This tool needs the Java Runtime Environment.

- Internally, RM2k9U is now using the “Tag” member of the TWinControl structure (which is unused by the RPG Maker) to put some status flags rather than using window properties, because the window handle could change.
- The error message that an UIMod file references an inexistent component is now only displayed if “ComponentNotFoundError=1″ is set in the configuration file.
- Microsoft Detours Library is now used for detouring functions. This is more flexible than the old method, thus font replacement should now work in all cases.
- The ComponentNotFoundError setting has been moved to the [Debug] section of the configuration file.

- Scrollbars of script list boxes were behaving strangely when the box was maximized.
- “Move/Rename” dialog had the wrong font.
- Ctrl+Z didn’t work.
- Below maximizing script list boxes in the database, a small portion of the “Array Size” button was still visible.
- The main window and its splash weren’t properly hidden during initialization.
- The “Move/Rename” dialog was centered in the wrong window.
- At exit, the RPG Maker was terminated without giving DLL’s a chance to clean up.
- A small line of 4 pixels above the toolbar didn’t get repainted when another window was moving over it.
- If the database was opened when the monster group or common event tabs were already selected, the script listbox was too narrow.
- The inspector was disabled when a dialog was opened.
- The “*” wildcard in font replacement entries didn’t work always.
- The subfolder combobox did never display scrollbars and was thus acting strange with too many subfolders.
- The current directory value for user tools is now the directory where the tool is located, because some applications (especially Java-based ones) refused to start otherwise.

Version 0.12 (08.09.2010)
- Tips & tricks (strings 40001-40999). The tips dialog is shown on startup (can be disabled in the configuration file).
- You can now see in the debug window when UIMod files are applied.
- Crahses during window initialization are now caught and reported.
- Subfolder selection and file info now works for system sets, “System2″ sets and battle animations in RM2k3 too. However, it still doesn’t work for RM2k3’s “Large Animations” (Battle2).
- You can now use %project% for user tools’ parameters as a placeholder for your project’s path.
- You can now maximize the event script list boxes for a better overview.
- You can now use the prefixes “++” and “–” to increase/decrease properties in UIMod files instead of setting a new, absolute value (e.g. “ListBox1.Width=++40″).
- The loader window can now be localized too (at section “[UltimateDlgLoader]“).

- The client size of the tool panel is now 213 instead of 212, because some people got useless horizontal scrollbars.
- For graphics (e.g. splash screen) GDI is used now (instead of DirectX). DirectX caused some strange bugs on virtual machines.
- The first status bar panel’s width is now 50% of the total width instead of having a fixed value.

- Option to hide the keypatch’s splash. Didn’t work in most cases.
- Event command prefix replacement feature. This feature caused strange problems, especially when importing pictures, which could even destroy the map tree in the worst case.

- RM2k9U didn’t work properly with RPG Maker 2003 versions older than v1.05.
- When the RPG Maker had a non-standard executable filename (other rpg2000.exe or rpg2003.exe, respectively), a not very useful error message (”file not found”) was displayed.
Now, RM2k9U tries to find the right file by itself.
- The file info for PNG files could corrupt the heap and cause a crash (especially when importing resources).
- RM2k9U crashed when a non-existing component was referenced in an UIMod file. Thus, the “[Any]” feature had stopped working too.
- The issue about the tool panel staying visible when RM2k9U was minimized, was only partially fixed in v0.10.
It still happened when RM2k9U was minimized by clicking on the taskbar button instead of the “_” button in the title bar.

Version 0.11 (21.08.2010)
- Resource selectors now show advanced information about the selected file:
Filetype is detected from file header rather than file extension (to avoid misdetection of .mp3.wav files or similar).
For MIDI and MP3 files, title/copyright information or respectively ID3 tags are displayed.
For images, its dimensions are displayed.
For .link.wav files, the target file and its ID3 tags are displayed.
For .script.wav files, the action of the [Execute] section, and the executed command (in case the action is “ExecProgram”) is displayed.
The file info feature does not work with RTP files.
- “Move/Rename” button in resource manager to rename resources, create subfolders and move resources between them.
- Button in resource selectors to open resource manager.
- Animated progress bar in splash screen, message (”please be patient”) if loading project takes more than 3 seconds.
- “Undo” button in many event command editing windows (it’s not possible everywhere).
- Subfolder selection and file info is now also available in the resource manager.
- All resource selector listboxes now display horizontal scrollbars, if necessary (except battle animation and system set selectors in RM2k3)
- At the end of the name of fonts which should be replaced, you can now use the “*” wildcard to cover all suffixes, which may be localized on some systems (e.g. Tahoma Bold (en) <-> Tahoma Fett (de), etc.)

- The splash screen now stays in foreground when the console window and the main window are opened.
- RM2k9U now doesn’t need administrator privileges anymore to start RPG Maker 2000 on Windows Vista/7.
- File size has been reduced (splash screen existed twice – now the progress bar has been seperated).

- Option to block the keypatch. It was more problematic than useful and also failed under Windows Vista/7.

- With some versions of RM2k(3), there were display bugs at the new combobox and static control of resource selectors (background of drop-down menu was transparent, static control had white background).
- The jukebox hotkey (F4) blocked other hotkeys like Alt+F4.
- The help hotkey (F1) did not work in the main window.
- The file info in resource selectors did not always show “(No item selected)” if no item was selected.
- To avoid graphical glitches caused by bug in Wine, size contraints of the main window and the tool panel are now disabled in Wine.
- Font replacement now also works with Wine.
- If F4 was pressed while a resource selector or the resource manager was opened, an access violation would occur after closing it.
- Resource file extensions were case-sensitive.

Version 0.10 (10.08.2010)
- The loader now does a lot more error checking and handling.
- The debug mode can now be turned off or on in the loader, as well as the break option, which will break after injecting the DLL. This is for debug purposes only.
- A help text was added to the loader, and the version is now shown.
- Seventh animation type for events: “No steps when moving”. The event can change facing direction but will not change graphic while walking straight ahead.
- UIMod files now support string properties and nested properties (e.g. “$.Font.Height”). String lists can also be accessed using the property “Strings[index]” (e.g. “ComboBoxF.Items.Strings[3]” – index starts with 0).
- You can now have resources in subfolders (e.g. CharSet\Heroes\Alex). This does not work for the RTP.
- When the project path in the loader is starting with “.”, it is treated as path relative to rpg2009.exe’s directory (e.g. “.\SomeProject”)
- The filetype of the selected resource is displayed in resource selector windows.
- You can now set the filetypes the resource selectors should look for in the configuration file.
- RM2k Value! is now supported.
- You can now set the path of RM2k and RM2k3 in the configuration file (section “Loader”, keys “RM2000Path”, “RM2000ValuePath” and “RM2003Path” – use full path including filename).
If no path is set, RM2k9U will use the default path from registry as before.
- Hold Shift and Alt while RM2k9U splash is displayed to disable all RM2k9U features except support for multiple instances, font replacements, event prefix replacement and key patch manipulation.
However, in this mode, an error message will appear when closing the RPG Maker. You have to kill it using the “Stop” button in the loader.
- All resource selectors now have subfolder support, however, some still don’t have a combobox for selecting the folder: The importer/exporter form and in RM2k3 also battle animations and system sets, as well as “System2″ sets.
- You can now press F4 in any window to open the jukebox.

- The floating tool panel had to be widened by 12 pixels. Unfortunately, there is now a grey border at the right side, but before, the tile selector would display a horizontal scrollbar on some systems.
- VCL controls are now accessed using RTTI instead of WinAPI in most cases.
- Instead of calling the (hidden) original menu items for opening the database, etc., the VCL action handlers are now called directly. This is far more flexible and less buggy.
- The “Publish…” menu item was moved to the tool menu and renamed.
- In UIMod files, enumeration values must be written as string now (e.g. “FixedMemo1.ScrollBars=ssBoth” instead of “FixedMemo1.ScrollBars=3″)
- The debug output of the loader is now displayed below the splash screen instead of “overdrawing” the image. Also, the single steps of memory scanning don’t produce (unnecessary) debug output anymore.

- Silly message when pressing F1 (”Oh no, what shall I do?!”).

- When minimizing, the floating tool panel stayed visible. Restoring RM2k9U was then only possible by rightclicking the taskbar button and choosing “restore” from the context menu.
- When the “save” option was being enabled or disabled, the original menu was visible for a fraction of a second.
- When settings like MaxValue were overwritten using an UIMod file, the value wasn’t correctly set when the window was opened again.
- RM2k9U did not handle the case correctly, when a RPG Maker which is not supported by the multiple instance feature (e.g. Emperor Evil’s hack) was opened twice.
- Some strings (especially those used by the loader) were hardcoded and therefore not localizable.
- In resource selectors, the previous selection was not restored.
- Original splash screen was sometimes not completely hidden.
- Under certain curcumstances, the RPG Maker’s original menu bar could reappear.
- RM2k9U now works with openSuSE too.

Version 0.09 (21.04.2010)
- The loader now displays a message together with the exit code in case RPG Maker was terminated unexpectedly.
- “Inspector”, which allows exploring the VCL controls and their properties (as well as the properties of class properties) of every window of the RPG Maker. It can be opened with the pause key.
The inspector is only accesible when RM2k9U is running in debug mode, and it’s not localizable and has only rudimentary error handling. Localization of the inspector isn’t planned either, because it was implemented mainly for debugging.
- Additional debug output of the loader, which is displayed over the splash screen.

- Advanced language files are now called UIMod files. Along these lines, the UIMod files were moved from the “language” subfolder to a new “uimod” subfolder and the “Language” section in the configuration file has been renamed to “Interface”.
- Startup is now faster because the memory scan was optimized.

- Font replacement didn’t work with some languages like Japanese.
- RM2k9U now works with Wine (except the font replacement feature), but unfortunately not with all linux distributions – Ubuntu works, openSuSE doesn’t work.
- When the RPG Maker crashed, it wasn’t fully terminated and had to be closed using the task manager.
- When the zoom value or the layer was changed using the mouse (by the “zoom” tool or double rightclick), the menu and toolbar didn’t update.
- The label “This is not the final starter!” at the loader wasn’t fully visible on some systems.

Version 0.08 (14.08.2009)
- Fonts can now be replaced using a CreateFontIndirectA hook (can be set in configuration file).
This feature is used to use a standard font for all RPG Maker versions. Additionally, the bug where RM2k3 would display yen symbols instead of backslashes is corrected.
- In title bar, the game’s title is now displayed first.
- Event command prefix (”<>” by default) can now be replaced (can be set in configuration file).
- Last window positions will now be restored when starting.

- Font used by RM2k9U’s dialogs is now MS Shell Dlg instead of MS Sans Serif.
- Now, more than one advanced language file can be used.
- Now, INI files are used as language files instead of DLL files. This change was done because updating a DLL language file to the next language version would be nearly impossible without re-translating.
The language file can also contain RPG Maker-manipulating content like advanced language files. The dialogs, menus and strings of RM2k9U can be accessed just like the RPG Maker’s windows.

- Language versions.

- Grayed menu items could still be called using their hotkeys.
- When hiding tool panel using toolbar button, RM2k9U sometimes lost focus.
- Loader wasn’t thread-safe and could occasionally use a wrong project path or start the wrong RPG Maker version.
- Loading window content is now much faster because advance language files are now stored in memory.

Version 0.07 (20.07.2009)
- Option to block keypatch completely (can be set in configuration file).
- Section “[Any]” in advanced language file, RM2k9U will try to apply it on every window.
- Option “Settings…” in file menu. Currently, it only opens the configuration file for editing.
- Option to hide keypatch splash (can be set in configuration file).

- CreateRemoteThread is not used for injecting the DLL any more. Now, a code cave is used. This way, the DLL can be loaded right after creating the RPG Maker process.
- Zoom toolbar buttons are now combined in one button.
- Toolbar icons replaced by nicer ones.

- Unnecessary toolbar buttons.

- Because of the new DLL injection technique, hiding the main window and splash screen is now more accurate.
- The splash screen will now disappear when a message box opens while starting.
- Senseless recusive name checking of child windows removed, so database isn’t lagging any more.
- Section “[FormLcfMain]” in advanced language file didn’t work.
- Advanced language file was applied twice.
- Floating tool panel could be overlapped by main window after minimizing RPG Maker 2009 Ultimate.
- Floating tool panel was behaving strangely when moving.
- The hotkeys of the menu items “Close” and “Exit” were displayed in reverse order.

Version 0.06 (01.07.2009)
- Loader now remembers last opened project.
- Easter egg in database (answer to… ^^).
- The project title is now displayed in title bar.

- Now a CallWndProc hook is used instead of a CBT hook, which is now able to precisely detect finishing VCL windows’ initialization.
- RM2k9U now uses another way to find VCL windows, which also finds child windows.
- Loader is now part of the library. rpg2009.exe now just loads ultimate.dll and calls LdrInit.
- Startup is now a lot faster (unnecessary waiting loops removed, initialization optimized).

- The real version number is now shown in about dialog, because it’s far away from v1.00 Beta ;)
- When RM2k9U was started while an ordinary RM2k or RM2k3 was running, the already running RPG Maker would disappear and turn into a zombie process.
- Multiple instances did not work due to a little mistake caused by grubiness.
- Loader became unstable when starting RM2k9U failed.
- Tool panel appeared above all other windows until RM2k9U got focus for the first time.

Version 0.05 (28.06.2009) [About screen shows v1.00!]
- So-called “Advanced Language Files”. These are ordinary ini files, placed in “language” folder, containing information about how forms should be manipulated.
For example, the caption and max. value of a numeric edit control could be changed automatically, if set in this file.
- Language support using DLLs containing the translated menus, dialogs and strings. The language file can be set in the configuration file, it must be placed in the “language” folder.
EN.I has made a spanish language file for testing, but it has language version 1, so not all strings are present.
String #65000 contains the language as full word. String #65001 contains the translator’s name. String #65002 contains the 2-char language code. String #65003 contains the language version of the language dll.
- User tools can now be displayed in tools menu. The user tools must be set in the configuration file.
- Support for opening up to 100 instances, without conflicts. Unfortunately, this feature doesn’t work because of a little mistake.
- Floating tile selector and project tree, together called “Tool Panel”. You can show/hide the tool panel using F2. This behaviour can be disabled in the configuration file.
- Product registration at my server (Cherry Tree). This is just for statistical reasons, no personal data from your computer will be saved. The statistics can be viewed at
- Configuration file “ultimate.ini”. There is no configuration dialog yet, so you have to edit the file manually.

- Many internal reworking and improvement. Now I can start implementing the really interesing things.

Version 0.01 (27.04.2009) [About screen shows v1.00!]
First testing version


- Loader open chosen project in RPG Maker (RM2k or RM2k3).
- RPG Maker has a blue icon.
- A new splash screen is displayed.
- New menu and toolbar are displayed.
- New cut/copy/paste/delete buttons in toolbar.
- New about window.
- “Close project” closes the RPG Maker window only, “Exit” closes the loader too.

- Loader starts RPG Maker and then injects ultimate.dll. The library is then able to work as part of the RPG Maker, which means it has full rights on everything belonging to the RPG Maker (windows, hotkeys, …).
- ultimate.dll uses vclxchg5.dll and vclxchg6.dll to interact with VCL controls (RPG Maker is written in Delphi 5/6 and because of this it’s using VCL for all its GUI elements).

One Response to “Changelog”

  1. payment loan says:

    I bear look pro such a article pro a slow period, appreciation a luck.

Leave a Reply

You must be logged in to post a comment.