Commit Graph

207 Commits

Author SHA1 Message Date
aleos89
5ef2000bd9 Resolved a potential map crash on instance destruction (fixes #1333)
* Adjusted the instance destruction checks on party and guild breaks.
2016-06-02 09:02:14 -04:00
aleos89
c97be60bbf Expanded the instance system to support new modes
* New modes include: No player attached, single player, and guild.
* Expanded script command instance_create to take in an owner ID and an optional mode.
* Added a new script command instance_check_guild (works the same as instance_check_party).
* Refactored all instance_id to unsigned short.
2016-05-14 11:57:54 -04:00
aleos89
55e4df14c2 Overhaul of the mob mode system
* This rewrite allows for better adaptation from the Aegis Class and Attribute fields.
* Refactored the renewal level penalty function.
* Slaves are now properly assigned an official slave mode of CanWalk, CanAttack, and NoRandomWalk.
* Removed extra Boss checks and adjusted others to use their proper functions.
* Properly implemented Skill Immunity mode to match Aegis.
* Separated MVP and Boss modes.
-- MVP mode defines when mobs should give MEXP, MVP Drops, and show the MVP sign.
-- MVP now have their own item drop configurations.
* Updated the mob_db and mob_skill_db to match the new mode structure.
-- Included a Perl tool (tools/convert_monstermode.pl) to allow people to convert their custom mobs to the new mode structure.
Thanks to @Playtester and @Lemongrass3110 for help with debugging and information!
2016-04-18 14:49:27 -04:00
Cydh Ramdh
cbfa9c9ea1 Merge branch 'feature/exp-giving-script'
Merge pull request #1032 from rathena/feature/exp-giving-script

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-03-26 01:45:36 +07:00
Cydh Ramdh
09b2ea06ee * Refactor pc_setparam for SP_BASEEXP and SP_JOBEXP.
* Added script command `getexp2` for safety usage of `set BaseExp,n;` and `set JobExp,n` usages.
* Cleanup exp lost functionto `pc_lostexp`.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-03-20 12:31:44 +07:00
aleos89
ed7157c80b Refactored Party Booking defines (fixes #1018)
* Adjusted the name of the defines to better suit their purpose.
Thanks to @Artuvazro!
2016-03-10 13:47:01 -05:00
aleos89
b307ae8004 Added MD_FIXED_ITEMDROP mob mode
* When active the mob's drops are not affected by item drop modifiers.
2016-01-30 11:20:20 -05:00
lighta
46d417a458 merge master into cppcheck 2015-10-30 02:48:40 -04:00
Lemongrass3110
a597e7bd34 Some more pointer casts and enum fixes. 2015-10-03 01:46:47 +02:00
Lemongrass3110
a674869113 Fixed a lot of scanf issues reported by rathena's cppcheck 2015-05-13 14:47:07 -04:00
aleos89
a683e005d7 Merge pull request #197 from rathena/hotfix/bug9338
* Changed Guild/Party Bound Item Retrieval Methods:
- Fixes bugreport:9338
- Now resend the list to map-server from char/inter-server to avoid "weird" item allocation on guild storage. Example, previously you will meet stacked item like GUID does, but it shouldn't!
- Also will check the maximum amount that can be store in guild store. If guild storage is full (the slots or item stack limit is reach) the rest value/item will be dropped.
- Account of kicked guild member won't be kicked from server any more if the player idle on character select window (just prevents player to login when retrieving items are in progress)
- Delete guild bound items from guild master when guild is disbanded! Previously, the bound type just changed to NONE. Also for party bound item.
- If kicked guild/party member is trading bound item when be kicked, the trade will be cancelled!
- If the guild member is being kicked when open guild storage, storage will be closed first waiting for next item retrieval.
- Now when guild storage is opened, storage_status (changed the var to 'opened') will be used to hold char_id who opens it.
* Misc:
- Cleanup guild storage prefix functions, changed them to "gstorage_*"
- Added picklog type 'B' for logging deleted bound item because of kicked from guild/party.
- Updated documentation for new used packet 0x3857
2015-01-13 12:59:19 -05:00
Cydh Ramdh
022d72891e Changed Guild/Party Bound Item Retrieval Methods:
* Bug Fixes bug:9338
* Now resend the list to map-server from char/inter-server to avoid "weird" item allocation on guild storage. Example, previously you will meet stacked item like GUID does, but it shouldn't!
* Also will check the maximum amount that can be store in guild store. If guild storage is full (the slots or item stack limit is reach) the rest value/item will be dropped.
* Account of kicked guild member won't be kicked from server anymore if the player idle on character select window (just prevents player to login when retriving items are in progress)
* Delete guild bound items from guild master when guild is disbanded! Previously, the bound type just changed to NONE. Also for party bound item.
* If kicked guild/party member is trading bound item when be kicked, the trade will be canceled!
* If the guild member is being kicked when open guild storage, storage will be closed first waiting for next item retrieval.
* Now when guild storage is opened, storage_status (changed the var to 'opened') will be used to hold char_id who opens it.
Misc:
* Cleanup guild storage prefix functions, changed them to "gstorage_*"
* Added `picklog` type 'B' for logging deleted bound item because of kicked from guild/party.
* Updated documentation for new used packet 0x3857

NOTE: Please import upgrade-20150103_log.sql
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-03 20:37:38 +07:00
Lemongrass3110
08941b2a80 Fixed party creation. Thanks @lighta 2014-12-30 23:37:05 +01:00
Lemongrass3110
f4ad757538 Removed a redundant call to clif_party_info on party loading. 2014-12-27 13:57:48 +01:00
lighta
8066bdef46 Data alignement
Align account_id and char_id to uint32 as this is the value they can be
in DB.
Remove src/test folder, unused
Remove useless #include to speedup compilation.
2014-12-19 21:31:04 -05:00
Cydh Ramdh
4d5fc9604c Some typos
* Changed -1 for timer id to INVALID_TIMER
* Changed values for pc_bound_chk(). 2 to BOUND_GUILD and 3 to BOUND_PARTY

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2014-12-17 18:18:56 +07:00
icxbb-xx
43f25e3509 Fixed Bug.
- Issue on packetver 20131223 or newer where skill-damage with type 6 would be considered by the client as endure-type, fixing by swapping with value 8 which presents no different graphical representation than it'd otherwise. (Hercules 1c1e10a)

- Implemented official party-leader-changed-packet (Hercules 14475dc)
- Add Older Packet ShowScript & Implemented to montransform status change parameter optional
- Add support for packet ZC_SKILL_POSTDELAY_LIST. (idAthena)
2014-11-01 05:50:18 +07:00
aleos89
2b870c24d5 Various cleanups.
* Added and cleaned up comments.
* Added checks to prevent map server crashes.
* Cleaned up some reports from CPPCheck.
* Other various stylization cleanups.
2014-10-02 09:16:52 -04:00
aleos89
82561947e3 Bug Fixes
* Updated Napalm Vulcan damage to official. (bugreport:9297)
* Firing Trap should be removed immediately once it has detonated.
* Updated Expanded Super Novice ASPD values for weapons to match normal Super Novices.
* Updated Expanded Super Novice and Super Baby to be able to do anything normal Super Novices can do. Guardian Angel, Dori Dori, etc.
* Super Novices are able to equip any level 4 weapons of type Daggers, 1H Swords, 1H Axes, 1H Maces, and 1H/2H Staves while Soul Linked. (bugreport:2765, bugreport:5568)
* Reverted the Warlock elemental summons to not be limited per level from 237579c. All levels allow up to 5 summons.
2014-09-29 14:22:50 -04:00
aleos89
62a2813adc Bug Fixes
* Fixed Concentration ending when Frenzy is used. (bugreport:8942)
* Fixed Hells Plant hitting Ghost element enemies. (bugreport:8799)
* Forced guild notice changes to save immediately. (bugreport:8961)
* Fixed Cart Tornado damage formula. (bugreport:9065)
* Adjust Amistr's Castling to now switch to any target type. Still needs skill switching support. (bugreport:1784)
* Removed hard coded 1 second skill duration reduction for Spore Explosion.
* Fixed the party window not displaying the correct map name when in an instance. (bugreport:7949)
* Fixed hatching a pet causing client disconnections. (bugreport:9059) (Hercules 533ff4f)
* Updated Kagerou/Oboro skill cast times. (bugreport:9035)
* Removed deprecated negative nameid value for getitem/getitem2.
* Renamed incuvate to incubate throughout source and SQL.
* Added skill ID to the error display for battle_calc_attack to help resolve issues. (bugreport:8876)
* Cleaned and corrected some Sorcerer Elemental skills. (bugreport:9058)
* Cleaned up some more compile warnings.
2014-06-27 15:45:35 -04:00
lighta
b124498263 Fix -WShadow definition warning
Cleanup some leftover
2014-06-27 06:07:50 -04:00
aleos89
0f7ecd0c4d 3rd Class 2011 Post Balance Update
* Contains remaining formula updates for 3rd class skills.
* There are a few bug fixes and corrections to broken skills.
2014-01-10 10:36:53 -05:00
Lilith
dae81222a8 * Added AEGIS 'CLASS_' enum
- Removed RC_BOSS, RC_NONBOSS, RC_NONDEMIHUMAN.
 - Added CLASS_NORMAL, CLASS_BOSS, CLASS_GUARDIAN enum.
 - Added CLASS_ALL, RC_ALL, ELE_ALL, SZ_ALL.
 - Item bonuses 'bAddDefClass' and 'bAddMdefClass' replaced by 'bAddDefMonster' and 'bAddMdefMonster'.
 - Item bonuses 'bIgnoreMdefRate' and 'bIgnoreDefRate' replaced by 'bIgnoreMdefRaceRate' and 'bIgnoreDefRaceRate'.
 - Added new item bonuses: bIgnoreDefClass, bIgnoreMdefRaceRate, bDefRatioAtkClass, bAddClass, bSubClass, bMagicAddClass, bWeaponComaClass, bHpDrainValueClass, bSpDrainValueClass, bIgnoreMdefClassRate.
 - Updated doc/item_bonus.txt
 - Updated db/re/level_penalty.txt & 'pc_level_penalty_mod' function.
 - Updated 'battle_calc_cardfix' function.
 - 'md->class_' replaced by 'md->mob_id'
2013-12-30 08:46:24 -08:00
lighta
8bd0985159 More hardcoding cleaning with inf3
-Add skill lists for :
--spell blocked by statis
--spell blocked by kagehumi
--spell range affected by
AC_VULTURE|GS_SNAKEEYE|NJ_SHADOWJUMP|WL_RADIUSRA_RESEARCHTRAP
--spell that can't be copied
--spell that can be using while riding warg|mado
-Add a boolean return value for delequip (script cmd)
-Fix monster (script cmd) hardcoded cap for ai. (was preventing to put
ai_faw)
2013-08-24 15:39:26 -04:00
cydh
81430d2779 Follow-up r17414
- previous party_delmember can't remove the offline member, so it's changed: party_delmember {<char_id>,<party_id>}
- remove unnecessary script_command checklang() - it's my bad

Fixed Basilica bugs as bugreport:2398 and bugreport:2673 (akinari)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17415 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-07-11 05:54:17 +00:00
cydh
12523667f7 Added party script commands and documentation (thank Euphy)
- party_create "<party name>"{,<char id>{,<item share: 0-no. 1-yes>{,<item share type: 0-favorite. 1-shared>}}};
- party_addmember <party id>,<char id>;
- party_delmember {<char id>};
- party_changeleader <party id>,<char id>;
- party_changeoption <party id>,<option>,<flag>;
- party_destroy <party id>;
Added script command for checking player's language
- checklang()
Mapflag related
- Add nocommand mapflag documentation
- Added notomb at @mapinfo message
- some changes at @mapflag
Attempt to fix error on 'skill_produce_mix' while deleting materials


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17414 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-07-11 01:56:54 +00:00
akinari1087
cd95d1cada Instance System Rewrite!
- Removed a bunch of script commands and replaced others
- Rewrote the way instances are created
- Added Instance Database files
- Fixed and rewrote instances scripts (Euphy)
- Added reloading to instancedb
- Instances are now persistent through @reloadscript
- Special thanks to Auriga (emulator) for the base of their system
- Special thanks to Euphy for doing major testing and script rewrites for this
- Special thanks to Lemongrass and Lighta for some help along the way

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17386 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-06-26 17:33:59 +00:00
akinari1087
c6018f4ef8 Added configuration option BOUND_ITEMS in core.h to disable Guild/Party
bound items system
Added Character Bound item option suggestion
- Updated documentation on changes

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17361 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-06-13 15:31:35 +00:00
akinari1087
4742adac12 Introducing the Account/Guild/Party Bounded Items System - Suggestion tid:70372
- Thanks for Xantara for providing initial diff as well as Lighta for guild bound help
- Adds script commands 'getitembound', 'getitembound2', and 'countbound'
- Adds at commands @itembound and @itembound2
- Adds permission pc_can_traded_bounded
- Documentation updated

Don't forget to run the SQL upgrade file!

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17351 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-06-08 22:47:10 +00:00
glighta
bba1db77e0 -Releasing Multilanguage support tid:80352 hx to Lilith and all other contributors
No other langage is enable by default, change LANG_ENABLE in msg_conf.h
-- Add 2 new atcommand :
@langtype to switch over langages
@reloadmsgconf to reload the db
Langage choosen is account wide, not reseted by default on relog.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17251 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-12 03:50:16 +00:00
glighta
55686799e4 -Follow up r17206, transfert *src on status_get_sc_def to properly calculate defense.
nb : 
NULL is transmitted for atcommand and npc call since they shouldn't be reduced.
src = direct user, so we can compare directly, if you want to compare to master please cast so.
saved status from char won't have *src currently since I don't believe we need to recalculate def.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17211 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-03-26 06:04:04 +00:00
aleos
290638c829 > Follow up to r16337 and completed suggestion (tid:76250). Drop and EXP rates now take player and mob level into consideration for specific information commands.
- Added RENEWAL_EXP level penalty mod to @mobinfo.
- Added RENEWAL_DROP level penalty mod that got removed from @mobinfo.
- Added RENEWAL_DROP level penalty mod to @showmobs.
- Enabled atcommand_mobinfo_type by default (needs RENEWAL_EXP or RENEWAL_DROP to be enabled to work).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17173 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-03-06 03:10:58 +00:00
glighta
a79985a0c8 -Fix bugreport:7298 where exp affected by level_penalty wasn't affecting self but next party member as well.
-Follow up r17161 (fix windows undefined type, bugreport:7305

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17162 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-02-26 19:46:46 +00:00
euphyy
058a7b4f4e > Hercules merges:
* 7e72f0c, 3bba651:
Improvements all over the place.

* 327a46d:
Arrullo no longer crashes the server when used by monsters.

* 1093763:
Fixed official behiavior of WZ_SIGHTBLASTER dealing with HW_MAGICPOWER.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17139 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-02-18 23:54:33 +00:00
glighta
0cdba10793 -Harmonize skillid, skill_num, skillnum, skill, to skill_id and same for skill_lv
-Optimise type from int to int16 in order to reduce ram consumtion.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17065 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-12-30 16:00:24 +00:00
brianluau
a2bdc47daf - Undid r16968: SVN Replaced with source:/trunk/src/@16966 (tid:74924).
[16969:16991/trunk/src/] will be re-committed in the next 24 hours.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16992 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-12-05 02:53:33 +00:00
greenboxal2
a7c32653f7 Applied AStyle code formating as discussed on tid:74602.
Removed /SAFESEH option from MSVC11 projects.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16968 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-11-25 21:20:43 +00:00
glighta
b4b7d621ee Following r16914
-fix @zeny for negative amout bugreport:6886, bugreport:6895 bugreport:6888
-fix @cash,@points command display result
-enforce bound chk for both

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16924 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-11-14 02:26:00 +00:00
glighta
752776e4cc -Add Homon-S skills, 1st implementation (all done except Eleanors)
--Upd Skill conf to set land-limit for homonculus by default (ground skill limit)
--Mv MH_HEILIGE_STANGE and MH_ANGRIFFS_MODUS skill from Eleanor to Bayeri

-Enforce all zeny transaction to use pc_payzeny and pc_getzeny handlers, (auto log and clif)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16914 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-11-12 00:06:25 +00:00
rud0lp20
156446bf33 Fixed Level/Drop modifier based on level difference and created a db as suggested in pid:137564. (bugreport:6585)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16842 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-10-30 07:30:36 +00:00
glighta
7a6a529548 -Add some src basic documentation.
-Change some remaining -1 for status ending timer.
-Move some hardcoded msg in msg_athena
-Small optimisation on battle_attr_fix

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16835 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-10-29 06:33:43 +00:00
shennetsind
9726d4eb45 Fixed bugreport:5862 RENEWAL_EXP should now handle mvp exp properly, special thanks to Vali.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16332 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-23 23:22:17 +00:00
shennetsind
92f5387b0a Fixed bugreport:5561 Even Share Exp should now be working properly
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15854 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-11 10:27:48 +00:00
shennetsind
0674d99a60 Moved Renewal Experience Modifier out of REMODE and created its own RENEWAL_EXP setting. will update on the wiki asap.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15843 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-11 04:12:42 +00:00
epoque11
34e7f045b7 - Spring cleaning of various source files
- Removed unused src/map/config/Skills/Mage_Classes.h file

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15837 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-09 22:56:59 +00:00
protimus
f5f937c809 More cleanups for old clients.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15830 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-04 01:20:06 +00:00
epoque11
d48dad422b - Fixed party invite crashing when a player is not online. (bugreport:5506)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15791 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-25 14:31:08 +00:00
shennetsind
98ba0a8de0 Fixed gcc warning, removed unused variable 'flag'
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15766 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-22 17:09:49 +00:00
epoque11
34336478b5 - Fixed party exploit which allowed players to confirm the online status of another player. (bugreport:4863)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15763 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-22 12:17:17 +00:00
gepard1984
8817eaa885 Code cleanup: replaced DBIterator function calls with macros where possible.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15668 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-09 14:31:15 +00:00