* Added Offline Training information.
* Added Regeneration Time information.
* Added Speed information.
* Added base stats/skills information (will show the players increase in a skill e.g. magic level 43 = 40 + 3 bonus from an item).
* Fixed the game feature constants in const.lua.
* Fixed a market error when logging out.
* Added removeTooltip function.
* Added some market offer constraints: offer creation exhaustion and now checks balance to validate sell offers.
* Fixed the depot updating issue (no longer requires updateDepotItemCount function)
* Can now silence the MarketProtocol messages.
* Few minor market fixes.
* Can now filter market items by vocation, level, slot type, and depot items.
* Added new bitwise lib for handling flag operations.
* Can now get/set local player vocation/premium (TODO: spell list).
* Tables can now have headers (the layouts will require some more work before read to be used formally).
* Finished Market offers display, Item details display, and Item statistics display.
* Added getSelectedWidget to UIRadioGroup class.
Market TODO:
* Create buy/sell offer.
* Purchase sale offer or accept purchase offer.
* More item filtering features (weapons, types, depot only, vocation, etc).
* Item searching feature.
* View your offers (history/current).
* UI touch ups and optimizations.
When otclient initializes it tries to find all .otpkg files inside the
current search paths (./ ./modules ./addons) and then add them
to the front of current search paths. This way .otpkg can contains
many modules/addons and modifications in a single file that otclient
can recognize.
otpkg files can be compressed files supported by PhysFS, which
are ZIP (.zip) and LZMA (.7z).
* Split game module into game and game_interface
* Move core_lib to corelib
* Move miniwindow to corelib
* Introduce init.lua script for initializing the client, giving much more flexibility
* OTClient is no longer Application derived and is much simpler