4121 Commits

Author SHA1 Message Date
FlavioJS
1a2d2c0d4e * Changed npc_get_new_npc_id to ensure that it never returns invalid/used ids.
- npc_get_new_npc_id is used to generate ids for npcs/mobs/homunculus/mercenaries/pets. If the server runs for long enough (years to months or less, depending on settings), the auxiliary variable npc_id will eventually overflow and go negative, then go through the range of object ids, then through the range of account ids. This can lead to all sorts of random crashes and memory leaks.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13481 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-23 17:49:44 +00:00
ultramage
47fad03c47 Added a missing break; in pc_setstat, messing up LUK increasing (see r13460) (bugreport:2697).
Corrected clif_bladestop(), void function returning a value (see r13471) (bugreport:2698).
Fixed npcs with touch area not stopping walk timers (see r6516) (bugreport:2700).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13480 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-23 11:53:52 +00:00
FlavioJS
e3d5e89496 * Changed val4 of SC_BLADESTOP from a block_list pointer to an id. (64bit portability issue and potential dangling pointer crash)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13471 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-22 09:37:47 +00:00
FlavioJS
672dbf2946 * Added a limit of 1MB of pending data in the write fifo for non-server sockets. Connections that go over the limit are closed.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13469 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-21 15:18:51 +00:00
ultramage
9c255d04a4 Fixed a null pointer crash in r13463 (thanks to Ramsey for reporting it).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13467 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-21 07:58:50 +00:00
FlavioJS
69720a42bf * Replaced the fake timer heap (sorted array) with a real heap. (improves performance)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13465 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-21 01:21:24 +00:00
FlavioJS
013d104eff * Added a generic binary heap implementation based on defines. (round 2)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13464 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-21 00:35:33 +00:00
ultramage
dfe2b1edaa Efficiency improvement for clif_send (use pc_db iterator instead of sockets array).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13463 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-20 21:55:07 +00:00
FlavioJS
d60b27d27d * Added a generic binary heap implementation based on defines.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13462 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-20 21:14:13 +00:00
ultramage
9640df0422 Fixed pc_statusup2 to correctly update the client's stat window
- was sending the increment value instead of the new value itself (bugreport:2614)
- wasn't refreshing the increase cost indicator (bugreport:2644)
- wasn't handling stats above 255 correctly

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13460 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-20 13:53:28 +00:00
ultramage
ee76a93424 Fixed a boolean operator mistake in @memo command, caused by r11625 (bugreport:2681).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13459 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-20 11:33:57 +00:00
zephyrus
551e20a850 - Added support for item effect Ignore Def Rate by Race. bonus2 bIgnoreDefRate,<race>,<%>;
- Added support for item status effects on skills. bonus3 bAddEff,<sc_effect>,<rate>,ATF_SKILL;
- Update to battleground equipment.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13457 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-20 02:19:05 +00:00
sketchyphoenix
21b7ebe262 Updated script_commands.txt with the book reading command info.
Added/reworded/removed comments to/in/from r13450

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13451 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-15 12:31:10 +00:00
sketchyphoenix
feb6e94bf5 #commands used by nonGM players now appear in the chat like normal
rather than being processed and ultimately failed, printing out
	  failed command messages that should be visible to only GMs. (bugreport:2637)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13450 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-14 15:18:04 +00:00
FlavioJS
e478e97941 * Added client login packets 0x01fa and 0x027c.
* Other minor cleanups.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13449 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-14 14:03:06 +00:00
sketchyphoenix
7ffc67deaa Corrected a typo in r13444
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13448 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-14 13:37:23 +00:00
ultramage
09be248ca5 Fixed Sql_SetEncoding() returning SQL_ERROR when it succeeds and vice versa (thanks to Rail for noticing it).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13447 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-13 15:44:47 +00:00
FlavioJS
e64c3496a8 * Cleaned up command @users/#users:
- displays everything on the target user (self for @users)
- uses a static array instead of a temporary DBMap
- displays percentages with precision of 0.01%
- uses safesnprintf instead of sprintf

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13446 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-13 12:53:11 +00:00
ultramage
95d25086a6 Mobs with nonzero spawn time can now be cached as well, saving some more cpu/memory (bugreport:1197).
Fixed dynamic mobs being unloaded without stopping their respawn timer.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13445 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-13 10:38:54 +00:00
sketchyphoenix
753620d68c * #command parsing cleaned up.
- Fixed charname reading problems from r13441 
- Corrected agitend typo to agitend2 (bugreport:2654)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13444 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-12 17:49:10 +00:00
ultramage
b80a8cdc87 Added regen_db to reduce hp/sp processing delays (bugreport:2256).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13443 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-12 14:26:33 +00:00
sketchyphoenix
3547890011 bugreport:2637
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13441 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-11 19:07:16 +00:00
sketchyphoenix
800a0366a5 Added @charcommands to return a list of available charcommands (bugreport:2630)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13435 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-05 19:10:03 +00:00
ultramage
578532f577 Moved the 'changed' mailbox flag from shared mmo.h to mapserver-only.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13433 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-05 15:34:09 +00:00
ultramage
f9d21826b8 Fixed @mobsearch and @showmobs (bugreport:2481)
- now only search for mobs on the same map as the caller
- now properly distinguish between dead and alive mobs

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13432 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-05 11:13:14 +00:00
FlavioJS
89d683d668 * Changes to the script engine:
- new stack datatype script_retinfo for C_RETINFO to hold all the return state info that was being stored in the stack. (the script engine in 64bit-ready now)
- pop_stack is responsible for adjusting all the stack pointers.
- push_* returns the created script_data.
- 'return' only converts to value scope variables of the current scope.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13427 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-31 15:54:33 +00:00
FlavioJS
cb8ef12df8 * Changes to the script engine:
- script ends when run_func can't find the buildin command. (script engine error)
- run_script_main doesn't change RERUNLINE to RUN automatically, the buildin command that set it is responsible for that now. The buildin command can use this to detect a rerun.
- created functions to alloc/free a script_state.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13426 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-30 03:27:46 +00:00
sketchyphoenix
77044b9042 Removed a trailing argument left in r13420
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13425 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-30 02:13:01 +00:00
ultramage
c0c7bb3166 Fixed broken card insert code (bugreport:2606).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13421 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-29 21:10:37 +00:00
sketchyphoenix
590bdb332d * Added missing command #delitem.
* Fixed charcommand behavior where those that can accept a name with no additional parameters 
	  being able to execute under said player's name with the name as a parameter.(bugreport:2601)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13420 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-29 04:36:14 +00:00
sketchyphoenix
472769518b Corrected typo in @adjcmdlvl's parameter check.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13419 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-28 23:06:10 +00:00
ultramage
ac66afa042 Cleaned up code for inserting cards into items.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13418 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-28 23:04:50 +00:00
zephyrus
d33dce2ac2 - Book reading script command.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13417 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-28 17:08:51 +00:00
FlavioJS
7263ae4f45 * Extended sv_escape_c to escape '\a','\b','\t','\v','\f','\?' characters to their respective representations instead of octal.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13414 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-25 22:05:16 +00:00
sketchyphoenix
4a5a9de682 * Charcommands no longer default to self if no target is found.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13413 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-25 21:38:51 +00:00
sketchyphoenix
b9a1343eaa * Added a few missing atcommands.
* Added more commands to configurations (bugreport:2565)
	* Added a missing charcommand symbol config to atcommand configs.
	* GM command configs under the old format will have a warning printed back to the console as being deprecated.
	* Other fixes/cleaning partially resolving bugreport:2549

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13409 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-23 02:06:21 +00:00
ultramage
285441dd41 Fixed incorrect usage of sv_escape_c() in TXT's login_log function, which produced malformed log entries (caused by r12489).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13408 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-22 16:42:56 +00:00
FlavioJS
d55642d64c * Extended how duplicates work: (based on Orcao's work in bugreport:2361) [FlavioJS]
- you can duplicate warps/shops/cashshops/npcs (before only npcs could be duplicated)
- warp duplicates inherit the target location
- shop/cashshop duplicates inherit the item list
- npc duplicates inherit the script code (backward compatible behaviour)
- updated script_commands.txt with the information

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13407 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-20 22:57:29 +00:00
ultramage
99fd15915e some minor generic cleanups
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13406 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-20 20:50:26 +00:00
sketchyphoenix
76ff905e03 Removed charcommand code while allowing atcommand code to support its functionality.
Charcommands still retain their '#' symbol but now looks for a character name as the first parameter instead of last.
Atcommand configs now support charcommand level configurations by comma seperation (e.g. 60,99)
As a result of this, all atcommands that don't affect multiple users already (@kickall, @doom, @mapexit) are capable of remote usage.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13403 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-18 02:36:01 +00:00
ultramage
ca5448b311 * Fixed rare crash when using Flying Kick on clones (bugreport:2506)
* Corrected Flying Kick's debuff rules to match official servers
- only works on players
- soul linkers and stalkers with Preserve active are immune
- only removes Berserk Potion, Kaahi, Kaite, 1HQ, AAR and Soul Links

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13392 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-01 22:48:05 +00:00
FlavioJS
0e6e32a833 * Fixed a memory leak when returning a string variable in the script engine. (since r9864/r9865, fixes bugreport:2488)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13388 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-27 01:04:14 +00:00
FlavioJS
1ddbd85a25 * Fixed a va_end using the wrong variable. (from r13383, fixes bugreport:2483)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13386 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-24 18:21:59 +00:00
FlavioJS
609da40fd7 * Readded code that was removed from atcommand_showmobs by mistake in the previous commit. (r13383)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13384 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-23 02:07:17 +00:00
FlavioJS
7ae74b588b * Hunted down improper uses of va_list variables.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13383 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-22 23:54:34 +00:00
FlavioJS
72542d65cc * Hunted down the simpler 64bit pointer truncations.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13380 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-22 15:44:17 +00:00
ultramage
ae7050eb1a Added setting of state.speed_changed in script function 'npcspeed'.
Should fix the walking npc display problem (bugreport:2434).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13378 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-20 20:50:50 +00:00
L0ne_W0lf
c59a3add22 Autotrade characters will no longer get caught by Urgent Recall. (bugreport:2447)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13375 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-18 17:16:06 +00:00
ultramage
859cb0ad08 followup
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13374 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-17 15:47:29 +00:00
zephyrus
bd429b5a92 - Some "expire_time" = 0 considerations. Please update. (Bugreport 2451)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13373 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-17 15:43:13 +00:00