Commit Graph

753 Commits

Author SHA1 Message Date
Lemongrass3110
5b13dc7009 Added script command mail (#3043) 2018-04-12 00:46:01 +02:00
Lemongrass3110
7901c1b2ff Fixed a compile warning from homunculus autofeed
Thanks to @arby89
2018-04-04 22:20:34 +02:00
Jittapan Pluemsumran
aab5d54945 Added a config for disabling novice/summoner character creation (#3008)
* Added a config for disabling novice/summoner character creation.
* Summoner can no longer be created on pre-renewal by default.
Thanks to @Lemongrass3110 for the help
2018-04-04 16:40:03 +07:00
Lemongrass3110
aff70f6482 Added support for homunculus autofeeding (#3007)
* Added support for homunculus autofeeding
This feature is available in 2017-09-20bRagexeRE or later

Credits to @Asheraf in HerculesWS/Hercules#1898
2018-04-04 13:55:51 +07:00
Lemongrass3110
f338d53c2c Added support for clients up to 2018-03-07bRagexeRE (#2975)
Thanks to @4144 as always
Credits to @dastgir and the leaked 2015 dump for the quest packets
Thanks to @idamonli for testing and feedback
2018-03-14 23:05:01 +01:00
Aleos
d4c1a57fb5 Cleaned up atcommand accinfo leftovers (#2926)
* Follow up to 2746e0d
* Cleaned up some variable assignments when parsing the packet.
* Updated packet documentation.
* Freed message 220.
Thanks to @RadianFord and @Lemongrass3110!
2018-02-22 17:14:20 -05:00
Lemongrass3110
2746e0d351 Removed password output from atcommand accinfo
Thanks to @4144 for bringing this absurd thing to our attention in HerculesWS/Hercules#1975
2018-02-15 23:19:27 +01:00
Lemongrass3110
9d4fa62e65 Fixed a bug with pin code on 2018-01-24
The button to access pin code menu after entering the correct code was likely removed in this client.
It was rendered in between all the characters if we send out the PASSED state instead of the OK state.

Thanks to Bruno
2018-02-10 02:31:29 +01:00
Lemongrass3110
3a8c8a9da4 Cleaned up whisper code between map-servers (#2763)
Fixes #2760
Fixes #2762

Thanks to @LunarSHINING
2018-01-24 18:33:09 +01:00
Lemongrass3110
c4a57c571c Added support for 2018-01-17aRagexeRE
Fixed char select on 2018 clients
2018-01-24 00:41:38 +01:00
lighta
7a1a76a9a9 Fix #2425 Character variable lengths and char-server (#2647)
* Fix #2425 Character variable lengths and char-server

Medium term fox for crash on char-serv caused by too long character variable.
Add few error msg and safety.
Add npc/test/npc_test_longvar.txt as a basic test.

NB:
The config.in for max_colum size if not really set as best would either retrive that value from sql, or use the same config file to actually set the sql column size...
May be handle later with some kind of hibernate ORM.

Thanks to @Tokeiburu, @aleos89, @Lemongrass3110.
2017-12-19 15:13:55 -04:00
lighta
618b9356fc Fix #2591 spinlock issue. (#2637)
* Fix #2591 spinlock issue.
Add basic_test, for few integration test.
Add thread_local_storage support in cmake
Fix thread.c for linux and fix small typo
2017-11-26 22:30:17 -04:00
Lemongrass3110
a2e8d02752 Respect the default platform toolset (#2609)
With this you will not have to upgrade your solution everytime you clone a fresh copy of rAthena and the problem with having to stash between branch switches should also be gone.
If you want to compile it for another toolset you simply have to set the target toolset by yourself.
2017-11-19 12:19:36 -05:00
aleos89
c13f271a94 Resolved some compile warnings
* Fixes #2588.
* Clean up from 24b3509.
Thanks to @darhlism!
2017-11-08 13:36:01 -05:00
aleos89
728a29d435 Harmonized include guards
* Follow up to 24b3509 and c4a364b.
* Harmonized the include guards for char-server and map-server header files.
2017-11-07 10:22:03 -05:00
lighta
24b3509e53 Initial work for char server to C++ (#2567)
* Initial work for char server to C++

* Changes suggested from @Lemongrass3110

* Removes unwanted beginning white spaces.
2017-11-06 22:40:35 -04:00
lighta
e7e9cf6d73 Cleanup and harmonize cmake. 2017-11-03 03:42:29 -04:00
lighta
611dee0753 Fix cmake (#2554)
* Fix cmake
Thanks to @secretdataz for help. (cherry-picked from refactor)
2017-10-30 13:19:27 -04:00
Jey
ae0da362f8 Follow up to fe75aea
* Fixes a compile warning
* Thanks to @Haikenz
2017-10-06 02:23:56 +02:00
Aleos
fe75aeab50 Corrected character slot movement (#2452)
* Corrected character slot movement
* Resolves characters changing slots (on the char-selection screen) to the first empty slot rather than to the actual slot index.
Thanks to @Tokeiburu, @Lemongrass3110, and @Jeybla!
2017-10-05 18:31:30 -04:00
Lemongrass3110
7de7472782 Added support for some missing clients (#2458) 2017-09-28 23:52:56 +02:00
Aleos
fc115b85a1 Adjusted HP, Max HP, SP, and Max SP SQL defines (#2389)
* Fixes #2387.
* Adjusted column define from mediumint to unsigned int.
* Synchronized default values to 0.
* Adjusted the parser format specifier
* Adjusted the specifiers to support unsigned.
Thanks to @M45T3Ryu and @Lemongrass3110!
2017-08-31 10:49:48 -04:00
Lemongrass3110
3183c39cfe Fixed 2 compiler warnings
Fixes #2346

Thanks to @hurtsky
2017-08-20 15:01:05 +02:00
Lemongrass3110
d319ff7ca5 Fixed character creation for expired VIP accounts
Fixes #2333

Thanks to @Everade
2017-08-16 13:50:13 +02:00
Jittapan Pluemsumran
bfb92940d5 Fixed std::string reference being an incomplete type in inter.h
Fixes #2339
2017-08-15 11:17:16 +07:00
Jittapan Pluemsumran
cc1d26fe74 Inter server C++ conversion (#2322)
* Renamed inter.c to inter.cpp and refactored it

* Converted inter_server.conf to inter_server.yml

* Updated the makefiles

* Refactored inter-server storage handling logic

* Fixed a bug with wrong maximum being displayed
When you took out an item of the storage it would always display the maximum amount of the normal storage.

* Fixed a bug with storages that are over maximum

Thanks to @Akkarinage, @Lemongrass3110 and @Jeybla
2017-08-14 01:27:58 +02:00
Vincent Stumpf
f9c6b92a63 Fixes memory leak in char-server (#2335)
Fixes #2330

Allocated memory in various StringBuf instances was being cleared instead of freeing it completely.
2017-08-13 23:44:18 +02:00
Lemongrass3110
34aa59d82b Added missing MySQL column check for show_equip
Follow up to 983d164
2017-08-07 09:31:32 +02:00
Jittapan Pluemsumran
a46e012619 Made cbasetypes.h more C++ compatible (#2315)
* Removed inline macro in cbasetypes.h
* Renamed swap macro to avoid name clash with std::swap
2017-08-07 06:33:47 +07:00
Lemongrass3110
983d164b7d Fixed public equip switch not being saved
Fixes #2310

Thanks to @mrjnumber1
2017-08-06 13:49:29 +02:00
Lemongrass3110
70c14fa567 Fixed achievement handling in OnPCStatCalcEvent
Fixes #2314

Thanks to @CairoLee
2017-08-06 13:10:34 +02:00
Lemongrass3110
bbd42e7f12 Cleaned up character deletion code (#2296)
* Fixes #2271
Thanks to @Tokeiburu
2017-08-04 18:46:17 -04:00
aleos89
4c62f581a8 Corrected guild bound item retrieval deletion
* Corrected a SQL statement deleting all guild bound items in the inventory table for offline characters.
Thanks to @Canoe!
2017-08-01 14:20:58 -04:00
Vincent Stumpf
3a55613537 Allows families to share exp (#2280)
* Fixes #2265
* Family is Mother + Child, Father + Child, or Mother + Father + Child
Thanks to @vstumpf!
2017-07-27 13:23:25 -04:00
Aleos
7f5411da07 Initial release of the Achievement System (#2044)
* Information based on kRO patch notes.
- http://ro.gnjoy.com/news/update/View.asp?seq=163&curpage=1
* Includes Title System which is integrated into the Achievement System.
* Includes RODEX integration for rewards.
* Added new atcommand reloadachievementdb.
* Added new script commands achievementinfo, achievementadd, achievementremove, achievementcomplete, and achievementexists.
Thanks to @Lux-uri, @RagnarokNova, @Lemongrass3110, and @Tokeiburu for their help!
2017-07-27 09:33:03 -04:00
Lemongrass3110
be15b62912 Follow up to a3c0590
Added a missing field check
2017-07-24 10:35:44 +02:00
Lemongrass3110
f0ab8d2a52 Overhauled and dropped packet db (#2263)
Adds support for a lot of missing clients and features almost all clients from 2016 and 2017
clientinfo.xml's version value will be ignored from now on
By setting PACKETVER the server will configure everything else on it's own from now on
Dropped is_clientver script command
And a lot more
2017-07-15 22:45:12 +02:00
Lemongrass3110
6e2ab60016 Fixed a warning for guild master change time
Fixed #2246

Thanks to @anacondaqq
2017-07-14 00:15:24 +02:00
Lemongrass3110
a3c0590508 Added some checks to guild leader change
Introduces two new configurations:
1) Allow guild leader changes in WoE (yes/no)
	Default: no
2) Delay between the changes (in minutes)
	Default: 1440 minutes = 1 day

Follow up to b51617c
2017-07-02 23:40:30 +02:00
Lemongrass3110
da036de523 Follow up to 4a2574c and 76786e2 2017-06-27 18:44:23 +02:00
aleos89
20908ee9c0 Replaced some final uses of rand()
* Replaced some final left overs of rand() with rnd() from MT19937AR.
2017-06-26 14:36:31 -04:00
Jey
809fc35b0e Follow up to 4a2574c.\r\nThanks to @Jeybla! 2017-06-26 01:24:54 +07:00
Jittapan Pluemsumran
4a2574c599 Migrate core source files to C++. Add yaml-cpp project as dependency (#2207)
By updating to this commit, Linux users have to regenerate Makefiles by re-running the configure script.

* Added yaml-cpp project as a 3rdparty library
* Migrated source files core to C++
* Updated configure scripts
* Make Linux installations compile *.cpp files
* Made server components' main source file C++
* Also made headers CPP-aware.

* Added basic C wrapper for yaml-cpp library
* YAML-node path is delimited by periods.
* Basic integer types and string are supported.
* Strings returned from this wrapper have to be freed with malloc.h::aFree
* Arrays (sequence) is supported with iterator wrapper.
* Remember to free every wrapper you create!

* Add yaml-cpp as dependency of common project
* Made the repo not ignore *.yml files

Thanks to @aleos89 and @Lemongrass3110.
2017-06-25 23:33:24 +07:00
Lemongrass3110
3acf1aada3 Follow up to 58776da
Fixed a few compiler warnings.
Thanks to @RadianFord
2017-06-21 15:07:37 +02:00
Lemongrass3110
58776da1ac Basic RODEX support (#2186)
Adds basic support for the new mail UI RODEX.

Fixes #1567

Thanks to @RagnarokNova, @Atemo, @aleos89 and everyone else that helped me with this.
Additionally I would like to thank @jezznar and @hazimjauhari90 for their good testing in the pull request.
2017-06-21 00:00:29 +02:00
Lemongrass3110
76786e2977 Cleaned up visual studio project minicore (#2166)
Cleaned up leftover defines(PCRE_SUPPORT and FD_SETSIZE) in the projects
2017-06-20 22:25:24 +02:00
aleos89
128259407c Corrected a SQL buffer type for bound items
* Resolves the equip value of bound items being truncated.
Thanks to @Tokeiburu!
2017-06-08 09:42:54 -04:00
Lemongrass3110
9412ebb9f7 Added support for 2016's guild packets
Thanks to @mrdiablo for his help.
2017-06-03 14:08:06 +02:00
Aleos
ce4ebbe5bc Updated leftover pet variables to 64k support (#2129)
* Small follow up to 7cd82d0.
* Fixes #2121.
* Updated pet egg and pet equips to support 64k values.
Thanks to @TrueNoir!
2017-05-16 22:28:17 +02:00
Lemongrass3110
562d6d1e34 Added automatic clan member removal (#2135) 2017-05-10 23:27:20 +02:00