Age | Commit message (Collapse) | Author | Files | Lines |
|
- pc_follow_timer possible triggering crash.
- pc_reg_received to use battle_status.hp instead of status.hp
[Added]:
- macro map_id2index for non-cyptic mapid to mapindex conversion.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6822 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
status.hp/sp, fixes scripts reading the wrong Hp/Sp values
- Added some missing SC_* entries on the initial listing (potion related and speed up ones)
- Fixed function declaration of map_getcellp()
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6817 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc) and weapon_atk structure with the weapon specific info (atk, atk2, element) to be used by all combat structures (TODO: Homun needs to be updated to use it)
- Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data.
- Set the NPC-Change Attribute duration on Time1, updated their max to 1 in the db.
- Berserk's HP cost interval is now defined as time2.
- Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead
- Rewrote the @heal related functions to use the new status_* healing functions.
- Added status functions to deal with damage and healing (status_damage, status_heal, status_percent_change) and a bunch of defines for easier handling of them (status_percent_heal, status_percent_damage, status_fix_damage, status_kill, etc)
- Splitted mob_once_spawn into two. mob_once_spawn_sub creates the mob instance without spawning it.
- Added defines for Elements (ELE_*)
- Modified battle_calc_(weapon/magic/misc)_attack to use the status data structure.
- Rewrote and cleaned up battle_calc_misc_attack
- Merged config options pc_attack_attr_none, mob_attack_attr_none, pet_attack_attr_none into attack_attr_none (type 4)
- Removed config options player_defense_type, monster_defense_type, pet_defense_type in favor of weapon_defense_type
- Cleaned up pet.c to stop invoking status_calc_pc when unnecessary
- Modified skill_calc_heal to take into account the MEDITATION bonus.
- Cleaned up code of Adjustment, Madness Cancel and other GS/NJ skills inside skill_check_condition
- Added status change SC_MODECHANGE which handles mob state changes (this SC is continous until manually ended, eg: like Weight50)
- Modified Slim Pitcher so it will work when casted by non-players. Will now also work with SP-healing items.
- Rewrote Freedom of Cast code to use function status_freecast_switch to switch adelay/speed when cast begins/ends.
- Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for easier updating when used in conjunction with ground skills.
- Fixed Asura Strike being usable from within a combo regardless of combo skill.
- Modifed SC_DANCING to store speed-change in val3 (it is shared with skill duration...)
- Added StatusChangeFlagTable to store which statuses are changed by each SC
- Added SCB_* constants to specify the different stats that each sc changes. SCB_PC is the only one that means a change hardcoded in status_calc_pc, the rest are handled by status_calc_bl
- Added some helper functions to simplify with basic status calculations (status_base_atk, status_calc_misc, status_base_pc_maxhp, status_base_pc_maxsp)
- Added status_calc_mob which calculates initial status and special base status alterations (HP changes, stat changes due to big/small mobs, etc)
- Made all the status_calc functions static.
- Added status_calc_bl_sub_pc for PC related calculations that must happen after status-change adjustments.
- Added status_calc_bl which does status-change related calculations using as base the base_status of the bl object and the SCB_* flag passed.
- Added status_get_status_data and status_get_base_status to retrieve the bl objects current status_data and basic status_data (current never returns null, instead it returns a dummy structure with basic data)
- The main switch in status_change_start now only sets the tick and val values, therefore it is skipped when loading (flag&4)
- Cleaned up status_change_start and replaced many of the ex-japanese comments for english ones.
- Changed Hiding to store the speed penalty on val3. val4 stores interval SP cost.
- Changed Chase Walk to store Speed adjustment on val3, sp cost in val4
- Changed Cloaking to store speed penalty on val3, val4&2 signals wall-present, val4&1 is infinite cloaking.
- Changed Wind walk to store speed bonus on val3
- Rewrote Marionette Control to store the status to add/substract in val3/val4, it now works on anyone (players/mobs)
- Changed Improve concentration to store Card bonuses (which are not counted for total % increase) on val3/val4
- Changed SC_ADRENALINE, SC_CONCENTRATION, SC_ANGELUS, SC_IMPOSITIO, SC_MELTDOWN, SC_TRUESIGHT, SC_SUN_COMFORT, SC_MOON_COMFORT, SC_STAR_COMFORT, SC_QUAGMIRE, SC_GATLINGFEVER to store the bonus modifiers in their val values rather than calculate them in status_calc_*
- Status_change_start/end will use clif_status_load rather than clif_status_change when related bl is not on a map.
- Modified status_change_timer to use the status_charge function rather than directly substracting SP
- Added SC_ELEMENTALCHANGE to modify someone's base defense element.
- pc_clean_skilltree will now also remove item-granted skills.
- Learning skills will now only invoke status_calc_pc when the skill is passive.
- Cleaned up pc_steal_coin
- Cleaned up pc_check_base/job_lvup to only invoke the lv-up related packets and functions ONCE regardless of skill-levls earned.
- Cleaned up pc_ regen related functions.
- Made player-sprite mobs have item pickup animation and walkdelay when taking items.
- Cleaned up mob_dead code.
- Removed paramb, parame from struct map_session_data, replaced them by param_bonus[6],param_equip[6]
- mob special ai state 3 signals summon flora.
- Moved petDB pet_hungry_timer vars from TBL_PC to TBL_PET
- Cleaned up some pet functions, made the menu functions receive as argument both pet and master.
- Clones will copy a player's base status rather than battle status (so status-change alterations are not cloned)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6791 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
* Improved and (should be fully) fixed the mob control engine.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6769 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6755 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
* Fixed memory leak in scripts (again). Still have a few lying.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6749 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
TODO: Free all scripts using script_free_code() instead of old methods.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6690 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
This only features the structures, status_* and clif_* (packets) and is
not functional yet in any conventional way, but doesn't interfere
with present functionality either.
I would only forget half of this stuff if I tried to do all at once.
Expect the rest somewhen within the upcoming week.
(This is not similar to jA's implementation.)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6681 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6585 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Added back SC_XMAS to status.c (how was it... lost?)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6550 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
regardless of sc defense of the target player (that is, they cannot be avoided)
- Fixed a possible counter overflow in attacked_count, changed the var size to unsigned char since the code can handle the overflow now.
- Multiple targets again reduces armor defense, as reported by Tharis.
- Increased dex increase of NPC_POWERUP to +20 per level.
- Fog of Wall's -50 hit reduction is now only for ranged attacks.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6528 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- idletime will now be updated on attack-request, not on sit/standup
- Party members sitting will no longer be considered idle.
- hide_gvg_damage will now send 1 instead of -1 as damage.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6517 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Moved Sharp Shooting display to the block with Auto-Counter (since that's the other skill that can show critical as well)
- Corrected some fields in the still packet (guild emblem being stored as a Long when it should be Short)
- Modified most fields of view_data to be unsigned shorts rather than signed ones.
- On-Touch NPCs will now make you stop walking when you trigger them.
- Reduced stun duration of most skills to 3 secs.
- ShadowJump/JumpKick will make you land on the target's cell now.
- Fixed Kaahi triggering only once per skill duration.
- Added the kaahi_heal_timer to the list of status change functions.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6516 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Infinite Endure will no longer give mdef bonus.
- Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to start/end infinite endure.
- Hammer fall's stun duration is now 1+lv seconds.
- Fixed Kaahi's SP cost per heal.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6487 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Moved battle_consume_ammo to the end of skill_castend_damage_id, skill_castend_nodamage_id and skill_castend_pos2 rather than battle_calc_weapon_attack. They will trigger when the player's arrow_atk state is active and a ground skill was not invoked. It should fix all issues with splash/ground skills consuming ammo per target rather than once per skill use.
- Added structure state to the ground skills, their fields are magic_power, into_abyss and ammo_consume to indicate the states that were previously stored in val3.
- Corrected Desperado ammo consumption (should be 10)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6455 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Added SC_SMA to handle "ready to use SMA" status (rather than SC_COMBO) since it has a visual effect to use.
- Corrected the value of OPTION_FLYING
- Using SG_FUSION ends Soul Linked effect.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6438 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
map_foreachinrange, but it also performs a "shoot-path" check before invoking the function. Used in the skill subtimer function if skill_wall_check is defined.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6436 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
soul-drain!)
- Moved the soul-drain code to skill_counter_additionaleffect
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6392 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6378 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6376 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
'skill_steal_max_tries' to set max number of stealing tries. It could help to fix stealing exploit on mobs with few drops
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6367 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Some small code-cleanups.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6298 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
scripts.
- Removed special state changebase and view-change check on status_calc_pc
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6292 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Added Option constants for Carts, fixed OPTION_FLYING (it conflicts with OPTION_XMAS?)
- Updated clif.c to check for OPTION_WEDDING|OPTION_XMAS instead of view class to block attacks and skill usage.
- Removed struct pc_base_job and functions pc_calc_base_job/pc_calc_base_job2 which are no longer used anywhere (were long ago deprecated infavor of the new jobid system)
- Cleaned up change-cart code.
- Modified SC_XMAS to not change your view anymore and only set the proper option value (OPTION_XMAS)
- Cleaned up the code regarding char_gm reading.
- Changed the option field to unsigned short to make room for the higher values.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6229 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Merged all leeching code to battle_drain function.
- Added an enum for races (they match the RC entries in const.txt, except they are in all caps)
- Cleaned up atk_mods and aspd_base to be MAX_WEAPON_TYPE sized rather than MAX_WEAPON_TYPE+1
- Simplified a bit the code for Signum Crucis
- Added script bonuses:
bonus3 bHPDrainRateRace,<Race>,<Activation Rate>,<Drain %>
bonus3 bSPDrainRateRace,<Race>,<Activation Rate>,<Drain %>
bonus2 bHPDrainValueRace,<Race>,<Value>
bonus2 bSPDrainValueRace,<Race>,<Value>
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6221 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
that are executed once when the corresponding item is equipped or unequipped respectively.
- Removed bonuses bDamageWhenUnequip, bLoseSPWhenUnequip
- Updated sql-files/item_db.sql with latest.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6204 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Fixed a logic typo on the way dummy_npc_id was defined.
- Added state.trading to specify when a trading has started. Now you should be able to walk around until the trade is either rejected or started.
- Armor defense is no longer reduced by the amount of characters targetting you.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6192 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Removed mapflag nopvp
- Added support for disabling mapflags on a mapflag line:
comodo.gat mapflag nomemo <- turns on nomemo mapflag
comodo.gat mapflag nomemo off <- turns off nomemo mapflag
- Cleaned up and optimized the restricted/zones mapflag. Restricted cards will just not work in disallowed maps rather than blocking the compounded equipement from being used.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6159 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6151 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
characters (saves having to get the sc data and check for the corresponding timer all the time)
- removed pc_run, pc_walktodir, replaced with unit_run.
- moved the code that makes you walk that extra cell to unit_stop_walking, which is now invoked before resetting the walk-target.
- Flag &2 in unit_stop_walking is now to make the character force-move that extra tile if the walkpath pos is 0 at hit time.
- Added variable walk_count to unit_data to be use as a counter for cells walked for walk-triggered skills (walk path_pos is not good enough since it keeps resetting each time the walk path is updated)
- Increased WALK_SKILL_INTERVAL to 5 (it is the closest value that makes the average mob trigger a chase skill every second)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6137 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
unit_walktoxy, since the previous behaviour makes all slaves always end up on the same cell.
- Changed some function declarations to take x,y arguments as short rather than int.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6024 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
special-view associated with some equipment to correctly revert the look when you take off said equipment (fixes tuxedo/wedding dress when you use modify_wedding_display: yes)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6002 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5995 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
TESTING
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5991 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
simplified the mob and pet ai routines.
- Simplified the walk routines to half the number of timers required for walking.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5982 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
chasing and attacking a character. Note that it's a work in progress and not yet properly tested/finished...
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5979 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
now handled through nd->sc.option&OPTION_INVISIBLE checks. Should fix disable/enablenpc calls not working.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5889 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5841 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
(equipment, weapons, hair, dyes, etc). Unified a bunch of clif functions now that you only need to handle the view_data (so instead of clif_spawn[pc/mob/npc/pet] you just have clif_spawn)
- Fixed the clif_change_class packet (it should check for non players classes, not a class above MAX_PC_CLASS), it fixes morphing enemies.
- Rewrote the way cloth dye packets are resent to optimize bandwidth usage.
- Fixed the npc_item_flag thing (enable_items/disable_items script command)
- Rewrote the disguise implementation to be bandwidth friendly.
- Modified the hide options to change your class to INVISIBLE_CLASS, since such classes don't even get their view packets sent around.
- Rewrote several clif functions to adapt to the new view_data class;
- Added class 139 to npcdb_checkid which was required by some npcs in the swordman quest? o.O
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5833 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Some cleanup of the skill-use functions in clif.c
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5787 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- Increased a bit the size of skill-related arrays.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5746 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5740 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
area (for recall/warping skills)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5732 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
(attack times, walking, auto-attack timers, skill related data)
- Modified unit_skillcastcancel to receive flag&2, which stands for "cancel casting only if current skill is cancellable"
- Battle config options changed from yes/no to BL_TYPE settings: skillrange_by_distance, skill_noreiteration, skill_nofootset, gvg_traps_target_all, skill_log, attack_direction_change, auto_counter_type
- Clif.c will disconnect sessions that send an unknown command packet above 0x30000 instead of just ignoring it.
- Cleaned up/rewrite of the pet ai, same for pet_calc_pos
- Implemented use of mob variable attacked_players as it is used on jA
- Cleaned up error reporting during mob-skill loading to be less spamy with non-loaded mobs.
- Corrected water_height reading. I forgot to give credits to LittleWolf for providing the water-reading function :X
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5707 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
steel-body, etc) when the skill in use is an item-invoked skill.
- Merged LittleWolf's function to read the map-height directly from the rsw file.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5706 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5649 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5628 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5627 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5619 54d463be-8e91-2dee-dedb-b68131a5f0ec
|