1248 Commits

Author SHA1 Message Date
ultramage
987eb74e86 Fixed a typo from r9778, allowing non-gm chars to use /kick
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9875 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-17 23:08:19 +00:00
skotlex
dddd48f15d - Modified the "guardian" spawn script command, it no longer receives a "amount" argument (since that only leads to trouble), if the class is negative, it'll pick a random class the same way the monster spawn script command does, and if you pass a spawn position with coordinates equal or less to 0, a random spot in the map will be taken. However you can't use "this" as a map name anymore since these script commands do not need an attached player.
- Guardian spawning will now fail if you attempt to spawn a guardian that already exists on the same position.
- Collapsed clif_party_main_info and clif_party_join_info into a single function: clif_party_member_info
- Collapsed config settings "sg_miracle_skill_min_duration" and "sg_miracle_skill_max_duration" into "sg_miracle_skill_duration", which defaults to an hour.
- Miracle of the Sun, Moon and Stars can now retrigger to lenghten it's effect, and it is cancelled on warp/map-change.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9871 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-16 19:30:28 +00:00
ultramage
cf3421d7f1 - Cleaned up clif_party_info a bit
- Reverted some of my mobdb code

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9870 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-15 23:22:30 +00:00
FlavioJS
781fa7bb72 - A bit more work on Ticket #41.
- Added 'r' (variable reference) to the script argument definitions.
- Added a simple define for suspitious actions. (empty at the moment)
- Added clif_clearcart and moved sending cart packets to pc_setoption.
- clif_parse_ChangeCart checking the player level.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9857 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-13 00:07:24 +00:00
ultramage
6eb920bf96 Fixed clif_parse_GMmessage cutting off messages randomly (typo in r9778)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9856 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-12 22:03:55 +00:00
skotlex
68e1eb420a - Corrected range of self destruction / bio explosion to be equal to their splash range.
- Corrected Spider Web casting around caster instead of target's position
- Corrected a possible crash during login due to checking for the incorrect variable (lets pc_calc_status be invoked when it shouldn't)
- Reenabled the base status aspd calculation for homunc (status_calc_bl calculates battle_status, status_calc_homunculus calculates base_status, they are not the same!)
- Corrected the meaning of "skill_display_fail&2", made 2 the default setting.
- Added bounds checking to map_foreachincell
- Opt2 values (poison, blind, and so on) are now resent on warp/map-change
- Corrected description of isloggedin script command.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9853 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-12 18:02:41 +00:00
ultramage
725ed1909e - Fixed the inverted behavior of display_skill_fail, caused by r9823
- Commented out some duplicit homunculus speed calc code

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9852 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-12 02:46:00 +00:00
ultramage
108c74125f Disambiguation
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9851 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-12 01:04:28 +00:00
ultramage
1ad9bb7c15 Fixed clif_party_message using an incorrect buffer length
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9845 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-11 00:16:06 +00:00
skotlex
3f8bb2d5bb - Fixed skill usage being blocked if you use Weapon Refine and there is nothing available to upgrade.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9839 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-09 21:10:17 +00:00
skotlex
b09a064281 - Updated the 'unit walk' to functions so they stop your attack if it's possible to walk.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9837 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-09 19:50:57 +00:00
skotlex
eabdf9af64 - Spider web can again be recasted on target.
- Modified Spider Web so it can instantly retrap a target, rather than idling on the ground waiting for a new target.
- Cleaned up some the rude-attacked code, being attacked while under spider web now triggers rude-attacked.
- Sped up the FrostJoke/Scream message length chat check.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9828 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-08 18:25:51 +00:00
ultramage
81c50c19b7 Added a missing null pointer check in clif_parse_globalmessage
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9827 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-08 17:58:38 +00:00
skotlex
d47a0a0d52 - Fixed a bunch of probably incorrect logical comparisons.
- Some small updates on the skill_db file (some max levels of npc skills, some elements for skills that didn't really need them)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9823 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-08 05:34:12 +00:00
FlavioJS
c46f3cf135 - Removed deprecated console code.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9815 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-07 06:25:00 +00:00
FlavioJS
5c41bf4b04 - Moved CHAT_SIZE back to map.h because log_atcommand uses it on sql builds. (moved to clif.c in r9811) [FlavioJS]
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9814 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-07 05:20:22 +00:00
skotlex
c1d503fdcb - Moved define CHAT_SIZE to clif.c, added define CHATBOX_SIZE to specify that 70 char limit of the input area.
- Fixed #lvup having the gm level check backwards.
- Fixed the stormgust freeze counter going up even if the attack is blocked/cancelled.
- Updated mes_len_check to receive max expected size as well (clif.c)
- Cleaned up parsing functions for /mm, /resetskill, /resetstate, /item, /monster, /hide
- 


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9811 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-06 21:49:00 +00:00
skotlex
4b7dcab0f2 - Cleaned up homunc attack request parsing. Homunculus no longer goes into auto-attack (ctrl+click) mode since the client does every attack request individually.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9805 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-06 17:57:45 +00:00
skotlex
facb8af27f - Updated the code so that now a range of a skill is determined by the skill's range in the db. Now only skills with less than 5 cells of range are melee.
- The inf2 parameter of the skill_db is now red as an hexadecimal.
- Updated comments and inf2 values of the skill_db to use the new format.
- Soul Change now can't be casted on self.
- Updated range of Grandcross, Granddarkness and Gospel to 5 so when they attack their attack type is counted as ranged.
- Splitted the super novice flag in two, to keep seperate counters for the chant and for the self-revival. The self-revive will now trigger only once per level per session, if you relog you can have it trigger again.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9794 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-05 23:10:47 +00:00
skotlex
d2574dfd69 - Fixed a duplicate warp name in Rachel
- Fixed Venom Splasher not being Poison elemental
- Cleaned up #blv
- Fixed the skill tree not always updating when using @allskill
- Probably fixed the target-change on melee attack setting not working.
- Moved the deletion of the invincible timer when using skills so that it is not deleted for skills such as Ashura (when just selecting a target)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9791 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-05 18:16:33 +00:00
skotlex
a23da55db8 - Fixed the flag parameter not working on npcshopattach
- Modified unit_walktoxy so it accepts flag &4. When used, this flag will delay the walk request if the character is unable to move because of the can't walk delay. This is used for player and homunculus walk requests.
- Removed the delay walking code from clif.c as it's now handled by unit.c
- Added a possible crash protection in clif_skillfail when the player is without a connection.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9782 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-03 07:48:38 +00:00
ultramage
65796c8765 Fine-tuned the global message processing function
- now detects access-out-of-rfifo attempts (idea from eA++)
- uses the new CHAT_SIZE define to restrict message lengths
- detects Frost Joke/Dazzler and gives them more freedom (from Freya)
- more strict non-conformant message detection 
- logging every problem to the mapserver console

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9781 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-02 22:03:05 +00:00
skotlex
2a5ec09a11 - The define MESSAGE_SIZE was wrong! It is only used for input boxes. Therefore now it is only used for Vending, Talkie box and Graffiti
- Added new define CHAT_SIZE which holds the max length that a client can send from the chat buffer. This value is NAME_LENGTH + 3 (the ' : ') + 70 (the actual text).
- Added define msg_len_check which crops incoming client text if it's longer than CHAT_SIZE. Added cropping to all incoming messages except normal chatting which is already accounted for.
- Removed variable  talkie_mes, this is now handled by sd->message
- Cleaned up parser functions for /b /lb, gm kick, /shift, /recall
- Added crash protection to the logging functions when they receive a too long string.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9778 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-02 19:59:39 +00:00
ultramage
84ad40528b * Restricted global messages to 255 characters (client shows only ~80 anyway, wanted to use 127 but frost joke's lines are longer than that ...)
- prevented using a ~22+kB long message to crash everyone on screen
- prevented faking the message length to cause an out-of-bounds access crash
- removed the unneccessary 'buf'ffer (inspiration from jAthena)
- Ref: http://www.eathena.ws/board/index.php?showtopic=137770

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9774 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-02 06:37:53 +00:00
ultramage
3b59523144 A followup to r9761, a header include that somehow didn't commit
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9768 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-01 21:50:55 +00:00
skotlex
8a9e1eaa07 - When when a party-member levels up, the level change is sent to the char-server to update the even-share range values.
- When joining a gvg_dungeon, the pvp packet will be sent to signal versus.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9759 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-01 18:16:09 +00:00
ultramage
287219ad0d Wiped out the old night code
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9755 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-31 18:59:30 +00:00
ultramage
025f66c3c3 Added a nasty hack to prevent multilanguage clients from breaking guild notices
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9737 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-29 16:02:57 +00:00
DracoRPG
31c12a3859 - I'm back, and I begin with an implementation of a good old Aegis bug : Assassins should now be able to use the infamous status arrow + Grimtooth method
- Also added some random stuff about storage password system

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9723 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27 03:12:38 +00:00
skotlex
b55b492943 - Moved the pet rename code from int_pet.c to inter.c and normalized it so it can be used for any object.
- Made homunculus renaming go through the char-server so it can be validated against the allowed characters setting.
- Added battle config hom_rename so you can enable renaming multiple times your homunc.
- Updated the hardcoded defaults for gvg-damage to what they should be.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9720 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27 00:31:29 +00:00
skotlex
c82708aba9 - Made the pc_deleteinvincibletimer function a define so it auto-checks for the timer value.
- Fixed a missing tab in the skill require info of TWILIGHT3


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9709 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-24 21:29:01 +00:00
skotlex
985abe3b02 - Changed the night status from 149 to 160, which seems to work so much better, and also enabled simplifying the night code. The previous code was there left commented in case it's needed again.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9699 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-23 15:08:47 +00:00
skotlex
da11e41ed4 - Added view_data support to mercenary.*, so that the Homunculus entries are no longer required on the mob_db.
- Removed homunculus entries from mob_db.
- Added the status icon to NPC_CHANGEUNDEAD and the Flee/Hit foods
- Corrected the check that lets you walk when vending/chatting/etc.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9697 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-23 14:08:34 +00:00
skotlex
e6e31a01d2 - Moved the homunculus setting from pet.conf to homunc.conf
- Fixed homuncs not triggering land spells if they are spawned on top of them and hom_setting&0x2 is not set to make them bypass them.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9696 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-23 14:00:22 +00:00
skotlex
81a9313a9d - Removed sd->max_menu, sd->npc_menu is now reused to store what is the max number of valid entries and prevent clients from picking invalid options.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9690 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-22 15:10:15 +00:00
ultramage
e034ce07bb Typo hunt
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9684 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-21 12:12:04 +00:00
skotlex
9d049827d7 - Reverted the dup-label check code since it has a bug that needs to be fixed first (it fails to recognize const.txt values)
- Reverted clif_skill_damage receiving the blewcount value since the whole code update that was involved didn't help any anyway.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9675 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-19 18:00:11 +00:00
skotlex
29b474c8ab - Implemented Intravision as it should be. Thanks to HelloKitty2 for the captured packets.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9659 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-16 14:44:27 +00:00
skotlex
9e0791f775 - The NPC elemental attacks will display a skill animation again.
- Mob instant cast skills will use their adelay now.
- Spirit of Wizard won't work on Ganbantein
- The pc normalize job function will consider you as novice if you don't have maxed out basic skill.
- Cleaned up pc_calc_skilltree and related functions so that the id is left as 0 when you can't raise the skill even if you meet the prerequisites. This is to prevent raising quest/soul/marriage skills through packets.
- Slaves should lock unto their master's target even if they are not attacking yet (eg: in chase mode)
- Updated the Summon Slave skill to use the slave distance define as valid distance to spawn from master.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9656 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-15 21:45:19 +00:00
skotlex
539fe020dc - Fixed Joint Beat's speed penalty.
- Added a pc_authok check to prevent the case in which somehow another character of the same account manages to log in as well.
- The pc normalize job function will now recognize you as a novice if you don't have NV_BASIC maxed.
- Accessories will now by default go into the rigth-side rather than the left-side of the equip window.
- Added a check in the mob_ai_subhard function to make mobs unlock targets which have their invincible timer set.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9655 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-15 19:16:44 +00:00
FlavioJS
dde66aee4e - Fixed autotrading characters not being able to reconnect. Seams like I misunderstood how id_db and pc_db are used.
Ref: http://www.eathena.ws/board/index.php?showtopic=131873

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9644 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-12 03:40:18 +00:00
FlavioJS
4b78fc3c9f - Changes to script buildin functions:
* functions checking if a player is attached as soon as possible.
  * functions that required a player attached and would crash if none was 
    there terminate the script now. (others keep the current behaviour to 
    maintain full backward compatibility)
  * removed the unused flag argument in guildskill.
  * bonus,bonus2,bonus3,bonus4 use the same function now (remains the same 
    script-wise)
  * added an optional parameter to setcart,setfalcon,setriding so it's 
    possible to remove the cart/falcon/mount or select a specific cart
  * other cleanups

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9636 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-09 17:31:13 +00:00
ultramage
fbe23f27a2 Undid the memset->malloc_set replacement
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9626 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-07 16:49:03 +00:00
ultramage
9f164c312b - re-added the duplicit nj/gs name messages in msg_athena
- renamed atcommand_sub to is_atcommand_sub (charcommand too)
- reformatted conf-tmpl's comments a bit
- and a fix to the stable changelog to make my last commit more descriptive

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9625 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-07 07:48:04 +00:00
FlavioJS
ed74a4c9c7 - Moved refusal of a known packet versions to clif_parse_WantToConnection and made it check for non-player object with that id.
Changed in reaction to: http://www.eathena.ws/board/index.php?showtopic=130808

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9610 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-03 07:57:05 +00:00
FlavioJS
a35ee1f5d7 - Gospel sends the buff message to the affected player.
Reported by holybeske in http://www.eathena.ws/board/index.php?showtopic=130440

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9604 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-02 07:17:11 +00:00
FlavioJS
e0399ebb83 * Refer to http://www.eathena.ws/board/index.php?showtopic=130285
- Renamed pc_checkweighticon to pc_updateweightstatus and cleaned it.
- Updated pc_is50overweight to use battle_config.natural_heal_weight_rate.
- Added 90% weight check when attacking.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9600 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-31 12:12:42 +00:00
skotlex
58bb9be68a - Cleaned up some more the code so it works for -DTURBO
- Cleaned the pvpoff @ and script commands.
- mob_get_random_id now has two additional flags to specify that the monster to acquire should not be a boss type (4) or that it should give exp (8).
- TK_MISSION will now pick any mob from the DB as long as it is not a boss type and it gives base exp.
- Fixed the double-stone issue when hitting a petrified character.
- Minor cleanups


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9573 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-26 15:07:18 +00:00
FlavioJS
60e3d1b499 - Applied part 1 of TheUltraMage's socket cleanup.
"Basically what I did was perform simple one-liner substitutions for ugly repetitive blocks of code. The most apparent are the send/recv code and the other basic socket calls."
- flush_fifo is non-blocking now. I guess best effort is good enough...
- Copied header files from vcproj-7.1 files to vcproj-8 files.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9570 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-25 06:59:25 +00:00
FlavioJS
52245f90b9 - Moved "#include <limits.h>" to cbasetypes.h to ensure it's included before checking if UINT_MAX has been defined.
- Minor changes in pc_readdb related to max_level being unsigned.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9561 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-23 03:24:32 +00:00