487 Commits

Author SHA1 Message Date
ultramage
8db83e248a - Re-coded 'soundeffectall'; removed the third parameter ('coverage')
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10844 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-07-03 15:15:23 +00:00
ultramage
1ed7f6c584 Cleaned up some parts of the code.
Removed obsolete script function 'hasitems'.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10838 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-07-01 15:26:53 +00:00
ultramage
a57b40f407 - Fixed pet equip not displaying correctly at all (closes topic:153753)
- Removed old fixpos packet (the 'new' one is way smaller)
- Fixed some major logical typos in the code, cleaned up many places


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10746 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-06-11 22:14:50 +00:00
ultramage
e1397576e6 - Fixed missing client update when 'return to savepoint' fails
- Fixed a bad copy-paste from r10028 letting players escape jail (char was dead on login, so statuses (SC_JAILED) couln't be applied)
- Added clif_standing() to clif_sitting(), and used them in clif.c
- Cleaned up clif.c a bit - clif_clearchar->clif_clearunit_area, clif_clearchar_id->clif_clearunit_single

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10668 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-06-03 14:43:34 +00:00
ultramage
dfdb5368c7 Corrected some weird fgets() statements, plus reformatted them
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10616 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-25 15:21:53 +00:00
ultramage
301d493855 - Added new flag to skill_castnodex.txt, to allow per-skill tweaking of cast time and delay reducibility by item scripts (cards and such)
- Fixed Martyr's Reckoning never triggering for gms with all skills
- Added MO_TRIPLEATTACK and RG_SNATCHER to @skillall's skill filter 
- Made gm_skill_unconditional bypass skill blocking (guild timer, etc)
- Reverted the weird delay_dependon_agi thing (r8923, r9055, r9059)
- Changed a few memsets to strncpy (reading past buffer is a bad idea)
- Sped up some memset operations (multiples of 4 are faster)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10613 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-23 21:23:36 +00:00
ultramage
9e7eb8804f - Removed the TURBO socket mechanism - it was in fact just using a variable to cache a few arithmetic operations (premature optimization)
- Since the fifohead mess is gone, fixed leftover bad code structuring

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10599 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-21 18:40:29 +00:00
ultramage
711d01a128 Reformatting @_@
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-19 15:50:41 +00:00
ultramage
90aab65815 Fixed server crashes when you use long hostnames (/thx to Ancyker)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10579 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-19 11:26:15 +00:00
ultramage
cce7ebedf4 - imported the latest working grfio code from stable
- re-added usage of managed allocation routines in grfio
- eol-styled some new files
- some cosmetic fixes here and there

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10468 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-05 13:57:07 +00:00
blackhole89
66fa77c5f6 adding read-from-GRF/GAT back in. Read Changelog-Trunk.txt for more details.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10455 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-04 17:31:41 +00:00
skotlex
2eeaa8f27a - Now @whogm hides perfect-hide gms only if their GM level is greater than the one who invoked the command.
- Some minor cleanups.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10290 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-18 20:28:33 +00:00
skotlex
2e8efbd2c2 - Some more cleanups that should prevent the double-login issue even further.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10286 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-18 14:39:11 +00:00
skotlex
ac0c23863d - Trade-requests now fail if the target is in a NPC.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10214 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-11 15:53:17 +00:00
ultramage
24db1473f4 - Added function str2ip() to do platform-safe conversions
- Removed a bunch of unused stuff
- Moved SIGILL to unix-only defines since tests and docs show that Windows doesn't issue SIGILL
- Fixed several annoying compilation warnings

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10177 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-07 12:06:25 +00:00
ultramage
87c0efdc89 - Moved e_mail_check() and config_switch() to strlib.h
- Synchronized the login servers a bit

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10174 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-07 04:21:29 +00:00
DracoRPG
7c8f12ccd5 I'm still here!
Rewrote fame ranking lists- changed MAP_NAME_LENGTH to 12, now there's MAP_NAME_LENGTH_EXT at 16 for
	  uses where there is / may be the .gat extension, code adjusted accordingly
- moved map_normalize_name to mapindex_normalize_name so that everything
	  handling map names uses the same extension-removing function
- greatly enhanced the map cache generator, complete documentation on the
	  tool and the map cache format can be found in doc/
- the map cache format changed a bit as a consequence, but of course a new
	  valid one is included (contains latest Nameless Island maps)
- fixed a duplicate entry in map index


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10167 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-06 17:22:40 +00:00
ultramage
515d98c194 Fixing several compilation & runtime problems
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10164 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-05 20:53:15 +00:00
ultramage
8dc1b77f03 * Made a crazy attempt to at least partially synchronize login&char code
* Major edit to the way the servers handle ip addresses, making them obey the "host byte order inside, network byte order outside" rule
- hopefully covered all entry- and exit-points for IP address data
- discovered several places where Gravity's client breaks the convention, will need to come up with a suitable countermeasure for that
- other than that, the code should be portable, except for printing and ipban mask testing (those still assume a specific byte order)
- tested both txt and sql in all usual situations; tested single- and multi-server setups, all seems to work (but watch out for hidden bugs!)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10162 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-05 18:49:57 +00:00
ultramage
a167b6ae62 * Some source code cleaning
- Fixed the badly worded messages during mapserver startup
- Cleaned up socket config reading
- Split resolve_hostbyname() into 2 separate functions for clarity
- Moved the probably obsolete LOWER/UPPER macros to db.c (TODO: remove)
- Moved the badly placed compare_item() function to storage.c (see r779)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10119 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-02 13:46:11 +00:00
skotlex
47ab9dbbf8 - Added "do_abort" function to the core. It is invoked when the server has received a Segmentation Fault or Floating Point Exception signal. Currently the only one that uses it is the map-server, which then attempts to save all online characters before aborting.
- Note that due to the current coding of the sig plugin, do_abort will not be invoked if you use it! This plugin needs to be updated...
- Cleaned up a bit the change element code. val1 is the elemental level, val2 is the element now.
- Hardcoded the element and elemental level of SC_CHANGEUNDEAD.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10089 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-29 20:34:17 +00:00
skotlex
640ef63c2b - Added defines script_getnum and script_getstr to further simplify variable reading code.
- Applied mass replacing of text to enforce usage of script_hasdata, script_getnum, script_getstr and data_isstring defines where possible.
- Cleaned up the 'input' command code.
- Minor other cleanups in script.c
- Removed OPTION_SIGHTTRASHER as there's no indication this value exists.
- Corrected OPTION_XMAS since 2007 clients have split it up from OPTION_FLYING (on previous clients both were the same option value)
- Removed GRF_PATH_FILENAME references (it wasn't used anymore)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10085 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-28 17:29:02 +00:00
skotlex
3839fa7619 - Moved coma to skill_additional_effect, added special_state.bonus_coma to prevent doing comma calculations for every player attack.
- Added config "vending_tax" to apply a tax to all vending requests, as it was in kRO Sakray some time ago (requested by Playtester) (items.conf).
- Some cleaning of skill_additional_effect
- Moved the starting of SC_DANCING from skill_initunitgroup to skill_unitsetting
- Moved the checks for player_skill_partner_check and (gm_skilluncond for it) to skill_check_pc_partner
- Negative aspd rate bonuses will be handled as aspd add rate since the default non-stackable bonus is useless on penalty bonuses.
- Added check to prevent the client from using passive skills.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10082 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-27 18:38:11 +00:00
ultramage
91deea9ccd - Removed a missing file reference in the athena-start script
- Fixed a #error "<malloc.h> has been replaced by <stdlib.h>" problem
- Fixed the msg_silent setting not being announced every time

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10077 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-27 07:41:05 +00:00
skotlex
0b9f915d9c - Fixed # commands not being blocked when muted if the mute config settings say you should be.
- Moved skill db reading before loading mobs so that the new mob condition checks work.
- Cleaned up the warning/errors of the mob skill reading function. They are now warnings if the skill is read anyway (default conditions are used) and an error when the skill is not loaded.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10075 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-26 20:56:39 +00:00
skotlex
3ee61db52f - Removed Magic Rod's cast bar.
- Corrected warning on login sql.
- Gravitation no longer causes damage flinch.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10038 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-20 14:59:16 +00:00
DracoRPG
e63626deea Increased MAX_STATUCHANGE to 300 so we won't get the same error over and over next time we add an SC...
Reverted the map index reading for the map-server to the old system (from map_list.txt and not map_cache.dat)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10034 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-19 22:58:20 +00:00
ultramage
9579515cb9 - Removed the old 'mapserver charsave' mechanism
- Fixed some wrong sql login logic
- Fixed some compiler warnings, cleaned up mapserver sql-related vars

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10027 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-18 22:43:41 +00:00
DracoRPG
58dcd187b0 Mapcache update, should polish off remaining bugs
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10003 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-13 20:24:08 +00:00
skotlex
d25c9daa47 - Cleaned up the implementation of party_send_movemap, it should fix the client receiving the party-mate positions before receiving the party information when you first log on.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9994 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-12 19:02:20 +00:00
FlavioJS
2b42ec13cf - Added info on packet 0x86 (simple move packet). Not usable until a clear separation between entering sight/leaving sight/walking in sight is done.
- Propagating const char* from the script engine.
- ".gat" is appended to the map name before sending the changemapserver packet to the client.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9979 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-09 01:49:50 +00:00
skotlex
9387ff566b - Made conv_str return const char* since the script engine screws up if you mess with the position of the terminator on the received string.
- Because of this, many functions that handled the return of conv_str need to be changed, I haven't finished doing the conversion process because I must go already, if someone else can continue, please do so (I will resume work on this in ~5 hours


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9978 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-09 00:10:06 +00:00
skotlex
e45a007db2 - Corrected the pet/homunc data not being free'd if the player logs out before being authed.
- Initialized player's speed on pc_setnewpc to prevent homunculus copying a speed of 0.
- Added comment to reloadbattleconf specifying that some settings do not take effect inmediately.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9975 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-07 18:58:33 +00:00
skotlex
c350fe1318 - Made the map server abort when it can't open the mapcache file.
- Added a normalizing function to map.c which handles removing the extension of the map name.
- Applied said function when reading maps from maps_athena, since the mapcache lookup fails without it (maps are stored there without extensions)
- TODO: Apply the normalizing function everywhere when parsing map related scripts.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9973 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-07 16:47:51 +00:00
DracoRPG
deb34a8ae5 New mapcache system :x
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9971 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-07 02:02:32 +00:00
skotlex
c4757be7e0 - Forgot to made Tatami Gaeshi state (proyectile blocking) end when you move.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9945 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-01 16:31:29 +00:00
skotlex
cf8a93db38 - Updated the stun length to 5 secs of: Meteor Storm, Sonic Blow, Throw Stone, Sightless Raid, Smite, Cart Termination
- SG Union will consume now SP if you use it while not soul linked.
- Added variable "skip" to the mob spawn data, to know how many mobs to skip when spawning because they were not removed due to the "mob_remove_damaged" setting.
- Corrected the Hp/Sp regen formulas from Hp/Sp/Spirit Recovery and Happy/Peaceful break according to recent forums discussions (formula is changed from x*lv +max*lv/500 to lv*(x+max/500).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9944 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-01 16:29:09 +00:00
skotlex
9bc7a5db40 - indent cleanups
- Fixed Self Destruction causing double-free'd errors and triggering twice when a self-destruct cast makes other objects trigger self destruct as well


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9924 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-26 04:09:58 +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
64fcacf6b3 - Added code for SQL that will automatically detect the ping interval at startup, and copy-pasted it around the code
- Removed the conf setting as it is not needed anymore

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9830 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-08 23:26:00 +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
ultramage
5f0de40e38 Removed the silly and misleading 'firewall detected' message
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9786 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-05 13:33:02 +00:00
skotlex
cc72c3cd89 - Readded grfio_final to the map_server.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9744 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-29 22:26:49 +00:00
DracoRPG
bf98b03fb0 Removed useless read-from-GRF features
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9725 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27 05:04:10 +00:00
FlavioJS
0129172c63 - Added a precompiler error when the shutdown defines are not found.
- Added parse_console to the plugin API.
- Added plugin for parsing the console. (working with cygwin)
- Added the console plugin to plugin_athena.conf commented out.
- Copied the parse_console code form login txt to login sql and char.
- Added propper plugin version compatibility tests.
- Better output when a plugin fails to load.

-----

The console plugin (at it's 3rd version) uses two pipes and another thread.
- the other thread reads data from stdin and sends it through one of the pipes
- the other pipe serves as semaphore (and terminator) to that thread
- the normal thread checks if the pipe has data once every timer cycle, if data is found it invokes parse_console with that data

Worth noting: the first version didn't use another thread and just checked if data was available on the input stream, but apparently that can't be done to standard input in windows

It's only been tested on cygwin (and should work on most *nix systems), can't test native windows right now because I'm having trouble exporting the required plugin variables in VS8
src/plugins/Makefile hasn't been updated because it's not working properly for me

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9631 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-08 08:35:32 +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
129bff5fb6 - Fixed FIFO defines in TURBO mode.
Ref: http://www.eathena.ws/board/index.php?showtopic=129766
  The rest of the TURBO related errors are about the HEAD defines having to be at the start of a block because they contain a variable declaration. (i won't fix these)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9611 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-03 12:01:43 +00:00
skotlex
5036e3591a - Cleaned up the implementation of map_foreachinmovearea so that the number of arguments passed is less.
- Moved setting a mob's chase/attack states from the mob_ai to unit_attack and unit_walktobl.
- Cleaned the change-target/cast-sensor code to account for the new mob modes.
- Cleaned up a bit the mob ai sub hard function.
- Made the monster_active_enable config setting take effect on mob load.
- Updated the doc explaining mob modes.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9422 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-06 18:21:32 +00:00
FlavioJS
5d65da8e0c - Made ers double frees report as missing entries on destruction.
- Only one swap function (in cbasetypes.h) is used.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9396 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-03 16:50:58 +00:00