2314 Commits

Author SHA1 Message Date
FlavioJS
4c54d4923f * Fixed two missing @LDFLAGS@ in src/plugins/Makefile.in.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11993 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-29 23:18:20 +00:00
ultramage
470a56dbea Implemented THE official Steal skill equation and game mechanics (basically version from /stable plus a few tweaks) (see topic:116540).
Added missing bAddStealRate reference to doc/item_bonus.txt.
Removed skill_steal_rate, as it was never used in the code (see r231).
Removed skill_steal_type, it's just a one-liner source mod (see r231).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11992 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-29 22:30:29 +00:00
ultramage
bad3a0c04e Knockback now works through cells where there is a diagonal path, but no horizontal+vertical alternative (like two perpendicular icewalls with a gap where they 'join').
Some dead code removal in path.c.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11991 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-29 20:12:46 +00:00
FlavioJS
bbf60788db * Fixed a memory leak in memitemdata_to_sql.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11989 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-28 18:53:56 +00:00
FlavioJS
548e1bfd28 * Reverted a bad modification in clif_produceeffect from r11290.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11988 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-28 14:43:15 +00:00
ultramage
d75169014a Removed an incorrect range check and fixed a copypaste typo which caused script engine errors / crashes (see r11984)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11987 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-27 18:45:33 +00:00
ultramage
f16dcdf4d5 Re-added a missing mob last_thinktime timer initialization when a mob spawns, causing mob AI to freeze (mistake in r11964)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11986 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-27 18:00:29 +00:00
FlavioJS
bd11cdda7a * Changed the configure script:
- refined the mysql test (wasn't detecting 64 libraries compiled without -m64)
- added a test for clock_gettime in -lrt (required for Debian)

(run ./configure to update the Makefiles)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11985 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-27 12:08:07 +00:00
FlavioJS
b6c11a8282 * Corrected description of scope and npc variables in script_commands.txt.
* Made temporary character string variables not have a limited length. (now all temporary string variables don't have limited length)
* Made temporary character variables reuse free positions.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11984 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-27 05:47:50 +00:00
FlavioJS
4dcf5bb0b9 * Tweeked the declaration and initialization defines for vectors.
* Made do_sockets leave the for loop as soon as the readable number of sockets returned by select is found.
* Made all posix compliant systems that support it and FreeBSD >= 5.1 (implements it but doesn't have the posix defines) use the precise and consistent tick() implementation.
* Minor tweek to HEAP_SEARCH (same variable can be used in from and to).
* Fixed the map server not exiting when make_listen_bind fails and returns -1.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11983 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-27 03:35:57 +00:00
ultramage
a91d8177c6 Fixed the incorrect interpretation of the map-cell height information stored in .gat files; this was causing an overall of 20000 cells to be treated as water when officially they aren't.
A full mapcache rebuild is needed to apply this change.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11982 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-26 21:51:58 +00:00
FlavioJS
214feac880 * Fixed string variables dereferencing directly to the value instead of dereferencing to a copy of the value. (fixes bugreport:684 bugreport:641)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11976 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-26 00:55:27 +00:00
FlavioJS
70ca76a770 * Added a generic vector implementation (dynamic array) based on defines.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11972 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-23 18:05:29 +00:00
skotlex
1d73a777c6 - Fixed horrible handling of skill_abra_db which leads to memory corruption (depending on the contents of yor abra_db.txt file)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11970 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-23 16:32:45 +00:00
ultramage
f9c52aa0aa Fixed droprate overflows when going over rate 2000x
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11966 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-22 21:24:40 +00:00
skotlex
146ca072bb - Corrected mob spawn utilization of the delay1/delay2 values (one is respawn delay base, the second is random variance added on top of it). Cleaned up related code.
- Changed abit map_add_block to prevent adding a player object which is invalid (not authed, waiting to be disconnected)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11964 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-22 18:08:37 +00:00
ultramage
6730ae32cc Fixed yet another buffer overflow, in @adopt
(caused by a conflict between a mass replace in r2207 and very dumb variable reuse in r1316)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11955 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-19 20:56:37 +00:00
FlavioJS
f218726d7d * Changes to the configure script.
- fixed the 'pointers can be stored in ints' test not working
- fixed the linker trying to build 64 bit executables with 32 bit code on x86_64 (missing -m32 flag in LDFLAGS)
- made MYSQL_CFLAGS be built from the --include option to be more portable
- made --with-mysql check if the optional argument is an executable file
- make --with-pcre check if the optional argument is a directory
- other minor changes


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11952 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-19 17:17:29 +00:00
skotlex
c5415465da - Corected the SC_MIRACLE + Anger code using the wrong skill level to calculate damage bonus.
- Corrected SC_MIRACLE to trigger Bless of the Stars on all defeated mobs.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11950 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-19 16:41:56 +00:00
ultramage
ff2ae0fe05 Fixed a possible buffer overflow in @partyoption code.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11947 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-18 22:06:36 +00:00
Playtester
4703cc8e2e * Updated respawn time interpretation according to latest kRO update
- this first time is the "min respawn time"
- the second time is the "variance" which is added to the "min respawn time"

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11946 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-18 21:22:29 +00:00
skotlex
ece12b6e42 - Cleaned up a bit the format of skill_db.txt (that comma next to the skill name looks ugly if you ask me)
- Corrected skill_db reading to properly trim the skill name/descs.
- Added a mobid_db in map.c to handle mob lookups faster.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11943 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-18 15:45:48 +00:00
ultramage
5790585d16 * Added flag.server to indicate interserver sockets
- replaces the previous way (setting 'client_addr' to 0)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11930 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-17 13:23:34 +00:00
ultramage
e5b0ee65bf Removed the 'create athena.txt' step from athena-start as the server does that automatically.
Removed the 'kill -9' action from athena-start, as it prevents the server from shutting down cleanly. If your process gets stuck, kill it manually (or add a hard-stop option).
Fixed one wrong revision number in changelog.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11924 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-17 07:09:10 +00:00
ultramage
1e6922174e Guardian hp handling code removal (see bugreport:342)
- removed guardian hp from the castle data structure, database, savefiles and various script functions (use upgrade_svn11914.sql)
- removed guardian hp calculation and manipulation from the castle manager npc, now the hp values are updated by the server itself (glitch: when castle defense changes, all guardians are healed to full)
- tweaked script function 'guardianinfo' to provide some data needed by the manager npc (currently available are hp, maxhp and visibility); also, it doesn't need a player attached to execute anymore
The whole thing is experimental, use at your own risk (seems to work though...)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11915 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-14 23:38:11 +00:00
ultramage
a772e3699d Added a precise and consistent tick() function for freebsd (see bugreport:240)
(TODO: apply it to multiple platforms using an appropriate configure script)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11912 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-14 10:52:51 +00:00
skotlex
aa83de997f - corrected Option_Xmas value in const.txt
- Wand of Hermode now dispells buffs only of allies.
- Fixed some null pointer checks in status_change_end.
- Corrected a crashy Warning message.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11910 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-14 02:57:54 +00:00
FlavioJS
9bfc5b4425 * Fixed possible segmentation faults in the script engine.
- some strings that can be freed outside the script engine were being pushed into the stack as constant strings

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11901 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-13 21:42:38 +00:00
FlavioJS
ef54f5d793 * Disabled ers until recent crashes are fixed.
- ers entries are being corrupted, probably by modifying them after they are released or by releasing something else

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11900 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-13 18:50:48 +00:00
FlavioJS
02d21582a6 * Abstracted the windows socket code so that all fd's are in the range [1,FD_SETSIZE[. (bugreport:604)
- The socket of a fd is forgotten when executing sClose, so things that depend on the socket (like sFD_CLR) must be executed before closing.
* Replaced the fd_set of the short list with a custom implementation (works like the linux fd_set).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11897 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-13 16:32:58 +00:00
ultramage
8be1c4d48c * Some preparations for the guild script update
- cleaned up npc event execution code
- cleaned up guild data loading/saving code; to be improved later
- removed dummy 'account name' expulsion list management code
- removed columns 'rsv1' and 'rsv2' from guild member data
- removed columns 'rsv1' 'rsv2' 'rsv3' and 'acc' from guild expulsion data
- added upgrade_svn11895.sql for SQL

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11895 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-12 09:55:13 +00:00
zephyrus
0d17cff99b - Added some new cash-items and headgears.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11893 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-12 04:34:02 +00:00
skotlex
9d353fba9b - Added query_logsql script command to perform sql commands using the log db connection.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11892 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-11 22:37:07 +00:00
skotlex
2dd7aff70b - Cleaned up clif_setdisguise and fixed it for PACKETVER>=9. I was kinda right in my last assumption afterall :V
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11884 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-10 13:53:29 +00:00
skotlex
20fb727ce1 - Reverted last change, I was wrong in my assumption o_O;
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11883 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-10 10:22:52 +00:00
skotlex
c010e4e982 - Fixed the disguise packet sent in clif_move
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11882 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-10 10:16:30 +00:00
skotlex
81ddad8b83 - Cleared up npc shop id when warping a player.
- Added missing range/skill-mask info to reflected damage (fixes autospells not triggering on it)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11880 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-10 09:25:30 +00:00
FlavioJS
30e3f30447 * Modified npc_parsesrcfile to parse the line as a 'tab-separated values' string and added data truncation warnings.
- enforces a stricter adherence to the format (no multiple tabs)
- avoids sscanf matching spaces, new lines and carriage returns when '\t' is used in the format string

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11879 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-09 22:43:36 +00:00
FlavioJS
6dd13ee535 * Added a generic 'delimiter-separated values' string parser to strlib.c/h.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11878 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-09 22:08:31 +00:00
skotlex
11aaa56783 - Fixed ensembles skills.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11869 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-07 10:55:59 +00:00
skotlex
e823c2e3eb - removed the timer heap correction code when the timers overflow since Flavio points out that it is not needed.
- Modified a bit the changesex code so you get saved and quit before changing your sex rather than afterwards.
- Cleaned up #changesex
- Signum Crucis now works on bosses.
- party_recv_data will not set the sd pointer for not-yet-authed characters.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11867 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-07 08:44:52 +00:00
FlavioJS
1d827807ae * Removed the attempts to recover from invalid syntax in npc_parsesrcfile since they can produce incorrect results (spaces in sscanf can match \n's and company).
* Made script_rid2sd report the script source directly and changed related return 1's to return 0's to avoid double script source reports.
* Added missing return 0's after script_rid2sd is used and an extra error message in buildin_set/buildin_setd.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11860 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-06 15:12:55 +00:00
skotlex
fc7b4eaef0 - The default event script behaviour is to trigger on labels rather than NPCs now.
- Removed several script config options which break NPC compatibility when you mess with them (event_script_type, event_requires_trigger, die_event_name, kill_pc_event_name, kill_mob_event_name, logout_event_name, login_event_name, loadmap_event_name, baselvup_event_name, joblvup_event_name)
- LoadMap events no longer set the variable "@maploaded$" to the name of the new map.
- Optimized/simplified the code now that the previous config options were removed.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11859 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-06 12:59:12 +00:00
zephyrus
2b1fac216c - Added a fix to prevent missing a mail attachment is map servers disconnect from char server.
- Fixed the sprite of Wing of Victory.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11855 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-03 22:25:57 +00:00
skotlex
132da258d7 - pc_setoption no longer does view_data changes while disguised (as this breaks things)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11845 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-30 07:07:51 +00:00
FlavioJS
754b397edf * Random cleanup/documentation.
* Made common/Makefile get the svn version from the src directory, not src/common.
* Added a warning message to the install and uninstall targets.
* Renamed all obj directories to obj_all, obj_txt or obj_sql in the makefiles (if an obj/ directory exists, BSD make enters it before reading the makefile)

(run ./configure to update your makefiles, and don't forget to do 'make clean' before updating)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11844 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-30 00:17:26 +00:00
skotlex
47315d00c8 - Allowed disguising while riding a peco-peco (this does not seem to cause problems anymore)
- Adjusted pc_disguise to work properly if invoked while a player is not in a map.
- The pvp rank packet is no longer sent to other players when disguised, as this leads to crashes when you die.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11842 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-29 13:11:33 +00:00
skotlex
5617e38fba - Probably fixed splash damage.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11841 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-29 12:32:25 +00:00
skotlex
eee82904e7 - Integrated the SG related info of hate_mob and feel_map into a single structure (sg_info).
- Modified skill_blown and skill_attack so that reflected spells do not cause knockback. 
- SG Blessing skills now grant the extra experience to everyone when the SG killed the mob. 


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11840 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-29 12:20:43 +00:00
skotlex
7ca3198824 - Applied the required changes to handle def as a signed char (allows for negative def)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11837 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-28 13:13:42 +00:00