12677 Commits

Author SHA1 Message Date
Cydh Ramdh
7d929a06a3 NPC Market Shop support
* New shop script definition: `<map name>,<x>,<y>,<facing>%TAB%marketshop%TAB%<NPC Name>%TAB%<sprite id>,<itemid>:<price>:<quantity>{,<itemid>:<price>:<quantity>...}`
* Added script command to update shop NPC: 'npcshopupdate "<name>",<itemid>,<price>{,<stock>}'
* Added NPCMarketDB (DBMap) for market data persistance method.
* Added `market_table` definition for market table in conf/inter_athena.conf.
* Thank to @aleos89, @Lemongrass, @icxbb-xx, merged HerculesWS/Hercules@cf19b26.

NOTES:
* Minimum client needed 2013-12-23 (but this client has bugs there-and-there).
* There's new table, see `upgrade_20150327.sql`.
* Market shop doesn't support discount.
* Added items by script `npcshopitem` or `npchopadditem` will be assumed as persistance items, will be loaded on next script reload or server start even market_shop NPC does't list them (unless NPC is not exists, entries will be removed).

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-27 21:11:07 +07:00
aleos89
176f3daa93 Follow up to ec4f1f8
* Adjusted the *unitdata parameter (changed in 2dc38e7) when making Guardians immune to attacks.
2015-03-26 13:02:26 -04:00
aleos89
2dc38e77ca Follow up to 2cee5b6
* Updated setunitdata to recalculate the object's information and update the client immediately.
* For setunitdata, map name can also be passed in as a valid value instead of map ID.
* Added mapid2name script command.
* Added status_set_maxhp and status_set_maxsp functions.
* Updated documentation to reflect changes.
2015-03-26 11:47:36 -04:00
Cydh Ramdh
0b427a87e8 Fixed Cart Cannon skillratio, fixed #360. Thank @MrAntares
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-26 21:56:20 +07:00
Cydh Ramdh
d495751d1d Follow up 2cee5b6ff1bf53c4ae53bc1278b09ae84b8a0a76
* Revert `mercenary_create` command to don't return mercenary game id. Fixed #361

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-25 12:16:34 +07:00
nanakiwurtz
e0c348c7fb Minor typo at script_commands.txt
* At movenpc example
2015-03-24 12:28:06 +07:00
rAthenaAPI
c62b328413 SQL synchronization 2015-03-24 06:28:21 +01:00
Cydh Ramdh
8a6d673502 Follow up 5ec1b24c4ece647c62c1f99748df27468c919254, disabled some monster skills until related monster infos are done
* 2477, NG_WANDER_MAN
* 2478, NG_RIDEWORD
* 2479, NG_MIMIC
* 2480, NG_EVIL_DRUID
* 2481, NG_WRAITH_DEAD
* 2483, NG_BAPHOMET
* 2485, NG_CHIMERA
* 2916, BIG_BEN
* 2917, BIG_BELL
* 2918, TIME_KEEPER
* 2919, NEO_PUNK
* 2920, ARC_ELDER
* 2921, OWL_VISCOUNT
* 2923, OWL_MARQUEES
* 3074, TIMEHOLDER

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-24 12:26:13 +07:00
Lemongrass3110
bbf6b96339 SQL synchronization 2015-03-23 21:09:59 +01:00
nanakiwurtz
5ec1b24c4e Added skill database of Nightmare Glast Heim & Champion monsters
* Merge from https://code.google.com/p/idathena/source/browse/trunk/db/re/mob_skill_db.txt?spec=svn1809&r=1809
* Thanks to @exneval

Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
2015-03-23 23:17:13 +07:00
Cydh Ramdh
49a0b55f60 Fixed map-server crashed by Crimson Marker. Thank @raynra
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-23 19:58:51 +07:00
Cydh Ramdh
12eaced423 Added CharID as optional param for
* `getchildid({<char_id>})`
* `getmotherid({<char_id>})`
* `getfatherid({<char_id>})`
* `divorce({<char_id>})`
* `ispartneron({<char_id>})`
* `getpartnerid({<char_id>})`
* `getlook(<type>{,<char_id>})`
* `getsavepoint(<information type>{,<char_id>})`
* `getinventorylist {<char_id>}`
* `mergeitem({<item_id>{,<char_id>}})`
* `getgmlevel({<char_id>})`
* `getgroupid({<char_id>})`
* `getskilllist({<char_id>})`
* `skillpointcount({<char_id>})`
* `checkoption(<option number>{,<char_id>})`
* `checkoption1(<option number>{,<char_id>})`
* `checkoption2(<option number>{,<char_id>})`
* `setoption <option number>{,<flag>{,<char_id>}}`
* `setcart {<type>{,<char_id>}}`
* `checkcart({<char_id>})`
* `setfalcon {<flag>{,<char_id>}}`
* `checkfalcon({<char_id>})`
* `setriding {<flag>{,<char_id>}}`
* `checkriding({<char_id>})`
* `setdragon {<color>{,<char_id>}}`
* `checkdragon({<char_id>})`
* `setmadogear {<flag>{,<char_id>}}`
* `checkmadogear({<char_id>})`
* `setmounting {<char_id>}`
* `ismounting({<char_id>})`
* `checkwug({<char_id>})`
* `dispbottom "<message>"{,<color>{,<char_id>}}`
* `savepoint "<map name>",<x>,<y>{,<char_id>}`
* `save "<map name>",<x>,<y>{,<char_id>}`
* `changesex({<char_id>})`
* `countbound({<bound type>{,<char_id>}})`
* `consumeitem <item id>{,<char_id>}`
* `consumeitem "<item name>"{,<char_id>}`
* `makerune <% success bonus>{,<char_id>}`
* `resetlvl <action type>{,<char_id>}`
* `resetstatus({<char_id>})`
* `resetskill({<char_id>})`
* `getstatus(<effect type>{,<type>{,<char_id>}})`
* `nude {<char_id>}`
* `disguise <Monster ID>{,<char_id>}`
* `undisguise {<char_id>}

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-23 12:30:09 +07:00
Cydh Ramdh
d7964edbda Another follow up 5f21afb2555d73bba219fd9fdb1d117c0e1950b1
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-22 18:36:39 +07:00
Cydh Ramdh
d951fab876 Follow up 231710c0fa9c2f9f3d150417e4ca2392850dd41b
* Updated const.txt entries. Thank @julia40124009

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-22 11:07:46 +07:00
nanakiwurtz
5ce3c68393 Champion Mobs natural spawn area added
* Follow up to fffb0adc66

Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
2015-03-22 03:41:20 +07:00
nanakiwurtz
fffb0adc66 Champion Mobs Implemented
* Big thanks to @Skormie, @Lemongrass3110 and @euphyy

Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
2015-03-22 01:59:22 +07:00
Cydh Ramdh
e93afad7db Follow up 2cee5b6ff1bf53c4ae53bc1278b09ae84b8a0a76
* A little clean up in BUILDIN_FUNC(getunitdata)

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-21 20:33:40 +07:00
Cydh Ramdh
be86cbd5a8 Merge pull request #352 from cydh/cleanup/instance
Instance cleanup
* Changed instance_db fixed array to DBMap
* Removed MAX_INSTANCE_DB
* Valid Instance ID is 1 ~ 65535
* Removed MAX_MAP_PER_INSTANCE from instance_db struct (in the map arrays)
* Change mapnames for instance_db to StringBuf
2015-03-21 20:01:48 +07:00
Cydh Ramdh
ee1866152f Follow up 5f21afb2555d73bba219fd9fdb1d117c0e1950b1
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-21 19:56:43 +07:00
Cydh Ramdh
2b00a1c9d3 Follow up 2cee5b6ff1bf53c4ae53bc1278b09ae84b8a0a76
* Some types aren't correct
* Missing '=' for Homunculi's max_sp change. Thank @lighta

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-20 19:37:26 +07:00
musashi076
82767650d1 Corrected Tiucknuc mob name into Tiyanak
To avoid confusion in Tiyanak Mob Hunt.
2015-03-20 13:41:52 +08:00
nanakiwurtz
acffcba636 Fixed #353 - item_trade.txt
* Thanks to @BraisGabin

Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
2015-03-20 10:13:51 +07:00
aleos89
f6df76bb15 Follow up to ec4f1f8
- Fixed script errors.
2015-03-19 21:26:49 -04:00
aleos89
ec4f1f8f80 Fixed #231 - Flavius Battleground Crystals can no longer be attacked while Guardians are still alive. Thanks to @cydh. 2015-03-19 21:02:59 -04:00
aleos89
2cee5b6ff1 Implemented Basic Unit Controller Script Commands
* Added getunitname, setunitname, getunitdata, and setunitdata script commands.
- getunitdata and setunitdata are open to suggestions for more values.
* Split unitstop to unitstopattack and unitstopwalk.
* Expanded unitskilluseid and unitskillusepos to be able to adjust casttime of skill.
* Added two new monster modes: MD_NORANDOM_WALK and MD_NOCAST_SKILL.
* The areamonster script command now saves spawned monster game IDs in an array called $@mobid[].
* Adjusted other monster spawning script commands to return game ID.
* Updated documentation to reflect changes.
2015-03-19 20:47:57 -04:00
Cydh Ramdh
0e5997e9ef Added map names check for entrance and maplist
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-19 23:12:36 +07:00
rAthenaAPI
e3adcbda3b SQL synchronization 2015-03-18 21:50:28 +01:00
aleos89
231710c0fa Bug Fixes
* Fixed #119 - Corrected Flash Combo weapon ATK and to cancel skill cast when target is more than 2 cells away.
* Fixed #148 - Corrected Kings Grace to only cast on guild members in versus type maps and added missing effects. Updated cooldown from 60 to 90 seconds.
* Fixed #341 - Offertorium and Magnificat now cancel each other out (Mimics Kyrie Eleison and Assumptio).
* Follow up to 5a0f8dc. Added missing monster transformation bonuses.
* Updated the Status Icon list with newer icons.
2015-03-18 15:12:02 -04:00
Cydh Ramdh
fb01b02283 Instance (core) cleanup
* Changed instance_db array to DBMap
* Removed MAX_INSTANCE_DB
* Valid Instance ID is 1 ~ 65535
* Removed MAX_MAP_PER_INSTANCE from instance_db struct (in the map arrays)
* Change mapnames for instance_db to StringBuf

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-18 19:57:37 +07:00
nanakiwurtz
17213cabe3 File item_db.txt fixed
* Thanks to @carl820912

Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
2015-03-18 09:41:36 +07:00
nanakiwurtz
8d47306f18 File item_db_re.sql fixed
Missed a comma, Thanks to @carl820912
2015-03-17 17:40:20 +07:00
nanakiwurtz
186e7edf38 File item_db_re.sql updated
Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
2015-03-17 09:47:03 +07:00
nanakiwurtz
5a0f8dc12a Complete recheck of item_db, item_trade, item_combo_db and pet_db (Renewal only)
* Added more Combo Sets
* Added Quest of Clan System item
* Correcting wrong Vellum Combo Set
* Completed the item script for Halloween candies
* Updated item scripts to reflect the last state in kRO
* Removed multiple getrefine()'s so the getrefine() will be called only once in an item script
* Complete one by one item script and specification data (atk, def, weight, etc) recheck in the kRO patches throughout the period of 2 years! \o/

Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
2015-03-17 09:47:02 +07:00
Cydh Ramdh
46f010cb28 Bug fixes:
* #331: Fixed Auto Shadow Spell always failed, 9d3d34205fdb424e4a9281c3e6a951a1f0cdbdc1 fault
* #340: Phantom Thrust can be used to pull a party member

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-16 23:08:43 +07:00
Cydh Ramdh
739a8f5831 Fixed #176 Stealth Field effect
* Should drains 3% caster's SP each 3 seconds
* Speed penalty for not the caster

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-16 20:53:30 +07:00
Cydh Ramdh
17ffda6235 Fixed 'wrong' mapname in party info window when member is in instance.
... I think I saw the report somewhere ...

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-16 00:02:41 +07:00
Lighta
d92a8df4c2 Remove some duplicate code 2015-03-15 05:52:53 -04:00
Lighta
d1eeda3466 Fix 'make tools' target for ./configure
Fix update.pl wasn't able to recompile due to path error.
2015-03-15 04:24:58 -04: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
aleos89
5a9ffc489f Follow up to 9f6f55c.
* Fixed Dragon Breath skill type checks.
* Adjusted Camouflage to account for ground-based skills.
- Thanks to @reigneil.
2015-03-14 12:38:14 -04:00
Aleos
9d247d88c1 Merge pull request #312 from rathena/feature/official_packet_obfuscation
Added Packet Obfuscation support
* More info: https://rathena.org/board/topic/101092-packet-obfuscation-support/
2015-03-14 12:25:27 -04:00
aleos89
1b69b981fa More cleanups
- Enabled Packet Obfuscation by default.
- Added a bit of documentation.
2015-03-14 11:45:42 -04:00
Cydh Ramdh
3b197eb76c Added optional param <char_id> for some script commands:
* getexp <base xp>,<job xp>{,<char_id>};
* equip <item id>{,<char_id>};
* unequip <equipment slot>{,<char_id>};
* delequip <equipment slot>{,<char_id>};
* breakequip <equipment slot>{,<char_id>};
* clearitem {,<char_id>};
* openmail {<char_id>};
* openauction {<char_id>};
* setquest <ID>{,<char_id>};
* completequest <ID>{,<char_id>};
* erasequest <ID>{,<char_id>};
* changequest <ID>,<ID2>{,<char_id>};
* checkquest(<ID>{,PLAYTIME|HUNTING{,<char_id>}})
* isbegin_quest(<ID>{,<char_id>})
* showevent <icon>{,<mark color>{,<char_id>}}
* setd "<variable name>",<value>{,<char_id>};

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-14 19:19:53 +07:00
Cydh Ramdh
5f21afb255 Added script command optional param for account/char id
* `set`, added char id -> set <var>,<value>{,<charid>}
* `rentitem`, added account id -> rentitem <item id>,<time>{,<account_id>};
* `rentitem2`, added account id -> rentitem2 <item id>,<time>,<identify>,<refine>,<attribute>,<card1>,<card2>,<card3>,<card4>{,<account_id>};
* `strcharinfo`, added char id -> strcharinfo <type>{,<char_id>};
* `getequipisequiped`, added char id -> getequipisequiped <equipment slot>{,<char_id>};
* `repair`, added char id -> repair <broken item number>{,<char_id>};
* `repairall`, added char id -> repair {<char_id>};

Added macros
* Macro to replace a check "if there's additional param for account/char id then get the value or use attached rid"
* script_accid2sd(<param_location_for_account_id>,sd,<fail action>)
* script_charid2sd(<param_location_for_char_id>,sd,<fail action>)
* script_nick2sd(<param_location_for_char_id>,sd,<fail action>)

TODO:
* Add optional param for CharID/AccountID/Nick for other necessary commands

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-14 18:52:18 +07:00
Playtester
16d747af48 - Fixed trap HP and knock back (fixes #338)
* Talkie Box and all ranger traps no longer can be destroyed by HP damage
* Electric Shock can now be knocked back
2015-03-14 11:50:59 +01:00
aleos89
9f6f55c07c Bug Fixes
* Fixed #167 - Dragon Breath burning chance is now 15% for all levels. Also corrected damage calculation. Thanks to @exneval.
* Fixed #270 - Cleaned up Reverberation and how it's triggered.
* Fixed #321 - Follow up to 1b6be4e. Fixed MATK calculation for for all player, monster, homunculus, mercenary, etc.
* Fixed #332 - Camouflage now hides player from targeting skills. Added missing DEF/DEF2 bonus.
* Fixed #335 - Check to make sure script has data before trying to free null values.
* Fixed Full Throttle SP drain amount and movement speed increase value. Updated cooldown value to 30 minutes.
* Fixed Bloody Lust skill type from magic to none.
* Fixed Mix Cooking, Make Bomb, Special Pharmacy, Change Material, and Rune Mastery success and fail animations.
* Cleaned up some more compile warnings.
2015-03-13 17:49:38 -04:00
nanakiwurtz
d34a12ee05 Item DB Update
* Added Red Booster and Green Potion item script
2015-03-13 04:18:55 +07:00
nanakiwurtz
96c49c805f Item DB Update
* Fixed wrong item script in item_db.txt and item_combo_db.txt
Thanks to @trickyloki3
2015-03-13 02:06:12 +07:00
nanakiwurtz
45e1bf295d Item Combo Update
* Added some more Aegir combo set
2015-03-13 01:08:57 +07:00
aleos89
1b6be4e0df Bug Fixes
* Fixed #145 - Corrected the duration of Frigg's Song ending too quickly.
* Fixed #202 - Added damage bonus for Rifle when using Piercing Shot (renewal).
* Fixed #257 - Adjusted get_status() in athena-start to return the correct string.
* Fixed #272 - Blood Lust not leeching HP from target.
* Fixed #298 - Corrected the renewal calculation of ATK and ASPD for Homunculus.
* Fixed #309 and #313 - Cleaned up warnings during compile.
* Fixed #321 - Monsters not calculating MATK at spawn (renewal).
* Added missing renewal calculations for Mercenary.
2015-03-11 10:10:05 -04:00