72 Commits

Author SHA1 Message Date
Jittapan Pluemsumran
228f0c5e3b Export some more constant for multiple purposes
- MAX_* for iteration purpose
- INT_MIN and INT_MAX for sanity check
- NAME_LENGTH / PASSWD_LENGTH for in-game account manipulation
2016-09-29 18:28:24 +07:00
Cydh Ramdh
79b39e5a1d Exports constants
* `SI_MERMAID_LONGING`
* `SI_MAGICAL_FEATHER`

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-09-21 19:35:59 +07:00
Cydh Ramdh
b46e4332df Item Updates and New Status Changes (#1539)
* Item Updates
* Added new Status Changes
* Implemented effect for respective items
  * 12874,Frost_Giant_Blood: SC_GVG_GIANT
  * 12875,Golem_Stone: SC_GVG_GOLEM
  * 12876,Elf_Tear_Stun: SC_GVG_STUN
  * 12877,Elf_Tear_Stone_Curse: SC_GVG_STONE
  * 12878,Elf_Tear_Freezing: SC_GVG_FREEZ
  * 12879,Elf_Tear_Sleep: SC_GVG_SLEEP
  * 12880,Elf_Tear_Curse: SC_GVG_CURSE
  * 12881,Elf_Tear_Silence: SC_GVG_SILENCE
  * 12882,Elf_Tear_Blind: SC_GVG_BLIND
* Thanks Divine-Pride.net

Signed-off-by: Cydh Ramdh <cydh@pservero.com>

* Follow up 9267a32d8c4828bde19f2fe80f83aeec7056b18f
* Updated Status Change doc
2016-09-09 05:54:22 +07:00
Atemo
23b271c958 Initial release of nocostume map flag (#1137)
* Initial release of `nocostume` map flag to follow official `DISABLE_COSTUMEITEM` map property.
* Added map flag `nocostume`, current confirmed maps are TE Castles and Guild Dungeons.
* Fixed #815.
* Stores `setlook` values so it won't be removed on `nocostume` mapflag

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-09-06 11:34:36 +02:00
Jittapan Pluemsumran
a79d065973
Implemented new item bonuses bRegenPercentHP and bRegenPercentHP 2016-08-31 23:37:57 +07:00
Lemongrass3110
5cae674b05 Used defined variable names for constant exports (#1417) 2016-08-25 15:59:18 +02:00
aleos89
371f619cb4 Updated status icons to latest kRO
* Added new status icons.
2016-08-18 14:21:23 -04:00
Cydh Ramdh
8da71a126d * Fixed memory leaks from item random options, follow up f296409ada211a0aa89863db4d9603054845cf65
* Clean up doc and array index check for `getequiprandomoption`, `setrandomoption`, follow up 8deabb157ae9e58db86d0383c34dba7211780b6a
* Exported CARD0_FORGE, CARD0_FORGE, and CARD0_PET for `getequipcardid` result.
* Add `SCSTART_` references in `sc_start` doc.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-08-16 11:14:33 +07:00
Lemongrass3110
1e2e37a9d4 Some small cleanups 2016-08-15 12:15:35 +02:00
Jittapan Pluemsumran
8deabb157a
Implemented basic script commands to apply options to equipped item. 2016-08-15 17:04:06 +07:00
Jittapan Pluemsumran
f296409ada
Initial Release of Random Option System
* Added basic support for random option system
* Don't forget to import upgrade_20160814.sql and upgrade_20160814_log.sql to make your existing rAthena installation functional!
2016-08-14 22:21:07 +07:00
Lemongrass3110
a87d86cb11 Fixed getinventorylist documentation
Fixes #1497.
Thanks to @Darkelfen for reporting it.

Additionally exported the EQP_* constants into the script engine.
Replaced some hardcoded equip positions with their respective constants.
2016-08-14 00:26:22 +02:00
Jittapan Pluemsumran
5f981bc1b1
Implemented bNoMadoGear item bonus
* Support for upcoming Charleston cards
2016-08-07 18:20:30 +07:00
Cydh Ramdh
29379c3ea5 Added script bonuses in order to support official AddReceiveItem_Equip n
* `bonus2 bDropAddRace,r,x;` : Adds x% to player's drop rate when killing a monster with race r.
* `bonus2 bDropAddClass,c,x;` : Adds x% to player's drop rate when killing a monster with race c.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-07-19 16:43:05 +07:00
aleos89
e5a197ad70 Corrected Cloud Kill effect (fixes #407)
* Properly implemented the Cloud Kill status icon.
* Poison duration is not reduced and lasts if the target leaves the AoE.
- Walking into the AoE a second time resets the Poison status.
2016-07-02 19:49:58 -04:00
Lemongrass3110
65b716f586 Removed some hardcoded mob ids
Created some race2 values for mobs used in the Manuk and Splendide status changes
2016-06-23 00:41:21 +02:00
Lemongrass3110
9558ef0868 Moved mob random groups constants
Added/Moved the two missing groups into src.
All of them are exported now directly through script_constants.h
2016-06-22 21:04:53 +02:00
Aleos
32c829debe Merge pull request #1264 from rathena/feature/instance_expansion
Expanded the instance system to support new modes
* New modes include: No player attached, single player, and guild.
* Modified the instance_db to allow instance idle time to be adjustable.
* Removed Map1 from the instance_db as the EnterMap is always the same value.
* Adjusted the stored maps of instances to dynamic arrays to conserve memory.
- Max amount of possible maps increased to 255.
* Instances will now be destroyed even if the owner cannot be found.
* Corrected the return value when entering an instance when a character, party, or guild does not have an instance.
* Expanded script command instance_create to take in an owner ID and an optional mode.
* Added a new script command instance_check_guild (works the same as instance_check_party).
* Corrected a few script commands to properly stop the script engine on failures for instance script commands.
* Removed the instance name lookup for when entering an instance as instance_id is now passed.
- Adjusted script command instance_enter to no longer require the instance name.
* Cleaned up script command instance_warpall.
* Adjusted script command instance_announce to check when instance ID is 0 rather than -1 since instance IDs are stored as unsigned now.
* Refactored all instance_id to unsigned short.
* Updated documentation to reflect changes.
2016-05-25 14:55:50 -04:00
aleos89
fe4eefb787 Implemented script command active_transform (fixes #1006)
* Works the same as script command transform and can be stacked with it as well.
* active_transform has display priority if transform is active.
Thanks to Ziu and @Darkelfen!
2016-05-16 14:15:22 -04:00
aleos89
c97be60bbf Expanded the instance system to support new modes
* New modes include: No player attached, single player, and guild.
* Expanded script command instance_create to take in an owner ID and an optional mode.
* Added a new script command instance_check_guild (works the same as instance_check_party).
* Refactored all instance_id to unsigned short.
2016-05-14 11:57:54 -04:00
aleos89
952b072468 Implemented item bonuses bWeaponAtkRate and bWeaponMatkRate (fixes #1161)
* Increases an equipped weapon's ATK/MATK by given rate.
* bWeaponMatkRate does not work in pre-renewal as there is no MATK for weapons in pre-renewal.
* Renamed 'bonus2 bWeaponAtkRate' to 'bonus2 bWeaponDamageRate'.
- Seems to be unused in the current item database.
- Damage fits the bonus name better as it increased the final damage, not the weapon's attack specifically.
2016-05-11 13:36:59 -04:00
Aleos
62d9a9b040 Add Requiem weapon set
Added Requiem weapons
* Implemented two item bonuses bMagicAddRace2 and bIgnoreMdefRace2Rate.
Thanks to @secretdataz!
2016-05-08 08:53:03 -04:00
aleos89
d83559cb7f Added missing Summoner constants
* Added JOB_SUMMONER and EAJ_SUMMONER constants.
* Updated eA Job System documentation.
2016-05-04 12:58:09 -04:00
Jittapan Pluemsumran
0f1b1af928
Implemented additional item bonus bMagicAddRace2 and bIGnoreMdefRace2Rate 2016-04-26 00:31:24 +07:00
aleos89
10bac969ee Added DIR_* to script constants
* Adjusted a few location in source to use the constants.
Thanks to @Lemongrass3110!
2016-04-22 23:12:47 -04:00
aleos89
55e4df14c2 Overhaul of the mob mode system
* This rewrite allows for better adaptation from the Aegis Class and Attribute fields.
* Refactored the renewal level penalty function.
* Slaves are now properly assigned an official slave mode of CanWalk, CanAttack, and NoRandomWalk.
* Removed extra Boss checks and adjusted others to use their proper functions.
* Properly implemented Skill Immunity mode to match Aegis.
* Separated MVP and Boss modes.
-- MVP mode defines when mobs should give MEXP, MVP Drops, and show the MVP sign.
-- MVP now have their own item drop configurations.
* Updated the mob_db and mob_skill_db to match the new mode structure.
-- Included a Perl tool (tools/convert_monstermode.pl) to allow people to convert their custom mobs to the new mode structure.
Thanks to @Playtester and @Lemongrass3110 for help with debugging and information!
2016-04-18 14:49:27 -04:00
Lemongrass3110
2bf64c9773 Refactored the EQI constants
The EQI constants of the constants database did not match the ones used in the source up to now.
For whatever reason long long ago an array was created which mapped the const_db EQI constants to the source's EQP constant(aegis bitmasks).
With this commit we now use the already existing array from pc.h(which was moved from pc.c to be accessible).

This merges and closes #1147 due to follow up changes with 1cd3741.
2016-04-13 11:11:42 +02:00
Cydh Ramdh
9e82454a79 Implemented Official Long Range Critical Bonus
* Added bonus `bonus bCriticalLong,n;`.
* Add critical rate for normal long range attack.
* Bonus value won't be showed in status window.
* Updated item script following official (Aegis) script for:
  * Sharp Arrow (1764/Incisive_Arrow)
  * Drosera Card (4421/Drosera_Card)
  * Upd Bow Guardian Card (4550/Upd_Bow_Guardian_Card)

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-03-24 21:03:32 +07:00
aleos89
daa9e018f4 Release of Doram Race!
* Requires client 2015-10-01 and newer.
* All skills are usable from from the base list to all 3 branch types.
-- Some skills still need their official activation chance and durations.
* Adjusted the char-server start point and start item split functions to be more dynamic.
Thanks to Rytech and @NovaRagnarok for their information!
2016-03-19 14:09:30 -04:00
aleos89
0f5b6db813 Implemented new adoption methods
* Implemented atcommand adopt.
* Implemented script command adopt.
* Circumvents adoption issues with 2013-08+ clients (Related to #768).
* Suggested from https://rathena.org/board/topic/104014-suggestion-add-adopt-or-etc/
2016-03-11 13:45:17 -05:00
aleos89
179f734249 Added documentation for script command navigateto
* Follow up to 4f13007.
* Corrected a few constants from PLANE -> AIRSHIP.
2016-03-06 16:10:15 -05:00
Lemongrass3110
4f13007fec Implemented serverside navigation system start
This feature was hidden in the client since 2011 and just came to our attention recently.
2016-03-06 21:48:47 +01:00
aleos89
0a77835029 Unit Controller Updates
* Added missing UMOB_CANMOVETICK option.
* Restructured script command getunittype return values to match the order of script command getmapxy to allow for more universal usage.
* Created constants for script commands getmapxy and getunittype.
* Updated NPCs using script command getmapxy to use the new constant values.
* Updated Battleground NPCs to use constant value for script command setunitdata.
2016-02-04 10:47:16 -05:00
Lemongrass3110
f424a2a71d Reverted 2d03e7f and d32c857
Fixes #890 and #897

Sorry for the inconveniences guys!
2016-01-12 15:59:42 +01: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
Lemongrass3110
85a4c272ca Follow up to 2b00879
Added the missing status icons(which were not in const.txt when converting it).
Also validated the status changes and removed the TODO mark since all of them are exported correctly.
2016-01-08 15:57:56 +01:00
Lemongrass3110
65347041c1 Migrated all boolean constants to source exports 2016-01-07 00:53:31 +01:00
Lemongrass3110
00ec41eaac Follow up to 33729eb
Fixed duplicate export of looks.
2016-01-07 00:49:07 +01:00
Lemongrass3110
33729eb961 Migrated all look constants to source exports 2016-01-07 00:43:26 +01:00
Lemongrass3110
958b6cd5d9 Migrated all font weight constants to source exports 2016-01-07 00:28:15 +01:00
Lemongrass3110
de61a19eca Migrated all getpetinfo constants to source exports
Created the respective enum on source side.
2016-01-07 00:19:37 +01:00
Lemongrass3110
28e337127e Migrated all getmonsterinfo constants to source exports
Created the respective enum on source side and changed the script doc to only refer to the constants not the direct values.
Additionally adjusted the sample script.
2016-01-06 23:55:06 +01:00
Lemongrass3110
a68ab0c88d Migrated all getpetinfo constants to source exports
Created the respective enum on source side and changed the script doc to only refer to the constants not the direct values.
2016-01-06 23:28:05 +01:00
Lemongrass3110
90dcd845e2 Added additional constants
As @cydh requested we now also export weapon and ammunition types.
2016-01-06 14:13:36 +01:00
Lemongrass3110
d32c857e16 Renamed custome headgear constans in src
They now match with those currently used in scripts and also match the ones for normal headgears and additionally they are easier to understand.
2016-01-06 00:08:27 +01:00
Lemongrass3110
5ea3f30d32 Removed two unused constants for alchemists
* Job_Alchem(Job_Alchemist would be correct)
* Job_Baby_Alchem(Job_Baby_Alchemist would be correct)

Both are currently unused in our delivered npc and item scripts.
Please consider using their correct constants instead.
2016-01-06 00:04:37 +01:00
Lemongrass3110
d909601b8a Fixed compilation on pre-renewal 2016-01-03 16:42:00 +01:00
Lemongrass3110
8d152e9139 Fixed compilation on linux.
Stupid me, why did I do this in the first place.
2016-01-03 14:48:20 +01:00
Lemongrass3110
d30b250fb2 Migrated all parameter constants to source exports 2016-01-02 01:54:39 +01:00
Lemongrass3110
6532f74c3b Migrated all quest check constants to source exports 2016-01-02 01:10:51 +01:00