Server/Client Fixes version 120518 by s0m3one (aka Blankname)

#Server

- helmet packet fixed (v2)
- added action 'pvp mode on/off' (v3)
- connector max players set to 32.767
- gameserver config setting 'NON_PK=TRUE' now works
- zone limit fixed (v2)
- guild loading fixed by Falo
- EP2 upgrade rates (60%, -2%)
- EP1 exp tables lvl 1-165 (offset 0x00357000)
- added new gameserver config settings (v1)
- lvl up loop bug fixed (v2)
- gameserver does not ignore items with the rareoption flag
- chat commands 'admin/pos/goto' are now only usable by lvl 10 admins
- gameserver now loads up t_catalog_ and t_ct_item_ tables (cash server works)
- gameserver now loads up t_drop_prob table
- armors can have up to 5 seals
- golden monster combo boxes patch made by Falo
- added seals 'HP Steal' and 'MP Steal'
- theos tomb fix (v2)
- ROP2 does not reduce the item to +10 if the upgrade were to decrease -1 (v2)
- added seal 'Deadly(%)' (id 66)
- seal 'MP Consumption' capped at 100%
- upgrade bonuses fixed and balanced (v2)
- seal 'Block Rate' reduces 100% damage instead of 50% and works against skills
- dragon, knightmare and castle owner weapons/armors has been improved (v2)
- elementals has been highly improved (v1)
- skill 'soul of fire' does not suicide the elemental
- added new gameserver config file 'server.cfg' (v1)
- added gameserver config setting ForceStartZone
- elementals does not disappear when riding a pet
- 'crystals of blood and sweat' can be used on rare/unique items
- mounted pets does not need to be revived after dying
- guild exp/fame contribution bug fixed (v2)
- attack skills hitrate penalty removed (works like autohits now)
- added 49 commented-out gm commands (thanks to Wizatek)
- upgrade formula has been balanced
- purification gems can be used on items with at least one seal
- seals now works on castle/dragon weapons and knightmare armor
- can not use 'crystals of blood and sweat' on items with bloodseal ability
- HACK_GO_ZONE disabled (gives false positives)
- egeha 800k tax removed
- bloodseal system max seal id raised to 80 (v3)
- gameserver does not shutdown after closing the connector
- dupe bug fixed (thanks to Wizatek)
- guild exp lock bug fixed (thanks to MaX)
- party exp/sp bonus per member changed to +10%
- server log files has been fixed
- added new magic ids with effects of the seals system
- seal 'Skill Cooldown Reduction' can now go below zero
- magic id 0 subid 21 (Tyrant) max value changed from 80 to 400
- magic id 0 subid 22 (Amplication) max value changed from 450 to 2000
- gm command /summon can now summon mobs spawned in the map by t_npc_regen
- added debuffs hitrate penalty for mobs (-5% hitrate per lvl difference)
- stun/stone/silence resistance now also works against mobs/pets/elementals
- npcs max base exp raised to 4,294,967,295

#Client

- IP check removed
- nation id changed
- encryption key changed
- optional encryption and MD5 password hashing
- rareoption items uses normal seals
- castle owner weapon attack is not displayed in the weapon description
- rune of protection II works with items up to +126
- guild max exp lock set to 100%
- updated upgrade formula
- egeha tax message removed
- channels 2 and 4 are now displayed as (Non-PvP)

#Credits

- Falo: for the guild fix, the tomb npc fix and the golden monster combo boxes patch
- Ghost107: for fixing a part of the max connections and the initial zone limit fix
- Wizatek: for all his help with everything

----------------------------------------

New upgrade bonuses:

Weapons:
+4 -> Silence Resistance +5%, MP Consumption -10%
+6 -> Attack (Melee/Ranged/Magic) +25
+8 -> Hit Rate +56
+10 -> MP Absorption +4%, MP +500
+12 -> Critical +20%
+14 -> Deadly +20%
+15 -> Attack (Melee/Ranged/Magic) +50

Armors:
+4 -> Stun/Stone Resistance +1%
+6 -> Physical Defense +20
+8 -> Magic Defense +10
+10 -> Weight Limit +500, HP +200
+12 -> Physical Evasion +20
+14 -> Magic Evasion +20
+15 -> Physical Defense +40, Magic Defense +20

----------------------------------------

List of gm commands that requires admin lvl 1:

/hpmp <hp(%): 0 ~ 100> <mp(%): 0 ~ 100>
/guildpoint
/messenger
/group <add> <group name>
/block <char name>
/release
/setwartime <year> <month> <day> <hour> <min>
/setwartime2 <year> <month> <day> <hour> <min>
/setwartime2end
/setowner <name>
/lordchat
/petlevelup <pet level>
/petdeadtime <time:sec>
/petreset
/petexpup <pet exp(%): 0 ~ 100>
/petmountreset
/petchangename <pet name>
/ap <item plus>
/dp <item plus>
/itemuse
/cashbalance
/cashpurchase
/cashpurchaselist
/cashbring
/cashpurchasehistory

List of gm commands that requires admin lvl 2+:
*admin lvl req for each gm command can be changed at gameserver.exe (offset 0x00356188)

(admin lvl - gm command - parameters)
04 /echo <zone | server | all | subserver | allzone> <chat>
03 /go_zone <zone> <extra>
03 /goto <x> <z> <y>
09 /itemdrop <index> <plus> <flag> <count> <option_count> <option_type> <option_level>
02 /count_pcc
10 /loopcount
03 /immortal
10 /shutdown <time:sec> <msg>
10 /reboot <all | server | subserver> <time:sec> <msg>
02 /count_npc
03 /visible
03 /go_pc <char name>
03 /go_npc <name or index>
03 /levelup <level>
04 /print <chat>
06 /kick <char name>
05 /common <char name>
05 /summon <amount 1 ~ 10> [<name or index>]
06 /silence <char name> <time:sec>
02 /whereami
03 /questcomplete <QuestTypeNum>
03 /statpoint <remain> [<str> <dex> <int> <con>]
03 /skillpoint <count>
04 /set_regensec <index> <time:1/10sec>
04 /npc_regen <index>
04 /kill_npc <meter :m>
03 /expup <exp(%) 0 ~ 100>
03 /bloodpoint <bloodpoint 0 ~ 5000>
10 /endgame <time:sec> <msg>
06 /observe
06 /chatmonitor <character name>
08 /double_event <start | stop | ing>
08 /doubleexp_event <serverno | all | cur> <start | stop | ing> <0~200%>
03 /speedup <speed:1/10>
03 /fameup <reputation>
07 /pd4 <rankinit | rewardinit | rewardend>
06 /kickid <id>
05 /resurrection <name>
09 /recommend <server no>
03 /disguise
10 /loginserver <open | close | reboot>
08 /event itemdrop <server-group no | all | cur> <start | ing | stop> <rate 100% ~ 200%>
   /event xmas2005 <start | stop | ing>
   /event newyear2006 <start | stop | ing>
   /event valentine2006 <start | stop | ing>
   /event oxevent <start | end | quiz>
   /event gball <vote | gift | status | end>
06 /kickchar <charindex>
07 /gmchatmonitor <name> <on | off>
06 /silence_pc <meter :m> <sec>
09 /kick_pc <meter :m>
08 /exp_limit <server-group no | all | cur> <exp limit(%) 0 ~ 3000>
07 /kickguildmember <guildname> <charname>
05 /applyskill <skill index | cure> <skill level> <char name>

----------------------------------------

GameServer.exe offsets:

- guild max exp contribution:

0x00353820 64 ;64h -> 100%

- guild max fame contribution (useless):

0x00353824 64 ;64h -> 100%

- weapon plus at Weapon lending dealer

0x00353828 06 ;6 (weapon plus)

----------------------------------------

Engine.dll (v.1280) offsets:

- packet encryption

0x ;01 -> ON, 00 -> OFF

- guild max exp contribution:

0x002A0E43 64 ;64h -> 100%

- guild max fame contribution (useless):

0x002A0E9B 64 ;64h -> 100%

- weapon plus at Weapon lending dealer

0x003B577F 06 ;6 (weapon plus)
0x005D36B0 2B 36 20 00 ;'+6 ' (string displayed to the left of the weapon name)

----------------------------------------

New stats for elementals (based on elementalist stats):

Fire spirit:
-magic attack: 160%
-physical defense: 100%

Wind spirit:
-magic attack: 120%
-physical defense: 140%

Earth spirit:
-magic attack: 100%
-physical defense: 160%

Water spirit:
-magic attack: 140%
-physical defense: 120%

----------------------------------------

New magic ids:

a_type 100, a_subtype 0: MP Steal(10%)
a_type 100, a_subtype 1: HP Steal(5%)
a_type 100, a_subtype 2: Reduce Weight(%)
a_type 100, a_subtype 3: MP Absorption(%)
a_type 100, a_subtype 4: HP Absorption(%)
a_type 100, a_subtype 5: Skill Cool Down Reduction(%)
a_type 100, a_subtype 6: Decrease MP Consumption(%)
a_type 100, a_subtype 7: Stone Resistance(%)
a_type 100, a_subtype 8: Stun Resistance(%)
a_type 100, a_subtype 9: Silence Resistance(%)
a_type 100, a_subtype 10: Block Rate(%)

----------------------------------------

Important notes:

- remove the korean characters from the t_catalog_ table or the gameserver will display some errors at startup
- a_item_prob and a_money_prob (t_drop_prob table) values are '1000' (x10) by default
- gameserver config file (newStobm.bin) is now in the same location than gameserver.exe
- server will not run properly without applying 'patch.sql'
- encryption needs to be disabled in order to run multiple servers
- gameserver will crash if a player tries to enter theos tomb and the map is not enabled
- log files can be deactivated by deleting the folder LogFiles
