ソースを参照

Due to common difficulties caused by ill organized configurations, and mal descriptions, I have taken initiative to rework the entire structure of the configurations.
New Property files:
- Character.properties
- General.properties
- NPC.properties

Please Note:
This is just an initial commit to give awareness of this big change and give you all time to configure it all before I commit the final part (which is complete, just waiting for you). There is a 1-2 week period where you will be able to configure these files before I commit part 2, which will finalize this commit by:
1. Modifying the Config.java (completely reworked and organized)
2. Delete altsettings.properties, options.properties, and other.properties.
3. and a few more necessary changes.

Ahmed 17 年 前
コミット
8db043b18f

+ 454 - 0
L2_GameServer_T1/java/config/Character.properties

@@ -0,0 +1,454 @@
+#=========================================================================================================================
+#                                           Alternative Character Settings
+#=========================================================================================================================
+# Purpose:
+#	This properties file is solely for the purpose of Character modifications that directly influence them.
+# 
+# Note: 
+#	The defaults are set to retail, if you modify any of these settings your server will NOT be "retail-like".
+# 
+# Warning: 
+#	Please take extreme caution when changing anything. Also please understand what you change before you do so on
+# 	a live server.
+#=========================================================================================================================
+
+#============================================================#
+#                        Statistics                          #
+#============================================================#
+
+# This option if enabled will force a character to de-level if 
+# the characters' Experience is below their level after losing
+# experience on death. If this is set to false, the character 
+# will not de-level even if their Experience is below their 
+# level after death.
+# Retail: true
+Delevel = True
+
+# This is a weight limit multiplier, set the default to 1 if you 
+# want this option disabled.
+# Example:
+#		Setting this to 10 will increase a characters weight 
+#		capacity 10 times the normal. Say normal is 1000, now 
+#		with this option enabled it is 10000.
+AltWeightLimit = 1
+
+# If killed by a mob, this is the chance that you will get the
+# death penalty.
+# This value is in percent, to disable this, set it to 0.
+# Example:
+#		Setting it to 100 will make it a 100% chance you get the penalty.
+# Retail: 20
+DeathPenaltyChance = 20
+
+# Amount of HP, MP, and CP, which is restored on character revival.
+# These values are in percent of max, a value of 100 is 100%.
+# Example:
+#		If you set the CP to 100, it will restore 100% of the players
+#		CP, likewise for the HP and MP.
+# Retail: 0, 70, 70
+RespawnRestoreCP = 0
+RespawnRestoreHP = 70
+RespawnRestoreMP = 70
+
+# Percent regeneration from the normal regeneration speed.
+# Example:
+#		10 for HP will regenerate 90% slower then normal.
+# Retail: 100, 100, 100
+HpRegenMultiplier = 100
+MpRegenMultiplier = 100
+CpRegenMultiplier = 100
+
+# Use tiredness (instead of combat points)
+# Retail: false
+AltGameTiredness = False
+
+#============================================================#
+#                      Skills & Effects                      #
+#============================================================#
+
+# This option is to enable or disable automatic skill learning.
+# To enable this option set it to true, and to disable set it to false.
+# Retail: false
+AutoLearnSkills = False
+
+# This option is to enable or disable automatic herb use (which means auto-pickup herbs).
+# To enable this option set it to true, and to disable set it to false.
+# Retail: false
+AutoLootHerbs = False
+
+# Maximum number of buffs (default = 20 + 4 with divine inspiration skill)
+# Retail: 20
+maxbuffamount = 20
+
+# This option allows a player to automatically learn Divine Inspiration.
+# this is not included in AutoLearnSkills above.
+# Retail: false
+AutoLearnDivineInspiration = False
+
+# This is to allow a character to be canceled during bow use, skill use, or both.
+# The correct settings to set below are: "bow" or "cast" or "all"
+# Retail: cast
+AltGameCancelByHit = cast
+
+# If True, when effects of the same stack group are used, lesser
+# effects will be canceled if stronger effects are used. New effects
+# that are added will be canceled if they are of lesser priority to the old one.
+# If False, they will not be canceled, and it will switch to them after the
+# stronger one runs out, if the lesser one is still in effect.
+# Retail: true
+CancelLesserEffect = True
+
+# This option if enabled will allow magic to fail, and if disabled
+# magic damage will always succeed with a 100% chance.
+# Retail: true
+MagicFailures = True
+
+# Player Protection from aggressive mobs after getting up from fake death.
+# This is in seconds, set this to 0 to disablet his option.
+# Retail: 0
+PlayerFakeDeathUpProtection = 0
+
+# This option is to enable or disable the storage of buffs/debuffs 
+# among other effects.
+# To enable, set to true, and to disable, set to false.
+# Retail: true
+StoreSkillCooltime=True
+
+# These are alternative rules for shields -
+# If enabled and they block; 
+# the damage is powerAtk-shieldDef,
+# otherwise the if false and they block; 
+# the damage is powerAttak / (shieldDef + powerDef)
+# Retail: false
+AltShieldBlocks = False
+
+# This is the rate value for perfect shield block rate.
+# Retail: 5
+AltPerfectShieldBlockRate = 5
+
+# Allow use of Event Managers for changing occupation without
+# any quests needing completion.
+# Retail: false
+AllowClassMasters = False
+
+# Life crystal needed to learn clan skills
+# Retail: true
+LifeCrystalNeeded = True
+
+# Spell Book needed to learn skills
+# Retail: true
+SpBookNeeded = True
+
+# Book needed to enchant skills
+# Retail: true
+EnchantSkillSpBookNeeded = True
+
+# Alternative skill learn rules:
+# - all classes can learn all skills
+# - skills of another class costs x2 SP
+# - skills of another race costs x2 SP
+# - skills of fighters/mages costs x3 SP
+# Retail: false
+AltGameSkillLearn = False
+
+# Allow player to sub-class addition without checking for unique quest items.
+# Retail: false
+AltSubClassWithoutQuests = False
+
+#============================================================#
+#                          Limits                            #
+#============================================================#
+
+# Maximum number of allowed slots for Private Stores (sell/buy)
+# Other means all the other races besides Dwarf (they get an extra one).
+# Retail: 5, 4
+MaxPvtStoreSlotsDwarf = 5
+MaxPvtStoreSlotsOther = 4
+
+# This will control the inventory space limit (NOT WEIGHT LIMIT).
+# Retail: 80, 100, 250
+MaximumSlotsForNoDwarf = 80
+MaximumSlotsForDwarf = 100
+MaximumSlotsForGMPlayer = 250
+
+# This will control a characters warehouse capacity. 
+# Note: 
+#		This must be LESS then 300 or the client will crash.
+# Retail: 120, 100, 200, 20
+MaximumWarehouseSlotsForDwarf = 120
+MaximumWarehouseSlotsForNoDwarf = 100
+MaximumWarehouseSlotsForClan = 200
+MaximumFreightSlots = 20
+
+# Alternate Gaming
+# Usage: True  - Restriction enabled
+#        False - Restriction disabled
+# Castle Shield can be equipped by all clan members if they own a castle.
+# Retail: true
+CastleShieldRestriction = True
+
+# ClanHall Shield can be equipped by all clan members if they own a clan hall.
+# Retail: true
+ClanHallShieldRestriction = True
+
+# Apella armors can be equipped only by clan members if their class is Baron or higher.
+# Retail: true
+ApellaArmorsRestriction = True
+
+# Clan Oath Armors can be equipped only by clan members.
+# Retail: true
+OathArmorsRestriction = True
+
+# Castle Crown can be equipped only by castle lord.
+# Retail: true
+CastleLordsCrownRestriction = True
+
+# Castle Circlet can be equipped only by clan members if they own a castle.
+# Retail: true
+CastleCircletsRestriction = True
+
+#============================================================#
+#                        Enchanting                          #
+#============================================================#
+
+# This controls the chance an item has to break if it is enchanted.
+# This chance is in %, so if you set this to 100%, enchants will always succeed.
+# The chances are in the following order: Weapon, Armor, and Jewelry.
+# Retail: 68, 52, 54
+EnchantChanceWeapon = 68
+EnchantChanceArmor = 52
+EnchantChanceJewelry = 54
+
+# This is the enchant limit, if set to 0, there will be no limit.
+# If this is set to 10, the maximum enchant will be 10.
+# The limits are in the following order: Weapon, Armor, and Jewelry.
+# Retail: 0, 0, 0
+EnchantMaxWeapon = 0
+EnchantMaxArmor = 0
+EnchantMaxJewelry = 0
+
+# This is the maximum safe enchant, meaning the chance set above will not 
+# have an effect on enchants until the enchant # is above the safe enchant
+# configured below.
+# Example:
+#		If EnchantSafeMax is set to for 8 the item will be safely enchanted to 8
+# 		regardless of the enchant chance set above.
+# 		EnchantSafeMaxFull is for full body armor (upper and lower)
+# Note:
+#		This should always be greater than 0
+# Retail: 3, 4
+EnchantSafeMax = 3
+EnchantSafeMaxFull = 4
+
+#============================================================#
+#                          Karma                             #
+#============================================================#
+
+# Karma player can be killed in Peace zone.
+# Retail: false
+AltKarmaPlayerCanBeKilledInPeaceZone = False
+
+# Karma player can shop. (Double check please)
+# Retail: true
+AltKarmaPlayerCanShop = True
+
+# Karma player can use escape and recall skills.
+# Retail: true
+AltKarmaPlayerCanTeleport = True
+
+# Karma player can use GateKeeper.
+# Retail: false
+AltKarmaPlayerCanUseGK = False
+
+# Karma player can trade.
+# Retail: true
+AltKarmaPlayerCanTrade = True
+
+# Karma player can use warehouse.
+# Retail: true
+AltKarmaPlayerCanUseWareHouse = True
+
+#============================================================#
+#                          Craft                             #
+#============================================================#
+
+# Option to enable or disable crafting.
+# Enable -> true, Disable -> false
+# Retail: true
+CraftingEnabled = True
+
+#Limits for recipes
+# Retail: 50, 50
+DwarfRecipeLimit = 50
+CommonRecipeLimit = 50
+
+# Alternative crafting rules:
+# - crafting takes time
+# - players get EXP/SP for crafting
+# Retail: false
+AltGameCreation = False
+
+# Crafting Time multiplier 
+# Bigger number ===> slower crafting but more XP/SP
+# Retail: 1 
+AltGameCreationSpeed = 1
+
+# Additional XP/SP rate multiplier (for increased XP/SP)
+# Retail: 1, 1
+AltGameCreationRateXp = 1
+AltGameCreationRateSp = 1
+
+# If set to False, blacksmiths don't take recipes from players inventory when crafting.
+# Retail: true
+AltBlacksmithUseRecipes = True
+
+#============================================================#
+#                           Clan                             #
+#============================================================#
+
+# Number of days you have to wait before :
+#   - joining another clan
+#   - creating a new clan
+# Retail: 1, 1
+DaysBeforeJoinAClan = 1
+DaysBeforeCreateAClan = 1
+
+# Number of days it takes to dissolve a clan.
+# Retail: 7
+DaysToPassToDissolveAClan = 7
+
+# Number of days before joining a new alliance when clan voluntarily leave an alliance.
+# Retail: 1
+DaysBeforeJoinAllyWhenLeaved = 1
+
+# Number of days before joining a new alliance when clan was dismissed from an alliance.
+# Retail: 1
+DaysBeforeJoinAllyWhenDismissed = 1
+
+# Number of days before accepting a new clan for alliance when clan was dismissed from an alliance.
+# Retail: 1
+DaysBeforeAcceptNewClanWhenDismissed = 1
+
+# Number of days before creating a new alliance when dissolved an alliance.
+# Retail: 10
+DaysBeforeCreateNewAllyWhenDissolved = 10
+
+# Maximum number of clans in alliance.
+# Retail: 3
+AltMaxNumOfClansInAlly = 3
+
+# Number of members needed to request a clan war.
+# Retail: 15
+AltClanMembersForWar = 15
+
+# All new characters of the same account are newbies, not only first one.
+# Retail: true
+AltNewCharAlwaysIsNewbie = True
+
+# Clan members can withdraw from the Clan Warehouse.
+# Retail: false
+AltMembersCanWithdrawFromClanWH = False
+
+#Remove Castle circlets after a clan lose their castle or a player leaves a clan.
+# Retail: true
+RemoveCastleCirclets = True
+
+#============================================================#
+#                          Party                             #
+#============================================================#
+
+# This option controls the party range for the L2Attackable.
+# Retail: 1600
+AltPartyRange = 1600
+
+# This option controls the party range for an L2Party.
+# Retail: 1400
+AltPartyRange2 = 1400
+
+#============================================================#
+#                          Random                            #
+#============================================================#
+
+# This is the amount of adena that a new character starts their
+# character with.
+# Retail: 0
+StartingAdena = 0
+
+# This option when set to true will enable automatically picking up
+# items. If set false it will force the player to pickup dropped 
+# items. (This excludes herbs mentioned above)
+# Retail: false
+AutoLoot = False
+
+# This is the time in seconds that it will take for the player command:
+# //unstuck will take.
+# Retail: 300
+UnstuckInterval = 300
+
+# After a player teleports, this is the time the player is protected.
+# This time is in seconds, leave 0 if you want this feature disabled.
+# Retail: 0
+PlayerSpawnProtection = 0
+
+# This will allow random re-spawning in towns if enabled,
+# based on a maximum random offset from the base re-spawn coordinates.
+# Retail: true, 20
+RespawnRandomInTown = True
+RespawnRandomMaxOffset = 20
+
+# This option is to enable or disable the use of in game petitions.
+# The MaxPetitionsPerPlayer is the amount of petitions a player can make.
+# The MaximumPendingPetitions is the total amount of petitions in the server.
+# Note: 
+#		Logically, MaximumPendingPetitions must be higher then MaxPetitionsPerPlayer
+# Retail: true, 5, 25
+PetitioningAllowed = True
+MaxPetitionsPerPlayer = 5
+MaxPetitionsPending = 25
+
+# This option is for Freight modes. If true, freights can be withdrawn from any place.
+# Also, to change Freight price (in Adena) for each item slot in freight.
+# Note:
+#		AltGameFreightPrice WILL NOT change the value shown to the player, but the
+# 		player will actually get charged for the value set in here.
+# Retail: true, 1000
+AltGameFreights = True
+AltGameFreightPrice = 1000
+
+# Free teleporting around the world.
+# Retail: false
+AltFreeTeleporting = False
+
+# Allow character to recommend same person more then once per day
+# Retail: false
+AltRecommend = False
+
+# Allow character deletion after days set below.
+# To disallow character deletion, set this equal to 0.
+# Retail: 7
+DeleteCharAfterDays = 7
+
+# Alternative Xp/Sp rewards, if not 0, then calculated as 2^((mob.level-player.level) / coef),
+# coef are the 2 numbers set below.
+# A few examples for "AltGameExponentXp = 5." and "AltGameExponentSp = 3."
+# diff = 0 (player and mob has the same level), XP bonus rate = 1, SP bonus rate = 1
+# diff = 3 (mob is 3 levels above), XP bonus rate = 1.52, SP bonus rate = 2
+# diff = 5 (mob is 5 levels above), XP bonus rate = 2, SP bonus rate = 3.17
+# diff = -8 (mob is 8 levels below), XP bonus rate = 0.4, SP bonus rate = 0.16
+# Retail: 0, 0
+AltGameExponentXp = 0
+AltGameExponentSp = 0
+
+# PARTY XP DISTRIBUTION
+# Set the first option here to one of the (auto, percentage, level, none).
+# With "auto method" member is cut from Exp/SP distribution when his share is lower
+# then party bonus acquired for him (30% for 2 member party)
+# In that case he will not receive any Exp/SP from party and is not counted for party bonus
+# The second option takes effect when "percentage" method is choosen. Don't use high values for this!
+# The third option takes effect when "level" method is choosen. Don't use low values for this!
+# If you don't want to have a cutoff point for party members' XP distribution,
+# then just set the first option to "none". Defaults are: percentage , 3.0 , 30 ; respectively.
+# Retail: auto, 3.0, 30
+PartyXpCutoffMethod = auto
+PartyXpCutoffPercent = 3.0
+PartyXpCutoffLevel = 30

+ 463 - 0
L2_GameServer_T1/java/config/General.properties

@@ -0,0 +1,463 @@
+#=========================================================================================================================
+#                                             General Server Settings
+#=========================================================================================================================
+# Purpose:
+#	This properties file is for the general settings of the server.
+# 
+# Note: 
+#	The defaults are set to retail, if you modify any of these settings your server will NOT be "retail-like".
+# 
+# Warning: 
+#	Please take extreme caution when changing anything. Also please understand what you change before you do so on
+# 	a live server.
+#=========================================================================================================================
+
+#============================================================#
+#                       Administrator                        #
+#============================================================#
+
+# If this option is set to true every newly created character will have access level 200.
+# This means that every character created will have Administrator Privileges
+# Retail: false
+EverybodyHasAdminRights = False
+
+# Setting for serverList
+# Displays [] in front of server name on character selection
+# Retail: false
+ServerListBrackets = False
+# Displays a clock next to the server name on character selection.
+# Retail: false
+ServerListClock = False
+# If true, only accounts with GM access will enter, 
+# regardless of Character access level. 
+# Retail: false
+ServerGMOnly = False
+
+# Alternative privileges for GMs based on command privileges (command-privileges.properties)
+# Retail: false, true, 100
+AltPrivilegesAdmin = False
+AltPrivilegesSecureCheck = True
+AltPrivilegesDefaultLevel = 100
+
+# This option allows different name colors for GM and Admin characters.
+# Retail: true
+GMNameColorEnabled = True
+# Color to use for Admin names, if enabled. (access level 100+).
+# Color to use for GM names, if enabled. (access level 75+).
+# Example:
+#		00FF00 (green) FFFF00 (yellow)
+# Note:
+#		The colors are in BGR, NOT RGB, Reverse RGB to get BGR
+# Retail: 00FF00, FFFF00
+AdminNameColor = 00FF00
+GMNameColor = FFFF00
+
+# Enable GMs to have the glowing aura of a Hero character on
+# character login. 
+# GM can do "///hero" on themselves and get this aura voluntarily.
+# Advised to keep this off due to graphic lag.
+# Retail: false
+GMHeroAura = False
+
+# Auto set invulnerable status to a GM on login.
+# Retail: false
+GMStartupInvulnerable = False
+
+# Auto set invisible status to a GM on login.
+# Retail: false
+GMStartupInvisible = False
+
+# Auto block private messages to a GM on login.
+# Retail: false
+GMStartupSilence = False
+
+# Auto list GMs in GM list (/gmlist) on login.
+# Retail: false
+GMStartupAutoList = True
+
+# The way //admin panel looks can be "modern" or "classic" 
+# (default is modern while classic provides more compatibility)
+# Retail: modern
+GMAdminMenuStyle = modern
+
+#============================================================#
+#                      Server Security                       #
+#============================================================#
+
+# Bypass exploit protection, to ENABLE protection, set to true.
+# To disable protection set this to false.
+# Retail: true
+BypassValidation = True
+
+# Enforce gameguard for clients
+#   GameGuardEnforce - enforces gameguard query on character login
+#   GameGuardProhibitAction - don't allow player to perform trade, talk with npc
+#     or move until gameguard reply is received.
+# Retail: true, true
+GameGuardEnforce = True
+GameGuardProhibitAction = True
+
+# To enable chat logging set option to true, otherwise set to false.
+# To enable item logging set option to true, otherwise set to false.
+# To enable GM Action logging set option to true, otherwise set to false.
+# Note:
+#		This will increase writing to your hard drive and rapidly
+#		increase hard drive space used with large player populations
+#		if enabled.
+# Retail: true, false, false
+LogChat = True
+LogItems = False
+GMAudit = False
+
+#============================================================#
+#                     Dev Configuration                      #
+#============================================================#
+# Do not touch these if you do not know what you are doing.
+# These settings are for debugging servers ONLY, not meant for LIVE
+# servers.
+
+Debug = False
+Assert = False
+Developer = False
+AcceptGeoeditorConn = False
+
+# if true the server will be a test server (listed by testserver clients only)
+TestServer = False
+# Don't load quests
+AltDevNoQuests = False
+# Don't load spawntable
+AltDevNoSpawns = False
+
+#============================================================#
+#                   Thread Configuration                     #
+#============================================================#
+# Extreme caution should be here, set to defaults if you do
+# not know what you are doing.
+# These could possibly hurt your servers performance, or improve 
+# it drastically.
+
+ThreadPoolSizeEffects = 10
+ThreadPoolSizeGeneral = 13
+
+#Default 2
+UrgentPacketThreadCoreSize = 2
+#Default 4
+GeneralPacketThreadCoreSize = 4
+#Default 4
+GeneralThreadCoreSize = 4
+
+AiMaxThread = 6
+
+#Packet LifeTime in milliseconds, 0 - disabled feature
+PacketLifeTime = 0
+
+#============================================================#
+#                         Optimize                           #
+#============================================================#
+
+# === Flood Protector ===
+# set the initial size of the flood protector (should equal ~player count)
+FloodProtectorInitialSize = 50
+# === Items on ground management ===
+# Allow players to drop items on the ground
+AllowDiscardItem = True
+# delete from world dropped reward items after n seconds. 0 - disabled
+AutoDestroyDroppedItemAfter = 0
+# Time in secs after which dropped herb will be auto-destroyed (default: 15 seconds)
+AutoDestroyHerbTime = 15
+# List of items that will not be destroyed (separated by ",")
+# NOTE: Make sure the lists do NOT CONTAIN trailing spaces or spaces between the numbers!
+# items on this list will be protected regardless below options
+ListOfProtectedItems = 57,5575,6673
+
+# This is the interval (in minutes), that the gameserver will update a players information such as location.
+# The higher you set this number, there will be less character information saving so you will have less access to MySQL and your Hard Drive.
+# The lower you set this number, there will be more frequent character information saving so you will have more access to your MySQL and your Hard Drive.
+# A value of 0 disables periodic saving.
+# Independent of this setting the character is always saved after leaving the world.
+CharacterDataStoreInterval = 15
+
+# This enables the server to only update items when saving the character
+# Enabling this greatly reduces DB usage and improves performance.
+# WARNING: This option causes item loss during crashes
+LazyItemsUpdate = false
+
+# This forces(even if using lazy item updates) the items owned by the character to be updated into DB when saving its character
+# Increases DB usage
+UpdateItemsOnCharStore = false
+
+# also delete from world misc. items dropped by players (all except equip-able items)
+# NOTE: work only if AutoDestroyDroppedItemAfter >0
+DestroyPlayerDroppedItem = false
+# Destroy also equip-able items (armor, weapon, jewelry)
+# NOTE: Work only if DestroyPlayerDroppedItem = true
+DestroyEquipableItem = false
+
+# save into DB dropped items for restoring after reboot
+SaveDroppedItem = false
+# Empty table after items are loaded into memory - safety setting
+# if server crash before saving items, on next start old items will be restored 
+# and players may already picked up some of them - so this will prevent duplicates
+EmptyDroppedItemTableAfterLoad = false
+# Time interval in minutes to save in DB items on ground, 0 to disable
+# NOTE: If SaveDroppedItemInterval is disabled items will be saved into DB only at server shutdown
+SaveDroppedItemInterval = 60
+# delete all saved items form DB On next start
+# NOTE: Work only if SaveDroppedItem = false
+ClearDroppedItemTable = false
+--------------------------------------------
+# delete invalid quest from player
+AutoDeleteInvalidQuestData = False
+# setting false can improve server performance on high rate servers
+PreciseDropCalculation = True
+# allows creating multiple nonstackable items at one time 
+MultipleItemDrop = True
+
+# Forces full item inventory packet to be sent for any item change
+# Note: This can increase network traffic 
+ForceInventoryUpdate = False
+
+# Set the html cache's lazy loading True or False
+# (Load html's into cache only on first time requested)
+LazyCache = True
+
+# Minimum and maximum variable in seconds for npc animation delay.
+# You must keep MinNPCAnimation <= MaxNPCAnimation.
+# "0" is default value.
+MinNPCAnimation = 10
+MaxNPCAnimation = 20
+MinMonsterAnimation = 5
+MaxMonsterAnimation = 20
+
+# This is setting of experimental Client <--> Server Player coordinates synchronization,
+#   0 - no synchronization at all
+#   1 - partial synchronization Client --> Server only * using this option it is difficult for players to bypass obstacles
+#   2 - partial synchronization Server --> Client only
+#   3 - full synchronization Client <--> Server
+#  -1 - Old system: will synchronize Z only
+CoordSynchronize = -1
+
+#============================================================#
+#                         Geodata                            #
+#============================================================#
+
+#Grid options: Grids can now turn themselves on and off.  This also affects
+#the loading and processing of all AI tasks and (in the future) geodata 
+#within this grid.
+#Turn on for a grid with a person in it is immediate, but it then turns on 
+#the 8 neighboring grids based on the specified number of seconds.
+#Turn off for self and neighbors occurs after the specified number of 
+#seconds have passed during which a grid has had no players in or in 
+#any of its neighbors.
+#The always on option allows to ignore all this and let all grids be active
+#at all times
+GridsAlwaysOn = False
+GridNeighborTurnOnTime = 30
+GridNeighborTurnOffTime = 300
+
+# GeoData options: (no recommendations, for each his own) 
+# 0 = GeoData and PathFinding OFF (default)
+# 1 = GeoData is used to check Line Of Sight (LOS) targeting and 
+#     L2Playable movement. You need to download files for data/geodata folder.
+#     Monsters can pass walls but not aggro (no line of sight) through them.
+# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode 
+#     files) and all character moves go through geodata checks (if a mob 
+#     passes a wall, pathfinding didn't find a route but we allow attack).
+#     Recommended server memory minimum 2 GB, rather 3 GB.
+GeoData = 0
+
+#[True]Loads GeoData buffer's content into physical memory.
+#[False] Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
+ForceGeodata = True
+
+#============================================================#
+#                         Features                           #
+#============================================================#
+
+# Zone Setting
+#   0 = Peace All the Time
+#   1 = PVP During Siege for siege participants
+#   2 = PVP All the Time
+ZoneTown = 0
+
+# Activate the position recorder
+# valid 3D points will be recorded and written to data/universe.txt on shutdown
+ActivatePositionRecorder = False
+
+# Chat configuration
+# Global Chat - ON (=region), OFF, GM, GLOBAL
+GlobalChat = ON
+# Trade Chat - ON (=global, might be good for small servers), OFF, GM, LIMITED (=region)
+TradeChat = LIMITED
+
+# If you are experiencing problems with Warehouse or Freight transactions,
+# feel free to disable them here. (They are both enabled by default).
+AllowWarehouse   = True
+# Enable Warehouse Cache - if WH is not used will server clear memory used by this WH
+WarehouseCache   = False
+# How long Warehouse should be store in Memory
+WarehouseCacheTime = 15
+AllowFreight     = True
+# If True player can try on weapon and armor in shop
+# Each Item tried cost WearPrice adena
+AllowWear        = True
+WearDelay        = 5
+WearPrice        = 10
+# =============== Test features ===============
+AllowLottery     = False
+AllowRace        = False
+AllowWater       = True
+# Enable pet for rent(wyvern&strider) from pet managers
+AllowRentPet     = False
+# Allow fishing disabled until all code uploaded
+AllowFishing     = True
+#Allow boat
+AllowBoat        = True
+#Allow cursed weapons
+AllowCursedWeapons = True
+#Allow Manor
+AllowManor		 = True
+#Allow WalkerNPC
+AllowNpcWalkers = True
+
+
+# Show "data/html/servnews.htm" when a character enters world.
+ShowServerNews = False
+
+# Type of the Community board
+#  - Full = new Community Board ( /!\ Experimental)
+#  - Old = old Community Board
+#  - off =  no community Board
+CommunityType = old
+BBSShowPlayerList = False
+BBSDefault = _bbshome
+# show level of character to others in Community Board
+ShowLevelOnCommunityBoard = False
+ShowStatusOnCommunityBoard = True
+NamePageSizeOnCommunityBoard = 50
+NamePerRowOnCommunityBoard = 5
+
+#============================================================#
+#                         Olympiad                           #
+#============================================================#
+
+# Olympiad Start Time in Military hours Default 6pm (18) 
+AltOlyStartTime = 18
+
+# Olympiad Start Time for Min's, Default 00 so at the start of the hour.
+AltOlyMin = 00
+
+# Olympiad Competition Period, Default 6 hours.
+# (If set different, should be increment by 10mins)
+AltOlyCPeriod = 21600000
+
+# Olympiad Battle Period, Default 6 minutes. (If set different, should be < AltOlyBWait)
+AltOlyBattle = 360000
+
+# Olympiad Battle Wait, Default 10 Minutes
+AltOlyBWait = 600000
+
+# Olympiad Initial Wait Period, Default 5 minutes
+AltOlyIWait = 300000
+
+# Olympiad Weekly Period, Default 1 week
+AltOlyWPeriod = 604800000
+
+# Olympiad Validation Period, Default 24 Hours.
+AltOlyVPeriod = 86400000
+
+#============================================================#
+#                           Manor                            #
+#============================================================#
+
+# Manor Refresh Time in Military hours Default 8pm (20) 
+AltManorRefreshTime = 20
+
+# Manor Refresh Time for Min's, Default 00 so at the start of the hour.
+AltManorRefreshMin = 00
+
+# Manor Next Period Approve Time in Military hours Default 6am 
+AltManorApproveTime = 6
+
+# Manor Next Period Approve Time for Min's, Default 00 so at the start of the hour.
+AltManorApproveMin = 00
+
+# Manor Maintenance time, Default 6 minutes. 
+AltManorMaintenancePeriod = 360000
+
+# Manor Save Type. 1-Save data into db after every action; Default false
+AltManorSaveAllActions = True
+
+# Manor Save Period (used only if AltManorSaveAllActions=false) Default very 2 hours
+AltManorSavePeriodRate = 2
+
+#============================================================#
+#                          Lottery                           #
+#============================================================#
+
+# Initial Lottery prize
+AltLotteryPrize = 50000
+
+# Lottery Ticket Price
+AltLotteryTicketPrice = 2000
+
+# What part of jackpot amount should receive characters who pick 5 wining numbers
+AltLottery5NumberRate = 0.6
+
+# What part of jackpot amount should receive characters who pick 4 wining numbers
+AltLottery4NumberRate = 0.2
+
+# What part of jackpot amount should receive characters who pick 3 wining numbers
+AltLottery3NumberRate = 0.2
+
+# How much adena receive characters who pick two or less of the winning number
+AltLottery2and1NumberPrize = 200
+
+#============================================================#
+#                      Dimension Rift                        #
+#============================================================#
+
+# Minimal party size to enter rift. Min = 2, Max = 9.
+# If in rift party will become smaller all members will be teleported back
+RiftMinPartySize = 5
+
+# Number of maximum jumps between rooms allowed, after this time party will be teleported back
+MaxRiftJumps = 4
+
+# Time in ms the party has to wait until the mobs spawn when entering a room. C4 retail: 10s
+RiftSpawnDelay = 10000
+
+# Time between automatic jumps in seconds
+AutoJumpsDelayMin = 480
+AutoJumpsDelayMax = 600
+
+# Time Multiplier for stay in the boss room
+BossRoomTimeMultiply = 1.5
+
+# Cost in dimension fragments to enter the rift, each party member must own this amount
+RecruitCost = 18
+SoldierCost = 21
+OfficerCost = 24
+CaptainCost = 27
+CommanderCost = 30
+HeroCost = 33
+
+#============================================================#
+#                        Punishment                          #
+#============================================================#
+
+# Player punishment for illegal acions
+#   1 - broadcast warning to gms only
+#   2 - kick player(default)
+#   3 - kick & ban player
+#   4 - jail player (define minutes of jail with param: 0 = infinite)
+DefaultPunish = 2
+DefaultPunishParam = 0
+
+# Apply default punish if player buy items for zero adena.
+# Retail: true
+OnlyGMItemsFree = True
+# Jail is a PvP zone
+JailIsPvp = True
+# Disable all chat in jail (except normal one)
+JailDisableChat = True

+ 126 - 0
L2_GameServer_T1/java/config/NPC.properties

@@ -0,0 +1,126 @@
+#=========================================================================================================================
+#                                             Alternative NPC Settings
+#=========================================================================================================================
+# Purpose:
+#	This properties file is solely for the purpose of NPC modifications that directly influence them.
+# 
+# Note: 
+#	The defaults are set to retail, if you modify any of these settings your server will NOT be "retail-like".
+# 
+# Warning: 
+#	Please take extreme caution when changing anything. Also please understand what you change before you do so on
+# 	a live server.
+#=========================================================================================================================
+
+#============================================================#
+#                          General                           #
+#============================================================#
+
+# This option is to to enable or disable an announcement to players
+# with the location of the Mammon NPC's during Seal Validation.
+# To enable this option set to true, to disable set to false.
+# Retail: false
+AnnounceMammonSpawn = False
+
+# If this option is enabled Mob attack AI will be like C1, 
+# if this is set to false, it will default to modern AI.
+# Retail: false
+AltGameMobAttackAI = False
+
+# If this option is enabled Mobs will be able to go aggressive on 
+# a player in a peace zone, if set to false, Mobs will not attack
+# a player in a peace zone.  
+# Retail: true
+AltMobAgroInPeaceZone = True
+
+# Maximum range mobs can randomly go from spawn point.
+# Retail: 200
+MaxDriftRange = 200
+
+# If True, the following deep blue mobs' drop penalties will be applied:
+# - When player's level is 9 times greater than mob's level, drops got divided by 3
+# - After 9 lvl's of difference between player and deep blue mobs, drop chance is
+# lowered by 9% each lvl that difference increases. (9lvls diff = -9%; 10lvls diff = -18%; ...)
+# NOTE1:
+#		These rules are applied to both normal and sweep drops
+# NOTE2:
+#		These rules ignores the server's rate when drop is of Adena type (Complies with retail server)
+# Retail: true
+UseDeepBlueDropRules = True
+
+#============================================================#
+#                          Monster                           #
+#============================================================#
+
+# Show L2Monster level and aggressive state.
+# In game if this is enabled the mob's title will show as:
+# Lv(MobLeveL) if not aggressive, and Lv(MobLevel)* if aggressive
+# Retail: false 
+ShowNpcLevel = False
+
+#============================================================#
+#                          Guard                             #
+#============================================================#
+
+# This if set to true will allow Guards to attack aggressive
+# mobs within range.
+# Retail: false.
+GuardAttackAggroMob = false
+
+#============================================================#
+#                          Pet                               #
+#============================================================#
+
+#This option enables or disables the Wyvern manager located in every castle
+# to train Wyverns and Striders from Hatchlings.
+# To enable this option set it to true, and to disable set it to false.
+# Retail: false
+AllowWyvernUpgrader = False
+
+# List of pet rent (Wyvern,strider)
+# Example:
+#		30827, 32471, 34486, 36547
+# Retail: 30827
+ListPetRentNpc = 30827
+
+# Pet movement speed.
+# Player Speed + Pet Movement speed = New Player Speed
+# Note:
+#		Fast player speeds can cause graphic lag which can be 
+#		mistaken for server lag.
+# Retail: 100, 80
+WyvernSpeed = 100
+StriderSpeed = 80
+
+#============================================================#
+#                         Boss                               #
+#============================================================#
+
+# HP/MP % regeneration for RaidBoss and their minions.
+# Example: 
+#		10 for HP will regenerate 90% slower then normal.
+# Retail: 100, 100
+RaidHpRegenMultiplier = 100
+RaidMpRegenMultiplier = 100
+
+# % P/M defense for RaidBoss and their minions.
+# Example: 
+#		10 for PDefense will cause PDefense to be 90% less 
+#		then normal.
+# Retail:  100, 100
+RaidPDefenceMultiplier = 100
+RaidMDefenceMultiplier = 100
+
+# Configure Minimum and Maximum time multiplier between raid boss re-spawn.
+# By default 12Hours*1.0 for Minimum Time and 24Hours*1.0 for Maximum Time.
+# Example:
+#		Setting RaidMaxRespawnMultiplier to 2 will make the time between
+#		re-spawn 12 hours to 48 hours.
+# Retail: 1.0, 1.0
+RaidMinRespawnMultiplier = 1.0
+RaidMaxRespawnMultiplier = 1.0
+
+# Configure the interval at which boss minions will re-spawn.
+# This time is in milliseconds, 1 minute is 60000 milliseconds.
+# Retail: 300000
+RaidMinionRespawnTime = 300000