48 Commits

Author SHA1 Message Date
Lemongrass3110
e40da669ed
Initial release of barter shops (#6508)
Fixes #5062

Thanks to @Atemo and @aleos89

Co-authored-by: Atemo <Atemo@users.noreply.github.com>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-01-21 00:59:16 +01:00
Atemo
f230b13ded
Converted statpoint.txt to YAML (#6010)
* Converts the Statpoint Database into YAML.
* Includes CSV2YAML converter.
* Added start_status_points to inter_athena.conf

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2021-07-05 19:06:49 +02:00
Lemongrass3110
0e826261a6 Cleaned up some misleading comments
1) global_acc_reg_num_table and global_acc_reg_str_table are used in the login server only and their configuration and access is not shared with any other component.
2) The character server does not check for global_acc_reg_str_table and global_acc_reg_str_table, but for acc_reg_str_table and acc_reg_str_table.
2020-03-26 21:40:42 +01:00
Jittapan Pluemsumran
bc15f5ce14
Dropped ragsrvinfo functionality (#4301) 2019-08-15 19:08:22 +07:00
Lemongrass3110
55acdb9863
Initial release of the guild storage log (#3365)
Thanks to @aleos89 and @Everade
2018-10-10 17:51:49 +02:00
Jittapan Pluemsumran
cc1d26fe74 Inter server C++ conversion (#2322)
* Renamed inter.c to inter.cpp and refactored it

* Converted inter_server.conf to inter_server.yml

* Updated the makefiles

* Refactored inter-server storage handling logic

* Fixed a bug with wrong maximum being displayed
When you took out an item of the storage it would always display the maximum amount of the normal storage.

* Fixed a bug with storages that are over maximum

Thanks to @Akkarinage, @Lemongrass3110 and @Jeybla
2017-08-14 01:27:58 +02:00
Lemongrass3110
58776da1ac Basic RODEX support (#2186)
Adds basic support for the new mail UI RODEX.

Fixes #1567

Thanks to @RagnarokNova, @Atemo, @aleos89 and everyone else that helped me with this.
Additionally I would like to thank @jezznar and @hazimjauhari90 for their good testing in the pull request.
2017-06-21 00:00:29 +02:00
Lemongrass3110
aaa4ea919e Initial release of the cash shop sales (#1825)
Added a permission for the cashshop sales

Thanks to @Angelic234 and everyone else who tested this feature while it was sleeping waiting in a pull request.
Thanks to @aleos89, @secretdataz and @lighta for reviewing and commenting.
2017-02-15 14:04:18 +01:00
Aleos
5d22e1cf48 Cleaned up processing of secondary tables (#1946)
* Cleaned up processing of secondary tables
* Fixes #1934.
* Renewal and Pre-Renewal secondary tables are now properly loaded depending on the server mode.
* Includes item, monster, and monster skill tables.
Thanks to @Lemongrass3110 and @daisyanne1380!
2017-02-13 13:09:40 -05:00
Lemongrass3110
ecc8cf9f0b Initial release of the clan system
Thanks to @cydh, @RagnarokNova and @aleos89 for their help.
2016-11-16 15:36:08 +01:00
Cydh Ramdh
46b1de7d50 Initial release 'premium' storage
* Adapting official multiple storages.
* Added config to defines storages. See conf/import-tmpl/inter_server.conf.
* Added packet IZ `0x388c` for sending storage definitions.
* Added script command `openstorage2` to open premium storages.
* Removed `sd->storage_size`, replaced by `sd->storage.max_amount`. The value is defined in inter_server.conf in storage entries.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-11-01 09:08:55 +07:00
aleos89
35cd68873b Merged with master 2015-06-26 10:36:40 -04:00
aleos89
3d9c6e7763 2014 Client Support
* Implemented the Roulette Game feature.
* Implemented per-character sex change feature.
* More info: https://rathena.org/board/topic/102247-2014-client-support/
- Special thanks to HerculesWS/Hercules@239d480 for the base.
2015-06-19 14:07:34 -04:00
aleos89
0696125b82 Script Engine Upgrade
* Upgraded the script engine variables to no longer be limited.
* Increased array limit from 127 to 2 billion.
* Improvement in overall speed and storage size.
* All variable types now support arrays.
- Merge from HerculesWS/Hercules@82b583b. Thanks to those who worked on it.
2015-06-11 10:44:13 -04:00
Cydh Ramdh
7d929a06a3 NPC Market Shop support
* New shop script definition: `<map name>,<x>,<y>,<facing>%TAB%marketshop%TAB%<NPC Name>%TAB%<sprite id>,<itemid>:<price>:<quantity>{,<itemid>:<price>:<quantity>...}`
* Added script command to update shop NPC: 'npcshopupdate "<name>",<itemid>,<price>{,<stock>}'
* Added NPCMarketDB (DBMap) for market data persistance method.
* Added `market_table` definition for market table in conf/inter_athena.conf.
* Thank to @aleos89, @Lemongrass, @icxbb-xx, merged HerculesWS/Hercules@cf19b26.

NOTES:
* Minimum client needed 2013-12-23 (but this client has bugs there-and-there).
* There's new table, see `upgrade_20150327.sql`.
* Market shop doesn't support discount.
* Added items by script `npcshopitem` or `npchopadditem` will be assumed as persistance items, will be loaded on next script reload or server start even market_shop NPC does't list them (unless NPC is not exists, entries will be removed).

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-27 21:11:07 +07:00
Cydh Ramdh
9b4d922ef4 Bug Fixes:
* Follow up 2d2991a, remove trailing spaces in inter_athena.conf
* Added `bound` field on `picklog` table (bugreport:9240) Thank @icxbb-xx (Napster)
* Fixed Randomize Spell infinite loop. Failure of skill improvise db reading. (bugreport:9288)
* Added **max_extended_aspd** for caping max ASPD for KO/Rebellion, default is 193. Pointed by @raynra & Ziu
* Mail attachment
  * Added `bound` field on `mail` table, since group with PC_PERM_TRADE_BOUNDED can put bound item into attachment
  * Fixed wrong data type causing wrong zeny amount (bugreport:9291)
* Fixed item color issue for bound item (bugreport:9238)
  * Stackable item shouldn't be displayed as yellow color
  * Equip doesn't shown as yellow after relog or item is moved
* Silence status immunity for Renewal (bugreport:9227)
  * Bleeding (SC_BLEEDING): Vit -> Agi
  * Silence (SC_SILENCE): Vit -> Int
  * Sleep (SC_SLEEP): Int -> Agi
  * Thank @Playtester, @Lilith-, partial merge of Hercules:6f26451
* Fixed status check when cast a skill to hidden target
  * Stone Curse shouldn't be casted to hidden enemy when the caster has intravision (bugreport:9266)
  * Added **INF3_HIT_HIDING** for skills that *maybe* have effect to/can hit the hidden target. Previously, every Earth Element skills *always* had it, doesn't matter ground skill or single-target skill
  * **!TODO: Confirm other skills that have ability for this!**
  * **!FIXME: For now, I rely as the previous check did, I put some Earth Element skills (and) with area/ground effect**
* Correcting Devotion behavior (Hercules:e7be725, 41f28c0)
  * Failing to cast Devotion to the 6th player
  * Only player who devotes other that 'shout' Auto Guard when it active also with the walk delay
  * Status icon that inherited from devoter won't be displayed at devoted player
  * Reflect Damage on devoted player won't reflect normal attack, only melee skill attack
  * Added config **devotion_rdamage_skill_only** for backward compability, ignore the behavior above

**IMPORTANT**
  * Please import sql-files/upgrades/upgrade_20140915_log.sql
  * Please import sql-files/upgrades/upgrade_20140915.sql

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2014-09-15 18:02:49 +07:00
aleos89
2d2991a1fd TXT reference removal from emulator.
- Removed any remaining TXT and SQL references from files.
- The 'make sql' command is now replaced by 'make server'.
- Removed account.engine feature as it is no longer needed.
- Moved login and IP ban configs to inter_athena.conf.
- Cleaned up cmake files.
- Miscellaneous clean ups.
2014-09-03 17:44:35 -04:00
Lemongrass3110
b3506fb8f5 Buyingstore persistency
Basic features of @autotrade persistency now also available for buyingstores.
2014-02-06 09:55:59 +01:00
Lemongrass3110
07b9fe761f Autotrade persistency 2014-01-14 22:24:00 +01:00
Cydh Ramdh
487f84ef92 * Changed some item_db's fields on MySQL table to use char types rather than numeric types (those fields are never been used for calculation)
* Added missing config on inter_athena.conf for MySQL database (use_sql_db: yes)
* Please upgrade your MySQL database with upgrade_20131229.sql

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2013-12-29 06:44:48 +07:00
Cahyadi Ramadhan Togihon
9e8e3cfacc * Follow up to: 99098c1
-- 'bonus_script' is now by default will be store on 'bonus_script' table. CAUTION: Please import 'upgrade_20131111.sql' file or execute the query inside to make `bonus_script` table.
-- Updated bonus_script documentation following flag &8 (BONUS_FLAG_REM_ON_LOGOUT) behavior. By default, bonus_script will be stored when player logs out and will be continued when player logs in.

* And small changes.
2013-11-11 19:59:35 +07:00
lighta
1290826be2 Adding banking support 2013-11-05 13:41:42 -05:00
Cahyadi Ramadhan Togihon
f25ca39814 Added elemental_db config on inter_athena.conf 2013-10-03 15:50:49 +07:00
euphyy
dda3f76534 * Updated custom Warper to v1.4, which adds menus for the new Guild Dungeons.
* Cleaned up spelling and extra spaces in documentation. (credits: Akkarin)
* Sending whisper to a player from an admin account (group 99) will also display the message as a self-announce to the player. (Hercules 8568f17)
* Reins of Mount (12622) can now be used when sitting and will ignore delay when it fails. (Hercules 2316772)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17370 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-06-17 19:29:50 +00:00
lemongrass3110
386f0ae36e Cashshop support
Since our neighbors were a little earlier with releasing the cash shop system, here is our version of it.
It supports TXT and SQL databases and even features kafra point support.
Don't forget to run your SQL updates, since this feature needs another log table for your own security. ;)

Follow up to r17240 finalizing pincode feature. Should be stable now - no beta anymore. Fixes bugreport:7505

Fixed guild creation bug bugreport:7502

Implemented the new NPC range tid:81303

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17242 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-10 02:09:34 +00:00
euphyy
643861ba17 > Implemented Channel System to replace @main. See tid:80999 for full details. (Hercules 7ec1e8f, 1e87c09)
* Adds @join and @channel commands to manipulate chat channels. (see doc/atcommands.txt)
* Speak in a #channel by sending a whisper to #channel or binding your global chat to the channel (@channel bindto <#channel_name>).
* Automatically join local map channels (#map) and guild ally channels (#ally), with mapflag 'nomapchannelautojoin' to disable the channel for a map (optional).
* Allow users to create private channels if 'allow_user_channel_creation' is true.
* Set default channels, text colors, and other settings in conf/channels.conf.
> Other changes:
* Improved overall guild processing/lookup by creating a cached guild state.
* Fixed a bug where equipping a garment would override costume garment.
* Removed clif_message and merged it with clif_disp_overhead, since both use the same packet.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17228 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-03 22:52:25 +00:00
euphyy
b237ba8ba1 Introducing MySQL Reconnect.
When MySQL disconnects during runtime, the server tries to reconnect either indefinitely (default) or a specified number of times before shutting down.
(Merged from Hercules a4a549d, 64d34dc)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17120 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-02-04 01:04:57 +00:00
xantara
251362c227 ` Added renaming support for the remaining 'ragnarok' tables in the inter_athena.conf file - bugreport:3317
-- Includes: homunculus, skill_homunculus, mercenary, mercenary_owner, ragsrvinfo
` Fixed a typo regarding the homunculus_db

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15508 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-23 05:13:59 +00:00
gepard1984
bf1c81839f Merged TXT removal branch back to trunk.
* TXT save engine is removed and no longer supported.
* See also tid:53926, tid:57717.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15503 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-20 20:33:32 +00:00
mercurial123
a9db03da2b - Reverted a change in inter_athena.conf, follow up r15251 (accidentally commited custom database configuration)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15252 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-24 21:42:05 +00:00
mercurial123
0f47604f2d - Replaced all occurrences of "eAthena" to "rAthena" string
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15251 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-24 21:30:42 +00:00
jmanfffreak
e51a92686b Follow up to r15164. Edited some conf files to work with new rAsql system.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15165 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-19 18:20:33 +00:00
calciumkid
94483213f9 mob_read_sqlskilldb func [CalciumKid]
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15155 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-18 01:58:49 +00:00
shennetsind
f04eecd9ae Added support for item_db_re table renaming in inter_athena.conf
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15114 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-14 21:16:13 +00:00
ai4rei
e1f53f04ec * Changed party_share_level from 10 to 15 as per kRO maintenance from 2010/04/14.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/renewal@14481 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-11-21 19:14:26 +00:00
Inkfish
4a6f0d122c * Some updates of Quest Log system
- renamed table 'questlog' to 'quest' to avoid misunderstanding
- updated main.sql
- fixed the server can't load more than 16 quests
- removed the MAX_QUEST limit. tests show the client can handle more than 100 quests.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13963 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-26 06:01:10 +00:00
Inkfish
698e7a0fc0 Rewrote Quest Log system.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13959 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-25 20:55:35 +00:00
FlavioJS
442204b547 * Added global sql settings 'sql.*' to inter_athena.conf.
* Made account, ipban and loginlog use the global sql settings when the hostname is empty.
* Commented 'ipban.sql.*' and 'account.sql.*' so they default to the global settings.
* Removed deprecated settings 'case_sensitive' and 'add_to_unlimited_account' from in login_athena.conf.
* Made inter_athena.conf be imported from login_athena.conf instead of being handled separate.
* Changed ipban to get the failed login attempts of an ip from loginlog (respects if loginlog is enabled or not).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13092 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-19 15:48:57 +00:00
ultramage
dcc2cdb5da Split off mapreg code from script.c
* new mapserver files, mapreg.h, mapreg_txt.c, mapreg_sql.c
 * removed MAPREGSQL from project files / makefiles
 * mapreg storage engine is now fully dependent on the server type
 * added config settings mapreg_txt and mapreg_db to inter config
 * added get_str() function to complement add_str()
 * fixed txt mapreg code allowing too long variable names

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13081 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-15 11:14:45 +00:00
ultramage
5ce6f6c51a Added configs for quest table name adjustment (bugreport:1778)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13041 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-04 03:19:00 +00:00
ultramage
4b21dc3d57 Cleaned up several poorly chosen loginlog variable names.
Removed the unused login and txt->sql options in inter_athena.conf.
Renamed config option log_db to log_db_db in inter_athena.conf.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13005 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-27 12:40:29 +00:00
ultramage
106b44c1e7 Merged the /loginmerge branch (topic:192754)
* the login server storage, ipban and logging systems have been abstracted and now provide a common interface; the rest has been merged into a single login server core (no more login/login_sql duplicity)
 * storage systems are now added via compiler options (WITH_SQL / WITH_TXT)
 * multiple storage engines can be compiled in at the same time, and the config option account.engine defines which one will be used.
 * due to MySQL autoincrement limitations, accounts with id '0' will not be supported; account IDs from this point on should start from '1'.
 * login_log() functions now again record IP addresses in dotted format, not as 4-byte integers (undo from r6868).
 * removed config options that defined column names in the login table
 * removed `memo` and `error message` columns from login db/savefile
 * moved `loginlog` table to the logs database
 * added sql files upgrade_svn12975.sql and upgrade_svn12975_log.sql
 * due to changes to the login table layout, I added an !optional! sql file (upgrade_svn12975_view.sql) that will provide a certain degree of backwards compatibility with existing software; read the instructions inside carefully!
 * moved third-party includes/libs to a separate directory
 * updated project files / makefiles

Changed the way GM levels are handled
 * removed conf/gm_account.txt
 * added the gm level column to the txt savefile (after 'email' column)
 * gm level information is now transferred along with account data
 
For open problems see bugreport:1889.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13000 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-26 20:45:57 +00:00
ultramage
c72d39ae5b Reverted my recent changes to trunk.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12493 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-05 12:33:02 +00:00
ultramage
6148165707 Preparations for the login server TXT/SQL merge
- copied the sql login server code to /src/login
- merged the login server header files
- moved the account savefile name config setting to inter_athena.conf and renamed it to match the other settings

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12478 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-04 17:07:31 +00:00
ultramage
0088adcbbf * Added code to clear the Illusionary Shadow effect (followup to r12293)
* Added some trim() calls into mapflag code (followup to r12238)
* Fixed mvp exp reward packet not working right for big values
* Added dbghelpplug plugin entry to the plugins configuration file
* Added conf setting for auction table name (see r12287)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12300 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-05 16:23:02 +00:00
zephyrus
a0b1a582a1 * Removed the inter_athena.conf maildb settings as they are not required anymore.
- MailDB is now an integral part of the MainDB.
- To Server Admins, use mysql tools to move your mail data to the new structure.
- You can get the maildb structure from main.sql.
- Renamed some vars (recomendation of Ultramage :D)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11557 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-23 00:31:37 +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
FlavioJS
909992ed5a * Limited manual detection of data truncation to string/enum/blob columns.
* Renamed conf-tmpl to conf.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11284 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-24 09:13:50 +00:00