ROExt 'plugin' for Ragnarok Online, version 2009.2.17
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Features outline
================
1) Mouse freedom - in window mode you can freely move mouse cursor out of RO.
2) RO window can be set to any size and to be borderless or always on top.
3) Key remapping - 4 extra direct keys for skills, access for all 3 skill sets without /bm and ability to use skills from 3-5'th mouse buttons.
4) CPU usage reducing features - for better multiclient performance.
5) Overriding used codepage - allow client to be truly international and support all languages.


Installation
============
Windows NT (2000/XP/2003/Vista/2008/7/2008R2) is required, will not work on Windows 9x.
Close all RO clients, copy dinput.dll and dinput.ini to your RO folder, overwrite if files are already present.


Uninstallation
==============
Close all RO clients, delete dinput.dll and dinput.ini from your RO folder.


How to distinguish ROExt from other mouse freedom plugins
=========================================================
ROExt is very small (current version is 10k), in file properties you can see its version and copyright field is 'Ruri'.


Features description
====================

1) Mouse freedom
----------------
ROExt implements complete DirectInput emulation for Ragnarok instead of hacking into it like other mouse freedom plugins do. This results in much better stability and performance.
Enabled by default, can be disabled by '-mf' command line option.

2) RO window size
-----------------
ROExt can change Ragnarok window (in window mode) to any size you want, make it be always on top and remove the title so it has more useful space and can't be accidently dragged.

Syntax:
-w[t][l]X,Y,WIDTH,HEIGHT

t - always on top.
l - lock the window and remove the title, by default maximizes window size to cover all screen except task bar.
X,Y - position of top-left window corner.
WIDTH,HEIGHT - size of the window.

Example, make window borderless and cover all screen except task bar:
C:\Games\Ragnarok\ragexe.exe -wl

Example, change window size to be 800x600 starting at left-top screen corner and make it always on top:
C:\Games\Ragnarok\ragexe.exe -wt0,0,800,600

3) Key remapping
----------------
Enabled/disabled by '-key' command line option, for classic (not Renewal) client only:
Break, F10-F12 work as F6-F9 of next skill set
Ctrl and Alt switch current skill set 1 and 2 forward when pressed and back when released
F12 moved to Shift+Esc
F10/F11 moved to Alt+Insert/Delete

Enabled/disabled by '-mb' command line option, requires mouse freedom:
Middle and two extended mouse buttons work as F3-F5 of next skill set when '-key' remapping is active and as F24-F22 otherwise.

Enabled/disabled by '-altf4' command line option:
Closing RO is moved from Alt+F4 to Alt+PrintScreen, so Alt+F4 can be used as regular key.

Work always:
Ctrl+W minimizes RO window.
ScrollLock is disabled and doesn't take screenshots (PrintScreen still does).

4) CPU usage reducing
---------------------
There are two modes of CPU usage reducing:
a) Light - activated by turning on ScrollLock, affects all working clients simultaneously, only for Windows 2000/XP/2003.
b) Heavy - can be manually toggled on/off by Ctrl+S or automatically. Automatic mode (which is enabled/disabled by '-cpu' command line option) turns on when RO window is inactive.

5) Codepage override
--------------------
Used codepage can be changed by -cpCODEPAGE command line option, -1 for no override.
Can be set to 65001 (UTF-8 Unicode), so all languages are supported at the same time.

Example:
C:\Games\Ragnarok\ragexe.exe -cp65001


Notes
=====
Compatibility: ROExt doesn't modify any part or RO client (even in memory) so it should work with all clients, even with packed/protected.

All options defaults can be changed in dinput.ini file. Command line options inverse on/off switches and override numerical defaults.

For best multiclient performance it's recommended to set all background RO clients into Ctrl+S mode (or just enable automatic CPU usage reducing) and turn on ScrollLock.


How to specify command line options
===================================
Command line options can be specified in the 'Target' field of shortcut for Ragexe.exe. They will not work if you put them in shortcut for Ragnarok.exe.
