Added support for Summoner Basic Skill to Kafra (fixes#1117)
* Added two new global NPC functions F_CanOpenStorage and F_CanChangeJob to remove redundancy.
Thanks to @secretdataz!
* 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.
* 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.
* Fixes#158 - Implemented 'getvar' script command to avoid blindly attaching players and messing up their NPC progress.
* Fixes#449 - Fixed 'unitskilluseid' and 'unitskillusepos' not casting skills that require stat info when the NPC's status wasn't loaded.
* Implemented 'getunittype' script command to return the object type of the given GID.
* Adjusted 'unitwalk' to support an Event Label which is executed when the object reaches the target.
* Added 'unitwalkto' when giving a target GID rather than coordinates. Also supports Event Labels.
- Thanks to @cydh.
* Changed skill_db array to better memory allocation.
* Reduced MAX_SKILL_LEVEL from 100 to 10 (part of Hercules 0f4a50d135), also has changes on skill_get checks for skill level that more than 10.
* Reduced MAX_SKILL from 5020 to 1200 (actually only 1109 skills are used).
* Added macros for checking Homunculus, Guild, Mercenary, & Elemental skill ranges.
* Added skill check & index validation when player logged in and when @reloadskilldb.
* Corrected `enum e_skill_flag` order for SKILL_FLAG_REPLACED_LV_0's sake.
* Merged 'addtoskill' script command just as alias of 'skill' script command.
* Fixed#277
* Changed 'skill' script command flag to constant value
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
NOTE:
* Decreased memory usage by map-server reduced up to 50 MB.
* Decreased memory for each player because of mmo_charstatus::skill[] only has 1200 array, before is 5020.
* Please use skill_get_index() for accessing sd->status.skill[] or skill_db[], don't reckless use skill_id as array index.
* Please import upgrade_20150211_skillset.sql
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
- Replaced lots of numerics with constants.
- Added spacing to make some scripts more readable.
Fixed a mistake in 14fddd3.
Signed-off-by: Euphy <euphy.raliel@rathena.org>
- Commented some unnecessary log messages.
Bug fixes:
- M_DOPPELGANGER had too much HP. (Hercules 9cd3ec0)
- Huuma_Swirling_Petal should not have an element. (bugreport:9073)
http://rathena.org/board/tracker/issue-9073-huuma-swirling-petal/
Signed-off-by: Euphy <euphy.raliel@rathena.org>
- Added option to disable hash check by GM group_id (specify 'disabled' as hash for a certain group_id to let them log in with any client, even if 'client_hash_check' is enabled.
- Updated and reworded related documentation for the feature.
Improvements on script command 'axtoi'; added 'strtol'. (Hercules 1cf7c1e)
- Added script command 'strtol' (conforming to the ISO C90 function).
- Modified script command 'axtoi' to internally use 'strtol' instead of an unnecessary separate implementation.
Cleaned up many sections of script documentation, and modernized syntax in examples.
Added documentation for 'rentitem2' and 'makeitem2'. (follow-up 339c0a8)
Added 'true' (1) and 'false' (2) as script constants.
'freeloop' argument is now optional, and will only return the value of freeloop if no argument is given. (tid:92470)
http://rathena.org/board/topic/92470-freeloop-optional-argument/
Added a missing mapflag to custom 'devil_square' script. (bugreport:8611)
http://rathena.org/board/tracker/issue-8611-devil-square-bug/
Signed-off-by: Euphy <euphy.raliel@rathena.org>
* Added Cryptura Academy monster spawns, commented until the scripts are implemented. Does not include monsters from job quests.
* Fixed two label errors in Wizard job quest. (bugreport:8590)
http://rathena.org/board/tracker/issue-8590-wizard-job-quest-label-error/
* Updated AUTHORS file. (credits to AnnieRuru and Keyworld for providing some missing names)
* Uncommented a mapflag in custom 'mvp_ladder' script. (credits: AnnieRuru)
Signed-off-by: Euphy <euphy.raliel@rathena.org>
These scripts have been chosen for being unique and useful, yet structurally simple. In this way, they can serve as usable reference material for future user scripts.
Contents:
* Battleground: bg_emp (Emperium breaker), bg_pvp (PVP match)
* Event: mvp_ladder (kill every MVP to win), devil_square (3-round monster summoning event)
* Utility: card_seller (sells all monster cards), mvp_room (private MVP summoning room), autopot (automatically use potions when hit)
Credits to AnnieRuru for offering up her scripts and modifying them for use.
Other changes:
* Moved previous custom battleground scripts into 'battleground/unofficial/'.
* Moved custom holiday event scripts into 'event/holiday/'.
Signed-off-by: Euphy <euphy.raliel@rathena.org>
- Follow-up to pull request #36: some cleanup of the file.
- Follow-up to 3f8dd48: updated Pre-Renewal file.
Added Rebellion class to custom Job Master script. (credits: Elias)
Signed-off-by: Euphy <euphy.raliel@rathena.org>
* Added format string to "F_InsertPlural" for added flexibility.
* Added more checks to "F_GetPlural" for better handling of multi-word arguments (e.g. items).
* Updated some more scripts with new functions.
Some misc. cleanup of constants in scripts.
Signed-off-by: Euphy <euphy.raliel@rathena.org>
* Added the following functions:
- "F_GetPlural" (returns plural of noun) / "F_InsertPlural" (returns plural if arg != 1) [credits: EnglishClub for formation rules]
- "F_InsertArticle" (returns 'a' or 'an' preceding word)
- "F_InsertComma" (formats number with commas)
- "F_GetNumSuffix" (formats number with '-st', '-nd', '-rd', or '-th' suffix)
* Added and removed new functions where necessary. (incomplete)
* Added new types to "F_GetArmorType" function, and weapons will now pass to "F_GetWeaponType".
* Reformatted comments.
Other changes:
* Removed some garbage text from scripts.
* Slight edits to custom warper script.
Signed-off-by: Euphy <euphy.raliel@rathena.org>
- Standardized cases on constants (Zeny, Sex, BaseLevel, etc.).
- Replaced numerics with constants.
- Standardized parts of script headers.
- Changed some script styles to K&R.
- Added some official script file names as comments.
- Replaced most 'misceffect' commands with 'specialeffect'.
Signed-off-by: Euphy <euphy@rathena.org>
- Updated warp scripts and removed disabled warps.
- Implemented Renewal Hypnotist, which resets stats and skills; moved old file to Pre-Renewal path.
- Moved and added Bullet Dealer and Magazine Dealer duplicates. (bugreport:6410)
- Moved Dorian (quests_nameless) NPC to Pre-Renewal/Renewal paths and shifted Cuskoal (izlude) RE NPC.
- Corrected some coordinates and NPC facing directions.
* Updated all 3rd_trader scripts:
- Players can now purchase multiple items at once.
- Added many new Point Merchants.
- Moved Poison Herb Merchant in Morroc out of a wall (temp. fix).
* Other script updates:
- Added Eden Group Kafra (storage only).
- Added some missing announcements in Endless Tower.
- Added exit warp scripts to three 2nd job quests (Renewal only).
- Added official Morroc coordinates in Warlock job quest. (follow-up r17224)
- Minor updates to Comodo Gambling script.
- Fixed a Zeny bug in Payon town script, and changed some 'close' commands to 'end'. (bugreport:7893)
- Renamed npc/pre-re/kafras/kafras_izl.txt to .../kafras.txt.
Signed-off-by: Euphy <euphy@rathena.org>
* Fixed Malangdo rentals lasting for 1 day instead of 1 hour. (bugreport:7889)
* Added Old Glast Heim location to custom warper.
* @mobinfo now displays slots for MVP drops.
* Fixed a label execution in Dancer job quest.
Signed-off-by: Euphy <euphy@rathena.org>
* Updates to SC_BURNING and SC_FREEZING durations. (Hercules 0395610)
* Minor fixes to Eden Quests 41-55.
* Fixed incorrect documentation for 'instance_id()'.
* Added Malaya instances to custom Warper.
* 'getmonsterinfo' no longer outputs an error when the supplied mob doesn't exist. (bugreport:7792)
* Follow-up r17410, fixed a typo in a label name.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17416 54d463be-8e91-2dee-dedb-b68131a5f0ec
* Implemented Bakonawa Lake instance.
* Monsters can now spawn on unwalkable cells, as required by the new instances. (credits: Akinari)
* Implemented 2012 RWC Enchants script, disabled by default.
* Reverted change to Mora Enchants from r17387, as the additional items are only present on iRO. (credits: Ziu)
* Fixed some errors from recent updates.
* Applied eol-style:native property to newly added files.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17397 54d463be-8e91-2dee-dedb-b68131a5f0ec
* Gathered remaining dialogues for Pyramids Nightmare script. (follow-up r17382)
* Added missing items to "Guardian of Power" NPC from Mora Enchants.
* Updated Hunting Missions script to v1.3a, which adds some mission reset options.
* Added newline at end of files.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17387 54d463be-8e91-2dee-dedb-b68131a5f0ec