2089 Commits

Author SHA1 Message Date
skotlex
d79464d6a8 - Several skills with a splash area (except ground based ones) will now hit Ice-walls when casted by mobs.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11237 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-17 22:30:41 +00:00
skotlex
793b2aaafb - Finally got some time to clean up and fix monster_ai&0x40 (chase through warps). It works correctly now regardless of the number of players on the source/destination maps.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11233 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-17 20:15:36 +00:00
Playtester
67812f3335 Updated sql files
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11232 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-17 20:08:44 +00:00
skotlex
8105f340a2 - Applied various crash-protections to script commands that deal with the equip-position array.
- Corrected and simplified the skill_magic_reflect function. Fixed damage reflection being based on the caster rather than the target.
- Potions are now usable inside Gospel by the casting Paladin (as per Aegis tests done by AuronX)
- The unequip script command now takes a position from 1 to 10 rather than 0 to 9 (to make it consistant with all the other equip position related script commands)
- Added the EQI_* constants to db/const.txt in a format usable by the equip-position related script commands.
- Updated some items to use the new EQI constants.
- Also updated doc/script_commands.txt to refer to the EQI list.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11230 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-17 19:13:58 +00:00
skotlex
c6d05bc0f3 - Gravitional Field is now a MISC type of attack.
- battle_calc_return_damage now is only for BF_WEAPON attacks, added skill_magic_reflect to check whether a spell is bounced back or not.
- Magic reflection now effectively switches the caster/target (after damage has been calculated)
- Now when GTB completely blocks a spell, the spell animation will still come off, but with a single bolt and MISS damage.
- Removed hom_setting&0x2 since Homunculus can be hit by land spells.
- Monster Property now gives a Skill Failed message when attempted on players.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11203 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-14 18:46:41 +00:00
skotlex
d672552159 - Corrected SG Miracle to trigger per attack, not per walked tile. Trigger rate is now 0.02%
- Corrected the warmth skills not clearing up correctly the previous field when you place another one down.
- Corrected vit not affecting the HP bonus that Super Novices, Ninjas and Gunslingers get.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11193 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-13 22:45:57 +00:00
ultramage
9454d4d8f6 Fixed a typo in party invite code (from r11179 / r11180) causing party invitation to fail.
Closes bugreport:43.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11186 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-12 20:38:44 +00:00
ultramage
f7fabf518b Added SI_STEELBODY properly (value from packet capture)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11185 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-12 20:17:44 +00:00
skotlex
1e822f6deb - Corrected /invite letting you invite people even if you are not the party leader.
- Added some reply messages when you try /invite and a. the character is not found or b. you are not the party leader.
- Added a check so that the 'save on crash' routine won't get stuck if it happens to crash while attempting to save characters.
- People in chat-rooms no longer receive @main messages.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11179 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-11 17:25:49 +00:00
ultramage
892f36f0b7 * Added a safeguard to skill_get_unit_layout() against incorrectly defined layout ids (will give weird results but won't crash at least)
* Fixed Firewall/Icewall being oriented backwards (no real difference though...)
* Removed some junk Landprotector/Graffiti code; Graffiti doesn't get placed randomly anymore
* Icewall can now be cast on yourself... but for some reason, the cell on yourself immediately expires!
* Merged together functions clif_set0192() and clif_changemapcell()
- also removed its "send to whole map" mode which is just plain wrong (although aegis actually does use it to 'inform' caster about changes)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11175 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-10 20:50:55 +00:00
ultramage
562e687322 Added config option 'quest_exp_rate' to adjust exp gained by the 'getexp' script command (followup to r11165).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11171 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-10 18:11:10 +00:00
skotlex
7233562a1a - Removed bonus bAddEffWhenHitShort as it is unneeded and unused.
- Corrected getpetinfo so it actually returns "null" when there's no pet and you request the name (the docs state it so).
- Also cleaned up a bit getpetinfo
- Added gethominfo (which behaves in the same way as getpetinfo).
- The 'maxcount' skill_db field now can store independant values per skill-level, required for Kamaitachi since it uses different range values per level.
- Corrected bonus3 bAutoSpell(WhenHit) to select target enemy (rather than self) for skills with inf self and inf2 'don't target self' (aka: auto-select target skills).
- Corrected map_foreachinpath to do a wall check for targets beyond the initially selected tile.
- Corrected Kamaitachi's range to be 9, and the path range to be 4+SkillLv


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11169 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-10 17:07:35 +00:00
skotlex
ad2df1c5ce - Modified bonus3 bAddEff/bAddEffWhenHit so that the last parameter is now passed directly as "trigger" flag. The possible trigger values are ATF_LONG, ATF_SHORT, ATF_TARGET, ATF_SELF. Explanation added to doc/item_bonus.txt
- Updated some cards to use the new format of bonus3 bAddEff*


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11157 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-09 18:05:16 +00:00
Playtester
2f4f2ca04d Updated sql files
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11152 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-09 09:15:47 +00:00
ultramage
8519665bdb Adjusted a spot that still caused a guild leader's guild skills to get blocked on login
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11146 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-08 16:54:12 +00:00
ultramage
4814888f0d * Moved quest_variables.txt to /doc
* Added comments to some getitem/delitem calls
* Disabled nightmare drop in the custom mvp arena script
* Fixed problem with baby novice + swordsman quest (topic:160247)
* Fixed a typo and problem in the airship typing challenge

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11138 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-07 20:41:23 +00:00
skotlex
574c76e799 - Added support for the new party invite/reply packets from the latest client version.
- Cleared up some TODO's
- Added auto-rejecting party/guild invites when the target is disconnected from the server.
- Added a correction in the walking code to abort it when map_moveblock cancels the player's walking (by warping/knocking back),the default code would fail because unit_stopwalking would do nothing since the walk timer was already -1 in that moment.
- Corrected mob_randomwalk to use unsigned int for the tick variable.
- Changed the default @Main format to prevent crashes in the newer clients.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11134 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-07 07:31:58 +00:00
skotlex
a100bf890c - bonus3 autospell (and autospell when hit) will now select for spell target self when the skill is tagged a support skill.
- Increased the amount of autospells that can be held at a time from 10 to 15
- Updated several item scripts to use bonus3 autospells rather than bonus4 ones.
- Changed the "autocasted strip skills don't have a duration" to apply only to Full Strip.
- Cleaned up some the Signum Crucis code.
- Added initialization of hp_loss/sp_loss/hp_regen/sp_regen which somehow was not commited before.
- Magic Mirror's duration now is reduced /15 when used on players.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11124 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-04 17:55:26 +00:00
skotlex
dc1bbff3e7 - Removed usage of MAX_PC_BONUS all over the code, it is now only used in map.h (this is done so that individual bonuses can have their array length modified without having to change all the other bonuses as well).
- Removed bonus bAddDamageByClass since it is not needed, and implemented bAddDefClass which can be used for the same (but previously was doing nothing).
- Cleaned up the weapon_data structure to use a sub-structure to hold the add_dmg information.
- Cleaned up some of the add dmg/def bonuses so the 'count' variable is not needed anymore.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11121 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-04 05:21:17 +00:00
skotlex
88e0559d2c - Added bonuses bSPRegenRate, bHPRegenRate. They behave like the opposite of bHPLossRate/bSPLossRate, making you gain x Hp/Sp every y ms.
- Added bonus bIgnoreMdefRate, used to ignore a % of the target's mdef when using magic attacks (bonus2 will ignore part of the mdef of all targets, bonus3 receives a race argument)
- You can now use bonus2 bCastRate to adjust the cast rate of a single skill.
- Cleaned the code for bleeding (hp-loss) and extended it to handle regen as well.
- Some small cleanups in the pc_bonus functions
- Removed bonus3 bHpLossRate since it was doing nothing and is not used.
- Corrected bGetZeny bonus to be like in Aegis. The amount received is from 1 to the given amount, you can use negative zeny values to use an amount dependant on mob's level (amount*lv).
- Updated doc/item_bonus.txt with all these changes
- Anti-Magic/Stone-Skin now increase/decrease def/mdef only and in an absolute mode (+20*lv rather than +20%*lv). Also the duration is greatly decreased (x/15) when used on players.
- Now when a player uses a strip skill without having it in the skill tree (auto-casted) the duration will be 0, the equipment will be stripped without causing the status change that blocks reequipping.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11112 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-03 20:00:33 +00:00
skotlex
5748269898 - Merged @whereis from my server (displays normal spawn maps for given mobs). This command should be working correctly considering I've been using it since July. I was meant to merge it as soon as I got my hard-drive back, but I kinda forgot @_@
- bonus3 autospell (and autospell when hit) will change the target to self when the skill to be casted is inf&4 (self skill).
- Corrected script homevolution not making the homunculus /swt if it is invoked when not loyal.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11110 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-03 03:35:42 +00:00
Paradox924X
fd86ca7633 Updated Refined Sakkat Box to give only 1 Sakkat instead of 10.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11106 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-02 15:15:51 +00:00
ultramage
e7e0ddde9d Fixed certain typos in src/npc/doc files
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11102 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-01 08:14:36 +00:00
ultramage
1481fc1524 * Documented/cleaned up chatroom code and packetry
* Added some comments to clif_changechatowner()
- totally broken, see the code + topic:163829
* Implemented the chatroom display packet properly
- now has 4 types: public, private, npc and non-clickable npc chatroom
* Implemented the chatroom leave packet properly
- now utilizes the 'kicked' flag when the user was forced to leave
- TODO: banlist support to prevent re-entry, see jAthena code

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11100 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-31 17:08:27 +00:00
Playtester
2f4c475e13 Updated sql files
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11098 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-30 17:48:10 +00:00
skotlex
dafa566df8 - Added bonus bSkillHeal to distinguish offensive skill damage increases from healing power boosts.
- Moved battle_skillatk_bonus to pc.c, cleaned up the related skillatk bonus code to consider the skillheal bonus option.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11085 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-29 18:30:25 +00:00
ultramage
025bcc1f28 Fixed a documentation mistake in 'areamonster' (missing argument).
Fixed incorrect sprite used for twintowers event npc.
Fixed a mistake in changelog.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11074 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-24 09:06:39 +00:00
DracoRPG
021481ab09 Updated Unix start scripts from Shazeya, please read changelog for details
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11070 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-23 22:05:28 +00:00
skotlex
f9f1076a9e - Fixed Dragon Fear's status change selection and duration.
- Fixed Metamorphosis not displaying a speed-change update on the client.
- Status changes that were blocked by element are no longer blocked, instead, now no-damage skills are blocked if they have an element which is absorbed by the target (This is the behaviour that Tharis believes is correct).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11067 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-22 22:49:54 +00:00
Paradox924X
811aee08fc Fixed small mistake in confs causing some confusion.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11048 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-19 22:02:22 +00:00
ultramage
e476015e82 Set proper limits to drop rates to prevent integer overflow.
Minor details cleanup.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11043 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-19 16:28:24 +00:00
ultramage
0072a0189e * Cleaned/clarified some #include relationships between headers
* Changed clif_sitting() to use 'bl' instead of 'sd' (for non-player objects)
* Removed way messed-up script function 'unitdeadsit'
* Tagged 'FIXME' lines written by myself

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11040 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-19 12:55:29 +00:00
SinSloth
08e0cee902 * Added 'noteleport' mapflags to Dandelion's request maps.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11038 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-19 09:34:45 +00:00
ultramage
312714cfa9 Again removed the IG_ list from itemdb.h (see r10100 and r10113) due to popular request.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11037 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-19 06:27:29 +00:00
ultramage
97e812dda1 * Fixed a deallocation mistake and some buffer overflows in npc_chat.c after doing rtfm@pcre.txt (all caused by incorrect usage of pcre api)
* Removed underscores in npc_chat.c's variable names (easier to read)
* Reindented the whole thing (used spaces half of the time ._.)
* Moved npc pcre-data deallocation from npc_remove_map to npc_unload

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11036 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-19 06:04:34 +00:00
ultramage
d9cc3b4951 Changed the duel_time_interval setting's lower bound to 0 (to allow disabling the delay)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11031 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-17 19:32:41 +00:00
ultramage
99ad0f978a * Implemented the official dual-wield aspd equation
- using 0.7 instead of 0.66 as modifier (so aspd will be lower now)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11030 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-17 19:29:03 +00:00
Playtester
ed98c68a49 Fixed eAthena's wrong interpretation of the respawn times
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11027 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-16 18:59:00 +00:00
Playtester
518ec82222 Added icons for NPC_CRITICALWOUND and NPC_SLOWCAST
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11025 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-16 18:04:49 +00:00
ultramage
8076b535d4 * Fixed npc chatrooms not being deleted on npc unload/reload (crash)
* Modified chat code a bit for more clarity
- replaced double-indirection on 'owner' with a normal pointer
- separated some common functionality to 'chat_createchat()'

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11023 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-16 14:14:11 +00:00
skotlex
dff80559d4 - Merged and completed Latio's work on server-side hot-key saving (http://www.eathena.ws/board/index.php?s=&showtopic=159388&view=findpost&p=884453)
- Now hotkeys are stored server-side (table hotkey in SQL servers, file save/hotkeys.txt for TXT servers). You can disable this behaviour by commenting out the 'HOTKEY_SAVING' define in mmo.h
- Fixed a few compilation warnings/errors.
- Apply upgrade_svn11018.sql to create the hotkey table.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11019 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-15 22:08:30 +00:00
ultramage
56d9a037a6 * Some serious code cleanups
- adjusted @reloadbattleconf to not depend on variable ordering
- changed all battle vars to 'int' (removes pointless duplicit coding)
- added min, max and default columns to battle config data structure
- added properly bounded values for these columns (or at least tried to)
- battle-conf loading will now complain if it finds unknown settings,
  and will reject values that are outside of the allowed range
- added CHATROOM_TITLE_SIZE and CHATROOM_PASS_SIZE 
- partially cleaned up chatroom manipulation code
* Fixed 'Job_Professer' typo in mage jobchange quest

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11017 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-15 17:13:04 +00:00
skotlex
2d6cef47d6 - Modified map_foreachinrange so that you can also specify the max length of the path to use. The max_count field in the skill_db is used to specify this range for path-type skills (Sharpshooting, Kamaitachi and the NPC Breath skills.
- Implemented the 'new' NPC skills described here: http://ro.doddlercon.com/wiki/index.php?title=Monster_Skills . It is mostly complete, but the new status changes (slow cast, critical wounds, etc) don't have any visual effects yet (icon or opt changes? I don't know if they should have). Also I could not find the unit_id for Evil Land, so it looks just like Sanctuary for now. Apart from those, the only skills which I couldn't get to display properly are the Breath skills (with the exception of Fire Breath).
- skill_calc_heal now takes the target as argument to properly support Critical Wounds
- battle_calc_return_damage now takes a flag to know if the attack was direct or not, needed since Magic Mirror also reflects indirect attacks.
- cleaned up the 'description' field in skill.c, added skill_get_desc to it
- Removed 'splash' support from Lex Divina as it is no longer needed.
- Modified the way Sight/Sightblaster work so that the skill id is no longer guessed (needed to properly acquire the splash range for Wide Sight)
- Corrected gtb_sc_immunity setting not taking effect if your block value was the same (that is, if the config said 30%, then you would only get status change immunity at 31%, nor 30%)
- Uncommented the 'new' npc skills from mob_skill_db as they are implemented now.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11000 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-14 00:05:13 +00:00
Paradox924X
fe3ee37d0b Fixed a small error in the script_commands documentation about getpartyleader.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10995 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-13 17:39:39 +00:00
ultramage
44f421f12e * Corrected skill-based hp/sp regen (SM_RECOVERY, MG_SRECOVERY, MO_SPIRITSRECOVERY, NJ_NINPOU, TK_HPTIME, TK_SPTIME)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10991 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-13 08:14:12 +00:00
Playtester
b817e7cca2 Updated item_db.sql
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10976 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-10 14:00:00 +00:00
ultramage
bc31c68ad5 The new functions now clear junk from the output buffer, this simplifies the code a bit.
Added a TODO for one emblem loading problem/crash.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10969 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-09 11:02:44 +00:00
skotlex
27488665e0 - Moved damage logging to mob_log_damage, now non-damage targetted (or splash) skills also get logged into the monster's 'damage history' which affects the exp-bonus per attacker setting.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10966 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-09 03:43:46 +00:00
skotlex
52ed64546e - Changed the structure of the homunculus_db file so that the homunculus and its evolved version share the same line. Also added the evolution bonuses to it.
- Updated the @homstats command to show evolution bonuses
- Cleaned up the homunculus db structure.
- Implemented the evolution stat growth bonuses.
- Some small cleanups in the mercenary.c file
- Corrected initial intimacy of a newly created homunculus (should be 21/1000)
- Incremented the size of mob.c:summon.class_[] since mob_pouch has almost 350 entries.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10965 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-08 20:56:11 +00:00
ultramage
f5f77a5d51 * Cleaned up junk left in the code by the mapcache/mapindex update
- Added mapindex_getmapname(_ext) to help with ".gat" adding/removing
- Moved related processing to the interface (prevents duplicity)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10963 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-08 17:41:49 +00:00