2205 Commits

Author SHA1 Message Date
Playtester
d8a73e6f5f * Adjusted drop bug according to special information...
- this will be changed further in the future

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11652 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-04 12:06:37 +00:00
Playtester
2aae5965dc * Implemented official drop rate estimation
- estimation is rounded on 2 positions after decimal point
- this will effectively raise drop rates below 50% by 0.01%

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11651 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-04 10:47:33 +00:00
ultramage
17eb2f7764 Added script function 'strnpcinfo', for increased npc awareness (originally from jAthena).
Updated script reference doc.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11650 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-03 22:07:47 +00:00
ultramage
9c9859a1c5 Fixed one wrong return value in buildin_getcharid (bugreport:33)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11638 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-02 12:07:37 +00:00
ultramage
45cf77f464 Moved the BUILDIN_DEF() block to the end of script.c.
Removed the big list of BUILDIN_FUNC() declarations in script.c, as they are not needed anymore and no code utilizes them => file size-= 11 kB.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11637 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-02 11:42:36 +00:00
skotlex
856a3dc17c - Modified trap related code so it behaves as explained by Playtester: Traps trigger on everyone in their 'effect range' (skill_db's splash) for every target that lies within its trigger range at trigger time (range and interval in the skill_unit_db).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11634 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-02 01:19:38 +00:00
ultramage
78dd6eda46 Removed code that queues OnAgitEliminate after the Emperium is broken, this is now done properly by the gvg script instead (partially deals with bugreport:342).
If you have any extra castles, update your scripts accordingly.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11630 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-01 16:34:21 +00:00
ultramage
ac33a63e54 * Added names to the SC_ and SI_ enums, now they can be used to properly indicate where such values are to be used (replaces usage of 'int')
* removed MIN_/MAX_PORTAL_MEMO, set MAX_MEMOPOINTS from 10 to 3
* removed support for @go-ing to your memo points
* simplified the overly verbose @memo command; now re-uses pc_memo()
* cleaned up pc_memo(), now uses semi-correct packet replies
* Minor code cleaning/formatting

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11625 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-31 13:20:48 +00:00
SinSloth
95d34e2dce * Added Izlude Battle Arena. Please test it and report any bug you find out.
- Level 50/60/70/80 and Party arenas are accessable.
- Updated old warps to official.
- Acolyte-only arena will be added a bit later.
- Arena Points can be obtained by completing arenas as well as exchanging your Turbo Track points.
* Updated several mapflags - 'nomemo' 'noteleport' 'nosave' 'nowarpto' 'restricted' - due to Izlude Battle Arena release.
- Updated 'item_noequip' and 'skill_nocast_db' to match with 'restricted' mapflags.
* Removed useless WIP folder whose quests have been there for a while.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11622 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-31 11:56:28 +00:00
zephyrus
a558a4d2c7 - Updated the mail sql structure in main.sql.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11617 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-30 03:41:23 +00:00
FlavioJS
1150699a75 * Makefile creating the conf/import forder.
You can update your Makefile by running configure again ('make help' for a list of available targets)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11610 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-29 19:58:26 +00:00
ultramage
fc9d14b1bd Command code cleaning (refer to topic:169759)
* separated the execution part of command code into interface part and internal part to better see which checks are done and when (fixes problem where 'nocommand' mapflag blocked server npcs)
 * moved the internal commands list (array) to the end of the file, this let me discard that long block of ACMD_FUNC() declarations
 * removed enum AtCommandType from command headers and commands array; its purpose was perhaps to identify aliased commands, but apparently it was never finished because the rest of the code doesn't use it (also doing aliases like this is not a very good idea)
 * internally, commands are now referenced to using their function name
 * removed the @/# symbols from the command lists; all lookup functions will now properly deal with strings with- and without a command symbol (commands interface still requires the symbol tho', so TODO for later)
 * removed several unneeded commands (*id2 code, dmalloc debug commands)
 * reverted atcommand config from alphabetically-sorted to how it was before (with additional fixes; see /conf changelog)
 * added missing code for #dropall / #storeall
 * added a warning when trying to set gm level of an undefined command

The structure of the commands table has changed, please adjust docs/guides to match the new format (sorry for the inconvenience).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11607 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-29 09:16:39 +00:00
FlavioJS
82a3432bd4 * Minor adjustment to take into account the end of line.
* Fixed the line count in the new error message of npc_parse_function.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11606 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-28 23:48:29 +00:00
FlavioJS
d51639d405 * Restricted more the parsing of npc code. (fixes bugreport:317)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11603 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-28 23:17:56 +00:00
zephyrus
f0cc5dd038 - Fixed a bug on the Attachment [Mail System]
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11593 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-28 15:12:54 +00:00
ultramage
3aa603d420 Fixed a typo in r11505 messing up the 'npcmove' command (only 'x' coordinate was being set correctly)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11588 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27 15:45:24 +00:00
ultramage
0031c1553e Removed 'petid', a command from r284 to look up pet ids by name.
Cleaned up some pet-related code.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11586 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27 12:45:12 +00:00
ultramage
2cb8a5838e * Fixed TXT charserver doing periodic random-sized memory allocation (bugreport:312)
* Set 'Create Converter's produce success rate to 100% (bugreport:302)
* Added check that verifies weapon/ammo/state requirements also when casting finishes (might have unwanted side-effects tho'!) (bugreport:228)
* Fixed Firewall knocking back undead/fire element mobs (bug in r11578)
* Added dummy 'openmail' to txt server to fix a script error message

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11585 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27 11:59:35 +00:00
ultramage
b6bbaef27b Followup fixes to r11583:
* fixed wrong sql upgrade file name, added svn:eol-style native
 * made 'status' variable directly use the mail_status enum
 * replaced some hardcoded numbers in mail queries with references to the enum
 * fixed a query which still used 'read_flag'
 * fixed all new mails being displayed as 'already read'
 * removed sd nullpo checks from parse_ functions as that can never happen
 * fixed mapserver sending (and charserver saving) junk item fields when there is no item attached to a mail
 * fixed wrong mail send packet interpretation saving random memory after message body ('body_len' doesn't include the terminating zero)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11584 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27 09:48:27 +00:00
zephyrus
284222a415 - Improvements to the mail system.
- Added a sql patch, renaming "read_flag" column to "status" on the mail db.
- Need more testing.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11583 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27 06:34:04 +00:00
ultramage
e3ab4cdcfe Moved the new novending cell check from the internal code to the client-server interface (allows server to force-open shop if needed)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11580 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-26 09:25:55 +00:00
ultramage
e0cccf7d12 * Removed confusing map_nick2sd_nocase(), let the charserver handle it
* Added correct packet for attachment retrieval failure when overweight
* Fixed one more mistake in r11571 (Sql->SqlStmt)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11579 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-26 08:42:32 +00:00
skotlex
34b9b6f16e - Removed the config setting firewall_hits_on_undead setting, Firewall and kaensin now automatically calculate the number of hits they should do per iteration based on the skill trigger frequency (you may want to raise that delay of 1ms in the db, though)
- Cleaned a bit the loop for the Warmth skills.
- Added a mising pc_class2idx invocation (fixes a very minor bug when you request max skill lv for a skill in your tree with different max than the skill_db max)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11578 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-26 07:16:47 +00:00
FlavioJS
d9774ac8ca * Corrected a fex misshaps from r11571:
- disabling the memory manager
- using the wrong length for the title and body in mail_savemessage
* Removed the quick-fix in the npc duplicate check and the impossible condition that is generating the warning.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11573 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-24 13:29:00 +00:00
skotlex
480a4f0ac8 - added defines JOB_MAX_BASIC and JOB_MAX to mmo.h so the code can know which are the max valid classes.
- @/#jobchange no longer strip your equipment since pc_jobchange removes any unequippables already.
- removed the wasteful define MAX_PC_CLASS and replaced it by the CLASS_COUNT define (which is automatically updated using the previous JOB_MAX* defines) + pc_class2idx function (which converts high class IDs into values that fit in CLASS_COUNT)
- Made status_charge a function rather than a define to get rid of those warnings that have been there since forever.
- Merged the CELL_NOVENDING code (see topic #129209)
- Small check that disables the pet catching process if you try to use another item. 
- Added a check to fix a warning and prevent a crash in the npc duplicate check (even though I have no idea what this check is supposed to do, therefore I can't fix it properly other than to avoid the crash)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11572 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-24 13:02:00 +00:00
ultramage
d091f1cf05 * Cleaned up some messy guild code (more to come)
* Cleaned up the mail code, no more pointless dynamic allocation
* Added upgrade_svn11548.sql to convert the mail table to new format
* Updated vs7 and vs6 project files
* Increased the max. send buffer size to 5M since 1M is not enough
* Please complain if something stops working ^^;

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11571 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-24 12:14:18 +00:00
zephyrus
3b34abfc21 - Fixed a compilation bug on linux (FALSE -> false)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11560 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-23 15:35:02 +00:00
zephyrus
baa7b210d9 - Removed some mail config settings and atcommands not required anymore.
- Added documentation for script commands: openmail and homshuffle.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11554 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-22 21:24:15 +00:00
zephyrus
c34325a53b - Added the new mail system. Requires optimization and tests.
- Updated the maildb sql structure.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11548 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-22 20:38:26 +00:00
Playtester
85d3f5a3e4 * Heat isn't supposed to consume SP when used against players
- please report if it still consumes SP in pvp

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11544 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-22 11:03:40 +00:00
ultramage
33decb0759 Fixed a small mistake in r11503 causing a fatal error&exit on unix when you try to do a graceful exit (by ctrl+c for example)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11538 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-21 13:37:46 +00:00
skotlex
a3590acef4 - Removed SC_INCAGIRATE/SC_INCDEXRATE as they are not used anymore (and where even incompletely coded)
- Added SC_INCASPDRATE, SC_INCFLEE2, SC_INCCRI, SC_INCDEF, SC_INCBASEATK and SC_FASTCAST as these are required by the newer items.
- Cleaned a bit the implementation of Suffragium


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11535 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-21 11:17:07 +00:00
ultramage
28dcdcdf9e * Fixed 'unequip' removing items in the wrong position (bugreport:252)
* Fixed #refine unequpping the caller's item by mistake (bugreport:265)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11534 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-21 02:18:15 +00:00
ultramage
6cca14200e Fixed a nasty bug from r11410 which let people create chars with already taken char names, and (in TXT's case) even cause a crash.
Closes bugreport:234.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11530 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-20 21:21:54 +00:00
Playtester
63b525649c * Some more updates to the skill unit code
- renamed SKILLUNITTIMER_INVERVAL to SKILLUNITTIMER_INTERVAL
- Heat now depends on the interval settings rather than firewall_hits_on_undead
- if you want Heat to do more or less hits you can now change the interval value in the skill_unit_db.txt (official+default: 20ms)
- Icewall doesn't break anymore when the SKILLUNITTIMER_INTERVAL gets changed

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11526 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-20 14:53:23 +00:00
skotlex
a1becae58f - Added bonusautoscript and bonusautoscript2. These are used to attach a script to a player which gets executed on attack (or when attacked). Required for several of the more recent items.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11519 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-19 20:31:57 +00:00
skotlex
8d0ac1d316 - Applied some cleanups that should correct "Infinite Endure" ending sometimes.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11518 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-19 19:10:21 +00:00
L0ne_W0lf
1607b50c59 Uncommented the ShowWarning and ShowDebug from rev. 11508, and cleaned up the warnings it produced.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11516 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18 22:04:47 +00:00
FlavioJS
630552ca97 * Fixed the incorrect map names on the debug messages (mapid->mapindex mishap from r11508).
* Fixed the incorrect reporting of npc names being too long when the the length is 24 (from r11508).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11512 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18 19:17:58 +00:00
L0ne_W0lf
9c147d9f42 * Commented out ShowWarning and ShowDebug messages added in revision 11508. Aside from the ShowDebug being faulty, they are both fare too annoying for public use for the time being. If/when I get the NPC names fixed, we can add it back.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11511 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18 18:25:16 +00:00
Playtester
6bcbcb11bb * Further optimization of the skill unit code
- removed code for Crimson Fire Formation it now uses the same code as Fire Wall
- added same knockback behavior as Fire Wall for Fire Formation
- Heat now does 50 hits a second in pvp too
- please let me know of any bugs that might appear

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11510 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18 18:07:09 +00:00
Playtester
12f4be5b2e * Optimized the skill unit code
- reverted the unit timer interval to 100ms to save CPU usage
- rewrote the unit code of Fire Wall, Fire Formation and Heat so that they hit every 20ms if the target wasn't knocked back despite of the unit timer interval
- Heat now does 15 SP damage to players instead of 60 per hit
- optimized memory usage
- TODO: Renaming or removing firewall_hits_on_undead config

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11509 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18 16:19:51 +00:00
FlavioJS
613b8a5b65 * Clarified how npc names work in script_commands.txt.
* Fixed a forgotten "return 0;" that stopped the parsing of the file after the first "script" of the file is parsed sucessfully (caused by r11502).
* Applied the same parsing and restrictions of npc names to warps, duplicates and shops (other code expects unique names for them too).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11508 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18 14:21:46 +00:00
ultramage
2c2af57a84 * Removed commented-out code for check_fake_id()
* Merged improved/cleaned up (WiP) code for clif_parse_WisMessage
* Removed the requirement to provide a character name in the message string when calling is_atcommand() (needed for the previous fix)
- currently both ways work, but old will be removed in the upcoming command cleanup so please adjust your custom code if you use this!
* Added clif_process_message(), an unified way to validate all four types of player message packets and retrieve their components
* Applied the new checking function to clif code, this fixes various length mismatches caused by incomplete code in r11386 (bugreport:198)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11507 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18 12:49:49 +00:00
ultramage
0bbf505d59 * Merged do_sendrecv() and do_parse() into do_sockets()
* Fixed subnet check message displaying incorrect ip addresses
* client_addr will now be properly set to 0 for server connections
* Removed socket code that attempts to cope with code bugs at runtime
* Removed outdated copyright and version number from startup logo

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11503 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-17 20:24:48 +00:00
FlavioJS
05134f3dcc * Reworked the parsing at npc.c.
- Fixes npc.c discarding the '}' at the end of file, when there is no newline. (uncovered as a side-effect of r11487)
* Empty script functions always have code now (won't report as missing when you try to call them).
* Changed userfunc_db to not limit the name to 50 characters.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11502 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-17 20:15:39 +00:00
Playtester
6c04229cb6 * Ground skill now can trigger every 20ms
- Firewall, Fire Formation and Heat now can do 50 hits a second
- this was proven to be official behavior, but it will raise CPU usage

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11500 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-17 16:55:06 +00:00
ultramage
6b2c679c3f * small timer.c cleaning
- removed "with less than 4 values, it's speedier to use a simple loop" as this case will never occur (premature optimization from r1284)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11499 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-17 12:07:25 +00:00
ultramage
472e15c188 * Venom Splasher fixes according to bugreport:230
- added passive skillv*30% bonus from Poison React
- added official splash damage calculation - damage gets split by the number of targets at range 1, then applied to all targets in range 2
- reverted some very old code - clif_calc_delay() - that was preventing skills from displaying properly, by erroneously assuming that if the target has ddelay 0, it has endure effect activated
- TODO: the skill should not consume a gemstone when it fails

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11494 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16 23:24:39 +00:00
ultramage
425112aef3 * Fixed a copy-paste mistake in disguise code (from r5833)
* Commented out clif_skill_damage2() as it is not used anymore
* Made Venom Splasher a splash attack that distributes damage
* Fixed displaying of several splash skills (see bugreport:238)
- added flag SD_PREAMBLE for skills that need the 'magic' packet (fixes Grimtooth / Cart Revolution displaying out of sync)
- hacked together Venom Splasher's "no animation for central mob"
- hacked in a custom packet to make Dragonfear display semi-correctly

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11491 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16 19:00:03 +00:00