270 Commits

Author SHA1 Message Date
skotlex
e29a1031d5 - Moved PACKETVER to mmo.h, and added support for the expanded character info window on the char-server when PACKETVER is above 7.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9539 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 17:21:56 +00:00
skotlex
edbb476bf9 - Fixed ISSPACE and ISALPHA casting their returned value to a char. These are "bool" functions, and as such return an non-zero int as result, casting them to char just... really messes things up when the returned value is out of the CHAR_MAX/CHAR_MIN range!
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9538 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 16:43:46 +00:00
FlavioJS
40b389bc42 - Changed the script source from unsigned char* to const char*.
- Updated plugins Makefile.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9532 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 07:17:18 +00:00
FlavioJS
4a2db02dec - Fixed the meaning of stdout_with_ansisequence and changed the default value to no.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9531 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 02:02:24 +00:00
skotlex
b4ef291d27 - Added missing include of system header limits.h to timer.c
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9523 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-19 17:56:10 +00:00
skotlex
d882e5030b - Reverted the mob ThinkTime update, that field is again aDelay as it apparently should be.
- Fixed one small compilation error.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9522 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-19 13:41:25 +00:00
FlavioJS
43256aa77e - Cleanups or minor changes.
- Now addtick_timer invokes settick_timer, so keep an eye for whatever timer issues it's supposed to have.
- Removed the flush_fifo from clif_parse_TickSend until the socket problems are fixed.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9521 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-19 09:15:00 +00:00
FlavioJS
dd6a713c36 - Cosmetic changes to db.
- Fixed the unused MAPINDEX_AUTOADD section in mapindex.c (mapindex.h wasn't being included)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9515 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-18 15:06:51 +00:00
skotlex
b9fd36a7cd - There will be now warnings printed when a shop sells an item which's buy price is 20z, since those usually are "rare" items with no buyying price set. Note that this reports one fake, and that is the selling of a certain shuriken that indeed costs 20z.
- Most likely fixed client crash when xmas/wedding status runs out.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9505 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-15 18:13:37 +00:00
toms
8bd7d2873e Modified flush_fifo so the code do what is written in the comment
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9489 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-13 16:09:13 +00:00
skotlex
0c362fa90f - Modified flush_fifo so you can decide whether to block the current thread or not until the data is sent. The server-tick reply no longer blocks the current thread.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9486 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-13 13:45:52 +00:00
FlavioJS
129e97d6c9 - Minor changes to ers.
- Removed unused/hardly used cbasetypes typedefs.
- Updated txt-converter's makefile to include utils.o

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9473 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-12 15:24:20 +00:00
FlavioJS
d4185ce10e - Added more helpfull error messages when packet_ver=-1. (no more "clif_parse: Disconnecting session #XX for not having latest client version (has version -1)." messages)
- Joined normal and MINICORE's main function.
- Put malloc_init() first and malloc_final() last as it's needed for Show* in display_title().

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9446 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-10 19:23:04 +00:00
FlavioJS
b524f75cd0 - Reversed revision #9415 (messages with server_tick field being sent as soon as possible) since it didn't fix the client synchronization issue.
- clif_parse_TickSend is sent immediately so the client gets accurate "pings"

Note: in Changelog, for my changes, if they're grouped together and in the same day I'm only gonna "sign" the bottom line.
All unsigned lines are assumed to be from the same person of the previous line (below). (easier searches =P)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9443 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-09 15:57:22 +00:00
FlavioJS
7ecc1ab6e1 - Fixed ladmin's linux compilation and moved some platform specific defines to cbasetypes.h
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9435 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-07 23:59:26 +00:00
FlavioJS
27cc2312fb - Fixing a compilation error caused by me in rev 9414: -.-;
utils.h:35: error: syntax error before "va_list"

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9416 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-06 11:17:08 +00:00
FlavioJS
0931ce5d81 - Messages with server_tick field are sent as soon as possible now.
This might fix client synchronization issues.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9415 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-06 10:57:31 +00:00
FlavioJS
53a7ca362b - Added StringBuf_Vprintf to utils.c and changed the showmsg.c buffer.
Now it uses a static buffer and a StringBuf when needed (a debug message indicating the static buffer needs to be increased is shown).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9414 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-06 04:25:13 +00:00
skotlex
efce12bf28 - Fixed sc data load failing when using charsave_method: 1
- Fixed the interserver link reserve size being 8 times instead of 1/8th the default size. Changed it to be 1/4th as well.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9411 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-05 17:09:02 +00:00
FlavioJS
637ae9a4dc - Massive EOL normalization & 'svn:eol-style native' flag setting for all txt/conf/h/c files.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9410 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-05 13:23:07 +00:00
FlavioJS
6fda364348 - Moved START_ACCOUNT_NUM and END_ACCOUNT_NUM from login.h to mmo.h and changed clif_guess_PacketVer to use that.
- Made the script engine big-endian compatible. (i know it's pointless because of the move to eApp, but just couldn't resist :S)
- Commented out the remnants of ladmin packet parsing in map-server.
- Added a warning when a player has an invalid packet version (shouldn't happen)

PS- also added info on clif_guild_basicinfo packet fields, if anyone is interested

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9408 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-05 07:24:29 +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
FlavioJS
09f54754c7 - Added missing min/max definitions to cbasetypes.h, needed for the @send change.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9388 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-02 04:41:23 +00:00
FlavioJS
b522ca0cdc - Replaced @send with the version I use for testing packets.
Can display the packet length. Supports dynamic packets, quoted strings 
  with escaped characters and fixed/variable length, and normal/hex 
  byte/word/long data types. The number of fields is not limited, but it 
  automatically stops parsing when the packet is full.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9387 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-02 04:21:35 +00:00
FlavioJS
636089bb3a - Probably fixed the Segmentation Faults we've been having.
Description: A player quits and it's session is freed and set to NULL, 
       but the char server already sent a packet with player information 
       (registers, storage, ...). If a message is sent in consequence of 
       updating that info, a segmentation fault happens because 
       session[sd->fd] is already NULL.
  Fix: make shure the session of the target player is valid before 
       processing the rest of the char server's message.
- Some minor cleanups.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9366 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-29 20:07:22 +00:00
skotlex
9692efa6f0 - Fixed a possible crash due to the recent core.c upgrade.
- Changing setting the Guild Master from pc_authok to clif_parse_LoadEndAck so that it will not fail to set the gmaster flag when the first person of a guild to log on is the guild master.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9347 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-28 16:26:08 +00:00
FlavioJS
1e8a3bcd3f - Changed write to send as suggested by TheUltraMage in:
http://www.eathena.ws/board/index.php?showtopic=105417
  Hopefully that will take care of the SIGPIPE problem in Debian and cygwin.
- Server name in core.c skipping '\\' characters.
- Memory allocation functions using file,line,func from the invoking functions.
- Other minor changes in malloc

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9344 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-28 13:31:22 +00:00
skotlex
4fe7389fb0 - Updated the status change field "option" to an int rather than short. This fixes the option values for xmas/sightblaster not getting set, which could explain why some people crash when equipping weapons while in xmas suit.
- Also did the same to opt3 since the new packet version uses LONG to store the opt3 values.
- Made the clif weapon view function use the EQI constants instead of ints.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9337 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-27 21:32:32 +00:00
skotlex
cfee0ccf63 - Added all the missing FIFOHEADs in the login/sql servers (required for TURBO support)
- Fixed the fact that the TURBO code breaks when you attempt to handle more than one connection at a time within the same function. However this broke map-server compilation, therefore, don't use TURBO yet! It needs more fixing (and I need more time to fix it)
- While at it, cleaned a few packet implementations in the char/login servers which were not only ugly, but had some really stupid flaws within (stuff like escaping a string, and then using the non-escaped variable to insert to SQL? T_T) And will someone explain me why the TXT servers are coded much more cleanly, and without such horribly broken code as I find in the SQL ones? T_T;


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9307 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-24 12:41:38 +00:00
skotlex
73379857e2 - Made WFIFOHEAD() check for available buffer size remaining on the connection, and when there's not enough space, it will increase it.
- Added define TURBO to the Makefile. It enables MouseJstr's socket access optimization which should speed up the code when accessing the write/read buffers repeatedly within a function.
- Fixed the functions where the RFIFOHEAD/WFIFOHEAD functions were used incorrectly (prevents TURBO enabled compilations from finishing)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9297 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-23 15:33:51 +00:00
skotlex
d1005fced1 - Removed grfio include from core.c as it's totally unneeded
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9264 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-20 01:47:14 +00:00
skotlex
0b585ba393 - Corrected use of the party invitation reply packet, thanks to FlavioJS.
- Removed requirement of "Changelog-Trunk" in the common/Makefile, why was it even there??
- Minor cleanups


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9251 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-17 21:20:58 +00:00
skotlex
cb53caa46a - Applied FlavioJs's patch which enables colored console output for Windows systems. It also includes a config setting called "stdout_with_ansisequence" with which you can turn off the color codes (in case you are logging all output)
- Added error reporting when the max number of ground unit cells has been reached (this may be the reason why sometimes it fails to recognize when you step out of a song/dance/encore)
- Added passing the Endure effect to other devoted people. Note that the "hit count" is individual for each character, and only when it ends on the Crusader himself will that force it to end on everyone else. It also will not transfer on gvg grounds, but it does transfer in pvp.
- Fixed Reflect-Shield triggering Auto-Guard instead on devoted chars.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9168 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-07 20:56:28 +00:00
skotlex
eee1baf718 - Ganbantein's delay is now 2 secs.
- Removed the time2 value of NJ_NEN since it has no use.
- Removed the return code entry when logging GM reload-GM requests (login-sql),it'll just be stored as zero.
- Added a fix on socket.c to not pick INADDR_ANY when choosing our own IP.
- Applied the correction on maprespawnguildid so that it parses ALL players and not just those on a map.
- TK_JUMPKICK now dispels normal aspd/speed potions (not berserk pitched ones) and Preserve will be unable to block this.
- Soul Linkers are now inmune to SA_DISPEL
- You can now place everything (except magic skills) on top of LPs.
- Corrected Ganbantein to not touch song/dance/ensembles.
- Status_calc_pc will refuse to execute if the player is still tagged as a "new connection" and the invocation is not meant to be the first one.
- Swapped the order of checks in status_isimmune so that Wand of Hermod skill blocking takes precedence over GTB's
- Client packets will all be ignored while a player is not on a map until the LoadEndAck packet is received.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9152 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-06 15:58:30 +00:00
skotlex
42375e1896 - Rewrote the txt->sql converter. It now links directly to the char server files so that it should get auto-updated with any code changes in the later.
- The converter will now also convert: account-wide variables, parties, guilds, guild storage and guild castles. At this point the only two things not converted are login-server-wide account variables (##, they belong to the login converter) and homunculus (the SQL save function is messy and doesn't lends itself to be integrated with the converter the way all the other functions are).
- Modified the char servers so they are compatible with the converter, the define TXT_SQL_CONVERT identifies sections unique to each char-server mode (this would had been a hella lot easier if both char servers where the same code-base instead of duplicated code <.<)
- Updated the Makefiles as per the new compiling requirements for the converter.
- misceffect2 will no longer cause the effect on top of the source object when it is the fake npc.
- Added check so that Frost Nova doesn't hides hitting animation on targets.
- Added the missing brackets around the trade logs condition check, thanks to Coltaro.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8908 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-30 21:54:01 +00:00
skotlex
816e3fe096 - Probably fixed a signed/unsigned mismatch warning on the new socket code.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8848 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-22 19:22:21 +00:00
skotlex
c616fec871 - Improved a bit RFIFOFLUSH as suggested by Harbin.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8838 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-21 19:10:31 +00:00
toms
1390b25174 Fixed some gcc4 warnings (oops ^^)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8809 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-19 13:35:33 +00:00
toms
5a0f0ae14c Fixed some gcc4 warnings
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8808 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-19 13:29:30 +00:00
toms
19131abb68 Fixed some gcc4 warnings
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8807 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-19 13:25:39 +00:00
skotlex
df7e54c3df - Fixed Spider Web fire damage bonus.
- Made Global chat always reply back to you even on @/# commands, this prevents the client from muting yourself due to "hack". However, this same fix isn't easily applicable to @ commands invoked from whispers or party/guild messages, those are still pending.
- Some fixes in socket.c


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8801 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-19 02:58:40 +00:00
skotlex
da13939d47 - Merged Meruru's update to socket.c, which includes a rewritten parse function, which should hopefully be more efficient than the previous code.
- The new code includes support for two config settings (packet_athena.txt): frame_size, which can be used to alter the logic packet-size allowed by the code, and mode_neg, which when set to yes, sets TCP_NODELAY on all connections (defaults to yes).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8799 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-18 22:28:07 +00:00
skotlex
4f24872a12 - Fixed compilation for native windows builds.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8734 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-13 16:23:24 +00:00
skotlex
a64ba50b61 - Readded the setting TCP_NODELAY on socket.c to see if it fixes the walk-lag issue.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8731 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-13 13:33:08 +00:00
skotlex
ebc1f2bc02 - Moved the packet_len variable in login.c to the login parse case, since it's used nowhere else.
- timestamp check speed-up in showmsg.c
- Swapped the blank ShowMessage on server startup to a printf
- Homunculus intimacy will go back to 500 on evolution.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8719 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-12 14:21:02 +00:00
skotlex
27c9a6fe5a - Modified set_nonblocking and setsocketoptions in socket.c, using eApp's code as reference. Hopefully should improve performance somewhat.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8710 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-11 21:32:26 +00:00
skotlex
609bfd1e48 - Updated skill_require_db's entry for Abracadabra, it requires yellow 2 gemstones (there's no such hardcoded yellow gemstone requirement anymore)
- Corrected db/const.txt entry bMagicSubRace -> bMagicAddSize
- Fixed Aex Aeterna ending on Soul Breaker's first half.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8651 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-06 14:22:16 +00:00
toms
a2ce0be45b The "delete_timer error/no such timer" report will now print the related function
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8586 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-01 23:26:08 +00:00
skotlex
a45d7c414d - The memory leak reports will now print out in the logs also the revision they belong to.
- Cleaned up the scriptable npc-shop code, it should be crash-proof now.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8525 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-28 19:22:13 +00:00
Lance
52453a6433 And a minor typo. Sorry.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8506 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-27 22:28:35 +00:00