3307 Commits

Author SHA1 Message Date
skotlex
d16a4a1f00 - Fixed a null pointer when a mob needs to unlock a target while it's idle.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10253 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-14 06:21:15 +00:00
skotlex
13a368be13 - Corrected land protector's duration according to the descriptions
- Fixed "pc drop item" doing the incorrect check to see if the player was trading.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10252 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-14 04:09:40 +00:00
skotlex
9810da7f62 - Oops, it turns out the state is never reset from walking to idle automatically when a mob was random walking...
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10241 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12 19:11:42 +00:00
skotlex
aa0e780bd5 - Moved the idle state random walk and idle skill triggering to mob_unlock_target, since our current AI has some execution paths where these would never be triggered.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10240 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12 18:41:55 +00:00
ultramage
cf77f95ed1 fixed makefile typo, maps_athena typo, svn:eol-style native for some files
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10238 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12 17:37:38 +00:00
skotlex
2c8dd7666b - Oops, little error on previous commit.
- And cleaned a bit the mob use skill code.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10236 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12 16:00:59 +00:00
skotlex
f1bf0b8e80 - Changed the meaning of inf2=0x1000. Now it is used to "disable usage on enemies", which only works for non-aggressive (inf!=1) skills.
- If a skill is party/guild only (inf2 0x400/0x800) it will also be castable on enemies if the skill's inf is 1 (offensive target)
- Corrected the mob behaviour when it locks into an enemy it can't chase. Previously it would get stuck on a lock->unlock->lock loop, with each unlock resetting the "random walk" timer, causing the mob to just idle in place. Now they will attempt idle skills and no longer reset the "random walk" timer, so they behave as if they were in Idle state properly.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10234 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12 15:19:49 +00:00
skotlex
43d128ac3e - Added debug command @displayskill. Should be used only by people searching for new skill IDs.
- Now the bonus bAtkEle will be transferred directly to the weapon when the script is in the ammunition, and you are wielding a weapon that consumes ammo per atttack. 


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10232 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12 14:28:39 +00:00
skotlex
1a54f19292 - Fixed status changes that can't be reduced and have a passed duration of 0 'failing' when the inner code will give it some duration (eg: the weight icons)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10230 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12 13:50:53 +00:00
skotlex
272cc6201e - When a mob fails to use the selected skill, it will now move on to the next one in the list, rather than return from the function with fail status.
- Mobs won't try to run away when rude-attacked if they have a locked-on target already.
- Moved the teleport on LP fail check from castend_nodamageid to status_check_skilluse, this way unit_useskill will return failed when trying to use it.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10221 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-11 19:19:06 +00:00
skotlex
d0e92fa7f4 - Fixed crash caused by fake-NPC (some fields were not initialized to NULL, I think it's safer to just use aCalloc rather than aMalloc here)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10217 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-11 16:53:40 +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
skotlex
ced5130a7b - Some cleaning of the castend_map code to prevent the menuskill variable from not being cleared if you made a choice but the skill was not triggered (due to silence, stun or whatever).
- Cleaned up a bit the Charge Attack casttime equation, should prevent infinite casttime when the distance is 0.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10213 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-11 14:21:09 +00:00
skotlex
d404a449a1 - Updated a bit the pet_db.txt, added info for Xmas Goblin and Rice Cake. Since little is known about them, most of the info is custom!
- Fixed @whogm not updating count for GMs which you can only see their name.
- Added unit_data.state.speed_changed, now when an object changes speed, the old move-packet will be used on the next movement, which should update the object's speed from that point and on-wards. This is done since there appears to be no way to tell the client a given object's speed has changed.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10209 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-10 18:37:18 +00:00
skotlex
0aa57161b9 - Modified spirit of Wizard so that the consumption of 'Fragments' when blocking bounced spells will only consume 1 Fragment per skill casted, regardless of how many hits were reflected.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10207 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-10 16:19:32 +00:00
skotlex
b6bfcce712 - Modified status_get_sc_def to handle both rate and tick reductions. This way it can take care of the fact that curse rate/duration reductions are not reduced by the same stats.
- Removed wrong defines status_get_sc_def_[mdef/vit/int/luk], they actually had a rather undefined behaviour.
- The pc_max_status_def mob_max_status_def configs are now set on a 1-100% scale instead of 1.00-100.00%


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10206 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-10 15:34:49 +00:00
toms
9f6d32d8de Removed an ugly cast in socket.c
Fixed Makefile (-Wno-unused-parameter was added twice with gcc4)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10205 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-10 14:34:04 +00:00
skotlex
e939ffd654 - Fixed crash if a script does a%0
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10200 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-09 20:27:01 +00:00
FlavioJS
a91b77d781 * Recoded and renamed the trim function in strlib to normalize_name. (didn't behave like a standard trim function, see function comment for what it does)
* Added a proper trim function to strlib.

* Other minor cleanups.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10199 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-09 20:21:17 +00:00
skotlex
8e93386102 - Fixed some compiling warnings.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10196 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-09 19:09:30 +00:00
FlavioJS
d6b4625e06 * Cleanups at npc source file adding/removing. (one variable has been removed)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10195 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-09 14:51:17 +00:00
FlavioJS
cc893dbaab * Changed db key from 'unsigned char*' to 'const char*'.
* Defined out the dump function in util.h/c.

Notes: saw some suspicious code in npc.c so kept the 'const char*' propagation to a minimum for now

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10193 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-09 13:03:34 +00:00
ultramage
5d3ea3da27 * Played around with MinGW a bit today...
- adjusted code so that it handles mingw-specific compatibility problems
- adjusted the makefile, mingw is not a subset of cygwin
* As an experiment Corrected many /W4 warnings on the txt login server

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10192 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-09 00:46:55 +00:00
skotlex
87ac06f325 - Fixed sometimes retrieving the svn-version with fopen not doing a fclose afterwards.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10191 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-08 23:13:29 +00:00
skotlex
ced0e947db - Now when saving a character, only the cart/peco/falcon 'option' states are saved, the rest should be handled by the status change load/save functions.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10188 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-08 17:07:41 +00:00
skotlex
4d2c2543b6 - Updated some Guild WoE rules to behave as explained here: http://www.eathena.ws/board/index.php?showtopic=146581
- Removed the nosave mapflags from the Guild Castles, as per the previously linked topic.
- Added some missing map_freeblock_lock calls to castend_pos and castend_id functions to prevent (rather unlikely) dangling pointer crashes.
- Improved the debug message when the npc_scriptcont npc IDs don't match.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10187 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-08 16:05:20 +00:00
skotlex
7f98907fa9 - Made the return code \n for Apple systems (it was \r before), this still needs fixing, since it should be /r only for pre OSX systems.
- status_change_start will no longer abort if the duration is less than 0 if the status is Ankle Snare (since this stat has it's own minimum)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10185 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-08 14:51:36 +00:00
ultramage
f6cc6e26d3 - Added missing header to mapcache.c
- Fixed a documentation typo for 'makeitem'

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10184 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-08 12:28:03 +00:00
ultramage
75da66f876 - Fixed the platform-specific stricmp compilation problem
- Fixed inverted vending tax equation (venders getting only 2% zeny instead of 98%), and made it more precise

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10182 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-07 21:15:34 +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
6aa16e2f75 Fixed showmsg causing silent access violation exceptions on Windows (WinAPI function used does not accept NULL)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10176 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-07 09:11:11 +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
ultramage
bb934dd59e - Disabled the exception handler on windows debug builds
- Fixed Devotion using WE_BABY's status icon (now uses no icon); if you have a way to determine the correct number, give feedback

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10173 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-07 00:43:46 +00:00
ultramage
a61e02cc29 Updated the server's PCRE components to 7.0
- dll, library, header
- cleaned the only existing example and moved it to /samples
- changed its interface a bit, now it uses $@ instead of $ to store the parsed result
- /!\ adjust your scripts if you are using npc regexp parsing /!\

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10170 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-06 22:15:19 +00:00
ultramage
7d46c4c259 - Fixed the start_point setting smashing t3h stack in some situations
- Fixed some over/under-dimensioned arrays (the map length defines already reserve space for the string terminator)
- Fixed an unupdated define making Warp Portal fail with an error
- Fixed some skill entries of the Galion mob

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10168 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-06 21:43:22 +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
skotlex
79cb6af0cb - Corrected Aliza card's item_db line.
- Capped clif_heal's heal field (the argument received is int, but the packet field is short, meaning that if the heal is high enough, the client would receive a negative heal amount).
- Some indentation fixes.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10165 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-06 15:34:18 +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
6867d93866 typos: recieve -> receive
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10163 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-05 19:02:52 +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
skotlex
e5113a4d7b - Cleaned @whogm. It will display the name of all gms online. If their GM level is above your own, it will only display their name, otherwise level, position, and party/guild info is displayed. GM's using gm-hide will not appear on this list.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10158 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-04 21:33:48 +00:00
skotlex
06885aadf3 - Corrected song/dances/encores reducing SP at the incorrect intervals (either never, or every second)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10152 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-04 13:46:18 +00:00
skotlex
263baf5595 - Corrected Longing for Freedom, it should triple SP cost rather than modifying SP cost to 1/sec
- Corrected Marionette Control's SP cost, it should be 100.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10150 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-03 20:58:46 +00:00
skotlex
5bc3f4b2b0 - Fixed @reloaditemdb not unsetting the consume delay flag when a type 11 item was changed to something else before reloading.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10146 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-03 19:07:48 +00:00
skotlex
5e2ae45c4c - SC_ENCHANTARMS will no longer fail to start if it's already running with a "higher elemental level".
- When trying to trade an untradeable item, the add-item-fail packet will be sent so the client does not gets stuck.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10142 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-03 17:52:26 +00:00
skotlex
6a233bec47 - Re-fixed the attack_attr_none setting x_X
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10129 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-02 20:06:19 +00:00
skotlex
18166d1f87 - Fixed char-server crash on @changegm use.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10126 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-02 19:10:41 +00:00
skotlex
111e75d232 - Cleaned up mmo_auth, as this function was quite filled with sql memory leaks! Also improved the code a little.
- Made account_id and char_id ints in login.h (since they are that type in mmo_charstatus)
- Corrected/simplified the re-walk code when an object's speed changes.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10125 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-02 17:43:30 +00:00
skotlex
028031a4da - Corrected the login TXT server not initializing the waiting_disconnect variable.
- Corrected the attack_attr_none check being backwards.
- All pets can now move regardless of their Mob counter part setting.
- Added hom_setting&0x40, when set it clears the "can't reuse" skill delay when you vaporize a homunculus (set by default).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10120 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-02 14:19:55 +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