Commit Graph

113 Commits

Author SHA1 Message Date
Henrique Santiago a2db210012 Create stdext net, changes to outfit and exit windows. 2012-08-06 22:11:42 -03:00
Eduardo Bart 54f4e2b801 Fix console error 2012-08-06 20:54:56 -03:00
Henrique Santiago 18c882f1a0 Allow list bindings 2012-08-05 10:56:15 -03:00
Henrique Santiago fb7ab21e71 Move RSA class to Crypt 2012-08-04 10:54:35 -03:00
Henrique Santiago 4e0642c814 Removed GMP and added OpenSSL. Rsa class might be moved to Crypto later. 2012-08-03 13:02:01 -03:00
Henrique 4954d5fecb Some mysql stuff 2012-08-03 08:44:42 -03:00
Henrique 7116f6dea1 More sql stuff 2012-08-02 08:36:21 -03:00
Henrique 3b345cf868 Add setXteaKey function 2012-08-01 21:25:11 -03:00
Henrique 12e6602925 Bind connection and fix protocol recv without xtea 2012-07-30 17:12:38 -03:00
Henrique c969f5209f Some changes to server compatibility 2012-07-30 16:40:03 -03:00
Eduardo Bart e0431021b5 Huge engine change, replace all std::shared_ptrs
Create a new shared pointer type stdext::shared_object_ptr and stdext::shared_obj
using boost::intrusive_ptr

Advantages:
 * half memory usage
 * faster and lightweight

Disadvantages:
 * using weak_ptr is not supported anymore
 * compiling seems slower
2012-07-29 00:34:40 -03:00
Eduardo Bart c795eb91ab More multiprotocol support 2012-07-26 03:10:28 -03:00
Eduardo Bart 1c3e630237 Improve modules and sandbox system 2012-07-23 21:22:38 -03:00
Eduardo Bart a11d6e501e More refactoring and some changes
* Move protocol safeSend() to send()
* Bind some new functions
* Refactor lots of enums
2012-07-20 02:52:57 -03:00
Eduardo Bart a6d53532d2 Rename ThingType classes 2012-07-19 22:25:55 -03:00
Eduardo Bart eb24d6776e Multi-protocol
Lots of chagnes to add multi protocol flexibility, not really
completed yet, still have to rework text messages opcodes and other stuff,
so this still a working in progress feature

* Rework dat reader, the dat reader can now
* dinamically detect dat version
* Split game into gamelib and game_interface
* Lots of other minor changes
2012-07-17 20:53:19 -03:00
Eduardo Bart bc81c9c8bf Packages system with .otpkg files
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).
2012-07-16 16:35:14 -03:00
Eduardo Bart ec5106e7ce Fix skin texture caching 2012-07-14 18:30:00 -03:00
Eduardo Bart 70115e391d Merge fallen changes 2012-07-14 14:22:18 -03:00
niczkx 992cbf9d1d mapeditor changes 2012-07-14 16:20:38 -07:00
Eduardo Bart e3298d561c Rework application class and framework
Make otclient's framework flexible enough to run console apps like
servers, so this mean is possible to build otclient versions without
graphical interface and use it's framework to code servers
2012-07-13 22:23:11 -03:00
Eduardo Bart c0c2411854 Improve minimap 2012-07-12 16:16:23 -03:00
Eduardo Bart a1644cad29 Minor g_app lua binding fix 2012-07-09 13:36:46 -03:00
Eduardo Bart 4ac3ec8344 Minor fixes for releasing otclient 2012-07-08 13:46:09 -03:00
Henrique Santiago 6a85c31a77 Some particle stuff, far from done 2012-07-06 02:01:13 -03:00
Eduardo Bart 98a1b611bf Refactor for documentation 2012-06-25 19:19:17 -03:00
Eduardo Bart c5674d10ba some refactoring 2012-06-21 20:58:18 -03:00
Henrique db4ced65eb Fix skin and locale at first run, adding new locale to combobox, exit function double call, enable sound option 2012-06-20 03:31:52 -03:00
Eduardo Bart 8761220deb Refactoring and flexibility changes
* 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
2012-06-19 21:16:52 -03:00
Henrique Santiago 4bdcae2f8b improvements to skins 2012-06-19 05:46:49 -03:00
Eduardo Bart 5a048eb7ea Minor graphics fixes 2012-06-18 20:58:56 -03:00
Eduardo Bart ad04043a88 Lua binder compability changes
* A lot of changes in lua binder to compile with clang's libc++
* Add more portability to luabinder
* Remove const keyword from bound lua functions
* Deprecate std::bind usage with luabinder replace its usage with registerSingletonClass/bindSingletonFunction for binding singleton classes
* Fix a bug in lua binder where calling functions with bil object would make the client crash
* More fixes to compile with clang
2012-06-17 12:21:46 -03:00
Eduardo Bart cae4d46a7d implement style priority with # syntax 2012-06-14 21:30:46 -03:00
Eduardo Bart 83f86eac64 experimental map shaders 2012-06-14 15:26:55 -03:00
Eduardo Bart 8cef6463b3 improve miniwindow moving 2012-06-11 11:10:03 -03:00
Eduardo Bart 1a7f2a44fc graphics fixes and improvements 2012-06-08 21:40:41 -03:00
Henrique Santiago 4f9ca15ef0 bind clock, fixes to waiting list 2012-06-08 17:58:24 -03:00
Eduardo Bart a8b9dcbf17 bind new system information functions 2012-06-06 22:01:49 -03:00
Eduardo Bart 70ea0361b6 new useful function, cycleEvent 2012-06-06 17:14:53 -03:00
Henrique Santiago 6b9943447a protocol login at lua 2012-06-05 16:16:57 -03:00
Eduardo Bart e5000fa577 encrypt password and account number
* the encryption uses a unique machine key, this means that if anyone steals config.otml with a saved password,
he will not be able to decrypt the password without the machine UUID key
* the encrypt uses a simple XOR encryption method, encoded with base64 and adler32 summing
2012-06-04 09:38:25 -03:00
Eduardo Bart 079b7a5c41 allow to change graphics engine in options 2012-06-02 18:41:20 -03:00
Eduardo Bart 59a80ffaf9 scroll when focusing widgets 2012-06-01 21:38:26 -03:00
Eduardo Bart bd2faabe99 graphics optimization feature inspirated by diablo3 engine
* the rendering now consits of two panes
- the background pane (for animated stuff like the map)
- the foreground pane (for steady stuff, like UI)
each pane has it own max FPS and works idependently
this may increase graphics performance on many platforms
2012-06-01 16:39:09 -03:00
Eduardo Bart 4c80d783d6 rewrite and reoganize tools functions
* create stdext namespace which contains additional C++ algorithms
* organize stdext in string, math, cast and exception utilities
2012-05-28 10:06:26 -03:00
Eduardo Bart 946ec64e7f new protocol system fixes 2012-05-14 21:04:04 -03:00
Eduardo Bart 7bca3de8eb allow usage of network messages in extended opcode 2012-05-14 20:13:48 -03:00
Eduardo Bart 2478809945 add lua flexibility for protocol
* use shared_ptr for InputMessage and OutputMessage and bind them
* allow sending network messages from lua
* implement extended opcode
* use own OS type  for otclient to allow server side detection
* fixes in input event bot protection
* move RSA to input/output network messages
* allow to capture opcodes before GameProtocol parsing with the event GameProtocol.onOpcode
* fixes in lua std::string pop/push to allow byte buffering
2012-05-14 18:39:31 -03:00
Eduardo Bart 04eca969fa fix compile issue for win32 2012-05-09 20:04:09 -03:00
Eduardo Bart fea34a41ea trade working
* use only mouse left release in checkboxes
* remvoe duplicated code in radiogroup
* implement player trade
2012-05-09 09:24:35 -03:00