59 Commits

Author SHA1 Message Date
Daegaladh
a0bec6a404
Configs for account names, character names, and passwords minimum length (#8448) 2024-06-21 20:36:21 +02:00
Aleos
b867a2171f
Adds char_server config for clearing parties (#7523)
* Adds a character server config to clear empty parties at start up.
* The commented code was hidden in the source and is pretty useless unless you are digging for it.
2023-01-03 16:22:30 -05:00
Balfear
a3703495a0
New Achievements & first aid starter pack (#7414)
Fixes #7406
2022-11-12 00:18:02 +01:00
Lemongrass3110
6ea30897b4
Refactored automatic mail deletion (#4569)
Added a configuration that allows you to delete mails without attachment instantly after the given interval.

Introduced a define for the iteration size of how many mails will be deleted in each circle.
It his highly recommended to not increase it too high or your char server might lag, if you have a lot of mails on your server.

Always delete all mails sent by the server after the given interval in a single statement and ignoring the iteration size.

Added transaction safety for mail deletion. With this a mail and it's attachments will always be safely deleted together.

Fixed a duplication issue, when deletion of the mail would have failed, but the mail was still returned.

Fixed notification of online characters in certain rate circumstances.
2021-01-15 13:38:03 +01:00
Aleos
04cfe17b2b
Converted item database to YAML (#4335)
* Combines item_avail, item_buyingstore, item_delay, item_flag, item_nouse, item_stack, and item_trade databases into one.
* General cleanups and optimizations.
* Includes CSV2YAML conversion tool.
* Includes YAML2SQL conversion tool.
* Adjusts dummy_item from being created by malloc and now creates it by make_shared.
* Item combos are now stored as a STL.
Thanks to @Lemongrass3110, @Atemo, and @cydh!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-10-21 19:02:11 -04:00
Aleos
28b1d1142c
Fixes RODEX retrieve all button (#5238)
* Fixes #5061.
* Resolves the client crashing when attempting to retrieve all attachments from mail.
* Mail should not be marked as read after retrieving the attachments from them.
* Converts packets to new struct format.
Thanks to @admkakaroto and @attackjom!
2020-08-04 13:27:45 -04:00
Aleos
c5a5c54518
Converted remaining C comments (#3927)
* Converted remaining documentation that references .c or .h files.
2019-02-09 15:08:45 -05:00
Lemongrass3110
bff89bd70e
Fixed possible string out of bounds in configurations (#3631)
Added safestrncpy to char's inter configurations
Added safestrncpy to map's inter configurations
Added safestrncpy to message configurations
Adjusted some char configurations
Cleaned up logging configurations

Fixes #3624 

Thanks to @mrjnumber1
2018-11-29 22:56:17 +01:00
Jittapan Pluemsumran
aab5d54945
Added a config for disabling novice/summoner character creation (#3008)
* Added a config for disabling novice/summoner character creation.
* Summoner can no longer be created on pre-renewal by default.
Thanks to @Lemongrass3110 for the help
2018-04-04 16:40:03 +07:00
Atemo
c7d5b61409 New Intro for Renewal - continuation of https://github.com/rathena/rathena/pull/2309 (#2530)
* Update map iz_int in mapcache.dat for the new Intro Map
* Update Academy script for the new Intro based on kRO: [http://www.inven.co.kr/webzine/news/?news=176048&site=ro](http://www.inven.co.kr/webzine/news/?news=176048&site=ro)
* Add monster spawn in the new Intro Map
     
Thanks 805a2b3b1a (diff-8d1dca8dc246e9f4d38c6f1ad0d2c930) for original script.

Thanks @jenkijo for the base, @Lemongrass3110 and @aleos89 for the review, and Divine Pride for some infos !
2017-10-21 00:23:49 +02:00
aleos
9d7d368a33 Adjusted RODEX mail return and delete timers
* Adjusted from 14 -> 15 days.
2017-06-20 18:52:12 -04: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
562d6d1e34 Added automatic clan member removal (#2135) 2017-05-10 23:27:20 +02:00
Lemongrass3110
7cf081c24b Fixed character rename feature (#1943)
This feature was broken for clients after 2011-11-01.
Added 2 new options for allowing it when the character is inside a party or guild.
The server now delivers the corresponding error messages if the player is inside a party or guild.
2017-02-15 13:06:31 +01:00
Lemongrass3110
ce9e623e47 Added a configuration for deletion restriction
Additionally added the checks to char_delete_char_sql so it is triggered on deletion itself and from older packets(chclif_parse_delchar) too.
2016-10-11 08:41:06 +02:00
Cydh Ramdh
2a1aebaf64 Cleaned up char_del_option checks
This is a squash commit for @cydh's pull request #1299.

Cleaned up the `char_del_option` checks.
Added a comment for `char_del_option`, that only work for clients that send delete request by using 0x0068 or 0x01fb.
Added an enum for values.
Added a function to validate and adjust configuration data.
Resolved character deletion not working properly for clients 2015-10-01 and higher (fixes #1189)
Delete date should be sent as remaining time on some client versions.
Adjusted some comment wording.
Added empty/default birthdate deletion.
Made email deletion case insensitive.
2016-07-26 22:35:22 +02:00
aleos89
daa9e018f4 Release of Doram Race!
* Requires client 2015-10-01 and newer.
* All skills are usable from from the base list to all 3 branch types.
-- Some skills still need their official activation chance and durations.
* Adjusted the char-server start point and start item split functions to be more dynamic.
Thanks to Rytech and @NovaRagnarok for their information!
2016-03-19 14:09:30 -04:00
aleos89
b7eb62ffb4 Follow up to a54bb65
* Fixed the config format.
* Adjusted atcommand go to properly place players on renewal mode.
2016-01-08 13:33:24 -05:00
aleos89
a54bb653de Randomized Start Point
* Fixes #805
2016-01-08 12:27:10 -05:00
Atemo
cc8edaaac6 Merged novice academie from Hercules 21564acf13
-> All Credit to Kisuka for this big work.

Added news commands to alter questinfo conditions :
- setquestinfo_level : Add level range criteria for quest info with quest id 'quest_id'.
- setquestinfo_req : Add quest requirement for quest info with quest id 'quest_id'.
   -> Player have / doesn't have the required quest.
- setquestinfo_job : To add additionnal job criteria.
-> Credit to Cydh !
2015-11-16 00:34:00 +01:00
Lemongrass3110
10c2dc10dc Pincode Functionality Extension
Added some options to allow or disallow certain combinations in the pincode as aegis has it.
In AEGIS it is not allowed to use pincodes like 0000 or 1111 where the pincode only contains 1 character. It is also not allowed to use sequences like 1234 or 5678.

In addition to the official check, which only disallows ascending sequences I also added descending ones.
2015-10-07 00:15:11 +02:00
Cydh Ramdh
2ae7862e84 Console Message Log update
* Added `console_msg_log` for char-server and login-server.
* Added `console_log_filepath` to determines log filepath.
  * Default for map_athena.conf is `./log/map-msg_log.log`, removed the hardcoded filepath.
  * Default for char_athena.conf is `./log/char-msg_log.log`.
  * Default for login_athena.conf is `./log/login-msg_log.log`.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-06-30 10:58:07 +07:00
Cydh Ramdh
c92915b6cd DEFAULT_MAP clean up
* Moved hardcoded `DEFAULT_MAP`, `DEFAULT_MAP_X`, and `DEFAULT_MAP_Y` definition to conf/char_athena.conf: `default_map`, `default_map_x`, and `default_map_y` for `DEFAULT_MAP`
* Default map existance check only will be checked once, after map_index finished load by char-server, previously map-server also do a check that maybe cause unnecessary debug message
* `instance_start` value should be init'd with `map_num` not by `map_num + 1`. I was causing send extra 1 empty map to char-server.
* A little clean up in `chmapif_parse_getmapname()` and `doc/packet_interserv.txt`

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-19 15:02:14 +07:00
aleos89
60b0ed9c8b Bug Fixes
* Fixed mouse cursor displaying incorrectly for PvP scenarios. Thanks to Napster. (bugreport:8605)
* Fixed summons getting stuck when master gets too far off screen or changes maps. (bugreport:9152)
* Added a battle_config 'spawn_direction' for keeping a  character's face direction when teleporting/changing maps/logging in. Default is always North (official). (bugreport:8754)
* Cast sensor mobs should always target the caster whenever any skill is used. (bugreport:8555)
* Added a packet version check to char_del_option based on client date. (bugreport:8521)
* Script command query_sql will now return -1 on an empty result or failed result. (bugreport:5937)
2014-08-16 16:15:50 -04:00
lighta
4af314500e Check_db
Add a check_db on char-serv startup to ensure all sql-tables was loaded
correctly and avoid error on runtime.
Fix OnInterIfInitOnce being executed on reloadscript, (now only done at
server startup)
2014-01-09 00:08:00 -05:00
aleos89
7a9aa7fbcf Bugfixes
* Fixed WE_MALE and WE_FEMALE up to You to not consume HP/SP when it's below 10%. (bugreport:3546)
* Fixed WE_CALLPARTNER, WE_CALLPARENT, and WE_CALLBABY to not recall target if they are autotrading. (bugreport:2479)
* Fixed WE_BABY not checking for parents if they are in the same party and in the area. (bugreport:2518)
* Fixed Dragon Breath - Water not requiring a dragon. (bugreport:8237)
* Added a new config 'char_del_option' to set whether email or birthdate should be used for deleting characters. (bugreport:8240)
* Follow up to 9a5a6b9. Fixed a missing define check for 2013 clients when deleting a character. (bugreport:8399)
* Fixed Weapon Refining to use clif_upgrademessage. (bugreport:2135)
* Fixed script command 'prompt' not ending script state when player selects Cancel from menu. (bugreport:7932)
* Fixed nomineeffect display on GvG enabled maps. (bugreport:7754)
Others
* All items, except for Cash items, can no longer be used when storage is open.
* Defined constants for a lot of item and monster IDs used throughout the source.
* Follow up to 0f2dd7f. Corrected a change to the wrong hostname array.
2013-12-30 13:20:33 -05:00
lighta
cb7e4b44cd Misc Upd
Fix pneuma display for pre-re mode
Add char_maintenance mode to check trought gm_allow_group as a minimum
groupid to enter. (thx to SuperHulk)
Fix UB warning on bonus_script check by type
Properly initialize combo_idx check
2013-12-29 01:28:15 -05:00
lighta
3b5e527c7f Vip_followup
Fix bugreport:8301 were groupid wasn't keeping in vip state at new
logon.
Fix groupid wasn't reload without logout when we wasn't vip anymore
Fix decreasing vip_time scenario
Add a timer so vip_member doesn't keep status until they logout.
2013-12-20 02:01:51 -05:00
aleos89
30648216ec Initial release of VIP System.
By default system is disabled (src/config/core.h).
This follows the iRO implementation VIP System. More information can be found on the iRO Wiki.
All settings also have individual configs.
Official VIP scripts will be implemented later.
Big thanks to lighta and Cydh for support and debugging.
2013-11-18 15:21:51 -05:00
euphyy
3f514b442d * Switched some 'close' commands to 'end' in custom scripts. (follow-up r17280)
* Deleted some code in Global_Functions that really shouldn't have been there. (blame: r15262)
* Other documentation changes and cleaning...

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17282 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-22 05:00:27 +00:00
glighta
320388717e -Add mkbu95 refactoring of starting item. (now also offer the possibility of autoequip)
-Fix POISONINGWEAPON triggering on every skill instead only basic attack and GC_VENOMPRESSURE


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17281 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-22 02:21:04 +00:00
glighta
6073dd60b9 -Follow up r17232 fix wrong index assignement in deleting chan. (issue created in r17232 sorry)
rechange unwanted chande for pincode default value.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17233 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-07 09:55:04 +00:00
glighta
29970729cf -Fix chat system not deleting all chan on logout. tid:80999
-Upd @mapinfo to count number of vendors in map
-Upd getrandgroupitem to check if valid itemit returned.
-Cleanup and KR style

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17232 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-07 08:24:15 +00:00
lemongrass3110
dfa3bdbe17 Forgot to merge the changes into the main file again.
And also forgot to restore the default values before commiting. It is getting late here. -_-

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17195 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-03-13 00:21:15 +00:00
lemongrass3110
cd8d185f8e Another char-server related BETA release.
If you happen to find any errors feel free to report them, I tested it for some hours now and it should be working as intended.

"the packets used by this feature are still unknown to us", I guess not. :P

Thanks again Yommy and enjoy it Ind.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17194 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-03-12 23:05:36 +00:00
lemongrass3110
b7d35015e1 Bugfixes for the Pincode system.
Features:
- Pincode Force Mode(users need to use a PIN)
- Character switching without being asked for the PIN
- Pincode change time is now in days(yeah Ind, seconds were for testing purposes)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17192 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-03-12 12:00:09 +00:00
euphyy
e59e1d99d3 * Fixed an error in pincode system (follow-up r17183).
* Revised/added 'npc_isnear' to check if an NPC is nearby when opening chat rooms or using vending. (Hercules bc63ef1)
* Misc. fixes.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17187 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-03-10 05:25:54 +00:00
lemongrass3110
0fc28289b5 Beta Release of PIN Code system.
Thanks to Yommy for his help with the basic packet information and LightFighter for the PIN decrypt function.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17183 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-03-08 18:43:15 +00:00
brianluau
f597b3f31a - Follow up to r17111, changed max_connect_user to the new default value.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17112 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-01-30 19:36:34 +00:00
momacabu
3ed8a17eaf > Solved bugreport:7228, where you couldn't set the server to accept no users at all.
* 0 (zero) is used now when you wan't 0 users online;
* -1 is used now for unlimited users.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17111 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-01-30 13:27:27 +00:00
momacabu
b4a0578039 Minor improvement in char_per_account setting, which could be greater than MAX_CHARS.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16937 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-11-20 15:58:29 +00:00
brianluau
a0ef961db9 - Removed leftover TXT configs, follow-up to r15503.
- Edited more ***_config_read() functions to show a warning if "Unknown setting" is found.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16009 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-29 20:32:21 +00:00
brianluau
3df0386889 - Clarified the comment about spaces in 'server_name' config. (bugreport:2656)
- Grouped all the log file/table settings together, follow up to r15253 (ea:15042).
- Added "DROP TABLE" statements to the mob_skill_db SQL files. (bugreport:5284)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15629 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-24 22:58:01 +00:00
gepard1984
22f0714c07 - Added libconfig (configuration file library: http://www.hyperrealm.com/libconfig/):
- Updated VS9/10 project files.
   - Updated `configure` & `Makefile`s.
 - New GM, Commands & Permissions system:
   - '''This is a backwards compatibility breaking update''', please read tid:58877
   - Replaced GM levels with Player Groups.
   - Commands permissions & other privileges now depend on group, not GM level.
 - `@help` command improvements: requires "commandname" param and shows more detailed info about commands.
 - Modified GM whisper system to deliver messages basing on permissions, not GM level.
 - Remote trade request is now possible only if player is allowed to use `@trade` command as well.
 - Added a proper permission to use `/changemaptype` command.
 - `clif_displaymessage` is now capable of displaying multiline messages.
 - All `ACMD_FUNC`s are static now, and the only way to invoke them is with `is_atcommand()`; all client commands (starting with `/`) are now translated into corresponding atcommands (with exception of `/kick` used on monster, as there is no atcommand to kill single monster).
 - Removed nonsense "bot check" triggering when player blocked (`/ex`) Server.
 - Merged `@monster`, `@monsterbig` and `@monstersmall`.
 - Improved flow of atcommand execution to avoid revealing info about online players or existing commands to non-privileged players.
 - Merged `atcommand` and `charcommand` script functions (`charcommand` is aliased to `atcommand`).
   - Fixed `atcommand` script function reading unknown memory area (possible access violation).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15572 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-13 01:19:04 +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
brianluau
90c355108c - Merged /branches/renewal/conf (partial)
- Merged /branches/renewal/db (only mob_db.txt and mob_skill_db.txt)
- Merged /branches/renewal/npc (full)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15060 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-11 19:24:13 +00:00
L0ne_W0lf
961cb1ba1b * Fixed skill_calc_heal applying heal bonuses only to AL_HEAL.
* Still working on updating the status window to display properly.
* Refine bonuses on armor now apply properly. (+1 additional bonus for every 4 refines.) Refining in general now goes up to 20.
* Criticals will now no longer ignore defense, but will still always hit.
* Converted m/def2 to a short, for testing status window update, will eventually need to surpass 32k. Good like this for now while we work on it.
* Cleaned up some minor things relating tot he arch bishop skill update.
* Applied some of the 30/08/2011 kRO updates to arch bishop skills.
* Added more SI_ Constants from newer clients to status.h.

* Added constants to the database for future updates.
* Updated Runestones and creation items.
* Added Runestone delays to item_delay.
* Added Runestones receipies to produce_db.
* Added dummy rates to refine_db.
* Added Rune Knight skills to skill_cast_db
* Updated Rune Knight skills, and Arch Bishop skills.
* Updated SP requirements in skill_require_db.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/renewal@14964 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-09-30 19:54:58 +00:00
Kisuka
1b38a1964b * Merged changes from trunk [14688:14739/trunk].
git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/renewal@14740 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-03-09 12:50:24 +00:00
ai4rei
da989bb356 * Added support for new delayed character deletion.
- Asks for birth date associated with the account and has a waiting time of 24 hours by default (setting).
- For SQL apply upgrade_svn14700.sql to upgrade table `char`; for TXT no action is necessary, as it upgrades itself.
- This completes support for clients 2010-08-03aRagexeRE and later.
* Updated login sql engine version, missed during `birthdate` addition (follow up to r14672).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14700 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-02-08 02:36:43 +00:00
ai4rei
2b6f273e92 * Merged changes from trunk [14496:14630/trunk].
git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/renewal@14632 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-12-26 22:36:41 +00:00