From af8ef75a53329380172d9c79715545ebf47b5a3c Mon Sep 17 00:00:00 2001 From: euphyy Date: Wed, 15 May 2013 05:16:19 +0000 Subject: [PATCH] * Added "Cat Gamers" to Malangdo quests. This marks the completion of the Malangdo episode. * Implemented Port Malaya Kafras, guides, sailors, and Eden teleporter. * Edited documentation for 'sc_start' and 'addmonsterdrop'/'delmonsterdrop' commands. (follow-up r17326, r17237) * Updated atcommand documentation and help file. * Minor organizing of script locations. git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17328 54d463be-8e91-2dee-dedb-b68131a5f0ec --- conf/help.txt | 43 +- doc/atcommands.txt | 104 +- doc/script_commands.txt | 98 +- npc/cities/amatsu.txt | 6 +- npc/cities/ayothaya.txt | 6 +- npc/cities/gonryun.txt | 4 +- npc/cities/jawaii.txt | 4 +- npc/cities/louyang.txt | 2 +- npc/cities/moscovia.txt | 6 +- npc/kafras/functions_kafras.txt | 2 +- npc/re/cities/brasilis.txt | 4 + npc/re/cities/dewata.txt | 55 + npc/re/cities/malangdo.txt | 348 +-- npc/re/cities/malaya.txt | 75 + npc/re/guides/guides_malaya.txt | 81 + npc/re/kafras/kafras.txt | 18 +- npc/re/quests/eden/eden_common.txt | 8 +- npc/re/quests/eden/eden_quests.txt | 12 +- npc/re/quests/eden/eden_service.txt | 1 - npc/re/quests/quests_dewata.txt | 53 - npc/re/quests/quests_malangdo.txt | 4402 ++++++++++++++++++++++++++- npc/re/quests/quests_mora.txt | 4 +- npc/re/scripts_athena.conf | 2 + src/map/skill.c | 2 +- 24 files changed, 4772 insertions(+), 568 deletions(-) create mode 100644 npc/re/cities/malaya.txt create mode 100644 npc/re/guides/guides_malaya.txt diff --git a/conf/help.txt b/conf/help.txt index a10eeb9718..744d7c6bfd 100644 --- a/conf/help.txt +++ b/conf/help.txt @@ -1,8 +1,6 @@ // This is help file that contains help messages for atcommands/charcommands. - // Format: // : "" - // This file uses libconfig syntax. help: "Params: \n" "Shows help for specified command." @@ -37,7 +35,7 @@ whomap: "@whomap/@whomap2/@whomap3 [map] - like @who/@who2/@who3 but only for sp whogm: "Params: [match_text] - Like @who+@who2+who3, but only for GM." guildspy: "Params: - You will receive all messages of the guild channel (Chat logging must be enabled)" partyspy: "@partyspy - You will receive all messages of the party channel (Chat logging must be enabled)" -mapinfo: "Params: [<0-3> [map]] - Give information about a map (general info +: 0: no more, 1: players, 2: NPC, 3: shops/chat)." +mapinfo: "Params: [<0-3> [map]] - Give information about a map (general info +: 0: no more, 1: players, 2: NPC, 3: chatrooms)." go: "Params: \n" "Warps you to a city.\n" " -3: (Memo point 2) 14: louyang 31: mora\n" " -2: (Memo point 1) 15: start point 32: dewata\n" @@ -58,7 +56,8 @@ go: "Params: \n" "Warps you to a city.\n" " 13: niflheim 30: el dicastes\n" jumpto: "Params: \n" "Warps you to selected character." follow: "Params: \n" "Follow a player." -mount: "Give/remove you a peco (Class is required, but not skill)" +mount: "Give/remove a job-based mount (class is required, but not the skill)." +mount2: "Give/remove a cash mount." disguise: "Params: \n" "Change your appearence to other players to a mob." undisguise: "Restore your normal appearance." disguiseguild: "Disguises all online characters of a guild." @@ -205,7 +204,7 @@ vit: "Params: \n" "Raises VIT by given amount." int: "Params: \n" "Raises INT by given amount." luk: "Params: \n" "Raises LUK by given amount." allstats: "Params: \n" "Adds value in all stats (maximum if no value)." -addwarp: "Params: \n" +addwarp: "Params: \n" killmonster2: "Kills all monsters of your map (without drops)." monster: "Params: [ [ [ []]]]\n" "@monster2 [ [ []]]\n" @@ -261,7 +260,7 @@ hatch: "Create a pet from your inventory eggs list." makeegg: "Params: \n" "Gives pet egg for monster number in pet DB" kick: "Params: \n" "Kicks specified character off the server" unjail: "Params: \n" "Discharges specified character/prisoner" -kill: "Params: \n" "Kills player." +kill: "Kills player." recall: "Params: \n" "Warps target character to you." raise: "Params: \n" "Revives target character." block: "Params: \n" "Permanently blocks an account." @@ -278,8 +277,8 @@ doommap: "Kills all non GM characters on the map." raisemap: "Resurrects all characters on the map." night: "Enables night mode on all maps, all characters are affected." day: "Disables night mode and restores regular lighting, all characters are affected." -skillon: "turn skills on for a map" -skilloff: "turn skills on for a map" +skillon: "Turn skills on for a map." +skilloff: "Turn skills off for a map." snow: "Makes all maps to have the snow weather effect." clouds: "Makes all maps to have the cloudy weather effect." clouds2: "Makes all maps to have another cloudy weather effect." @@ -287,23 +286,35 @@ fog: "Makes all maps to have the fog weather effect." fireworks: "Makes all maps to have the fireworks weather effect." sakura: "Makes all maps to have the sakura weather effect." leaves: "Makes all maps to have the leaves weather effect." -shownpc: "Params: \n" "Enable a NPC" -hidenpc: "Params: \n" "Disable a NPC" +shownpc: "Params: \n" "Enable a NPC." +hidenpc: "Params: \n" "Disable a NPC." +npcmove: "Params: \n" "Move a NPC." loadnpc: "Params: \n" "Load the specified script file path." unloadnpc: "Params: \n" "Unload the specified NPC according to name." -adjgroup: "Params: - Do a temporary adjustment of the GM level of a player" +unloadnpcfile: "Params: \n" "Unload the specified script file path." +adjgroup: "Params: \n" "Do a temporary adjustment of the group level of a player." +addperm: "Params: \n" "Temporarily add a permission to a player." +rmvperm: "Params: \n" "Temporarily remove a permission from a player." kickall: "Kick all characters off the server" mapexit: "Kick all players and shut down map-server." +gat: "For debugging (you inspect around gat)" +send: "Params: []\n" "For debugging (packet variety)" +nuke: "Params: \n" "Blow somebody up, including those surrounding them." +reloadatcommand: "Reload atcommand settings." +reloadbattleconf: "Reload battle settings." reloaditemdb: "Reload item database." reloadmobdb: "Reload monster database." +reloadmotd: "Reload Message of the Day." +reloadmsgconf: "Reload message configuration." +reloadpacketdb: "Reload packet database." +reloadpcdb: "Reload player settings." reloadquestdb: "Reload quest database." -reloadskilldb: "Reload skills definition database." reloadscript: "Reload all scripts." -gat: "For debugging (you inspect around gat)" -send: "For debugging (packet variety)" -nuke: "Params: \n" "Blow somebody up, including those surrounding them." -reload: "Params: \n" "Reloads a database.\n" +reloadskilldb: "Reload skills definition database." +reloadstatusdb: "Reload status settings." +reload: "Params: \n" "Reload a database or configuration file.\n" " itemdb mobdb skilldb\n" " atcommand battleconf statusdb\n" " pcdb motd script\n" " questdb msgconf packetdb\n" +langtype: "Params: \n" "Changes your language setting." diff --git a/doc/atcommands.txt b/doc/atcommands.txt index d85f898c18..4a7aa5084d 100644 --- a/doc/atcommands.txt +++ b/doc/atcommands.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= rAthena Dev Team //===== Current Version: ===================================== -//= 20130504 +//= 20130515 //===== Description: ========================================= //= List of available atcommands and their functions. //============================================================ @@ -106,9 +106,21 @@ Toggles Kill Steal Protection. --------------------------------------- -@font <0-9> +@font -Sets client font (0 is the default). +Sets the client font. + +Available types: +-- 0: Default +-- 1: RixLoveangel +-- 2: RixSquirrel +-- 3: NHCgogo +-- 4: RixDiary +-- 5: RixMiniHeart +-- 6: RixFreshman +-- 7: RixKid +-- 8: RixMagic +-- 9: RixJJangu --------------------------------------- @@ -247,9 +259,15 @@ Value: or S"" --------------------------------------- -@mapinfo +@mapinfo { {}} -Displays information about the current map. +Displays information about the current map or the one specified. + +Available types: +-- 0: General information and mapflags (always shown). +-- 1: Players. +-- 2: NPCs. +-- 3: Chatrooms. Output Example: ------ Map Info ------ @@ -454,31 +472,34 @@ Displays inventory contents of the attached player. --------------------------------------- -@who -@who2 -@who3 +@who {} +@who2 {} +@who3 {} Returns a list of online characters. +If a filter is given, the list will be restricted to names containing the filter string. @who will also return character positions. @who2 will also return job classes. @who3 will also return parties/guilds. --------------------------------------- -@whomap -@whomap2 -@whomap3 +@whomap {} +@whomap2 {} +@whomap3 {} Returns a list of online characters in a specific map. +If a map is given, the list will be restricted to characters on the specified map. @whomap will also return character positions. @whomap2 will also return job classes. @whomap3 will also return parties/guilds. --------------------------------------- -@whogm +@whogm {} Returns a list of GMs online. +If a filter is given, the list will be restricted to names containing the filter string. For those who are higher GM level than yourself, only name is shown. For the rest, the command acts as a combination of @who+@who2+@who3. @@ -698,7 +719,7 @@ Sets your save point as your current map coordinates. --------------------------------------- -@memo {<0-2>} +@memo {} Saves a warp point for the "Warp Portal" skill. If a number is not specified, the command will output all currently saved locations. @@ -917,9 +938,10 @@ Some options can be found in '/conf/battle/misc.conf'. --------------------------------------- -@heal +@heal { {}} -Fully heals HP and SP. +Heals the specified amount of HP and SP. +If no paramters are given, the character will be fully healed. --------------------------------------- @@ -1117,35 +1139,37 @@ This will also send a packet to clients causing them to close. --------------------------------------- -@reloaditemdb -@reloadmobdb -@reloadskilldb -@reloadquestdb -@reloadscript - -Reloads the specified database. --itemdb: Item Database --mobdb: Monster Database --skilldb: Skill Database --questdb: Quest Database --script: NPC Scripts - ---------------------------------------- - +@reload @reloadatcommand @reloadbattleconf -@reloadmsgconf -@reloadstatusdb -@reloadpcdb +@reloaditemdb +@reloadmobdb @reloadmotd +@reloadmsgconf +@reloadpacketdb +@reloadpcdb +@reloadquestdb +@reloadscript +@reloadskilldb +@reloadstatusdb -Reloads the specified configuration file. --atcommand: Atcommand Settings --battleconf: Battle Settings (may require relog) --msgconf: Message Configuration --statusdb: Status Settings --pcdb: Player Settings --motd: Message of the Day +Reloads a database or configuration file. + +Databases: +-- itemdb: Item Database +-- mobdb: Monster Database +-- packetdb: Packet Database +-- questdb: Quest Database +-- script: NPC Scripts +-- skilldb: Skill Database + +Configuration files: +-- atcommand: Atcommand Settings +-- battleconf: Battle Settings (may require relog) +-- motd: Message of the Day +-- msgconf: Message Configuration +-- pcdb: Player Settings +-- statusdb: Status Settings --------------------------------------- diff --git a/doc/script_commands.txt b/doc/script_commands.txt index 4b2b4eafa0..2a9348626a 100644 --- a/doc/script_commands.txt +++ b/doc/script_commands.txt @@ -4846,60 +4846,59 @@ Used in reset NPC's (duh!) --------------------------------------- -*sc_start ,,{,,,}; -*sc_start2 ,,,{,,,}; -*sc_start4 ,,,,,{,,,}; +*sc_start ,,{,,{,}}; +*sc_start2 ,,,{,,{,}}; +*sc_start4 ,,,,,{,,{,}}; *sc_end {,}; -These commands give a character a status effect. Optionally, and can be defined. +These commands will bestow a status effect on a character. - is which status change to invoke. This can be a number or SC name. -A list of these are in the file 'db/const.txt' with the 'SC_' prefix. +The determines which status is invoked. This can be either a number +or constant, with the common statuses (mostly negative) found in 'db/const.txt' +with the 'SC_' prefix. A full list is located in 'src/map/status.h', though +they are not currently documented. -A number of refers to how long the status change should last. (1000 = 1 sec) - is used on certain status changes, generally modifying player stats by -the given value or a percentage. +The duration of the status is given in , or milleseconds. -Optional value is on a scale of 0-10000, with 0 being no chance to invoke -the status change, and 10000 being 100% chance. NPCs given a without -defining a flag will ignore the value. However, items can be given a rate -and don't require a flag to be given for the rate to be ignored. +Certain status changes take an additional parameter , which typically +modifies player stats by the given number or percentage. This differs for each +status, and is sometimes zero. -Optional value allows the setting of how the status change start should -be handled. These can be added together like a configuration parameter. - : *Default 2* - 1: Cannot be avoided (it has to start) - 2: Tick should not be reduced (by vit, luk, lv, etc) - 4: sc_data loaded, no value has to be altered. - 8: rate should not be reduced +Optional value is the chance that the status will be invoked (100 = 1%). +This is used primarily in item scripts. When used in an NPC script, a flag MUST +be defined for the rate to work. - will cause the status effect to appear on a specified character, instead of the -one attached to the running script. This can only be defined after setting and . +Optional value is how the status change start will be handled (a bitmask). + 1: Status change cannot be avoided. + 2: Tick cannot be reduced by stats (default). + 4: sc_data loaded, so no value will be altered. + 8: Rate cannot be reduced. -Using sc_start2 or sc_start4, extra arguments are able to be given when an -effect can take them. Extra argument's meaning differs depending on the effect type, for -most effects caused by a player skill the extra argument means the level of the skill -that would have been used to create that effect, for others it might have no meaning -whatsoever. +If a is given, the status change will be invoked on the specified character +instead of the one attached to the script. This can only be defined after setting +a rate and flag. + +'sc_start2' and 'sc_start4' allow extra parameters to be passed, and are used only +for effects that require them. The meaning of the extra values vary depending on the +effect type. + +'sc_end' will remove a specified status effect. If SC_ALL (-1) is given, it will +perform a complete removal of all statuses (although permanent ones will re-apply). Examples: - // This would poison them for 10 min at 50% chance - sc_start SC_Poison,600000,0,5000; + // This will poison the invoking character for 10 minutes at 50% chance. + sc_start SC_POISON,600000,0,5000; - // This will bless someone with Bless 10 + // This will bestow the effect of Level 10 Blessing. sc_start 10,240000,10; - // elemental armor defense takes the following four values + // Elemental armor defense takes the following four values: // val1 is the first element, val2 is the resistance to the element val1. - // val3 is the second element, val4 is the resistance to said element. + // val3 is the second element, val4 is the resistance to the element val3. sc_start4 SC_DefEle,60000,Ele_Fire,20,Ele_Water,-15; -'sc_end' will remove a specified status effect. If SC_All is used (-1), it will -do a complete removal of all statuses (although permanent ones will re-apply). - -You can see the full list of status effects caused by skills in -'src/map/status.h' - they are currently not fully documented, but most of that -should be rather obvious. + // This will end the Freezing status for the invoking character. + sc_end SC_FREEZE; --------------------------------------- @@ -5417,7 +5416,7 @@ returned value is zero. --------------------------------------- -*summon "Monster name",{,