1058 Commits

Author SHA1 Message Date
Aleos
994b406575 Merge pull request #889 from rathena/feature/random_start_point
Implemented Randomized Start Point
* Fixes #805.
* Character's will follow somewhat of the official method of a 'random' start point at their first login.
* Official servers use load balancing for setting the start point dynamically according to user count, whereas we at rAthena wanted to stay simple since we don't believe you guys will need this kind of load balancing for new characters.
2016-01-22 12:23:22 -05:00
aleos89
b98fe0b597 Cleanup
* Moved parsing for start_point and start_items to separate functions.
* Moved startitem struct to mmo.h and declared start_items in the charserv_config.
* Adjusted the MAP_DEFAULT_NAME for pre-renewal to the correct map.
2016-01-20 10:18:26 -05:00
Napster
05cb1607c5 Follow up 3f26c3d
* forgot change packets version, stick on 20130807
2016-01-12 11:06:40 +07:00
Napster
d70b1734c8 Add support body style implementation
* This feature require the client support before 2015-05-13 or newer
   Make sure you data&lub support for this

  note : read info to https://rathena.org/board/topic/104205-2015-client-support/

  Special Thanks you to Rytech, @aleos89
2016-01-12 01:55:30 +07:00
aleos89
b7eb62ffb4 Follow up to a54bb65
* Fixed the config format.
* Adjusted atcommand go to properly place players on renewal mode.
2016-01-08 13:33:24 -05:00
Lemongrass3110
4871dab7de Fixed #854
Thanks to @theultramage for reporting and pinpointing the error as always!

Commiting this one for @aleos89, he fixed it for you guys.
2015-12-30 21:20:25 +01:00
Napster
71c6896541 Add New Skill(Pushcart Decoration)Packet Implemented
* This feature require the client support before 2015-08-26 or newer
  user can select cart for change to new design
​  Make sure you data&lub support for this

  Special Thanks you @Lemongrass3110, @renniw
  This is a Christmas gift for the rAthena people.
2015-12-24 16:29:40 +07:00
Lemongrass3110
c28c9f61be Removed maximum packet size from configuration
It's a source side define now, because you should really only change this if you know what you are doing.
Beautified the number for pre 2013-12-23, thanks to @dastgir.
Fixed a warning which was added by the last commit and was issued with the default settings, thanks to @cydh.

Follow up to f4b42b2
2015-12-09 19:28:44 +01:00
Lemongrass3110
f4b42b26fb Updated the maximum size for packets
According to 3ceam revision 764 clients from 2013-12-23 on can deal with bigger packets. 3ceam uses 65636 as maximum, but we decided to stick with the maximum for unsigned shorts. Thanks to Rytech!

Please consider staying with the default value, because we will remove this configuration soon and make it a source side define which is depending on the packetversion define.
2015-12-08 17:35:58 +01:00
Lemongrass3110
a2270aad71 VS 2015 support(commit 2/4)
Changed the compiler to VC14 and made it compileable.
2015-11-29 14:18:42 +01:00
icxbb-xx
d2d1fd21d3 *Add full Support 2015 client
- New EquipPackets Support v6
- add missing some old packets

Thank you to @Rytech and 3Ceam http://sourceforge.net/projects/v1-3ceam/
2015-11-21 21:33:16 +07:00
lighta
4342221a1e Follow up a7b8fd4a5d33de75ae
Fix an invalid check on skill_parse_row_requiredb() for EQUIP_REQUIRE
Fix itemdb_group_free call in itemdb_read_itemgroup_sub using real
va_list, (preventing compilation on ARM)
Add some notes.
2015-11-17 00:21:05 -05:00
lighta
09ddcdfe2a Merge pull request #731 from lighta/master
Type enforcement
2015-11-15 19:14:39 -04:00
Lemongrass3110
085cd98bfd Merge pull request #748 from rathena/feature/pincode_extension
Feature/pincode extension
2015-11-09 23:47:18 +01:00
lighta
46d417a458 merge master into cppcheck 2015-10-30 02:48:40 -04:00
lighta
05aa1ffc8c Type enforcement
Change the type of
father_id,mother_id,child_id
mail.zeny,mail.send_id,mail.dest_id
from int to uint32, as this is their DB representation anyway and most
of those are mapped to char_id which is uint32.
This should remove the need of implicite cast and improve security
overall.
2015-10-29 23:43:48 -04:00
Cydh Ramdh
055f6d86a2 Follow up 214ff17c1955aaaab34c88faea0dedb97600660e, fixed errors and warnings in MSVS
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-10-21 20:29:46 +07:00
lighta
214ff17c19 Replace macro max and min, by some inline functions :
-To avoid having long operation repeated twice, peoples shouldn'tuse long operation into does macro but they do so...
-To avoid double increment or thing like such.
-Yes this involve some implicite cast sometime, but that still better then redo 10 dereference...
2015-10-21 04:12:01 -04:00
lighta
b480cb3d47 Valkyrie example
Move valkyrie sample config into conf/
Change path for relative path so that it could be applied for all.
tested with : 'valkyrie -f valkyrie_sample.cfg'
Change include in common, true that complicate move for those file but
will facilitate the parsing for some ide.
2015-10-21 01:59:32 -04:00
Lemongrass3110
5a49b70ba4 Fixed an issue where the memory leak log name was null on Windows. 2015-10-20 20:25:15 +02:00
aleos89
ce7aacb9a4 Base Status Stats Fix
* Fixes #562 - Fixes Crystallization not taking base VIT into account correctly.
* Confirmed on Aegis that Base Status Stats are NOT affected by job, skill, or item bonuses. These bonuses are stored in Battle Status.
2015-10-19 14:28:06 -04:00
Lemongrass3110
bba5e4f425 Added compile time checks whether to enable or disable pincode system code 2015-10-07 20:57:37 +02:00
Lemongrass3110
a760e01c59 Follow up to 78b6c15
Fixed a possible buffer overflow in mapindex.c
2015-10-02 20:31:07 +02:00
Cydh Ramdh
d0d14d04be Just spaces in cli.c
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-09-23 22:01:17 +07:00
aleos89
039e1b65a3 Quest System Update
* Added support for the new quests that grant item drops from mobs.
2015-09-17 13:24:42 -04:00
Cydh Ramdh
2fc20c460d Follow up f669072e854ae5b67606788b81e16a5f6b92d236 and fa40773e8222cb5d6ac66782f8136b9833c8760d
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-09-16 20:00:49 +07:00
Cydh Ramdh
f669072e85 Fixed #638
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-09-16 16:06:09 +07:00
Napster
e56f329d5d Follow up fa40773 :
* Revert change some code
2015-09-13 08:48:53 +07:00
Cydh Ramdh
d301d1ecb3 * Fixed #633 compile warning. Thank @tmav94
* Move out `enum chrif_req_op` to socket.h so can be used too for `char_mapif.c`

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-09-12 10:18:32 +07:00
Cydh Ramdh
e933db556f Checked some preprocessors on mmo.h and core.h
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-09-09 21:05:07 +07:00
Aleos
6295c77d39 Merge pull request #457 from rathena/feature/script_engine_upgrade
Script Engine Upgrade
* More information here: https://rathena.org/board/topic/102946-script-engine-upgrade/
2015-08-31 14:26:15 -04:00
Napster
e444270b0a Follow up to 53868d5
* Fixed #600, Hotkey Rotate Packet Implemented, Thank You @dastgir

Credits : Hercules 2b4b33b06a
2015-08-28 16:32:23 +07:00
aleos89
9738c825cc Follow up to f53916e
* Fixed remaining memory leak.
* Cleaned up and optimized a few more ERS allocations.
2015-08-25 10:31:38 -04:00
aleos89
f53916e060 Script Engine Fixes
* Cleaned up db_vdestroy errors at server shutdown.
* Expanded the ERS system. Thanks to Hercules.
* Added ERS to the database trees to speed up iterator memory allocation. Thanks to Hercules.
2015-08-21 15:16:52 -04:00
Heler
9d47aa4ad9 Fixed warnings 2015-07-16 19:46:20 +03:00
Cydh Ramdh
2ae7862e84 Console Message Log update
* Added `console_msg_log` for char-server and login-server.
* Added `console_log_filepath` to determines log filepath.
  * Default for map_athena.conf is `./log/map-msg_log.log`, removed the hardcoded filepath.
  * Default for char_athena.conf is `./log/char-msg_log.log`.
  * Default for login_athena.conf is `./log/login-msg_log.log`.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-06-30 10:58:07 +07:00
aleos89
35cd68873b Merged with master 2015-06-26 10:36:40 -04:00
Cydh Ramdh
e6d5b09b06 Follow up 3d9c6e7763c3d257593ba159a18dffc435b5ff06
* Added 'missing' packets for 2015-10-22 (51).
* Packet keys for packet_ver 50 and 51.
* Fixed memleak from Roulette items.
* Corrected date2version cases.
* Doc update, packet_interserv.txt.

Fixed wrong constant value for bSubSkill and bSubDefEle

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-06-20 11:59:29 +07:00
aleos89
3d9c6e7763 2014 Client Support
* Implemented the Roulette Game feature.
* Implemented per-character sex change feature.
* More info: https://rathena.org/board/topic/102247-2014-client-support/
- Special thanks to HerculesWS/Hercules@239d480 for the base.
2015-06-19 14:07:34 -04:00
aleos89
0696125b82 Script Engine Upgrade
* Upgraded the script engine variables to no longer be limited.
* Increased array limit from 127 to 2 billion.
* Improvement in overall speed and storage size.
* All variable types now support arrays.
- Merge from HerculesWS/Hercules@82b583b. Thanks to those who worked on it.
2015-06-11 10:44:13 -04:00
Lemongrass3110
a674869113 Fixed a lot of scanf issues reported by rathena's cppcheck 2015-05-13 14:47:07 -04:00
Cydh Ramdh
5ed75dc877 * Merge pull request #294 and its clean up
* Moved Bank Vault from `login` table (login-server level) to `global_reg_value` as #BANKVAULT (char-server level)
  * IMPORTANT: Read & import upgrade_20150408.sql
* Follow up cbdc0127, another fix for Point Shop NPC.
* Follow up 022d7289, corrected picklog initial for bound items that removed when member of guild/party or guild/party is broken. Please import upgrade_20150408_log.sql

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-04-09 01:26:17 +07:00
aleos89
bae469e6c6 Follow up to 9d247d8
* Disable Packet Obfuscation if it's enabled and client version is below 2011-08-17.
2015-03-14 14:31:04 -04:00
Cydh Ramdh
f05119b36c Packet Obfuscation support
* Enable it by uncomment `#define PACKET_OBFUSCATION` in mmo.h
* Obfuscation keys are defined in db/packet_db.txt, each packet_ver has their own default keys (for temperory lookup) in `packet_keys:` right after `packet_ver:`
* Keys can be refined (user-defined keys) by defining the keys in `packet_keys_use:` in file db/[import/]packet_db.txt
* This feature only for client 20110817 or newer
* `@reloadpacketdb` won't changes the keys, so make sure define everything before run the map-server.

Thank to @icxbb-xx, @aleos, 5a942993dd

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-01 15:16:56 +07:00
Cydh Ramdh
714e670327 Follow up 20695d629a59310a9e6a04c2234bbf4870609d90
* Fixed #304
* Fixed #308

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-27 02:49:19 +07:00
aleos89
d3625e5c10 Cleaned up merge issues. 2015-02-21 15:43:58 -05:00
Cydh Ramdh
c92915b6cd DEFAULT_MAP clean up
* Moved hardcoded `DEFAULT_MAP`, `DEFAULT_MAP_X`, and `DEFAULT_MAP_Y` definition to conf/char_athena.conf: `default_map`, `default_map_x`, and `default_map_y` for `DEFAULT_MAP`
* Default map existance check only will be checked once, after map_index finished load by char-server, previously map-server also do a check that maybe cause unnecessary debug message
* `instance_start` value should be init'd with `map_num` not by `map_num + 1`. I was causing send extra 1 empty map to char-server.
* A little clean up in `chmapif_parse_getmapname()` and `doc/packet_interserv.txt`

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-19 15:02:14 +07:00
Cydh Ramdh
d5b271b926 Merge pull request #289 from rathena/feature/bonus_HPSP_VanishRace
Bonus HP/SP Vanish updates:
* Added 'bonus3 bHPVanishRaceRate,r,n,x' (2074) and 'bonus3 bSPVanishRaceRate,r,n,x' (2075)
* Corrected documentation about 'bHPVanishRate' and 'bSPVanishRate', rate should be n/100%, 10000 for 100%
* 'bHPVanishRate' and 'bSPVanishRate' applied regardless the target's Race and map (before, if target is player bHPVanishRate only works in PVP/GVG maps)
* Changed Velum item scripts:
  * (1294) Velum_Scare to 'bonus3 bSPVanishRaceRate,RC_Player,10000,10;'
  * (1395) Velum_Buster to 'bonus3 bSPVanishRaceRate,RC_Player,10000,10;'
  * (18113) Velum_Arbalest to 'bonus3 bSPVanishRaceRate,RC_Player,10000,4;'
  * (21002) Velum_Katzbalger to 'bonus3 bHPVanishRaceRate,RC_Player,10000,8;'
2015-02-13 16:45:23 +07:00
Cydh Ramdh
bf6d2f0197 Merge pull request #263 from rathena/cleanup/bonus_script
Bonus Script clean up
* Removed fixed array size (MAX_PC_BONUS_SCRIPT) of bonus_script on players, changed to link list.
* Changed fixed script string on player's bonus_script to StringBuf, reduce memory usage for each connected player.
* Added new flags to expand duplicated script and flag to allow duplicate script.
* Reduced buf length from 1024 to 512 on bonus_script_data (used for saving/loading bonus_script from char-server). Still, MAX_PC_BONUS_SCRIPT is used to gives limit data can be loaded.
* Merged 'pc_bonus_script_clear_all' to 'pc_bonus_script_clear'
* Now bonus script will be saved on auto-save timer or other save request, prevent losing the bonus when "something" happen. But, saving when player is quitting will removes the bonus that won't be saved on logout.
* Fixed Superstar_Snack (22843) and Sealed_Dracula_Card (22846) fields

NOTE:
Please import 'upgrade_20150131.sql' for `bonus_script` table changes

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-13 16:37:28 +07:00
Cydh Ramdh
4cf7acc652 A follow up of 2ef7a7daa8f7fdc74cf4e9b3815c1345c777a06d
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-13 15:19:29 +07:00