------------------------------------------------------------------------------
CVS log file
------------------------------------------------------------------------------
Please describe how you have changed the sources on CVS as detailed
as possible so it is easy for the developers to see what has been done!
------------------------------------------------------------------------------
THIS IS THE HEAD BRANCH, feel free to add new features here and modify the
core. If you do bugfixing here, remember to also put the bugfixes in STABLE
------------------------------------------------------------------------------
Doulb (09.Apr.2006): - 1.8.057:
- New: quest cancel packet (C=>S:0x4F), SirQuaitSword.cs can be used as example
*) Code by Alex:
- New: /quest command
-----------------------------------------------------------------------------
Doulb (04.Apr.2006): - 1.8.056:
- Rewrited: * GeometryEngine / objects movment
* all GameObject (inluding merchant, player and npc inventory, horse, faction ect...)
* npc template / ai template / persistant ai
* spell system prepared for rvr
- Disabled: * keep
* housing
- In progress : * Quests compatibility
-----------------------------------------------------------------------------
Please could you merge all the changes you done in the head since the 1.8.043 here
If each dev merge its own changes if will be fast and easy for everybody.
-----------------------------------------------------------------------------
Etaew (21.Mar.2006): - 1.8.054:
- BugFix: You can no longer destroy equipped items
Firstly this isn't Live behaviour secondly it didn't removed magical bonuses
-----------------------------------------------------------------------------
Etaew (15.Mar.2006): - 1.8.052:
- BugFix: Pressing the craft icon while crafting will close the timer window
-----------------------------------------------------------------------------
Etaew (12.Mar.2006): - 1.8.051:
- BugFix: When the leader leaves a ChatGroup a new leader is selected
- BugFix: CombatHealSpell's will no longer display you cannot heal dead
group member messages.
- BugFix: Stealthed players are no longer included in an NPCs
CalculateNextAttackTarget method
- BugFix: Moving too far away from your trade partner will cancel the trade
- BugFix: /invite now guesses the players name instead of having to type it all in
- BugFix: You can now /who any part of the zone description or guild name to get
results instead of just the first word
- BugFix: Conc buffs value >= Timer buffs will overwrite now.
-----------------------------------------------------------------------------
Etaew (06.Mar.2006): - 1.8.047:
- Changed: Guard, Protect and Intercept delve and mouseover info now tells you
source and target.
-----------------------------------------------------------------------------
Etaew (26.Feb.2006): - 1.8.045:
- BugFix: Changing guard and protect multiple times in the group will no longer
give multiple you are no longer... messages when the group disbands
------------------------------------------------------------------------------
Holly (23.Feb.2006): - 1.8.043:
- BugFix: bugfix with set method at CrushWeapon
------------------------------------------------------------------------------
Gandulf (19.Feb.2006): - 1.8.042:
- Change: Updated QuestSystem to current Head and reactivated it after
disabling during quest refactoring. System still in developement,
compiles at least.
------------------------------------------------------------------------------
Holly (18.Feb.2006): - 1.8.041:
- BugFix: missing set methods for all remaining weapons (Linux friendly)
------------------------------------------------------------------------------
Holly (18.Feb.2006): - 1.8.040:
- BugFix: Linux friendly patches of GamePlayer.cs and Staff.cs
(missing get/set)
------------------------------------------------------------------------------
Etaew (16.Feb.2006): - 1.8.039:
- Bugfix: All Hibernian non epic quests now compile
------------------------------------------------------------------------------
Duff (14.Feb.2006): - 1.8.038:
- Add : spawned mob wander
- Change : wanderbrain for mob without spawned generator inspired from Dre77 code.
------------------------------------------------------------------------------
ZCU-Holly (11.Feb.2006): 1.8.037:
- Bugfix: ItemMagicalBonus.Bonus is now Int16 (for malluses implementation)
------------------------------------------------------------------------------
Etaew (10.Feb.2006): 1.8.036:
- Bugfix: The rest of the Albion non epic quests now compile
- Note: Important Delivery / Nuisanses steps are disabled until the new quest
system is updated
------------------------------------------------------------------------------
ZCU-Holly (9.Feb.2006): 1.8.035:
- Remove: TwoItems class (it's totaly useless)
- Change: Everything working with Item speed now works in miliseconds
- BugFix: All Trainer given equipment has proper speed and forbidden
IsTradable, IsSaleAble (like official servers)
------------------------------------------------------------------------------
Etaew (9.Feb.2006): - 1.8.034:
- Bugfix: Albion Quests - Frontiers / Godelevas Need / Greener Pastures /
Half Ogre All Man now compile
- Removed: All references to the Old ItemTemplate system
TODO: Housing System update
------------------------------------------------------------------------------
Etaew (8.Feb.2006): - 1.8.033:
- Bugfix: Albion Quests - Cleric Mulgrut / Collection / Culmination now compile
------------------------------------------------------------------------------
ZCU-Holly (8.Feb.2006): - 1.8.032:
- Bugfix: Added missing Crossbow(Template) reference to .hbm.xml
- Change: Changed Item System to the latest Doulbousiouf's design
- Add: All children of StackableItem now have own override of CanStackWith()
- Add: TwoItems class (atm working to check if itemA+itemB can stack together)
- Add: CatapultAmmunition(Template) :: TODO OnItemUsed() is atm empty
------------------------------------------------------------------------------
Etaew (7.Feb.2006): - 1.8.031:
- Bugfix: Albion Quests - Building A Better Bow / City of Camelot now compile
- Add: RemoveItemFromPlayer overload to accept templates
------------------------------------------------------------------------------
Etaew (6.Feb.2006): - 1.8.030:
- Bugfix: Albion Quests - Arrows for Yetta Fletcher / Beginning Of War now compile
- Change: Renamed RemoveItemToPlayer method to RemoveItemFromPlayer
- Add: CreateQuestItem overload to accept the Quests name
------------------------------------------------------------------------------
Etaew (5.Feb.2006): - 1.8.029:
- BugFix: Albion Quests - Against The Grain / Andrews Skin now compile
------------------------------------------------------------------------------
Duff (4.Feb.2006): - 1.8.028:
- BugFix : /keep cmd work again now
- Change : bring a friend system to use spawner when mob pop from spawner
------------------------------------------------------------------------------
Doulbousiouf (2.Feb.2006) - 1.8.027:
- Change : some improvment in the 'Geometry Engine'
------------------------------------------------------------------------------
Doulbousiouf (26.Jan.2006) - 1.8.026:
- Bugfix : correct ranged attack packet sequence
*) Code by Alex_Speed :
- Add : /repec buy command
- Add : more check in /gc form
------------------------------------------------------------------------------
Fooljam (24.Jan.2006) - 1.8.025:
*) Thanks to Alex_Speed for his help
- Bugfix: Players can now see the TOA/Catacomb bonus names in item properties.
*) Code by Dust
- Bugfix: Players can longer create a guild name whith other characters than Alpha.
------------------------------------------------------------------------------
ZCU-Holly (23.Jan.2006) - 1.8.024
- Bugfix : Fixed typos in GM commands
*) Code by Miki001 :
- Bugfix : Fixed login bug for 1.68 clients in PacketLib168
------------------------------------------------------------------------------
Duff (19.Jan.2006):
- Change : I have add to dnpb project the support of VS2005 and prebuild/postbuild event
So now prebuild generate the project file perfectely
It is my own release, so it is not an officail one but it work well ;)
------------------------------------------------------------------------------
Doulbousiouf (19.Jan.2006) - 1.8.023:
- Change : trades between players now generate 0 sql request
------------------------------------------------------------------------------
Doulbousiouf (16.Jan.2006) - 1.8.022:
*) Code by Tobz :
- Bugfix : /faceloc and /facegloc can no longer be used while stun or mez
- Bugfix : Corrected a spelling error in RealmCheckJumpPoint.cs
- Add : /unban command
*) Code by Alex_Speed & Tiv :
- Add : all needed 1.78+ guild datas and right (merit + social windows)
- Add : /gc infos and a lot of typo in /gc command
- Credit : /clap to Alex_Speed for his hard work
*) Code by me :
- Bugfix : /gc motd should work
- Bugfix : add motd right in guildrank table
------------------------------------------------------------------------------
Doulbousiouf (14.Jan.2006) - 1.8.021:
- Bugfix : adding player to its guild in the char select screen
------------------------------------------------------------------------------
Doulbousiouf (12.Jan.2006) - 1.8.020:
- Bugfix : exception when trying to equip a cloak
- Bugfix : stackable item can be create using /item create DOL.GS.StackableItem
- Bugfix : NHibernate log level is now by default set to WARN
- Bugfix : damage calculation on sitting players sometimes don't use armor
------------------------------------------------------------------------------
Doulbousiouf (9.Jan.2006) - 1.8.019:
- Add : multi target location jump point system
------------------------------------------------------------------------------
Duff (7.Jan.2006) - 1.8.018:
- Change : migrate all the keep system to nhibernate
------------------------------------------------------------------------------
Doulbousiouf (7.Jan.2006) - 1.8.017:
- New : new jump point system
------------------------------------------------------------------------------
Doulbousiouf (6.Jan.2006) - 1.8.016:
- Change : Scripts are now compiled first
- Change : Region and zone are now loaded from the db. A working database can be
dowloaded here : http://doldata.fleetingclarity.com/showthread.php?t=1014
- Change : Refactored area system, big Clean in region.cs, zone.cs and worldmgr.cs.
Region, Zone and AbstractArea class are now persistants
- Add : Second part of the new quest system, all quest are now manadged in the
QuestMgr class, and the quest souscription work using the event system
- Add : You can do quests without a npc to give it, you can find a example in the
/quests/example directory (it is the starting step for a advanced event
system using steps and player journal in event)
- BugFix : the server can now start with a empty /scripts directory
- BugFix : char are now created with max health, max mana and max endurance
- Remove : all useless things like zone.xml, region.xml, RegionData class ect ...
NOTA: Only the quests of the directory /quests/examples are compatible,
remove all others quest of your /scripts directory
------------------------------------------------------------------------------
Noret (26.Dec.2005) - 1.8.015:
- Bugfix: Point-to-point heading calculation (fixes TargetNotInView problem)
------------------------------------------------------------------------------
Doulbousiouf(21.Dec.2005) - 1.8.014:
- Add : new quest system (see HelpSirQuait.cs as example)
- Add : GamePlayer class is now persistant
- Add : thousand of others changes :)
------------------------------------------------------------------------------
Doulbousiouf(2.Dec.2005) - 1.8.013:
- Add : GameServerScript project compile now except all quests witch are for
the moment not compatible
------------------------------------------------------------------------------
Duff (02.Dec.2005) - 1.8.012:
- Add : linked mob
- Add : wander as random walk
------------------------------------------------------------------------------
Doulbousiouf(29.Nov.2005) - 1.8.011:
- Add : Another part of the new item system, now player inventory, mob equipment
and merchants should work
------------------------------------------------------------------------------
Duff (27.Nov.2005) - 1.8.010:
- Add : spawn generator
- Add : spawn area DB
- Add : mob spawner DB
- Add : lootmgr for faction
- add : scriptmgr getinstance (string type)
- Add : standard spawn generator and square are
- BugFix : remove doldatabase reference in prebuild
- Add : nhibernate reference and log4net in prebuild
- Add : the lastest dot net prebuild exe to support vs2005
So, if you are under VS2005 simply use clean.bat and Vs2005.bat
------------------------------------------------------------------------------
Doulbousiouf(26.Nov.2005) - 1.8.009:
- Bugfix : Correct the database structure check to work under linux (report by Zoni)
------------------------------------------------------------------------------
Doulbousiouf(25.Nov.2005) - 1.8.008:
- Add : First part of the new item system.
------------------------------------------------------------------------------
Gandulf(23.Nov.2005) - 1.8.007:
- Change : Cleaned Parameters of QuestTrigger, -Action, - Requirements
Added alternative string params for most of them
- Add : WorldMgr.getXYZ Methods to retrieve NPC, GameObjects by Name or Id,
without knowing realm, region.
------------------------------------------------------------------------------
Noret (20.Nov.2005) - 1.8.006:
- Changed: Used custom collection for GetInRadius
- Changed: Removed database versions code
- Changed: Replaced X/Y/Z properties with Position
and other small position related changes, best to compare
to old code to find out how it works now; some of them:
CurrentRegion => Region
CurrentRegionID => RegionId
WorldMgr.CheckDistance(this,enemy,range) => Position.CheckDistance(enemy.Position, range)
WorldMgr.GetDistance(owner, attackTarget) => owner.Position.GetDistance(attackTarget.Position)
GetHeadingToSpot(tx,ty) => m_position.GetHeadingTo(walkTarget)
WorldMgr.GetPlayersCloseToSpot => m_region.GetPlayerInRadius
target.GetSpotFromHeading(64, out x, out y) => Point spawnSpot = target.GetSpotFromHeading(64)
zone.ToLocalPosition(Point regionPosition)
zone.ToRegionPosition(Point localPos)
------------------------------------------------------------------------------
Doulbousiouf (19.Nov.2005) - 1.8.005:
- Change : Update to NHibernate v1.0.1.0 and add all needed libraries
- Change : GameServerScripts project compile now
(except TownCrier.cs and XMLWebUIGenerator.cs)
------------------------------------------------------------------------------
Doulbousiouf (17.Nov.2005) - 1.8.004:
- Remove : DOLDatabase project
- Add : NHibernate database layer and new database structure (your old tables
are no longer compatibles). The default configuration is done to work
with MySQL, to use it you must first install the MySQL Connector.net
(http://dev.mysql.com/downloads/connector/net/1.0.html)
You are on the head branch, this is not the final code and a lot of
feature are disabled / bugged and still in devellopment.
The GameServerScript project is for the moment not compatible.
!!! Use this version for tests only !!!
------------------------------------------------------------------------------
Duff (12.Nov.2005) - 1.8.003:
*) Code by Rizla from dracis (modified a bit by me):
- Add : decay on siege weapon
- Change : damage of siege weapon to crush
- Add : some other things in siege weapon
- Add : control command
*) Code by me
- Add : repair
------------------------------------------------------------------------------
Gandulf (12.Nov.2005) - 1.8.002:
- Changed: QuestPart-System Update
Some Parameters of Actions, Triggers, Requirements were
changed/reordered
- Changed: SendCustomDialog no autowraps message text. This makes writing
long texts easier, since you don't have to worry about linebreaks.
------------------------------------------------------------------------------
Smallhorse (12.Nov.2005) - 1.8.001:
- Changed: Removed .NET 2.0 code from the new quest system!
Project is now compilable in NET 1.1 again.
Not tested if everything still works with the new system (but only
small changes were done!)
------------------------------------------------------------------------------
Gandulf (10.Nov.2005) - 1.8.001:
- New: QuestPart-System (alpha)
- Changed: 2 Quests to new Quest-System (Albion: ImportantDelivery, Nuisances)
- New: IPacketLib.SendQuestAbortCommand
------------------------------------------------------------------------------
Smallhorse (10.Nov.2005) - 1.8.000:
Moved HEAD 1.7.140 to STABLE branch!
Please use the 1.8.xxx version numbering now.
And remember:
New Code -> HEAD
Bugfixes -> HEAD + STABLE
Thanks!
Let's continue the great work,
SmallHorse
------------------------------------------------------------------------------
Noret (6.Nov.2005) - 1.7.140:
- Changed: IPlayerTitle.IsForced takes player param for checks
------------------------------------------------------------------------------
Noret (2.Nov.2005) - 1.7.139:
- Bugfix: InvalidCastException in AbstractServerRules.OnPlayerKilled
------------------------------------------------------------------------------
Noret (30.Oct.2005) - 1.7.138:
*) Code by Dre:
- Bugfix: Trading money with 1.78+ clients should work again
------------------------------------------------------------------------------
Noret (29.Oct.2005) - 1.7.137:
- Bugfix: Timer problems
------------------------------------------------------------------------------
Tiv (28.Oct.2005) - 1.7.136:
- New: Some titles
- New: item extension field (catacombs Torso, Gloves, Boots items)
/item extension command
- Change: Show face mood type in CharacterOverview
------------------------------------------------------------------------------
Noret (27.Oct.2005) - 1.7.135:
- Changed: Last client sent/received packets are saved in one buffer
- Changed: Proper packet is used to update player titles
- Bugfix: Possible division by zero is some spell handlers
- Bugfix: "Find group" should work again
------------------------------------------------------------------------------
Noret (24.Oct.2005) - 1.7.134:
- Changed: Improved player titles a bit and moved them to scripts
- Bugfix: Player AttackSpeed
------------------------------------------------------------------------------
Noret (23.Oct.2005) - 1.7.133:
*) Based on code and info from Tiv:
- New: Base for player titles. /titlegm can be used to manage target player's titles.
*) Code from me:
- New: MaxClientCount can be set in config, default is 500
- Changed: Removed x/y/z addition properties
- Changed: Renamed /mount to /mountgm because old command is client-side now
------------------------------------------------------------------------------
Tiv (23.Oct.2005) - 1.7.132:
- Change: some packets change to fit to real packet
------------------------------------------------------------------------------
Noret (15.Oct.2005) - 1.7.131:
*) Code from Tiv
- New: Stats/health/power cap bonuses
PowerPool and its cap bonuses working
- New: StyleSubstitute table that allows to override styles for certain classes
- New: All livings can use styles
- New: 1.80 client support
- Changed: Haste has no effect on ranged attacks
- Changed: ToA/Cata bonus IDs
------------------------------------------------------------------------------
Doulbousiouf (12.Sep.2005) - 1.7.130:
- Bugfix: fumble correctly don't start your next attack
- Bugfix: attack results NotVisible/OutOfRange don't wait the next attack tick to swing
- Bugfix: Artisants repair funtion
------------------------------------------------------------------------------
Duff (10.Oct.2005) - 1.7.129:
- Add : basic system for spell casting of Mob and pet
to use it use spellLine "Mob Spells" it will work for direct damage
and some buff but it is not finished
------------------------------------------------------------------------------
Noret (10.Oct.2005) - 1.7.128:
*) Code from Etaew
- Changed: /repair command use wood now
------------------------------------------------------------------------------
Etaew (30.Sep.2005) - 1.7.127:
- New: Keep Doors are targetable now, this means they can be attacked and destroyed
Interacting with doors now moves you a little higher to avoid the floors of towers
- New: Basic handling of repairing for keep components and doors
------------------------------------------------------------------------------
Doulbousiouf (29.Sep.2005) - 1.7.126:
- Bugfix: damage add/shield on pet/charmed mob work now
------------------------------------------------------------------------------
Smallhorse (25.Sep.2005) - 1.7.125:
- Bugfix: MovementMgr.cs ... /path save command should work now! FINALLY!
- Add: The path is now visible shown by bags on the ground that are named as
"TEMP PP x" where x is the pathpoint number. Can be removed via "/path hide"
- Changed: Made the path script much cleaner and display more messages!
- Changed: The AbstractCommandHander, DisplaySyntax shows syntax in system window.
- Changed: Empty directories in Script assemblie (bin/obj/...) are not copied
to the output directory anymore.
------------------------------------------------------------------------------
Noret (21.Sep.2005) - 1.7.124:
*) Code by LeBron
- New: Reserved eProperty IDs for TOA/CATA bonuses
------------------------------------------------------------------------------
Tiv (20.Sep.2005) - 1.7.123:
- Changed: GM can jump to keep on warmap in debug mode
- Bugfix: correct compomenent/hookpoints coordinates (as it happens keep.heading in base is angle)
- Bugfix: buy on hookpoint use money/bp/gbp
------------------------------------------------------------------------------
Doulbousiouf (20.Sep.2005) - 1.7.122:
- Bugfix: Savage get now protect ability
- Bugfix: Bleeding no longer hit you for 0 damages
- Bugfix: Main hand fumbled stop left hand swing and don't start next attack
- Add: Pet max level hard cap from db
- Add: Slash resist debuff spell
------------------------------------------------------------------------------
Noret (18.Sep.2005) - 1.7.121:
- New: Spell.EffectGroup field defines which effects don't stack (same group)
- Changed: Some messages to show more info
- Changed: TargetInView check is done only for players
------------------------------------------------------------------------------
Duff (18.Sep.2005) - 1.7.120:
- BugFix : null exception in game siege weapon target handler
- Change : improove hastener to not load the spell all the time
- Add : in comment, spell in siegeweapon until db contain spell for it
- Add : new spellline type siegeWeapon_spells
------------------------------------------------------------------------------
Doulbousiouf (16.Sep.2005) - 1.7.119:
- Bugfix: Scout, ranger and hunter correctly gain rapid fire II at level 45
- Add : Stoicism abilitie
- Add : MesmerizeDurationBuff spell handler
------------------------------------------------------------------------------
Blue (15.Sep.2005) - 1.7.118:
- Changed: Quality function in spell craft according to info on web
- Bugfix: Shield size in mini window
- Bugfix: Healer didn't get aggro when healing
------------------------------------------------------------------------------
Noret (15.Sep.2005) - 1.7.117:
- New: Attack messages for controlled NPCs, based on code from Tiv
- Changed: Spell cast time based on info from Tiv
- Bugfix: Circle areas load Z coord correct based on info from Etaew..
------------------------------------------------------------------------------
Doulbousiouf (14.Sep.2005) - 1.7.116:
- Change: Chance to proc for proc spell stored in the db now
- Add : Fumble code
- Add : Mercenary dirty tricks abilitie
- Bugfix: WeaponOnTarget null reference exception
------------------------------------------------------------------------------
Noret (13.Sep.2005) - 1.7.115:
- New: More debug code for timers
- Bugfix: Both set and get of GameMob.RespawnInterval are in milliseconds now
------------------------------------------------------------------------------
Blue (12.Sep.2005) - 1.7.114:
- Changed: Updated to newest mySQL Connector/Net 1.0.5 fixes:
- Connector/Net can't connect to MySQL 4.1.14-nt [fixed]
- Invalid timestamp in query produces incorrect reader exception
- Insert using prepared statement causes double insert
- Fail connect to specified MySql Hosts
- Connecting with NAMES and character_set_results can be up to 18 times slower
- turkish character set causing error
- Error reading a timestamp column
- Floating point numbers boundary conditions (MinValue/MaxValue)
- Adding MySqlParameter causes error if MySqlDbType is Decimal
------------------------------------------------------------------------------
Tiv (12.Sep.2005) - 1.7.113:
- New : Enabled 1.79 client support
- Changed : sending Quests for 1.73+ from index 1. Index 0 reserved for Task
- Changed : more GT in view checks
- Changed : Some messages and message types
- Changed : packets SendWeather, SendRegionChanged, SendSpellEffectAnimation
*) Code from LeBron
- Bugfix : effectiveness for area spell
------------------------------------------------------------------------------
Doulbousiouf (11.Sep.2005) - 1.7.112:
- Bugfix : charm resist chance based on the caster's spec vs mob level
- Add : Sound and message when making a masterpiece (based on code by Dust)
------------------------------------------------------------------------------
Noret (11.Sep.2005) - 1.7.111:
- Changed: Check ground target distance when spell cast is finished
- Changed: GameObject.Heading is limited to 4095
------------------------------------------------------------------------------
Doulbousiouf (9.Sep.2005) - 1.7.110:
- Bugfix : shield size is used in block and guard chance
- Remove : Spellcraft: No warning if you overcharge more than 5 points (tested)
- Rewrite : Spellcraft: Item imbue point calculation
- Remove : Spellcraft: Only crafted items can be imbued (already done in other place)
------------------------------------------------------------------------------
Blue (8.Sep.2005) - 1.7.109:
- New: If one member of a group gets aggro, all members of the group get on aggrotable
- New: Spellcraft: Trade partner blows up with 40% chance if overcharge fails
- Changed: Protect protects against every source of aggro by some percentage
- Changed: Spellcraft: How much you can imbue depends from your spellcraft skill
- Changed: Spellcraft: No warning if you overcharge more than 5 points
- Bugfix: Spellcraft: HP bonus imbue points calculation corrected
- Bugfix: Spellcraft: Item imbue point calculation
- Bugfix: Spellcraft: Only crafted items can be imbued
- Bugfix: Spellcraft: Inventory problems when overcharge fails and gem was not removed
- Bugfix: Amnesia doesn't cause a mob to stop attacking the current target
------------------------------------------------------------------------------
Doulbousiouf (8.Sep.2005) - 1.7.108:
- Bugfix : correct thrown weapon mini windows details
------------------------------------------------------------------------------
Noret (7.Sep.2005) - 1.7.107:
- New: Killer always see mob death and loot drop messages;
added killer param to DropLoot and loot generators
- New: Character slot 9 and 10 can be used
- Changed: Using a style cancels engage
- Changed: Some timers are initialized on objects add/remove from world
- Changed: Evade chance is reduced for ranged attacks
- Bugfix: Stack count is not lost on item pickup
------------------------------------------------------------------------------
Doulbousiouf (6.Sep.2005) - 1.7.106:
- Bugfix : correct rapid fire damage
- Bugfix : remake penetrate arrows code
- Bugfix : others small bugs in ranged attack sequence
- Bugfix : spellcraft total gem charge formula
------------------------------------------------------------------------------
Etaew (5.Sep.2005) - 1.7.105:
- Bugfix : /area create command now sets the Square areas correctly
- Bugfix : /broadcast should now work properly
------------------------------------------------------------------------------
WitchKing (4.Sep.2005) - 1.7.104:
- Bugfix: No more ghost player upon connection (which came from an ObjectID
allocation issue and resulted in a player being unable to see world objects,
unable to cast anything and so on)
------------------------------------------------------------------------------
Noret (4.Sep.2005) - 1.7.103:
- Changed: GameMerchant.OnPlayerAppraise is virtual now
- Bugfix: On PvP server unguilded players can attack unguilded players again
------------------------------------------------------------------------------
Noret (3.Sep.2005) - 1.7.102:
- Changed: All chars created in unknown startup regions are ported to classic regions
------------------------------------------------------------------------------
Noret (2.Sep.2005) - 1.7.101:
*) Code from Tiv
- New: '/mob speed' command to change mob max speed
*) Code from me
- New: Players are invulnerable to PvP attacks for 10sec after loading (on all server types)
- Changed: All negative effects are canceled on duel stop
- Changed: GameStaticItem is no longer updated on x/y/z changes
------------------------------------------------------------------------------
Etaew (1.Sep.2005) - 1.7.100:
- Bugfix : Autosplit no longer goes to players outside of the XP range
- Bugfix : A few sentances related to keeps to proper English
- Bugfix : OnPlayerKilled is now called when a player dies from the TakeDamage
method in GameLiving (Specifically Falling Damage and setting worth)
------------------------------------------------------------------------------
Duff (31.Aug.2005) - 1.7.99:
*) code from me from advice of Tiv who have no time to code ;)
- BugFix : correct some byte in keep packet and some sentence
------------------------------------------------------------------------------
Etaew (29.Aug.2005) - 1.7.98:
*) Code from Rizla
- Bugfix: Failing to bind no longer sets your rebind timer
*) Code from Me
- Bugfix: Guilds can no longer have the same Emblem as another guild
------------------------------------------------------------------------------
Duff (28.Aug.2005) - 1.7.97:
- Change : blue hookpoint inventory missing
- Add : add hook point command
------------------------------------------------------------------------------
Doulbousiouf (28.Aug.2005) - 1.7.96:
- Add : Melee damage buff/debuff spells
------------------------------------------------------------------------------
Noret (28.Aug.2005) - 1.7.95:
*) Code by LeBron
- Changed: Style spec used for style bonus calc
*) Code from me
- New: Spell queue flag is saved in DB
- Changed: SubRegion exit event/message is sent before enter event/message
- Bugfix: PvP immunity timer converted to milliseconds
------------------------------------------------------------------------------
Etaew (27.Aug.2005) - 1.7.94:
*) Based on code from Rizla
- New : /noqueue command to toggle spell queueing on and off
*) Code from Cisien
- New : /mob commands
'/mob addloot <ItemTemplateID> [chance]' to add loot to the mob's unique drop table
'/mob viewloot' to view the selected mob's loot table
'/mob removeloot <ItemTemplateID>' to remove loot from the mob's unique drop table
*) Based on code from Akira
'/mob copy' to copy a mob exactly and create it where you are standing
*) Code from Me
- Bugfix : /mob remove cancels any spellcast / attack before it is removed
- Bugfix : Spell Queue is cleared when caster is interupted
------------------------------------------------------------------------------
Doulbousiouf (26.Aug.2005) - 1.7.93:
- Bugfix : range attack target work like it must now
- Bugfix : stag abilitie is no longer a instant heal
------------------------------------------------------------------------------
Duff (26.Aug.2005) - 1.7.92:
- Change : the keep guard brain inherit grom guardbrain
- BugFix : make the guardbrain public and change some other things in it.
------------------------------------------------------------------------------
Noret (26.Aug.2005) - 1.7.91:
- New: Couple methods to play sounds
- Bugfix: SquareArea.IsContaining check
------------------------------------------------------------------------------
Etaew (26.Aug.2005) - 1.7.90:
- New : Area table (DBArea) to work with the broadcast command, this allows the
saving and loading of areas, i.e. (Region) You have entered Prydwen Keep, and
and support for the accompanying sounds
**DB needs to be created -- use the command below**
- New : GM Command /area to help with area maintainance
/area create <name> <type(circle/square>) <radius> <broadcast(y/n)> <soundid>
------------------------------------------------------------------------------
Doulbousiouf (25.Aug.2005) - 1.7.89:
- Bugfix : correct the arrows and bolt speed
------------------------------------------------------------------------------
Duff (25.Aug.2005) - 1.7.88:
- Change : make a system for DF owner which fit real server DFOwner is now get in keepMgr
- Add : hookpoint DB by default hookpoint will have the component x y z used for pop of item bought.
- Add : addhookpoint command to make a hookpoint select a keep component with shift + click
and see the id of Hookpoint (you must know the skin of component)
and just do /addhookpoint <skin> <id>
*)code from advice of tiv
- Add : send of packet A1 when target hookpoint
------------------------------------------------------------------------------
Noret (25.Aug.2005) - 1.7.87:
*) Based on Cisien's idea
- New: Jump point handlers. Set in ZonePoint.ClassType and handle region change checks.
Provided DFEnterJumpPoint example checks for Towers count and allows entrance
only to the realm with most towers. Same towers count restricts access to anyone (for now).
*) Code from Tiv
- Changed: Client is no longer disconnected on multiple connect attempts while in Connecting state.
Should allow to connect easier if server and client are on one machine.
*) Code from Me
- New: Property calculators can be overriden in scripts using PropertyCalculatorAttribute
- Bugfix: Exception in QuitTime
- Bugfix: Autotrain works now
------------------------------------------------------------------------------
Etaew (25.Aug.2005) - 1.7.86:
*) Code from Nocto, Ogre and Me
- New : /password <oldpassword> <newpassword> command for players
*) Code from Echostorm
- New : /email <emailaddress> command, for a player to set there email address
in the account database
*) Code from Me
- New : /broadcast command for capitals and housing zones
- New : GameGuard class and brain as a mob guard
- New : GameNPC's remember there SpawnHeading and will return to face it
if they are not busy
- New : LastLoginIP field in the Account table for the last IP that logged
onto that account
TODO: Area Database for full utilisation of /broadcast
------------------------------------------------------------------------------
Doulbousiouf (25.Aug.2005) - 1.7.85:
- Bugfix: Ranged damage are calculated when the arrow touch the target
- Bugfix: Crafting skill point are now correcly actualised for secondary crafting
------------------------------------------------------------------------------
Etaew (24.Aug.2005) - 1.7.84:
*) Code from Akira
- New : /kick <playername> command
*) Code from Ogre
- Bugfix: Server no longer errors under .net 2.0 if you have empty xml files
*) Code from me
- New : /level command if you have a level 50 on your account
- New : UsedLevelCommand bool field in the Character table
- New : Autotrains for Armsman, Infiltrator, Mercenary, Minstrel, Paladin,
Reaver, Scout, Nightshade, Ranger, Shadowblade, Warrior
- New : Epic armor bonuses for the missing class guilds, Defenders of Albion,
Guild of Shadows, Path of Harmony
- New : Zone.GetRealmByZoneID(ushort ID) method, which returns an eRealm of
which the zone has been assigned to (should be accurate for all zones apart
from bgs 15+
- Changed: IsObjectInFront is re-enabled for GameNPC
- Bugfix: Solution now compiles under .net 1.1 and .net 2.0 without any errors
TODO: /respec needs to retrain the autotrained spec points into the line
------------------------------------------------------------------------------
Doulbousiouf (24.Aug.2005) - 1.7.83:
- Change: Protect ability now only work with heal spell
- Change: Protect I transfer 10%-20%, Protect II 20%-30% and
Protect III 30%-40% of healer aggro to the player protector
------------------------------------------------------------------------------
Duff (24.Aug.2005) - 1.7.82:
- Bugfix: prebuild config to generate sharpdevelopp bug thanks to nunit bug
- Add : function to get keep count by realm for DF
- change : some little things in keep component
------------------------------------------------------------------------------
Doulbousiouf (22.Aug.2005) - 1.7.81:
- Bugfix: Crafter repair item durability
------------------------------------------------------------------------------
Noret (21.Aug.2005) - 1.7.80:
- Bugfix: Timer problems
------------------------------------------------------------------------------
Duff (21.Aug.2005) - 1.7.79:
- Add :/keepcomponent
- BugFix : alliance save
------------------------------------------------------------------------------
Noret (21.Aug.2005) - 1.7.78:
*) Code from Etaew
- New: Spell groups: only spells from the same group are disabled and their effects don't stack.
Hybrids will see only highest spell from the group. Old system still works if Spell.Group == 0
*) Code from me
- New: Living's name color handling can be changed in server rules scripts
- New: <ServerNameShort> can be set in config. Latest clients show it in /loc command info.
- Changed: Pets get 125% speed bonus as well if follow their owner and are not in combat
- Changed: GameKeepComponent is initialized on AddToWorld(), was throwing unhandled exceptions
- Bugfix: Couple small exceptions
------------------------------------------------------------------------------
Schaf (20.Aug.2005) - 1.7.77:
- Changed: Housing does now load faster
- Changed: Housing update system rewritten, should fix house-flickering
------------------------------------------------------------------------------
Duff (20.Aug.2005) - 1.7.76:
- Add : an other big step in hookpoint system
- Add : siegeweapon is now loaded from both hookpoint and siegecraft but it is
still closed to an alpha.
- Add : function to use bounty point to buy on HP
- Add : objecft type for sieage weapon
------------------------------------------------------------------------------
Doulbousiouf (19.Aug.2005) - 1.7.75:
- Remove: Material and material level field in itemTemplate
- Add: New salvage database table
- Change: Refactoring salvage code
- Change: Some little things in /crafting command
- Add: /npc command based on code by Etaew
------------------------------------------------------------------------------
Noret (19.Aug.2005) - 1.7.74:
- Bugfix: Quickcast timer
- Bugfix: Displayed weapon damage
------------------------------------------------------------------------------
Noret (18.Aug.2005) - 1.7.73:
- Bugfix: Used concentration is restored after death
------------------------------------------------------------------------------
Noret (18.Aug.2005) - 1.7.72:
*) Code from Tiv
- Changed: Hybrids benefit from item acuity bonus
*) Code from me
- Changed: /item command don't allow to set item bonuses higher than eProperty.MaxProperty-1
- Bugfix: Duel problems with pets and release
- Bugfix: StackOverflowException on point compares
------------------------------------------------------------------------------
Tiv (18.Aug.2005) - 1.7.71:
- Bugfix: escaped values for some SQL
------------------------------------------------------------------------------
Noret (18.Aug.2005) - 1.7.70:
- New: Enabled 1.78 client support
- Changed: No power regen penalty for pure casters since 1.78
- Bugfix: FatigueConsumptionPercentCalculator is used
- Bugfix: Correct packet code for SiegeWeaponActionHandler
------------------------------------------------------------------------------
Noret (17.Aug.2005) - 1.7.69:
*) Code by Rudal
- New: LifeTransfer spell handler
*) Code from me
- Bugfix: Mob damage and damage shield
- Bugfix: More null ref exceptions in Point2D/3D
------------------------------------------------------------------------------
Duff (14.Aug.2005) - 1.7.68:
- BugFix : Point3D equal can make a null reference
- Add : /crafting list to list of all crafting skill with id
*) Code from divinespear
- BugFix : Small bugs in MPK file control module
------------------------------------------------------------------------------
Doulbousiouf (16.Aug.2005) - 1.7.67:
- Bugfix : Craft master correctly update your skill when promoted
- Add : /crafting command for gm in order to easily modify player crafting skills
- Change : Chance to gain crafting point at hight level according to players feedback
------------------------------------------------------------------------------
Duff (14.Aug.2005) - 1.7.66:
- BugFix : buy on hookpoint make a nullreference thanks to recast of key on an hashtable
- Add : some item in hookpoint but not fully implemented yet
- Add : event interactWith to get when a player interact with something
- Add : /groundassist
- Change : the project properties to allow debug (F5 powa) with breakpoint
*) Code from me based on code from TIV
- Add : very basic system not finished yet for siege weapon (alpha stage)
------------------------------------------------------------------------------
Doulbousiouf (14.Aug.2005) - 1.7.65:
- Add: Fatigue consumption buff and debuff
------------------------------------------------------------------------------
Noret (13.Aug.2005) - 1.7.64:
*) Code from me
- New: Player name/guildname/lastname can be changed in ServerRules scripts
- Changed: MobTemplate renamed to NpcTemplate
*) Based on info from Tiv
- Changed: Players level is updated on levelup
*) Based on code from Organical and Tiv which is based on pets script by
Roach, TheThane, Phoenix, Craigen and possibly more people I can't find
- New: Very basic summon spell handler
------------------------------------------------------------------------------
Doulbousiouf (13.Aug.2005) - 1.7.63:
- Change: Refactoring player trade windows and selfcraft window
- Change: Refactoring repair code
*) Code by Etaew
- Bugfix: Player gain power when promoted from non magical to magical class
------------------------------------------------------------------------------
Duff (13.Aug.2005) - 1.7.62:
- Change : gamekeeplord class create
- Removed : field link to lord in keep db
- Change : change command keepguard to work with that
- Bugfix : claim in keep and tower
------------------------------------------------------------------------------
Noret (11.Aug.2005) - 1.7.61:
*) Code from me
- New: Mob templates manager
- New: Armor/weapon bonus changes attack miss chance
- Changed: Every attacker removes 3% from evade chance
- Changed: Emblem field from GameObject was moved to GameStaticItem
*) Code by Tiv, LeBron and me
- Bugfix: Region OID allocation problems
------------------------------------------------------------------------------
Doulbousiouf (10.Aug.2005) - 1.7.60:
- Bugfix: Check distance with merchant when a player sell something
------------------------------------------------------------------------------
Doulbousiouf (8.Aug.2005) - 1.7.59:
- Add: Rapid fire abilitie
- Bugfix: Player speed based on 1.75 new run speed
- Bugfix: Stable master correctly remove your ticket
- Bugfix: GainedExperience event is not fired when you loose xp (Etaew request)
- Bugfix: Necromencer no longer have quickCast ability (Etaew request)
------------------------------------------------------------------------------
Duff (7.Aug.2005) - 1.7.58:
- Change : formula of component X and Y will need perfect thing for hookpoint pop
- Refactor : the keep to cut tower from keep and add list of tower link to keep
- Add : /keep try to get near keep when no keep was created before
------------------------------------------------------------------------------
Doulbousiouf (7.Aug.2005) - 1.7.57:
- Bugfix: Correct sure shot abilitie and prepare for rapid fire
- Bugfix: Sure shot can only be interrupt by melee attack
------------------------------------------------------------------------------
Doulbousiouf (6.Aug.2005) - 1.7.56:
- Bugfix: Enchanter only enchant crafted items
- Add: secondary crafting skill requirement
- Add: One new albion quest
------------------------------------------------------------------------------
Duff (5.Aug.2005) - 1.7.55:
- Change : Clean all projects from bad files ;) I need cleaned folders for dnpb
- Change : removed all project file out dated from other IDE than VS2003
- New : dnpb is used.http://dnpb.sourceforge.net/
it allow all IDE to work with dol (monodevelopp/borland/sharpdevelopp/VS2002/VS2003)
dnpb can generate every IDE project file fom tehe xml file.
So if used #developp for example simply run the SharpDevelop.bat
(which just contain dnpb /target sharpdev)
With that we will have not to care of IDE you have.
I let visual studio 2003 project file because most used.
------------------------------------------------------------------------------
Noret (5.Aug.2005) - 1.7.55:
*) Code from me
- New: /duel command
- New: /release city command
- New: RR5 is considered +1 level for AF and DPS caps
- New: Realm points for resurrect
- New: Database version converters
- Changed: All ePackets values are xored by 0xA8
- Changed: WS base for stealthers
- Changed: Another timer implementation. All methods were changed to use milliseconds.
RegionTimer is similar to old GameTimer or a new class can be derived from RegionAction
- Bugfix: Mesmerized/stunned mobs attack the caster when effect expires
*) Based on code from Tiv
- New: Penetrating Arrow ability
- New: Arrow accuracy bonus
and some minor improvements
------------------------------------------------------------------------------
Doulbousiouf (4.Aug.2005) - 1.7.54:
- Bugfix : On pvp server player can cast speed buff with the pvp immunity timer (based on Etaew code)
- Add : 60 second rebind timer
- Add : RespawnInterval field in mob table and /mob respawn command
(val<0 mean random respawn 5-8 min, val>0 mean respawn time in second and val=0 mean no respawn)
- Add : 2 new albion quest and some quest corrections
------------------------------------------------------------------------------
Doulbousiouf (3.Aug.2005) - 1.7.53:
- Bugfix : Correct name color on pvp server (based on Etaew code)
- Add : Two new albion quests
------------------------------------------------------------------------------
Duff (2.Aug.2005) - 1.7.52:
- Add : Craft task
- Add : hastener npc
- Add : /Faction list to get list of all faction with id
- change : move some custom npc to a new folder name GameObjects/customNPC in core because
will need it in keep system wich is in core
------------------------------------------------------------------------------
Doulbousiouf (2.Aug.2005) - 1.7.51:
- Add: GiveMoney and GainedRealmPoints event (Etaew request)
- Add: one new albion quest
------------------------------------------------------------------------------
Duff (31.Jul.2005) - 1.7.50:
- Add: improove and go ahead in hookpoint system
- change : change all packet of keep hookpoint thanks to tiv decode
(so much thanks to him to help me and explain what i do not understand in it ;)
TODO : make smoe guard class and siege weapon for all hookpoint system
------------------------------------------------------------------------------
Doulbousiouf (31.Jul.2005) - 1.7.49:
- Add: 4 new Albion quests
------------------------------------------------------------------------------
Doulbousiouf (29.Jul.2005) - 1.7.48:
- Bugfix: Can't use potion in combat
- Add: Two new Albion quests
------------------------------------------------------------------------------
Doulbousiouf (28.Jul.2005) - 1.7.47:
- Bugfix: Correct interact and give item distance
- Bugfix: Stable master npc correctly fire receive item event
- Bugfix: Quest npc no longer say they does not want the item when they take it
- Add: Two new albion quests
- Changed: hastable in crafting manadger to static array
------------------------------------------------------------------------------
Duff (26.Jul.2005) - 1.7.46:
- Add : GamePlayer.createItemOnTheGround function because done a lot of time in code
- BugFix : owner of item on ground in crafting code
- Change : some little improovement in packet handling system
- BugFix : small mistake in size of packet handling
------------------------------------------------------------------------------
Doulbousiouf (26.Jul.2005) - 1.7.45:
- Changed: Refacoring advanced crafting skill
- Bugfix: Delve info for spellcraft gems and alchemy tinctures
- Bugfix: Reactive effect on shield only proc again player
- Bugfix: Charge effect can be used only if the item is equiped
- Bugfix: Charge effect reuse timer only use when last effect correctly start
- Remove: BonuType field from ItemTemplate
- Add : Potions support
------------------------------------------------------------------------------
Doulbousiouf (24.Jul.2005) - 1.7.44:
- Bugfix: Second crafting skill give only point on secondary skill
- Bugfix: When you inventory is full crafted items are created on the ground
- Remove: Salvage dialog reponse
- Changed: Correct some craft formula
------------------------------------------------------------------------------
Doulbousiouf (23.Jul.2005) - 1.7.43:
- Changed: Second part of the crafting system refactoring (player side mainly)
(Nota: Shard owners need to reset fields CraftingPrimarySkill and SerializedCraftingSkills
in the DOLCharacters table to enable craft)
------------------------------------------------------------------------------
Tiv (23.Jul.2005) - 1.7.42:
*) Code from LeBron
- Add: '/makeleader' command
- Changed: '/disband' can be used with player name or target
- BugFix: exception in useskill
- Changed: QC not used on insta spell
*) Code from me
- BugFix: remove player from LFG on quit
- Changed: showing LFG leaders
- Changed: showing LFG player Region for 1.76+
- Changed: items stack in inventory on pickup
- Changed: show opening style in style tooltips
- Changed: 'mob info' show max speed
- Changed: skills not sending any bonuses in Variouse packet
- Changed: hybridskills sending in few packets for 174+ if packet length > 1000
- Changed: '/range' command to look more like on live servers
- Add: clientside LOS check
- Add: KeepInfo for 173+
- Add: Warmap
------------------------------------------------------------------------------
Doulbousiouf (22.Jul.2005) - 1.7.41:
- Changed: Lot of improvement in the crafting system
- Changed: Crafting success chance formula and material lost formula
- Changed: Some others littles things in the crafting system
------------------------------------------------------------------------------
Doulbousiouf (21.Jul.2005) - 1.7.40:
- Changed: Big refactoring in crafting system
- Add: IsAllowedToCraft function in rule to prevent exploit on rvr and easily
restric craft by realm on pvp server
------------------------------------------------------------------------------
Doulbousiouf (20.Jul.2005) - 1.7.39:
- Bugfix: Can't use item / poison when dead
- Changed: Craft database structure (add index, primary key, remove unused field)
- Changed: eCraftingSkill.SpellCrafting = 13 and Alchemy = 4 according to client file
- Add : show missing raw material
- Add : some comment and correct sentences
(Nota: Shard owners need to reset fields CraftingPrimarySkill and SerializedCraftingSkills
to not corrupt the DOLCharacters table)
------------------------------------------------------------------------------
Noret (14.Jul.2005) - 1.7.38:
*) Code from Tiv
- Bugfix: Exceptions in /assist and /gc commands
*) Code from me
- New: UnbreakableSpeedDecrease spell handler for level 18+ snaring poisons and some spells
- New: Enabled 1.77 client support, waiting for launcher support
------------------------------------------------------------------------------
Noret (13.Jul.2005) - 1.7.37:
*) Code from Tiv
- Changed: NPCs quest effect disappears when player takes the quest
*) Code from LeBron
- Bugfix: Distance check was reversed in /assist command
*) Code from me
- Changed: Minimum style damage bonus set to 1
- Changed: List caster buffs/debuffs effectiveness is not affected by spec level
------------------------------------------------------------------------------
Duff (13.Jul.2005) - 1.7.36:
- New : thanks to RUDAL 3 type of object have been discover and aded to project:
AlchemyTincture = 47,
SpellcraftGem = 48,
GardenObject = 49,
The first 2 types will be very useful for spellcraft and alchemy system because
test is actually done with name and need something better to provide multi language system
- Bugfix : in keep system thanks to mflash report
------------------------------------------------------------------------------
Schaf (12.Jul.2005) - 1.7.35:
- New: GameMovingObject, a base class for siege weapons and boats
------------------------------------------------------------------------------
Schaf (11.Jul.2005) - 1.7.34:
- Changed: housemgr does now load faster
------------------------------------------------------------------------------
Duff (11.Jul.2005) - 1.7.33:
- New : one time drop loot generator and all db table with it.
- Remove: the check distance for interact and pickup because used a lot in
code but not call so much time on life of server
- Add : CheckSquareDistance to use it directely sometimes.
visibility check is never used in code because it use getinRadius function
and never check. So do not need it to improove server speed
------------------------------------------------------------------------------
Duff (7.Jul.2005) - 1.7.32:
*) Code by Neouni
- BugFix: in typo of gem
*) Code by me
- BugFix: small bugfix in begin of pet system
- BugFix: spell craft bug for buff
- BugFix: craft system make packsize (no more 1 arrow whereas must build 20)
- BugFix: craftsystem make item stackable when it can
------------------------------------------------------------------------------
WitchKing (4.Jul.2005) - 1.7.31
- Bugfix: PBAE spells should work now.
------------------------------------------------------------------------------
SmallHorse (3.Jul.2005) - 1.7.30 (no code change)
- Changed: I documented ALL DOLBase classes and removed the XML compiler warning
directives from the DOLBase project. DOLBase now compiles with
0 warnings and 0 errors.
------------------------------------------------------------------------------
Duff (3.Jul.2005) - 1.7.30:
- Add : /keepguard keep assign to current keep guard the nearest keep
- Add : a lot of comment in DolDB project ( 20 more files done ;op )
- BugFix : little bug fix in typo of faction system
------------------------------------------------------------------------------
Noret (3.Jul.2005) - 1.7.29:
*) Code by LeBron
- Bugfix: Magical items can't be enchanted, check was reversed (AdvancedCraftingSkill)
*) Code from Tiv
- New: /item proc
- Changed: Players in other regions can be invited to the group
*) Code from me
- New: A warning if SQL command took > 500ms
- Changed: Ablative armor absorbtion percent is read from Spell.Damage (0 .. 100), default is 50
- Changed: Group effect icons are sent only for players in current region
- Bugfix: AttackedByEnemy event was not fired in some cases
------------------------------------------------------------------------------
Smallhorse (2.Jul.2005) - 1.7.28:
- Bugfix: Paths should be saved correctly now again
------------------------------------------------------------------------------
Smallhorse (2.Jul.2005) - 1.7.27:
- Bugfix: Compiling is possible again now, there was a parameter bug in KeepEvent
- Changed: Renamed KeepTakken to KeepTaken event
- Changed: XML Compiler warnings are suppressed now in DEBUG builds!
To see the 1 Million missing/wrong/incomplete XML tags we have just
do a RELEASE build.
- Changed: NDoc only generates the CHM file now, no HTML pages anymore which
were too big anyway.
------------------------------------------------------------------------------
Doulbousiouf (1.Jul.2005) - 1.7.26:
- Change: No longer use item level to test is proc can work (only use proc spell level)
------------------------------------------------------------------------------
Doulbousiouf (30.Jun.2005) - 1.7.25:
- Bugfix: Can't /stuck when dead
- Bugfix: Level 51 items can proc
------------------------------------------------------------------------------
Schaf (30.Jun.2005) - 1.7.24:
- Bugfix: Fixed a bug which caused a client-side night when leaving a house
------------------------------------------------------------------------------
Duff (30.Jun.2005) - 1.7.23:
- Add : checkdistance functions and replace all where used in code
- Add : checkVisibilitydistance, checkinteractdistance,...
- Add : keep event for claime and lord kill
------------------------------------------------------------------------------
SmallHorse (30.Jun.2005): - 1.7.22:
- Changed: XML documentation generation in the projects
- New: "Dawn of Light.ndoc" project file to generate documentation with NDoc
------------------------------------------------------------------------------
Noret (30.Jun.2005) - 1.7.21:
*) Code from Tiv
- Bugfix: Weapon defensive/offensive procs use ProcSpellID instead of SpellID which is for charges
*) Code from me
- Bugfix: Pet window effects are updated when controlled NPC lose buffs
------------------------------------------------------------------------------
Blue (29.Jun.2005) - 1.7.20:
- Changed: Optimized Region memory usage
(dynamical object array, bit arrays for fast inserting)
- Changed: Optimized OIRData (GameObject) to construct less objects and use less mem
(after these optimizations DOL uses about 170MB with full db (65k Mobs) after start)
------------------------------------------------------------------------------
Schaf (29.Jun.2005) - 1.7.19:
- Changed: some housing updates, see housing/readme.txt
- Removed: /house command - does not work with new housing system
you'll need a lot database, see doldata
------------------------------------------------------------------------------
Noret (29.Jun.2005) - 1.7.18:
*) Info from Tiv
- Changed: EquipmentUpdate packet for 1.76 clients
------------------------------------------------------------------------------
Noret (28.Jun.2005) - 1.7.17:
- Bugfix: DefensiveProc should work again
------------------------------------------------------------------------------
Doulb (28.Jun.2005) - 1.7.16:
- Bugfix: escape char ' with xml db (qoole fix)
------------------------------------------------------------------------------
Duff (27.Jun.2005) - 1.7.15:
- Bugfix: get distance in point3D (thanks o deusxl for report)
------------------------------------------------------------------------------
Noret (26.Jun.2005) - 1.7.14:
*) Code from Neouni
- New: dye.Model 538 is used for weapon luster
*) Code from me
- Bugfix: Mobs switching target do not prevent execution of styles with defensive opening
and some other related problems (Bug# 1166739)
------------------------------------------------------------------------------
Noret (25.Jun.2005) - 1.7.13:
- New: Character spell lines are saved/loaded from DB. If spell line is not
level based and char has no spec for that line, its level is set from DB.
- Changed: Util.Chance(double) renamed to Util.ChanceDouble(double), was too ambiguous
- Bugfix: Other players can see levelup animation if leveled player is not moving
------------------------------------------------------------------------------
Noret (24.Jun.2005) - 1.7.12:
*) Code from Tiv
- Bugfix: Item acuity bonus for 1.75+ clients
- Changed: SendFindGroupWindowUpdate for 1.76+ clients
------------------------------------------------------------------------------
Duff (25.Jun.2005) - 1.7.11:
- Bugfix: realm name in keep takken
- Change : start to add hookpoint system
- Remove : keep bonus
- Add : keep type
- Change : packet 1.74 WriteGroupMemberUpdate
------------------------------------------------------------------------------
Noret (24.Jun.2005) - 1.7.10:
- New: 1.76 client support
------------------------------------------------------------------------------
Noret (22.Jun.2005) - 1.7.9:
- Changed: Block chance is halved for DW attacks
- Bugfix: Null reference exception in CalculateEnemyAttackResult
------------------------------------------------------------------------------
Smallhorse (21.Jun.2005) - 1.7.8:
- Bugfix: Root directory was set wrong when starting as service
- Bugfix: Root directory was set wrong when starting from different directory
- Bugfix: Exception in WorldMgr during shutdown
------------------------------------------------------------------------------
Noret (21.Jun.2005) - 1.7.7:
- Bugfix: Cast speed cap
------------------------------------------------------------------------------
Noret (20.Jun.2005) - 1.7.6:
- Bugfix: In rare cases timer callbacks were invoked when they shouldn't
- Bugfix: Skill lists are updated after class scripts are loaded
------------------------------------------------------------------------------
Duff (18.Jun.2005) - 1.7.5:
- Bugfix: notify of use slot is in wrong place (thanks to dre report)
------------------------------------------------------------------------------
Noret (18.Jun.2005) - 1.7.4:
*) Code from Tiv
- Bugfix: Left hand poison/proc is started when left hand hits
------------------------------------------------------------------------------
Schaf (18.Jun.2005) - 1.7.3:
- Changed: Made database ready for the new housing system
------------------------------------------------------------------------------
Doulb (18.Jun.2005) - 1.7.2:
- BugFix: Not allow dead player to move inventory items
- BugFix: Don't restart heal regeneration when dead
- Changed: Only one spell line for all items effects
------------------------------------------------------------------------------
Noret (17.Jun.2005) - 1.7.1:
*) Code by DeMAN
- New: AblativeArmor spell handler
*) Code from Tiv
- Changed: Revive event is fired after region change
- Changed: Items acuity bonus is shown in stats window for 1.75+ clients
- Bugfix: Usernames for DB selects are "escaped" in IsAllowedToConnect
*) Code by LeBron
- Changed: Axe/Sword/Hammer in left hand use LeftAxe weapon spec for damage calc
*) Code from me
- New: AllDualWieldingSkills and AllArcherySkills bonuses
- Changed: Some specs and focuses delve info names, mostly added word "magic" where it was missing
- Bugfix: Effect is not started if it is not added to the effects list
- Changed: Items acuity bonus is capped
- Changed: OffensiveProc fire on AttackFinished event instead of AttackedByEnemy
- New: Character abilities that are not in the class script are loaded from DB
and specs/abilities can be removed from player now
- Changed: Player effectiveness affects only DD spell's damage
- Changed: Evade chance is halved for DW attacks and some small changes to the formula
- New: 50% chance to miss if strafing
- Changed: Removed GameObject.Random methods, Util.Random should be used
- Changed: Can't cast faster than 60% of spell time
------------------------------------------------------------------------------
Smallhorse (17.Jun.2005) - 1.7.0:
- Changed: Version to 1.7.0 ;-)
------------------------------------------------------------------------------
Smallhorse (17.Jun.2005) - 1.6.10:
STABLE branch was updated with this Version (1.6.10)
------------------------------------------------------------------------------
Doulb (16.Jun.2005) - 1.6.10:
- BugFix: Add 3 minutes reuse timer for charged items
- BugFix: Add level check for poison / proc / reactive proc effect
------------------------------------------------------------------------------
Blue (15.Jun.2005) - 1.6.9:
- Changed: GameTimer used in NPC movement code
- Changed: Mobs return to exact spawnpoint after fight
- Changed: Precaching NPC equipments for fast world loading
- Changed: MeleeDamageType 0 defaults to Slash (NPC's)
- Changed: Relocation Timer per Region replaced by one Relocation Thread in WorldMgr
- Changed: Zone only allocates memory when its used
- Changed: Mob strength raises not linear by level, its more exponentiell now (live tests confirmed)
- Changed: NPC's (Realm<>0, eg. guards) with no defined aggro get twice the amount of normal mobs
- Changed: Respawninterval changed. There is also difference now for mobs > level 65
- Bugfix: Its more unlikely now to fall from horse at start
------------------------------------------------------------------------------
Doulb (13.Jun.2005) - 1.6.8:
- Clean: poison / proc / reactive proc system
- Change: remove PoisonID from InventoryItem table, add ProcSpellID in ItemTemplate
- Bugfix: poison can't be applied on item with a charged effect exept another poison
- Bugfix: another delve info part
------------------------------------------------------------------------------
Duff (13.Jun.2005): - 1.6.7
- BugFix : in keep init refactor
------------------------------------------------------------------------------
Doulb (12.Jun.2005) - 1.6.6:
- Change: Move poison spell to SpellId field in ItemTemplate
- Bugfix: poison delve
------------------------------------------------------------------------------
Noret (12.Jun.2005) - 1.6.5:
- New: KeepMgr.GetAllKeeps() gets a copy of the current keeps table
- Changed: Players special effects list was removed with 1.6.4 update, back again
- Bugfix: Null exception in KeepManager when keep for component doesn't exist
------------------------------------------------------------------------------
Duff (11.Jun.2005): - 1.6.4
- Change : refactor faction system to be much optimized.
- Change : keep init refactor
------------------------------------------------------------------------------
Noret (11.Jun.2005) - 1.6.3:
- New: Stacktrace for game timer thread monitor
- Changed: "stacktrace" console command results are logged instead of writing to console
------------------------------------------------------------------------------
Smallhorse (11.Jun.2005) - 1.6.2:
- Add: Debug code that makes it possible to see the stack trace of all current
running packet handlers. Just type "stacktrace" in the console of
DOLServer. If you get an empty list this means NO networking thread is
currently active in a packet-handler.
If you encounter any troubles with this code just comment the
#define LOGACTIVESTACKS
line at top of the PacketProcessor.cs file and recompile to remove this
feature!
------------------------------------------------------------------------------
Noret (11.Jun.2005) - 1.6.1:
- Bugfix: All player effects are removed after death
------------------------------------------------------------------------------
Smallhorse (10.Jun.2005):
- Changed: Version number in AssemblyInfo.cs to 1.6.0.0
- Changed: Util.Random to DOL.GS.Util.Random in StandardMobBrain
because NANT would fail to compile otherwise
------------------------------------------------------------------------------
Noret (9.Jun.2005):
- Changed: AssemblyVersion is back to GameServer.dll
- Changed: Lazy initialization of GameTimer.Properties, regen and respawn timers
- Changed: Some managers are selaed now
------------------------------------------------------------------------------
Doulbousiouf (9.Jun.2005):
- BugFix: combat speed spells don't send player stats update
- BugFix: Now taunt spells target is notified about the attack
------------------------------------------------------------------------------
Blue (8.Jun.2005):
- Change: Removed Windows dependend code from mySQL Connector (mono compilability)
------------------------------------------------------------------------------
Duff (8.Jun.2005):
- BugFix : component level is good now
- Change : keep bonus removed and start to done new system for it.
- Add : more comment in code
- Add : keep lord interact for claim
- Add : claim accepte window
- BugFix : /mob nfastcreate and nrandcreate no need target anymore
- Add : /keepguard command is working now.if you see some bug report it.
(still need fastcreate for midgar and hibernia)
------------------------------------------------------------------------------
Noret (7.Jun.2005):
*) Code from Tiv
- New: Charge/proc info in items delve
- New: /item command can be used to set material and spell
- Bugfix: /item savetemplate saves Material, MaterialLevel, Charges, MaxCharges and SpellID
*) Code from me
- New: Random chance for procs
- New: Weapons lose condition when used
- Changed: Added a check to not allow armors condition to drop bellow zerro
- Changed: All old GameObject events are routed through GameObject.Notify
- Changed: Only melee attacks can be parried (Bug# 1200740)
- Changed: Realm Level is saved to DB
- Changed: GlobalConstants.IsWeapon returns true for shields
- Bugfix: Poison is started after weapons damage
- Bugfix: Proc works on mobs too
- Bugfix: Archers are auto targeted after first attack from stealth (Bug# 1200750)
- Bugfix: Dead targets aren't included in the spreadheals list
------------------------------------------------------------------------------
Duff (6.Jun.2005):
*) Code by me but inspired a lot from Nydirac from "Promise shard"
- Add : keep system upgrade for upgrade
- Change : some keep packets change to fit to real packet
*) Code by me
- Add : keep bonus (only damage bonus, have to see how work on NF)
- Add : many comment in code
- BugFix : packet component update fit more to reality thanks to tiv
(but need hookpoint system to be finished)
- BugFix : path save in DB (maybe some path db have been corrupt because only
first path is saved.
- Change : DBDoor to add difficulty level for each realm and original realm
( will post new DB soon but need some times because i have not new
difficulty level of keep and tower in NF)
------------------------------------------------------------------------------
Noret (3.Jun.2005):
*) Code from LeBron
- Bugfix: Players armor ability level is compared to items armor level if items realm is set
*) Code from Tiv
- Bugfix: Hybrid skills are disabled properly
*) Code from me
- New: The timer to check game timers for deadlocks
Enabled by setting debug level for DOL.GS.GameTimer in logconfig.xml
but takes a bit of performance hence disabled in the default config
New fields that are always updated and can be used with /code command:
DOL.GS.GameTimer.GameTimerMgr.CurrentCallback
DOL.GS.GameTimer.GameTimerMgr.CallbackStart
- Changed: The following skills are removed from +ALL melee weapon skills
Parry, Shields, Dual_Wield, Left_Axe, Celtic_Dual
http://www.camelotherald.com/more/1036.shtml
- Changed: Shield quality affects block rate
- Changed: A warning is logged when player weapons with Type_Damage=0 are loaded
- Changed: Poisons can be applied on a weapon even if another poison was already applied
------------------------------------------------------------------------------
WitchKing (03.June.2005):
- BugFix: objects loaded from database are now correctly added to the world
- BugFix: removed two sources of NullReferenceException in new Zone/Region management system
------------------------------------------------------------------------------
Duff (31.May.2005):
- Add : keep claim,release and upgrade (it is at beta stage but all strcture is done)
it remove bp on guild and command update with it
- Change : DBDoor because since some version keep door is linked to keep level
- BugFix : 2 quests miss empty constructor
- Add : more null check in keep guard and keep command
------------------------------------------------------------------------------
Doulbousiouf (02.June.2005):
- Changed : All quests reworks now
------------------------------------------------------------------------------
Noret (31.May.2005):
- New: GlobalConstants.DamageTypeToName(eDamageType damage)
- Changed: Indexes for some tables
- Changed: Moved some eProperty formulas to calculators
- Changed: Brain.Start() and Stop() returns true if started/stopped. Needed for derived classes.
- Changed: Removed events GameLivingEvent.LastAttackTickChanged and LastAttackedByEnemyTickChanged
- Changed: Parry in 120 degree arc too (was 180)
------------------------------------------------------------------------------
Duff (31.May.2005):
- Change : add keep command to make easily keep with fastcreate to use model kype
------------------------------------------------------------------------------
Doulbousiouf (31.May.2005):
- Changed : Small improvement in the quest system
- Changed : All midgard quests are now compatible
------------------------------------------------------------------------------
Blue (31.May.2005):
- Changed: Added Path compatibility mode for existing pathpoint data (broken horse routes)
------------------------------------------------------------------------------
Duff (30.May.2005):
- Change : DBdoor contain now new flags for keep door and is loaded at start.
- Change : a bit door system
- BugFix : path point null exception
- Change : naming rules make guild property become Guild
- Change : improove a bit keep system
------------------------------------------------------------------------------
Doulbousiouf (29.May.2005):
- Add : Yellow circle on the ground when a npc can give you a quest
Todo: all quests files need two minor changes (use HelpSirQuait.cs as example)
------------------------------------------------------------------------------
Duff (22.May.2005):
*) Code from Neouni
- Change : Nant build file updated and clean target added
------------------------------------------------------------------------------
Noret (28.May.2005):
- Changed: Shield blocks in 120 degree arc (was 180)
- Changed: Passive pet is switched to defensive on attack command
- Changed: StopFollow() on NPC death
- Changed: Controlled brain's MAX_OWNER_FOLLOW_DIST is set to int.MaxValue because
they always follow the owner
- Changed: Controlled NPC is always updated to its owner
- Changed: /mob info is shown in CustomTextWindow
- Changed: Controlled NPC aggression state changes do not stop movement
------------------------------------------------------------------------------
Blue (28.May.2005):
- Bugfix: New Hashtable crashed with negative hash values
------------------------------------------------------------------------------
Noret (27.May.2005):
*) Code from Tiv
- Bugfix: Doors do not instantly close after open
- Bugfix: Exceptions in DoorMgr and KeepManager
*) Code from me
- Changed: Items are saved every time they are move in inventory
- Changed: Removed GameTimer(GameTimerCallback callbackFunction) constructor
was way too far from intuitive, error with doors was done because of it
and some other i've noticed its functionality still can be repeated with timer.Start()
- Bugfix: Dead livings do not regenerate hp/power/endurance if they were buffed
- Bugfix: Mobs do not attack other mobs
------------------------------------------------------------------------------
Smallhorse (27.May.2005):
- Changed: Fiddled a small bit with the new door system ;-) Mainly just
changed the State to eDoorState instead of bool value and added
some locking and timer-checks in case two players want to open
a door at the same time.
- Bugfix: KeepDoors don't regenerate healt,power or endurance.
- Bugfix: In Zone, now doors should no longer cause ClassCast exceptions
------------------------------------------------------------------------------
Noret (27.May.2005):
- Changed: Another spell damage formula, thanks to these tests
http://www.silicondragon.com/Gaming/DAoC/Guides/Sorc_Wiz_Nukes.htm
------------------------------------------------------------------------------
Blue (26.May.2005):
*) Code from Schaf
- Bugfix: Players are only allowed to sell items to merchants now
*) Code from me
- New: Basic support for different instant money items, currently hardcoded
("bag of coins", "small chest", "large chest", "some copper coins")
- New: Ability for GM/admin to /target <mobname> within some distance
- Change: Con level diff formula changed
- Change: Added Status(int) and Mail(string) fields to account table for later use
- Change: SQL index in loot template added
- Change: SQL commands are logged with DEBUG level
- Change: New WeakRef class to work around WeakReference(null) problems in Mono
- Bugfix: Fixed packet handling (Mono compatibility)
- Bugfix: Fixed NullRef in shutdown of server
------------------------------------------------------------------------------
SmallHorse (26.May.2005):
*) Code from Konik & WitchKing
- Changed: Zone/Region object handling improved
- New: Hashtable and DictionaryEntry utility collection class
- New: FastMath utility class
- Added: Two new mob commands to do some random mob creations... :)
------------------------------------------------------------------------------
Doulbousiouf (22.May.2005):
- Add : new 1.71 npc flags
------------------------------------------------------------------------------
Duff (22.May.2005):
- Add : region field in DBdoor
- Change : a bit door system with X Y and add field heading in adddoor
- Add : open, close and Flag field added and move some thing about door in GameDoor
- BugFix : missing heading in keep component thanks to Tiv
------------------------------------------------------------------------------
Blue (25.May.2005):
- Changed: WorldMgr loads zones and regions before compiling scripts
(needed if GameLocation is instantiated in static initializers, like some quests do)
- Changed: Included newer log4net version
------------------------------------------------------------------------------
Noret (25.May.2005):
- New: No exp for recently charmed mobs
- Changed: Pulsing charm works better
- Changed: Improved controlled brain and moved aggro leftovers from GameMob to StandardMobBrain
- Changed: Small improvements to the inventory
- Bugfix: Power and endurance regenerate again after release
- Bugfix: Items acuity bonus is included in stats calculator
------------------------------------------------------------------------------
Duff (22.May.2005):
- BugFix : door system arraylist init
- BugFix : init of keep bug
- BugFix : some bugfix and improove and more check in keep system
------------------------------------------------------------------------------
Noret (22.May.2005):
- Bugfix: ArgumentOutOfRangeException in WorldMgr.NPCUpdateThreadStart()
------------------------------------------------------------------------------
Duff (20.May.2005):
*) Code from Nydirac from "Promise shard" merged with my keep code
- Add : real Keep system with DB and better design
- Add : keep object system wich is very flexible thanks to an advice of noret so
it contain guard, banner
- Add : keep door
- Add : keep guard system
- Add : keep banner system
*) Code from me
- Add : Door manager
- Removed : eRealmType enum which is the same than eRealm...
- Add : region event when player leave and enter in region
- Add : reorganize region and area event in world folder
- Add : wait time to each path point
- BugFix : woodworking typo and add it to all trained needed
TODO : make system to load keep door link to keep component
TODO : make DB for all keep object(guard and banner) and keep door
------------------------------------------------------------------------------
Duff (18.May.2005):
- BugFix : single permission exception in some case
- BugFix : /jump command to make usable /jump playername to X Y Z in console
- Add : /mob Brain to set own brain of mob
- Add : RoundsBrain to make mob walk through path point.
- Add : /Path type <ePathType> to make path looping, reverse or fire once./path type to know epathtype
To make a mob walk through pathpoint just make a pathpoint and set the name to
internalID (object id in DB) of mob +"Rounds" (you can make the path loop with /path loop)
for example : spider with id spider001 make a path named "spider001 Rounds"
After you set the brain of mob with /mob brain command to RoundsBrain and
here we go you have a mob walking through path point.
TODO : adapt a sort of randomwalk brain and a brain for each type of mob
like caster, buffer, healer, archer,...
*) Code from Neouni
- Add : siegcraft raise to 1% of primary skill when alchimist or spellcrafter use it
- Add : Add new class support in allowed class to craft in each craft master
------------------------------------------------------------------------------
Noret (12.May.2005):
*) Code from Tiv
- New: Items delve to group/guildchat and chat group
- New: All BG keeps
*) Code from me
- Changed: SendItemCreate sends the Emblem instead of the current region ID
SendDoorCreate same field set to 0 since no emblem on DBDoor although
live servers send emblem there too
------------------------------------------------------------------------------
Doulb (10.May.2005):
- BugFix: face customisation for HalfOgre, Frostalf and Shar
- BugFix: null exception with left hand weapon
- Add: Catacomb npc who enable player to reconfigure char face
------------------------------------------------------------------------------
SmallHorse (10.May.2005):
- BugFix: Fixed NANT build file to compile the solution now
use "nant" to compile debug builds into the /debug directory
or "nant release" to compile release buidls into the /release directory
------------------------------------------------------------------------------
Noret (10.May.2005):
*) Code by Etaew
- New: /cg invite asks you if you want to join.. and some other minor changes
- New: GameMob.RespawnInterval property is public virtual now
*) Code from Tiv
- New: Catacombs face mood type is stored/loaded
- New: /faceloc and /facegloc no longer cancels stick/follow/face of other players on that target
------------------------------------------------------------------------------
Doulb (9.May.2005):
- BugFix: null reference exception in quiver system
------------------------------------------------------------------------------
Noret (7.May.2005):
*) Code by Etaew
- New: Distance check for picking up loot. Set to 512 at the moment that is say whisper and info distance
------------------------------------------------------------------------------
Noret (6.May.2005):
- Bugfix: /code command search for referenced assemblies in /lib folder
- Bugfix: /dismiss shows correct anmation (Bug# 1186795)
------------------------------------------------------------------------------
Noret (5.May.2005):
*) Code from Etaew
- Bugfix: Guild rps/bps are loaded from DB
*) Code from Gman
- New: Catacombs classes (can be disabled by removing trainers or removing/replacing trainer scripts)
*) Code from me
- New: Unique name for every ability level can be set in Name field in DB "level|name;level|name"
can skip levels and must always use %n to add roman level numbers where needed
- New: Converted all armor abilities to level-based. Keynames and names:
AlbArmor: "0|GenericArmor;1|Armor Ability: Cloth;2|Armor Ability: Leather;3|Armor Ability: Studded;4|Armor Ability: Chain;5|Armor Ability: Plate"
HibArmor: "0|GenericArmor;1|Armor Ability: Cloth;2|Armor Ability: Leather;3|Armor Ability: Reinforced;4|Armor Ability: Scale"
MidArmor: "0|GenericArmor;1|Armor Ability: Cloth;2|Armor Ability: Leather;3|Armor Ability: Studded;4|Armor Ability: Chain"
- New: Converted shield to level-based ability, keyname "Shield"
"1|Shield Ability: Small Shields;2|Shield Ability: Medium Shields;3|Shield Ability: Large Shields"
Old abilities can be removed from all chars
- New: eProperty.AllMagicSkills and eProperty.AllMeleeWeaponSkills,
needs checking in SkillBase.InitPropertyTypes()
------------------------------------------------------------------------------
Doulbousiouf (4.May.2005):
- Bugfix: Correct gtaoe target selection
- Bugfix: Correct the LanguageMgr parsing fct
------------------------------------------------------------------------------
Noret (2.May.2005):
*) Inspired by code from Etaew
- New: Natural armor resists
- New: Realm field for ItemTemplates
------------------------------------------------------------------------------
Smallhorse (2.May.2005):
- Changed: SharpDevelop compiles DOL again now.
The only problem is that SharpDevelop doesn't manage relative build
paths. Perhaps you might have to change the build-output directories
of all your projects.
------------------------------------------------------------------------------
Smallhorse (1.May.2005):
- New: Added ./lib directory into the serach parth for referenced assemblies, on
startup the server searches this directory for DLLs too now.
Only file that needs to be in root now is DOLServer.exe, all DLLs can go
into /lib now.
- Changed: Compilation process. All projects compile locally and have local copies
of their referenced assemblies.
The GameServer project compiles to /debug/lib or /release/lib and
copies all referenced assemblies there too (DOLBase, DOLDatabase, ...)
automatically.
DOLServer.exe and DOLServer.pdb are copied to /debug or /release as
post build copy event. The reason for not simply compiling into the
output directory and not copying the references of DOLServer is that
VS.NET locks reference Assemblies (without the LocalCopy=True flag)
which results in compile errors! For more information why the post-
build process is required here see:
http://support.microsoft.com/default.aspx?scid=kb;en-us;313512
- Changed: GameServer.lng file is now created in the /config directory per default
and it's location can be specified via serverconfig.xml
- Changed: Script compilation target now defaults to /lib/GameServerScripts.dll
- Removed: compres.txt file is not generated anymore, script errors are logged to
the gameserver logfile and displayed on screen anyway!
- Bugfix: Root directory now is not the location of the gameserver.dll file but the
location of the EntryAssembly (the first executed assembly)
- Bugfix: Release builds now work, there were some directorie issues after compiling
- Changed: Added nunit directory to the sharedModules and reference this assembly from
the UnitTests project now. Not sure if NUnit now still needs to be installed
to do the NUnit tests but at least the assemblies compile.
- Changed: In NUnit startup, the current directory is set to /debug so the normal
server configuration is taken. Log file output is created in the UnitTests
directory at UnitTests/bin/Debug/logs
Tested some test-cases and they worked just fine :)
To see the new clean directory structure simply delete your output directory completly
(save the database) and do a recompile. Then start the server via DOLServer --start
and it will create all the directories and config files automatically.
------------------------------------------------------------------------------
Noret (30.Apr.2005):
*) Based on info from Tiv
- New: UseSpellHandler reads player's x/y/z
- Changed: Lifedrain can steal more life than target had before damage
*) Based on code and info from Organical
- New: Charm spell handler (pulsing charm and brain needs 'some' work still)
*) Code from me
- Changed: Simplified client disconnects
------------------------------------------------------------------------------
Duff (28.Apr.2005):
- Add : faction command
- Add : Check of remove online player in guild to warn if do not succeed
- Removed : header of echostrom in DBFaction where it have been refactor
completely
- Add : new system of single permission for shard which need to allow special
permission to a player for just one command or two.
use "/plvl single mob" with target player to allow player to execute "/mob"
and use "/plvl remove mob" to remove single permission to player to execute
"/mob"
------------------------------------------------------------------------------
Noret (28.Apr.2005):
*) Code from Tiv
- Changed: Lifedrain can't steal more life than target had before damage
*) Code from me
- Changed: Moved all aggro methods to the brain
- Changed: Shields do crush damage (hardcoded for now)
- Bugfix: NullReferenceException in player inventory MoveItem
------------------------------------------------------------------------------
Doulbousiouf (26.Apr.2005):
- Change: Customised char are correctly displayed with 1.75
- Bugfix: Shield damage type
- Bugfix: Correct normal server rules to take care shield size
------------------------------------------------------------------------------
Noret (25.Apr.2005):
- New: Basic controllable brain
- Changed: Global event handlers are searched only in GameServer and compiled scripts
- Changed: Removed /recompile command and scripts are compiled on disk again -
shows line numbers in exceptions
- Bugfix: Scripts are recompiled if one of them was removed
- Bugfix: Data from config files is loaded again. Can't load data in base constructor and
set default values in derived constructor.
------------------------------------------------------------------------------
Smallhorse (25.Apr.2005):
- Add: --start parameter to DOLServer commandline
- Add: -config parameter to --start to point to location of server config file
Standard location is now /config/serverconfig.xml
Directory and file will be created if it does not exist
- Removed: DOLGameServerConsole project, replaced by DOLServer --start
- Changed: Server configuration now contains
logconfig file location (default ./config/logconfig.xml)
region config file location (default ./config/regions.xml)
zone config file location (default ./config/zones.xml)
invalid names file location (default ./config/invalidnames.txt)
PLEASE DELETE ALL XML AND LOGFILES in your GameServer root directory as well as
all DOLGameServerConsole.exe/pdb files you might still have.
Start the Server via "DOLServer --start" and let it create all directories and
config files for you :-) Enjoy!
------------------------------------------------------------------------------
Doulbousiouf (25.Apr.2005):
- Change: Rename ChangeFaceAllowed to CustomisationStep (more exprecive)
------------------------------------------------------------------------------
Duff (25.Apr.2005):
- Add : faction cached in mob and player
------------------------------------------------------------------------------
Doulbousiouf (24.Apr.2005):
- New: Character face customisation under catacomb
------------------------------------------------------------------------------
Noret (24.Apr.2005):
*) Code from LeBron
- Bugfix: PBAE effectiveness is calculated from caster to target
*) Code from me
- New: Special animation for styles with 2h weapons can be set in Style table
- New: /mob range - sets aggro range, /mob damagetype - sets damage type
- New: targetNpc and targetMob can be used with /code same thing as (target as GameMob)
------------------------------------------------------------------------------
Smallhorse (23.Apr.2005):
- Changed: Fixed .NET 2.0 Usage of Array.Resize, Gandolf, please be carefull,
we don't use .NET 2.0 yet, it's beta and .NET 1.0 doesn't support
Array.Resize -> which results in compile errors! Changed it to
ArrayLists
- Changed: Removed CryptLib168.dll and dependencies! Anyone wanna try compile
in Linux now? :) :)
- Changed: Removed visibility timer (AI) from GameNPC, it is implemented in
APlayerVicinityBrain already which is the StandardMobBrain
- New: Added nant.build file to build the solution from the commandline and
copy all scripts etc.
------------------------------------------------------------------------------
Gandulf (23.Apr.2005):
*) Code from me
- Change : In MobXLootTemplate MobName no longer has to be unique. Which means
that multiple LootTemplates can be added to a mob. Either rebuild table
or remove constraint manually in database.
------------------------------------------------------------------------------
Noret (23.Apr.2005):
- New: NPCs use basic AI added by SH
- Changed: NPC base max speed is read from DB
------------------------------------------------------------------------------
Doulb (22.Apr.2005):
- Remove : eProperty.Skill_Cave_Magic because it's the same things of eProperty.Skill_Subterranean
------------------------------------------------------------------------------
Gandulf (20.Apr.2005):
*) Code from me
- Change : DropCount is now customizable for loottemplate based generators within
the MobXLootTemplate Table. Add a column "DropCount" int default 1
manually if you don't want to loose data via table deletion and
autorecreation
------------------------------------------------------------------------------
Duff (19.Apr.2005):
*) Code from moumou
- BugFix : Quest packet
*) Code from me (based on FR code, Echostorm's faction system)
- Add : faction system with DB to know aggro of player for a faction
(DBFactionAggroLevel) and linkedFaction table contain name of faction
and the friend faction and enemy faction
- Add : AggroLevelTo function to get aggro to player for mob to use faction system
TODO : command to make faction and add faction to a mob
------------------------------------------------------------------------------
Noret (19.Apr.2005):
- New: Ammo damage type is used for fired weapons
------------------------------------------------------------------------------
Noret (18.Apr.2005):
*) Code from Etaew
- New: Melee resists (no natural armor resists yet)
------------------------------------------------------------------------------
Duff (17.Apr.2005):
- Add : a small test which do not succeed for inventory
- Change : the nunit loading to work with all new system
TODO : write more test to test inventory
------------------------------------------------------------------------------
Noret (17.Apr.2005):
*) Code by Roach, Ogre, Etaew and me
- New: Tiny /anonymous command
*) Code from me
- New: More error messages in player inventory
- New events: GamePlayerEvent.LevelUp
GamePlayerEvent.LevelSecondStage
------------------------------------------------------------------------------
Duff (16.Apr.2005):
- BugFix : the bug of saveplayers come from saveguild where a foreach on an
hashtable make an exception of cast (thanks to malkavien of amtenael
to see that) so now it only check on values
- BugFix : /gc promote <newrank> [playername] but thanksto the convert in ushort
so make it convert to int (maybe come from sign or other). hope it
will work now.
- Change : reorganize the crafting system
------------------------------------------------------------------------------
Blue (15.Apr.2005):
- Bugfix: SQL database caused ClassCastException
------------------------------------------------------------------------------
Noret (15.Apr.2005):
- New: eChatType.CT_Staff = 0xF, used by CSR
- Bugfix: Removed SendPlayerJump from packetlib174, it is not changed
------------------------------------------------------------------------------
Duff (15.Apr.2005):
- New: Integrated mySQL Connector.NET 1.0.4
Highlights:
- Bugfix : calling prepare causing exception
Fixed another small problem with prepared statements
- Bugfix : MySqlCommand.Connection returns an IDbConnection
- Bugfix : MySqlAdapter.Fill method throws Error message : Non-
negative number required [fixed]
- Bugfix : Clone method bug in MySqlCommand [fixed]
- Bugfix : MySqlDataReader.GetString(index) returns non-Null
when field is Null [fixed]
- Bugfix : MySqlReader.GetInt32 throws exception if column is
unsigned [fixed]
- Bugfix : GetBytes is working no more [fixed]
- Bugfix : Quote character \222 not quoted in EscapeString
Fixed problem that causes named pipes to not work with some blob
functionality
Fixed problem with shared memory connections
- Bugfix : Problem with Multiple resultsets... [fixed]
Added or filled out several more topics in the API reference
documentation
- Remove : the test in escape function with "’" char because it is in MySQLString now
thanks to new driver
Note : to make the SQL driver compatible must remove access to Kernel.dll and
if you read the namedpipestream file you will see in comment code for
it but not for all function takken in kernel so have to monitor if next version
do not use the win32 kernel and make it compatible again with mono (like byteFX)
------------------------------------------------------------------------------
Noret (14.Apr.2005):
*) Code from Etaew
- Bugfix: Players are removed from chat group on disconnect
------------------------------------------------------------------------------
Doulb (13.Apr.2005):
- Bugfix : char ’ is now correctly escaped in mysql drivers
------------------------------------------------------------------------------
Duff (13.Apr.2005):
- BugFix : some bug in spellcraft
- Add : proc effect support on item
- Add : reactive effect support on item
- Add : charge on item
- Add : charge proc and reactive in spell craft
- Add : few field in DB of item for spell and charge and maxcharge
------------------------------------------------------------------------------
Noret (13.Apr.2005):
*) Based on code from Tiv
- New: Resists updates for 1.75+ clients
*) Code from me
- Changed: ActiveWeaponSlot is readonly now, only SwitchWeapon should be used
to change active weapon slot and set active visible weapon slots
which are set to none by default
- Bugfix: Right hand weapon bonuses are added on char load if slot is active
------------------------------------------------------------------------------
Doulb (11.Apr.2005):
- BugFix : Mob with two handed or distance weapon show it
------------------------------------------------------------------------------
Noret (12.Apr.2005):
- Changed: GameNPC.BroadcastUpdate() is virtual now
- Changed: GameNPC.TurnTo methods no longer brodacast update, that is done in Heading setter
------------------------------------------------------------------------------
Duff (11.Apr.2005):
- BugFix : game server config save auto account creation now
------------------------------------------------------------------------------
Doulb (11.Apr.2005):
- BugFix : Correct a null exception in defensive combat style
------------------------------------------------------------------------------
Noret (11.Apr.2005):
*) Code from Etaew
- Bugfix: Can't invite self/join own chat group
- Changed: On NPC equipment load active weapon slot is set to 2h/distance if there is a weapon
*) Code from Tiv
- New: 1.75 clients support
- Bugfix: Other players realm for 1.74+ clients
*) Code from LeBron
- Changed: Stealth styles use Critical_Strike spec instead of weapon spec for damage bonus
*) Code from Rudal
- Changed: Only self/group pulsing spells show animation on FinishSpellCast
- Changed: Pulsing debuffs show effect animation on targets
*) Code from me
- New: log can be used with /code command
- Bugfix: Magical bonus from weapons are added only once
- Bugfix: Tradewindow
- Bugfix: Commands can be executed from DOLGameServerConsole
- Bugfix: All char items and quests are removed when char is removed (Bug# 1079285)
(hint: clean you dbs)
- Bugfix: Spells with immunity effect no longer expire if in immunity state
- Bugfix: Null reference exception with multiple SpeedDecreaseSpellHandler's
------------------------------------------------------------------------------
Doulb (10.Apr.2005):
- BugFix : you can engage versus bolt spells
- BugFix : you can't engage if target is under attack
- BugFix : GetItem function in MerchantTradeItems work with all items
- BugFix : resurection sickness make player effectiveness to 0 on cancel
- Change : small clean for spells in gameplayer and add more test when
saving player inventory to prevent loading crash
- Change : drop merchant table, it was not useful with the new merchant system
and more simple if all npc are stored/loaded in the same table
------------------------------------------------------------------------------
Duff (9.Apr.2005):
- BugFix : fix the bug of tradewindow with trade money
- BugFix : update apearance when /mob equiptemplate load
------------------------------------------------------------------------------
Noret (9.Apr.2005):
*) Code from Shannon fender
- New: Autosplit based on info from herald
*) Code from Tiv
- Changed: GameHealer use table for constitution point restore costs
*) Code from Etaew
- New: Guild RPs/BPs
*) Code from me
- New: All guilds are saved every Configuration.SaveInterval minutes
- New: Successful stealth styles cannot be blocked/evaded/parried/guarded/intercepted
- Changed: rps/bps are long now
- Changed: DOLGameServerConsole is using log4net instead of Console to log exceptions
- Bugfix: Sitting guarder no longer blocks
- Bugfix: Only same realm players can join chat groups
- Bugfix: Damage on sitting players is doubled again
------------------------------------------------------------------------------
Doulbousiouf (7.Apr.2005):
- Bugfix: Now you keep your self buff spells when buffsheared
------------------------------------------------------------------------------
Duff (5.Apr.2005):
- BugFix : the creation bug which make player can not connect at first player
creation. have to deco/reco to play.(realm is not init so b default
it take value of mem. so can be 0 or 2^32...)
- BugFix : tradewindow bug null exception(still have to fix another exception
comming from enumerator modified during loop...)
- Change : replace all \\ to Path.DirectorySeparatorChar to make it more
compilable by mono
------------------------------------------------------------------------------
Doulbousiouf (3.Apr.2005):
- Bugfix: Proc spells use mana now
- Bugfix: Engage effect is now cancelled properly
- Change: Correct speed enhancement delve info
------------------------------------------------------------------------------
Smallhorse (2.Apr.2005):
- New: Scripts are only compiled if they have been modified since last compilation
Scripts last-modify-date and file-size are saved in a file
- Changed: XML config files handle parameter names that contain invalid XML
characters in their name a bit different now
- Changed: Fixed a bug in MPK file routines (old fix from Telltod)
------------------------------------------------------------------------------
Noret (1.Apr.2005):
- New: Icon field for spells
- New: Songs are shown in own tab
- Changed: Too long quest name or description is truncated before sending to clients
------------------------------------------------------------------------------
Duff (31.Mar.2005):
- Change : change the tradewindow to allow the spellcraft system
- Change : remove the array and use arraylist in Tradewindow
- Add : add 2 static function to choose spellcraft or tradewindow.
in order, to have all code of tradewindow in tradewindow and have not
for code to instanciate 2 tradewindow just use CreatePlayerTradeWindow
or CreateSpellCraftWindow
------------------------------------------------------------------------------
Noret (29.Mar.2005):
*) Code from Doulbousiouf
- Bugfix: eInventorySlot.Jewellery is included in EQUIP_SLOTS
- Bugfix: Fired weapons use ammo again
*) Code from me
- Bugfix: NPCs no longer disappear after 25days of windows uptime
- Bugfix: GameNPC.IsVisibleToPlayers work correct now
------------------------------------------------------------------------------
Smallhorse (29.Mar.2005):
- New: Added SharpDevelop(Version 1.0.3 Build 1768) combine & project files
Should ease development for ppl. not using VS.NET 2003
------------------------------------------------------------------------------
Noret (29.Mar.2005):
*) Code from Doulbousiouf
- Bugfix: eInventorySlot.Jewellery is added to EQUIP_SLOTS
------------------------------------------------------------------------------
Noret (28.Mar.2005):
*) Code from Doulbousiouf
- Changed: Abilities icons are not shown on group window
- Bugfix: Trade fixes
*) Code from me
- Bugfix: NPCs with equipped weapon no longer hit for 0 damage
------------------------------------------------------------------------------
Duff (28.Mar.2005):
- BugFix : fix the re emblem bug and check for emblem
------------------------------------------------------------------------------
Noret (27.Mar.2005):
*) Code from Doulbousiouf
- Bugfix: Quiver works for 1.72+ clients
*) Code from me
- New: Field InstrumentRequirement added to the Spell table
------------------------------------------------------------------------------
Noret (26.Mar.2005):
*) Code from Doulbousiouf
- Changed: Renamed "horn" to "lute" in GlobalConstants.InstrumentTypeToName
default is "unknown" now
------------------------------------------------------------------------------
Duff (25.Mar.2005):
- Add : bonus from spell crafter system
------------------------------------------------------------------------------
Smallhorse (24.Mar.2005):
- Changed: Server configuration is now loaded from configuration classes
- Changed: Removed many static methods from GameServer. Should actually hold
no static methods if possibility for multiple process instances
is neccessary sometime in the future. Currently however you can
still access stuff via GameServer.Instance and GameServer.Database
- Changed: All configurations are now done using XML
serverconfig.xml, regions.xml, zones.xml and logconfig.xml
- Changed: Added logconfig.xml, regions.xml, zones.xml as embedded resource
to GameServer. If one of those configs is missing during startup,
the resource is extracted into the directory. Is much better than
having to write "setdefaultvalue" methods that are like 1.Million
lines long (see old WorldMgr!)
Note: If you need to add/modify default values, just simply modify
the files in the /config subdirectory and do a full recompile (else
the modified resources won't get added)
- Changed: Instead of GameServer.Options.xxx, try
GameServer.Instance.Configuration.xxx
------------------------------------------------------------------------------
Noret (23.Mar.2005):
*) Code from Tiv
- Bugfix: SendQuestPacket for 1.70 and 1.72 clients
*) Code from Gavinius
- New: /lastname command
*) Code from me
- Changed: Safe fall formula and message
- Bugfix: Exception in LootGeneratorRandom.cs on high level mobs
------------------------------------------------------------------------------
Duff (22.Mar.2005):
*) Code by me
- Add : SendReceive use languageMgr to allow foreighner shard to have the "r" key
wich work to answer to a sent message from another player
(use "GamePlayer.SendReceive.sends" as key)
*) Code by Doulbousiouf
- Add : sound on craft
- BugFix : close timer in craft process
- BugFix : fix a bug in resurection sickness for concentration
------------------------------------------------------------------------------
Noret (20.Mar.2005):
*) First done by Rudal I believe then pointed many times by Etaew and by Doulbousiouf now
- Changed: HoT spells do not generate aggro
*) Code from Doulbousiouf
- New: Con loss on release and healers can restore it
*) Code by Rudal
- Bugfix: Dual wielding classes will no longer attempt to swing their offhand,
if there is nothing equipped in their offhand.
*) Code from me
- Changed: SendCustomDialog with null handler displays just "ok" button
for example /code player.Out.SendCustomDialog("test", null);
- Changed: Mana and health is not changed after release
- Changed: Dead players can't see stealthers
- Changed: GameLivingEvent.AttackFinished is fired for attacks with each weapon
- Changed: Disabled skills are sent in GameOpenRequestHandler instead of WorldInitRequestHandler
- Bugfix: UpdateDisabledSkills use correct skill duration
------------------------------------------------------------------------------
Smallhorse (18.Mar.2005):
- Bugfix: Fixed bug that prevented UDP connections in DOL! At some point when
refactoring the GUI the RegionIP entry was not parsed anymore and a
entry value of "any" resulted in NO UDP CONNECTION!
Now when the value of RegionIP in the options matches "any" or
"0.0.0.0", "127.0.0.1", "192.168.*.*", "10.13.*.*" then the IP of
the region is set to the LocalEndpoint of the client requesting the
region update packet. This assures that he will get at least a usable
IP address. Since UDP to a local address doesn't make much sense for
Shards.
This bug might have been the cause for some lag and performance issues
that shards might have encountered if they have not explicitely set
the RegionIP to a valid value.
------------------------------------------------------------------------------
Duff (15.Mar.2005):
- Add : check for region in keep manager for shard which do not load all the region.
- Change : some little thing in spell craft
------------------------------------------------------------------------------
Noret (16.Mar.2005):
*) Code from me
- Bugfix: Exceptions in packet handlers do not prevent stopping of deadlock monitor timer
*) Code from Tiv
- New: Keeps for BG5to9, BG10to14 and small changes to BG1to4
*) Code from Doulbousiouf
- New: GetItem method for MerchantTradeItems, returns one item
------------------------------------------------------------------------------
Duff (15.Mar.2005):
- Add : check in alchemy with good name refactor some part of spell crafting and alchemy
------------------------------------------------------------------------------
Noret (14.Mar.2005):
*) Based on code from Etaew
- New: Stag ability handler
- Changed: Crafters with primary skill alchemy/spellcrafting get one set of skills,
other crafters get another
------------------------------------------------------------------------------
Noret (14.Mar.2005):
- Bugfix: SendNPCCreate packet no longer crash 1.71+ clients
------------------------------------------------------------------------------
SmallHorse (12.Mar.2005):
- Changed: Actions in DOLServer need manual registering for better ordering
- Changed: DOL Service is installed now with all given commandline parameters
Currently no parameters supported, but for future work.
- Changed: Only one action can be given to DOLServer
------------------------------------------------------------------------------
Noret (12.Mar.2005):
- Bugfix: GameMobs attack only if AggroLevel > 0
------------------------------------------------------------------------------
SmallHorse (12.Mar.2005):
- New: DOLServer project, enabling the installation, uninstallation, starting
and stopping of DOL as system service.
Start via DOLServer.exe to see possible start parameters.
- Bugfix: GameServer.lng file creation no longer throws an exception
- Changed: Removed all unused projects from this branch
------------------------------------------------------------------------------
Noret (10.Mar.2005):
*) Code from Tiv
- New: BG1to4 keeps
- Changed: KeepID in packets to ushort
- Bugfix: Alchemy icon is 0x04 and spellcrafting icon is 0x0D, clients show correct receipts list
*) Code from me
- New: All packets longer than 2048 are logged
- Changed: SendNPCCreate truncates NPC name/guildname to first 47 chars, clients crash with longer names
- Changed: /mob command shows a warning if new mob name/guildname length is over 47 chars
------------------------------------------------------------------------------
Duff (8.Mar.2005):
- Add : complet a big part of spellcraft system and alchemy system
- Change : Tradewindow system a bit to be usabe by spellcraft
------------------------------------------------------------------------------
Duff (8.Mar.2005):
*) Code from Doulbousiouf
- BugFix : revive even are now stored in object even list
*) Code from me
- Change : remove /face because done on client side
- Add : /gc who alliance
- Add : basic system for spell crafting and alchemy but not finish
------------------------------------------------------------------------------
Noret (7.Mar.2005):
*) Code from Rudal
- Bugfix: GetSpotFromHeading
*) Code from me
- New: Picked up stacks first fill not full stacks in inventory
- Bugfix: Included item.PackSize in OnPlayerAppraise formula
------------------------------------------------------------------------------
Noret (6.Mar.2005):
*) Code from Doulbousiouf
- New: MerchantTradeItems class that handles operations with merchant items.
Merchants work now but DB format was changed.
------------------------------------------------------------------------------
Duff (6.Mar.2005):
*) Code from Spam
- Changed: bytes 6-7 are for emblem and not region in packet 0xD9
(objects) in PacketLib
- Add: emblem field in WorldObject Table
- Add: command /object emblem <newEmblem>
- BugFix: addplayer and removeplayer work for Admin in guild
*) Code from Duff
- BugFix : motd save in DB
- Add : emblem in copy and saveon DB function of GameStaticitem
TODO : check on other version than 171 and put on stable if work same for 168 169...
------------------------------------------------------------------------------
Noret (5.Mar.2005):
*) Code from Tiv
- New: /cancelstyle command
- New: /debugjump checks if client supports target region
- New: Debug flag is saved on region change but not on quit
*) Code from me
- Changed: Quests use InventoryTemplates. Scripts compile now but merchants don't work.
- Changed: SprintAbility, QuckCast and Stealth are loaded from DB
- Changed: In log.config example
- limited DOL.Database.Connection.DataConnection output to INFO
- added time to console messages
------------------------------------------------------------------------------
Smallhorse (4.Mar.2005):
- New: Log4Net Framework for logging and output!
- Changed: Removed GUI, Windows Forms, UIComponents etc...
Please make sure you remove the references to these files from your
ServerOptions.xml file (or database) so that they will not be used
when compiling the scripts.
- Changed: Removed DOLConsole and all Log related classes we use log4net now.
Add the "log4net.dll" entry into Assembly list inside DOLOptions.xml
so that script compilation will work.
To use log4net for output inside your classes you do the following:
1) Define a logger in the head of your class. Look at how it is done
at the very top of any class where you see the usage of
log.Debug, log.Info, log.Warn, or log.Error
It looks like
/// <summary>
/// Defines a logger for this class.
/// </summary>
private static readonly ILog log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
You can just copy/paste these lines to your own class, they
are the same wherever you want to use logging. Don't forget to
put a "using log4net;" inside your class.
2) Before doing output we test for the loglevel via
if( log.IsDebugEnabled )
log.Debug("My Debug Output");
You can also put an exception as optional last parameter like
log.Error("Exception in packethandler", e);
and log4net will format a stacktrace.
Why test the loglevle before doing the debug output you might
ask? Well very simple because imagine the debug output is many
strings with parameters. Like "Player="+player.Name+" ..." then
even when no log output happens these strings have to be built.
We avoid that by testing the loglevel before the actual output.
For more info read the FAQ of log4net at:
http://logging.apache.org/log4net/release/manual/faq.html#HC-14456678
- Changed: DOLGameServerConsole now automatically starts up the server.
- New: Logging is now configured via the "log.config" file. An example file can
be found inside your DOLGameServerConsole directory and MUST be copied
into your compile-output directory, else you will get a blank console
with an error message of log4net telling you it can't find that file.
For more information about logger configuration consult the log4net HP.
------------------------------------------------------------------------------
Noret (3.Mar.2005):
- New: GameNpcInventoryTemplate
------------------------------------------------------------------------------
Noret (2.Mar.2005):
*) Code from Doulbousiouf
- Changed: SendUpdateListCasterSkills sends styles list
*) Code from Tiv
- New: Debug jump command
- Changed: SendPlayerCreate for 1.74 clients
*) Code from Etaew
- Changed: No emotes while mesmerized/stunned
------------------------------------------------------------------------------
Duff (27.Feb.2005):
- Add : sendmessage function in alliance and use it in add and remove guild
- BugFix : alliance save in DB
------------------------------------------------------------------------------
Noret (28.Feb.2005):
*) Code by me and Doulbousiouf
- New: Unfinished inventory for GameLivings. Scripts don't work yet.
------------------------------------------------------------------------------
------------------------------------------------------------------------------
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
BRANCH TO "STABLE" HERE.
This means if you fix bugs, you need to fix them in HEAD and in STABLE branch.
If you add new features, you only add them to the HEAD branch!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
------------------------------------------------------------------------------
SmallHorse (27.Feb.2005):
- Changed: Buying, Selling and Appraising is now done inside the PacketHandler,
to support buying, selling, appraising on HouseLot markers etc.
- Changed: GamePlayerEvents derive from GameLivingEvents
- New: GameLiving.Moving event. Currently called in PlayerPositionUpdateHandler
- Bugfix: An exception bug in BufferedLogger
- Bugfix: Some fixes in DOLMpk that caused crashes on wrong MPK files
- Changed: Added a --start parameter to GameServerConsole to allow starting
from commandline
- Changed: GetPositionFromHeading changed uint parameters to int
------------------------------------------------------------------------------
Duff (27.Feb.2005):
- Changed: GetNPCsByNameFromRegion has 3parameters now, typeof(object) removed
(which was not useed) in WorldMgr
- Change : broadcast changed in GUI
- BugFix: Now other guilds hear your messages in alliance
------------------------------------------------------------------------------
Noret (26.Feb.2005):
- New: Last 8 sent/received packets are logged on client crash
- Changed: Chat group to look more like on live servers
- Bugfix: Invalid type cast on /cg invite/remove/who and /c <text>
------------------------------------------------------------------------------
Noret (25.Feb.2005):
*) Code from Tiv
- New: Couple 1.74 packet changes (clients still crash in some cases)
- Bugfix: moneyObject is deleted when picked up and autosplit is off
*) Code from me
- Bugfix: /where command works now
------------------------------------------------------------------------------
Noret (24.Feb.2005):
*) Code from Doulbousiouf
- Bugfix: Concentration points can't be increased by canceling first buff
*) Code from Etaew
- New: /yell command calls for help if used without params
*) Code from Tiv
- Bugfix: /cg invite
------------------------------------------------------------------------------
Duff (23.Feb.2005):
- Add : time commande for player
- Add : face command for player
- Add : sit command
- Add : Autosplit command
- Add : where command
TODO : need to do more test on autosplit and where command
------------------------------------------------------------------------------
Noret (22.Feb.2005):
*) Code from Konik
- Bugfix: Same account cannot be used by multiple clients
------------------------------------------------------------------------------
Duff (21.Feb.2005):
*) Code from Spam
- Add : improve ban system with reason for ban and account+ip type
------------------------------------------------------------------------------
Noret (21.Feb.2005):
*) Code from Rudal
- Changed: Shields use Dexterity for weapon skill calc
*) Code from Tiv
- New: UseSlotHandler reads player speed, starfing and LOS flags from the packet data
------------------------------------------------------------------------------
Noret (19.Feb.2005):
- Changed: Players no longer update equipment appearance to everyone in
visibility range when armor was hit.
------------------------------------------------------------------------------
Noret (15.Feb.2005):
*) Code from Etaew
- New: Player name can be used with /gc promote/demote/leader/invite
- Changed: Clients with priv level > 1 don't prevent stealth
*) Code from Tiv
- Changed: For 1.73+ clients immunity is tinted in red
- Changed: For 1.73+ clients char slots 9 and 10 are filled with zeros
- Changed: For 1.69+ clients group window shows effect icons
- Changed: For 1.68+ clients SendUpdatePlayer includes MA title
- Changed: Packet order in WorldInitRequestHandler to match more recent logs
------------------------------------------------------------------------------
Duff (10.Feb.2005):
*) Code from ZCU-Holly
- Change : time of craft is reduce by 4
- Change : secondary skill caps work like real server now
*) Code from me
- Add : wearing emblem when you are 400+ in a tradeskill
- Add : group chat (battle chat)
- Add : GPL in many place
- Add : alliance aremove to remove guild from alliance
------------------------------------------------------------------------------
Noret (13.Feb.2005):
- Changed: FindAllAbilityActionHandler reads all attributes of one type, not just first one
- Changed: Multiple SkillHandler attributes are allowed for same class
- Bugfix: Ranged two-handed weapons now get 2h spec bonus
------------------------------------------------------------------------------
Noret (12.Feb.2005):
*) Code from Etaew
- Changed: Berserk ability cannot be used if player is dead/mezzed/stunned/sitting
*) Code from LeBron
- Changed: Different message if player is immune to a new effect ("Target can't have that effect again yet!")
- Bugfix: In \quests\hibernia\epic\Essence50.cs
WorldMgr.GetNPCsByName("Brigit", eRealm.Midgard) changed to
WorldMgr.GetNPCsByName("Brigit", eRealm.Hibernia)
- Bugfix: In \quests\midgard\epic\Viking50.cs
sealed_pouch is read from DB and created if it doesn't exist
- Bugfix: Turning is still disabled when mez or stun expires and player is still mezzed or stunned
------------------------------------------------------------------------------
Duff (10.Feb.2005):
- Add : spell craft and alchemy to make potion and some others things but can not
combine withitem for moment
TODO : need to add the combine with item (2cd part of spellcrafting and alchemy)
------------------------------------------------------------------------------
Noret (11.Feb.2005):
*) Code from me
- Changed: Valewalkers are pure casters
*) Code from Etaew
- New: /friend command shows friends list if used without params and offline friends can be removed
*) Code from LeBron
- New: Poisons for assassins. Poison potions use Bonus1 for poison ID and
InventoryItem table gets new PoisonID field.
TODO: Proper messages
Updated spell and item DB (also from LeBron) on www.doldata.fleetingclarity.com
------------------------------------------------------------------------------
Noret (10.Feb.2005):
*) Code from Etaew
- New: /jump command checks if jumping client supports target region
*) Code from Tiv
- Changed: Player speed, LOS and strafing flags are read from the packet data in
UseSkillHandler; fixes some problems with hybrid spells
------------------------------------------------------------------------------
Duff (10.Feb.2005):
*) Code from spam modified a bit by me
- Add : Ban account system for ip or account name
*) Code from Etaew and modified by me
- Add : reemblem for 200 gold
- Change : typo in guild command
- Add : some test in guild command
*) Code from me
- BugFix : count i, trade window
TODO : possibility to ban a mac adress
------------------------------------------------------------------------------
Noret (9.Feb.2005):
*) Code from Konik
- New: OffensiveProc and DefensiveProc spell handlers.
Spell value is used for subspell ID, subspell line name is same as spell type
------------------------------------------------------------------------------
Noret (8.Feb.2005):
*) Code from Tiv
- Bugfix: 1.73 clients show sprint/stealth/etc icons
*) Code from Doulbousiouf
- Bugfix: Entry counter in SendUpdateHybridSkills() matches amount of entrys actually sent
*) Code from me
- New: ManaStat affects magical damage
- Changed: /givexp command accepts long values instead of int
- Bugfix: NullReferenceException in HealSpellHandler
------------------------------------------------------------------------------
Duff (7.Feb.2005):
*) Code from Doulbousiouf
- BugFix : small bugfix in hybridclass
- BugFix : small bugfix in encumbrance
------------------------------------------------------------------------------
Noret (6.Feb.2005):
*) Code from Konik
- Changed: Reaver added to allowed classes for armor and weapon crafting
*) Code from Nightlord
- Changed: Typos in gamemerchant.cs, gameplayer.cs, MoneyTask.cs, KillTask.cs, BaseQuest.cs, AbstractTask.cs
*) Code from me
- Changed: Minstrels get tireless, too
- Bugfix: Immunity
------------------------------------------------------------------------------
Noret (4.Feb.2005):
*) Code from Tiv
- Changed: Infiltrator, Mercenary, Paladin, Reaver, Scout
Savage, Shadowblade, Skald, Thane get tireless
- Bugfix: Hib epic quests Essence50.cs, Focus50.cs and Harmony50.cs can be completed
*) Code from me
- Bugfix: Immunity expires now
------------------------------------------------------------------------------
Noret (2.Feb.2005):
*) Code from Nightlord
- Changed: Typos in CraftingSkill.cs, CraftingMgr.cs and PlayerInventory.cs
------------------------------------------------------------------------------
Duff (3.Feb.2005):
*) Code from ZCU-Holly
- BugFix : Limitations of non-primary tradeskills should now work as it should.
- Change : Higher chance to gain tradeskillpoint
*) Code from ZCU-Azaroth:
- BugFix: Weight issues fixes when materials used.
------------------------------------------------------------------------------
Noret (2.Feb.2005):
- New: Some solution for multiplicative property changes, speed is a good example
of this so we get some spell handlers that have no problems with stacking.
note: living.MaxSpeedBase is used to get/set unbuffed max speed,
MaxSpeed still returns modified max speed and is readonly now.
- New: SpeedDecrease spell handler that actually use Spell.Value ("root" was dropped)
- New: DamageSpeedDecrease spell handler
- New: Disease spell handler
- Changed: Renamed "SpeedBuff" to "SpeedEnhancement"
- Bugfix: Immunity cannot be canceled
------------------------------------------------------------------------------
Noret (30.Jan.2005):
*) Code from Biceps
- New: Couple lines to show NF keeps to players
------------------------------------------------------------------------------
Gandulf (27.Jan.2005)
*) Code from Echostorm,Roach,me
- Added: LootGeneratorTemplate as example for LootGenerator System,
based on template based mobdrops system by echostorm and roach.
*) Code from me
- New : LootGenerator System to dynamically add LootGenerators via DB
------------------------------------------------------------------------------
Duff (27.Jan.2005):
*) Code from Spam
-Add : annouce commande
*) Code from me
- BugFix : fix the tailoring bug for 99 skilled in crafting
------------------------------------------------------------------------------
Noret (26.Jan.2005):
- Changed: GameTimer.GameTimerMgr.Stop() no longer sets CurrentTick to zero, was
making problems with saving disabled skills which is after timer was stopped
- Changed: PvP player examine messages are updated to same as on live servers
- Changed: ToHit chance on sitting target is doubled instead of always hit
- Changed: Small improvements to root and mesmerize spell handlers
- Changed: Can't hide while mesmerized or stunned
- Bugfix: Can't evade/prarry/block while mesmerized or stunned
------------------------------------------------------------------------------
Duff (25.Jan.2005):
- BugFix : fix the tailoring bug which need lathe or forge
- BugFix : fix the repair update of item
- Add : send update of player crafting rank
- Change : minor message and color
- Change : test with model for lathe and forge (better for foreigner )
------------------------------------------------------------------------------
Noret (25.Jan.2005):
*) Code from Etaew
- New: /target command - target a player by name
*) Code from me
- New: Realm check for bind points. Allows binding for everyone when bind point
realm is set to zero. PvP server type ignores this field.
- Changed: /stuck command restores position player had 4 unique position updates ago
and speed hack detection works again
------------------------------------------------------------------------------
Noret (24.Jan.2005):
*) Code from Rudal
- Changed: DetailDisplayHandler shows tenth of weapon speed and shield size
*) Code from Tiv
- Bugfix: FindGroupUpdate no longer crash 1.71+ clients
*) Code from me
- New event: GameLivingEvent.Dying fired just before the living died
- Changed: Removed some client states changes (Quit event is fired now for link dead clients)
- Changed: Reduced the value of money loot dropped by mobs
- Bugfix: Saved disabled abilities are even loaded now
------------------------------------------------------------------------------
Duff (22.Jan.2005):
- Add : interupt craft when move or straf
- Add : support of language file
- Add : test in nunit but need 2 "lng" files to work located in gameserver
or in scripts folder (where ever you want)
- Change : with advice from small, check script after to override a string
in lng file. it show a warning in console when you override a string
ever in GameServer.lng.
- Bugfix : check use albion rogue whereas must be midgar rogue
- TODO : use of language system all around the code to have support
of multi language
------------------------------------------------------------------------------
Gandulf (21.Jan.2005)
*) code from Caeth
- Added: Lost of new Bonuses for Epic Armors added: Essence, Focus,
MidgardRogue, Seer, Viking
------------------------------------------------------------------------------
Duff (21.Jan.2005):
*) Code from ZCU-miki001 and me
- Change : formula in crafting
------------------------------------------------------------------------------
Gandulf (20.Jan.2005)
*) code from ZCU-Holly
- Changed : NeededMoney for blacksmith is now item.condition dependend.
------------------------------------------------------------------------------
Duff (18.Jan.2005):
*) Code from ZCU-miki001
- BugFix : change the ecraftingskill to craftingskill in many place
- Add : close timer at end of repair, salvage, craft
- Add : a window to ask if you really want to salvage this item
- BugFix : forget to remove object when salvage
*) Code from me
- Change : get raw material by model in crafting
- BugFix : check if ever crafting and stop timer before restart other timer
- BugFix : check distance of lathe and forge now
------------------------------------------------------------------------------
Duff (16.Jan.2005):
*) Code from Doulbousiouf (and a little bit modified by me)
- Changed: the maxspeed calculate on player take care of encumbrance
when sprint or stealth.
- Add : illness (but need to add point of constiti loose)
- Add : player effectiveness
- Add : Healer npc
- BugFix : fix the bug to have all spell on caster player
- BugFix : nightshade have good spec index now
- Clean : a bit the code and remove some unused file
- BugFix : fix some bug in hibridclass and usable spell
*) Code from me
- BugFix : guild purge exception fix
- Add : crafter name to all item and show it in delve info
- Add : repair system for player
- Add : real system for salvage
- Change : material level in db is for salvage now
and is not dbcrafteditem.craftinglevel. it is factor for material
1, 2, 3 is factor of raw material you will have when salvage.
TODO : make spell crafting
------------------------------------------------------------------------------
Noret (14.Jan.2005):
*) Code from Rudal
- New: DetailDisplayHandler shows info for Magical items
------------------------------------------------------------------------------
Smallhorse (13.Jan.2005):
- Bugfix: GameServer.Database.SelectObjects and SelectAllObjects now returns
the correct database object array. eg.
GameMerchant[] merchants =
(GameMerchant[]) GameServer.Database.SelectAllObjects(typeof(GameMerchant));
- Changed: Preloading the NPC Equipment happens in the WorldMgr now before loading the
Regions
- New: GameServer.Database.SelectObject method added. It will return only
a single object of the requested database type. If more than one exist,
the first will be returned. Very nice if you only want the first object...
- New: AbstractCommandHandler class which implements some nice functionality for
script commands. Scripts can derive from this class to add the following
standard methods.
- Syntax(GameClient
Displays the command syntax to the client as defined in the CmdAttribute
- DisplayError(GameClient, string, object[])
Displays an error message to the given client
- DisplayMessage(GameClient, string, object[])
Displays an message to the given client
- Changed: Rewrote the Account.cs class to use the new AbstractCommandHandler
methods. Look at it as example on how to use this methods.
Added a /account movecharacter <CharacterName> <NewAccountName>
which lets you move characters between accounts.
Also added functionality to log off active accounts and characters
before modification.
------------------------------------------------------------------------------
Duff (11.Jan.2005):
- Changed: shield enum back to 1, 2, 3, and not 0, 1, 2,
------------------------------------------------------------------------------
Noret (13.Jan.2005):
*) Code from Tiv
- Bugfix: DetailDisplayHandler shows info for cloth armor type
*) Code from me
- New: All disabled spells/abilities are saved after /quit
- Changed: Spells use two times more power if quickcasting
- Changed: EnemyKilled no longer stops attack (client sends stop attack packet when needed)
- Changed: Instant heal spells do not start reuse timer if noone was healed
- Changed: "CC" spells set last attack tick
- Changed: Speed buff is canceled only on successfull attack (including every dot tick for now)
- Changed: Power regeneration rate for list casters is reduced if power is bellow 50%
- Changed: Duration of "CC" effects is not reduced with range if target is not GamePlayer
- Bugfix: Debuffs no longer add to stat
------------------------------------------------------------------------------
Duff (11.Jan.2005):
*) Code from Doulbousiouf
- Add : tireless abilitie
- BugFix : the hibrid class spell list rework
------------------------------------------------------------------------------
Gandulf (11.Jan.2005)
- Add: First Version of EPIC Quest for lvl 50, still some thing missing:
Boni for items, original text.
Any Help with adding Boni to items is appreciated, since its a
quite time consuming job. *wink*
------------------------------------------------------------------------------
Duff (10.Jan.2005):
- Add : salvage basic system
- Add : added the material flag and material level to itemtemplate.
It will be very useful for salvage, resistence,...
TODO: use this flag in salvage and make it not allowed null
------------------------------------------------------------------------------
Smallhorse (10.Jan.2005)
- New: Added the GNU Public License to the project, see "gpl.txt"
- Changed: Added the GNU Public License header to ALL project files that were
created by our team. In the future, please add this header to ALL
source files you newly create. Do not add it to 3rd party plugins
used by DOL like the MYSQL drivers and the SharpZLib, they are not
from us ;-)
------------------------------------------------------------------------------
Duff (9.Jan.2005):
*) Code from me
- Change : change all crafting table and fit all system to it thanks to an
advice from ZCU-miki001 and ZCU-holly
- BugFix : change the loc in gloc in door because it is this in D9 packet
*) Code from Doulbousiouf
- Change : remake the spell list packet sent to fit to the server (with that it
fix the bug in spell with same level and same line)
- Add : detail display spell
so you can find the spell DB which have been changed to work with this
update on doldatadump
------------------------------------------------------------------------------
Smallhorse (9.Jan.2005)
- Add: Missing request handlers for housing, forgot to add them to the project
- Change: SendMerchantWindow method signature is now
SendMerchantWindow(MerchantItem[] itemList, eMerchantWindowType windowType)
to match housing requirements and new decoded parameters for merchant window
------------------------------------------------------------------------------
Gandulf (9.Jan.2005)
- Add: New Realm "Peace" added, Members of this realm are friendly to everybody,
And Everybody thinks Peace Member is member of it's realm.
- Add: Spellboni for Albion Class promote items added (lvl5)
- Add: Hibernia Class promote items added (lvl5)
------------------------------------------------------------------------------
Noret (9.Jan.2005):
- New: /house command with basic funcionality (create/save/remove/model/move/owner)
------------------------------------------------------------------------------
Smallhorse (8.Jan.2005):
*) Code from Schaf:
- New: Basic Housing code changes. Still incomplete and not working but
start for housing code... Read the readme.txt in /housing dir.
- Changed: ReceiveItem/ReceiveMoney moved to GameObject because HouseLots are static
objects and still need to receive items and money
*) Code from me:
- Changed: Moved World related stuff into /world directory
- Changed: HouseMgr made static and initialized in GameServer.Start
- Changed: Added "isHousingRegion" flag to regions.ini, delete old ini (as always)
Added a dirty hack into the load method of the regions so I didn't need
to add "isHousingRegion=False" to ALL regions ... wondering if perhaps
we should make a method that sets default values for the regions like
diving, housing etc. and only set it to true in regions where it's needed
------------------------------------------------------------------------------
Noret (8.Jan.2005):
- New: Range check for concentration endurance regen buffs
- Changed: Castable stun and style stun overwrite each other
- Changed: Another evade formula
evadechance = (1+(player.Quickness+player.Dexterity-100)*(1.0/1024.0)) *
player.GetAbilityLevel(Abilities.Evade)*5
- Bugfix: Amnesia was removing npc from it's own aggro list (yes, funny)
------------------------------------------------------------------------------
Duff (8.Jan.2005):
*) Code from Doulbousiouf
- BugFix : fix of vaultkeeper bug when client version is 1.72
- BugFix : class necro and disciple
------------------------------------------------------------------------------
Gandulf (7.Jan.2005)
- Change: Engage will now behave more Live-like: Endurance-Loss only on block,
Player is in attackmode while engage, timer to disable engage on mob attack
- Change: Minor Changes to Area System
- Add: Started to add/enhance the Epic quests from Etaew
------------------------------------------------------------------------------
Duff (6.Jan.2005):
- Clean : remove quest file in project which are not commit
- Clean : add shield type to globalconstant.cs
- BugFix : small fix in guild form
------------------------------------------------------------------------------
Noret (6.Jan.2005):
*) Code from LeBron
- Bugfix: Fixes to CCSpellHandler
- Bugfix: Command "/item savetemplate" saves all item bonus types
*) Code from me
- New: Handlers for style effects (stun/bleed/slowed/hindered)
- Changed: Buffer contents is logged on buffer overflow
- Bugfix: Some possible exceptions in /invite and /who commands
------------------------------------------------------------------------------
Noret (5.Jan.2005):
*) Code from Nydirac
- Changed: WorldMgr.GetClientByAccountName(string accountName, bool exactMatch)
is case-insensitive now
------------------------------------------------------------------------------
Duff (5.Jan.2005):
*) Code from Doulbousiouf
- Bugfix: shield have good abilities and not only small shield
------------------------------------------------------------------------------
Noret (5.Jan.2005):
- Changed: Critical damage is added *after* style bonus
- Changed: Set immunity timer for stun/mez/root (!)
- Changed: Duration effects are not applied to dead targets
- Bugfix: Style effects work on players and are executed after weapon damage
- Bugfix: Division by zero in Merchant PlayerSell
null checks
------------------------------------------------------------------------------
Duff (4.Jan.2005):
*) Code from Doulbousiouf
- Bugfix: critical damage are calculate before execute style
- Add : effect on delve
- Add : trade window info on delve
- Add : merchant window info on delve
- Change : for shield item the shield have dps and speed so need to use another
field so use Type_Damage field for shield type (small, midle, big).
so use new db for item (shield change) whichi is on doldatadump
- Add : Add the magical effect to a target when use style
------------------------------------------------------------------------------
Noret (4.Jan.2005):
- Bugfix: All system timers are Close()'ed when needed
(thanks to LightB for pointing on problems in this area)
------------------------------------------------------------------------------
Noret (3.Jan.2005):
- Changed: "Fixed" evade rate again, current formula is *much* closer to live servers
int evadechance = (int)((player.Quickness+player.Dexterity-100)*0.025) +
player.GetAbilityLevel(Abilities.Evade)*5;
------------------------------------------------------------------------------
Gandulf (2.Jan.2005)
*) Data from Caeth
- Add: Added Cloth armor pieces to Reward Items for most quests
*) Code from me
- Add: New Experimental Area System added. *Activated*
- Change: Quests are now stored in two lists (active/finished)
------------------------------------------------------------------------------
Noret (1.Jan.2005):
*) Code from MastaMappa
- New: "/jump gt" moves to ground target
"/jump rel x y z" moves relative to current position
------------------------------------------------------------------------------
Duff (31.Dec.2004):
- Add & BugFix : door system and door db have internal id now
------------------------------------------------------------------------------
Noret (31.Dec.2004):
- New: Checks for instrument type for future use. Added Abilities.Weapon_Instruments which
doesn't exist on live servers but better than hardcoding classes that can use instruments.
- Changed: Capped absorbtion by 85%
- Changed: Icons should properly start blinking 10 seconds before effect expires
- Changed: Speed buff has no effect if owner is stealthed
- Changed: Replaced Hashtable with empty HybridDictionary in PropertyCollection
- Changed: Moved Overwrite(neweffect) outside of the lock (target.EffectList) in ApplyEffectOnTarget
------------------------------------------------------------------------------
Noret (30.Dec.2004):
*) Code from Gavinius
- Changed: Fixed Enchanter NPC script
*) Code from me
- Changed: Spells with pulse=1 and frequency<1 are not trying to pulse
------------------------------------------------------------------------------
Duff (30.Dec.2004):
- Add : real system for door (need to have real DB or still use quick hack)
for making db see the post on forum of doldatadump to get application
to convert log to DBDoor.
------------------------------------------------------------------------------
Gandulf (30.Dec.2004)
- Clean: Quest Messages adjusted to usual style
- Clean: Quest AddMoney Reward now used Money.GetMoney() method
*) Code from wmart
- Bugfix: IndexOutOfRangeException in AbstractTask
------------------------------------------------------------------------------
Noret (29.Dec.2004):
*) Based on code from TheSchaf
- Bugfix: Some fixes to Enchanter script
*) Code from Doulbousiouf
- Changed: Defensive styles with enemy style opening can be used with any attack result
*) Code from me
- Changed: Removed pulsing spell fix, please set frequency in DB for pulsing spells if you want them working
------------------------------------------------------------------------------
Duff (29.Dec.2004):
*) Code from Doulbousiouf
- Bugfix: pulsing spell is cast 2 times because startspell call in effect too
- Bugfix: strange bug with crossbow sometime
------------------------------------------------------------------------------
Gandulf (27.Dec.2004)
- Clean: quest code cleaned a bit
- Add: Quests for Midgard Realm added
- Change: /jump to <NPC> changed to /jump to <NPC> <Realm> to reduce payload on server
NOTE!!!: Midgard Quests don't inlcude Horse routes (yet), so most horse routes won't work at the moment
------------------------------------------------------------------------------
Noret (27.Dec.2004):
- Changed: Water level and diving flag for region 243 "Kobold Undercity"
- Bugfix: In some cases players could change the realm even if not allowed by server rules
------------------------------------------------------------------------------
Noret (23.Dec.2004):
*) Code from Biceps
- New: Buff shears spell handlers
*) Code from me
- Changed: All traded items are saved right after accept, on char save was not enough
- Changed: Players with Z == 0 are moved to bind point;
please report if it does not work or work where it should not
------------------------------------------------------------------------------
Noret (22.Dec.2004):
*) Code from wmart
- Bugfix: Speedbuff no longer cancels other effects
*) Code from me
- New: Taunt spell handler
Note: In Blue's spell DB taunt values are 10 times higher than on herald
- Changed: Speedbuff no longer sends speed updates on each spell pulse
------------------------------------------------------------------------------
Smallhorse (22.Dec.2004):
- Changed: Only players are saved in the periodic save. No more looping
through ALL regions and ALL objects ...
------------------------------------------------------------------------------
Noret (21.Dec.2004):
- Changed: Only regions supported by client type (classic/si/toa/catacombs) are sent to the client
Also some SI/Catacombs zones/regions were missing, delete regions/zones ini.
- Changed: Resurrect spell expires after 15 seconds
------------------------------------------------------------------------------
Duff (19.Dec.2004):
- Change : root stun and mez bool on player clean a bit code of ccspell
- Add : check emblem wear if it is the same in guild at each region change
- Change : remove use raw material quick hack for crafting
- Merge : i have done a system for speedbuff quite same than noret so remove it to merge
------------------------------------------------------------------------------
Noret (19.Dec.2004):
- Changed: Cleaned "SpeedBuff" handler a bit
- Changed: Buff icons are shown correct in 1.73 clients.
Guess sprint/stealth/etc icon IDs have changed.
------------------------------------------------------------------------------
Gandulf (17.Dec.2004)
- Bugfix: Player can now do X Tasks per level where X is players current level.
- Change: XP Reward for Tasks was adjusted since player can do way more tasks.
------------------------------------------------------------------------------
Blue (17.Dec.2004):
- Bugfix: Fixed another cause for linkdeads
------------------------------------------------------------------------------
Gandulf (16.Dec.2004)
- Bugfix: Player are no longer able to do one task although limit is reached
if newly logged in
------------------------------------------------------------------------------
Noret (16.Dec.2004):
*) Code from LeBron
- Changed: Increased attack range on moving targets
- Bugfix: Same item cannot be picked up by multiple players
*) Code from wmart
- Bugfix: Some null checks
*) Code from me
- Changed: Added forced flag to GameServer.Disconnect, should solve problems
with stuck LD clients and they can be kicked now
------------------------------------------------------------------------------
Duff (15.Dec.2004):
*) Code from Doulbousiouf
- Change : Quiver System do more check
- BugFix : Crossbow check quiver first before check inventory
*) Code from me
- Add : handle of shift+R repair salvage combine button
- Change : make a tradewindow object
- Add : flag repair and combine to the tradewindow update packet
------------------------------------------------------------------------------
Noret (15.Dec.2004):
*) Code from JPC
- New: 1.73 client support including Catacombs regions/zones
(as always delete regions/zones .ini files for this to work)
*) Code from me
- Bugfix: GameStaticItems are re-added to the world on X/Y/Z change only if object state is active
------------------------------------------------------------------------------
Gandulf (14.Dec.2004)
- Change: Tasks. MoneyTasks are given by Merchants, Trainers, Criers (25% Chance)
KillTasks are given by NAMED Guards,Guardians,Guardsman, Sir's (75% Chance)
XP Reward for Tasks is 30% of total needed xp for level
Max Number of Tasks/Level == Level
------------------------------------------------------------------------------
Blue (12.Dec.2004):
One note to shard owners/devs out there. Help DOL to improve so we dont have to fix
bugs and do lots of other things a second time. When you or any other fixes a bug or has
some good improvement then post it please in DOL forum. Especially if you fix bugs
then explain what the bug is and show your solution. You can also always send
improvements to SmallHorse. Then we can discuss it. Thanks.
If this doesnt get better over time you have to expect further delays in my commits.
- New: Introduced new Log interface to get rid of DOLConsole
- You should use the following methods:
Log.Debug(), Log.Info(), Log.Warning(), Log.Error(), Log.StackTrace(), Log.Dump()
instead DOLConsole methods
- Most of DOLConsole methods are currently redirected into the new Log system
- GameServerConsole now uses two logger modules: FileLogger and StdOutputLogger
- You see log level of message in log and output
- Additional logger can be easily attached by Log.RegisterLogger
- Logoutput uses a ringbuffer, performance is improved
- New: Timing measuring code in some places
- New: Added Suspend and Resume functionality to timers
- Changed: Improved memory usage in large scale
- Changed: Mobs get more AF the higher their level is
- Changed: Deactivated region manager threads
- Changed: NPC Update check intervals raised to 300ms from 100ms (saves cpu)
- Changed: Ping timeouts raised to 6 minutes
- Changed: Improved world save to not disturb running server
- Changed: NPC equipment templates will be cached. Speeds up loading process
- Changed: Aggrocheck Mob=>Mob is only executed for mobs with capital
letter in front (saves us lots of cpu)
- Changed: Default aggro range increased to 300
- Changed: Removed CurrentSpeed get on GameNPC that used cpu by just calling base get
- Changed: Increased NPC Count per square in Zone to 800, also added some warnings
- Changed: Removed CleanupThread from Region
- Changed: Armor item degradation was nearly disabled. Set items to MaxCondition about 1000
- Bugfix: Division by zero in follow code for zero speeds
- Bugfix: Prevented PacketProcessor from beeing null
- Bugfix: Invisible mob attacks with changing models/names that are too far away to attack
- Bugfix: Several causes for linkdeads in WorldMgr code
- Bugfix: Players cannot get multiple xp from a gravestone
- Bugfix: Some CC messages
------------------------------------------------------------------------------
Duff (8.Dec.2004):
- Bugfix: small bugfix in quiver system
------------------------------------------------------------------------------
Gandulf (12.Dec.2004)
- Add: Quest: Important delivery (Hib), City of Tir na Nog, Nuisances, Traitor in MagMell
They are very similar to Master Frderick Quests.
Don't forget to merge added Pathpoints file!
- Bugfix: Minor bugfixes in Frederick Quests.
- Add: jump to <name> Now also works for NPCs Names
------------------------------------------------------------------------------
Gandulf (11.Dec.2004)
- Changed: Rewrote part of the quests to uniform the condition checks
- Add: Added checks to prevent doing multiple Master Frederick Quest at the same time,
since they are indendet to be played one after another.
- BugFix: IreFairyIre no longer needs Level 3 Quest as prerequiste
- Bugfix: Frontier Quest: Due to problems with Master Visur and the Frontiers expansion
Talking to Master Visur is now optional you can also go directly
to Srcyer Alice
- Bugfix: Engage can only be used while not in combat
------------------------------------------------------------------------------
SmallHorse (11.Dec.2004)
- New: Some work regarding AI, currently inactive (/ai folder)
- New: Added "GetPlayersInRadius", "GetNPCsInRadius", "GetItemsInRadius" call to
GameObject. So instead of calling
WorldMgr.GetPlayersCloseToObject(xyz, WorldMgr.VISIBILITY_DISTANCE)
you can now call
xyz.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE)
Makes the calls more intuitive and shorter.
- New: If you add "true" as additional parameter to the WorldMgr.GetXXXCloseToObject
methods (or GameObject.GetXXXInRadius), instead of GameObjects the enumerator
will return PlayerDistEntry, NPCDistEntry or ItemDistEntry objects ... eg.
foreach(PlayerDistEntry entry in npc.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE, true))
{
GamePlayer player = entry.Player; //entry.NPC; entry.Item for the others
int distance = entry.Distance;
}
The reason for this is, that the original enumerator already calculated
the distance (partly) and it is only a small overhead to fully calculate
the distance. This should save some CPU when you need the distance of all the
objects around another one (Saves you from calling WorldMgr.GetDistance...)
- New: Added the NF Keep code (inactive, need some cleaning) /keeps folder
- Changed: SendTCP works asynchronously now (BeginSend, EndSend), should be the most
efficient solution.
- Changed: GameObject.Random/Chance ... is static now (should have been right from the
start), btw. what is the difference to Util.Random/Chance?
------------------------------------------------------------------------------
Gandulf (10.Dec.2004)
------------------------------------------------------------------------------
- New: UnitTests Project added. NUnit can be downloaded from nunit.sf.net
For Details about NunitTest see Web or DOL Wiki
- Changed: GetRandomNPC added to Zone, used in TaskSystem
- Changed: Improved Performance of Region.AddObject(). Should speed up startup
------------------------------------------------------------------------------
Noret (10.Dec.2004):
- New: Berserk transformation animation
- Changed: Critical damage is calculated after style bonus
- Changed: Moved player enter/exit message spam to the script (finally you can remove it easy!)
- Changed: 1.72 clients should no longer crash when trading
- Changed: Can't trade with LD players
------------------------------------------------------------------------------
Duff (8.Dec.2004):
*) Code from Doulbousiouf and modified by me
- Add: Quiver System
- BugFix : some little things for Vault support
- Add : some little things for Encumberance
------------------------------------------------------------------------------
Gandulf (9.Dec.2004)
- Changed: Activated Task System
- Changed: GetRandomNPC code of Task System fetch random npc from anywhere in current Region.
- Bugfix: tasks expire if you die
------------------------------------------------------------------------------
Blue (8.Dec.2004):
- New: Integrated mySQL Connector.NET 1.0.2
Highlights:
- Fixed #HY000Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_
- Fixed Long inserts take very long time
- Fixed problem with MySqlBinary where string values could not be used to
update extended text columns (was fixed by me before hehe :)
- A fix for bug that caused strange 100% cpu usage cause of some error in .net
- New: GUI shows client version of connected players
- Changed: Improved performance of FindEffectOnTarget because its often called from CC code
- Changed: dbstarttype.dat is not overwritten at exit
- Changed: Lowered priority of world save execution
- Changed: Player inventory is not saved on changes, only saved in char saves (consistency)
------------------------------------------------------------------------------
Duff (8.Dec.2004):
- Changed: byte to int for craftingprimaryskill in dolcharacter table
- Add: Enchanter custom npc
- BugFix : guild name escape to fix the ' bug
- Add: vaultkeeper quild
------------------------------------------------------------------------------
Smallhorse (9.Dec.2004)
- New: Packet sending thread for each client. Calls to client/player.Out.SendXXX now
queue the packet to be sent and instantly return. A working thread then
takes care of the sending of the packets (as fast as possible in FIFO order)
There is virtually NO overhead for this technique and it should prevent
some lagging out when sending many packets to other players (eg. casters)
because the TCP protocol waits for an ACK ...
- Changed: The DOLEvent class now has an overidable "IsValidFor(object o)" method,
which should be overwritten in the custom event classes (eg. GamePlayerEvent)
This method is called to check if it is valid to register a certain event
for an object. Eg. if you try to register a GameEntered event for a mob,
then the IsValidFor call will return false and prevent this... preventing
loose events...
------------------------------------------------------------------------------
Gandulf (8.Dec.2004)
- Bugfix: Fixed some typos in /task command
- Change: Moved quickcast out of player into QuickCastAbilityHandler
- Change: Renamed QckCastEffect to QuickCastEffect
- Add: Engage Ability
------------------------------------------------------------------------------
Noret (8.Dec.2004):
- Changed: Evade formula to match parry/block formulas style
- Changed: Base chance to block arrows is 30%
- Changed: Weapon spec affects two-handed weapons cap
- Changed: CritShot factor back to 2
- Changed: Replaced division with multiply and bit shift in some places
------------------------------------------------------------------------------
Gandulf (7.Dec.2004)
*) Code from Lightbringer/me
- Add: Added Task System for MoneyTasks and KillTasks, work is based on
LightBringers Task system and on Quest System.
But Code is disabled by default since it needs to be reviewed and
tested more first. To enable it add TASK_ENABLED as a compiler constant
in the settings of the following projects: doldatabase, gameserver, gameserverscripts
*) Code by me
- Clean: All Notify methods now call Notify(e,sender,args) with null values if not set,
which makes it easier to add additional code.
- Bugfix: GamePlayer.RecieveItem(GameLiving living IventoraItem item)
only worked for living is GamePlayer. Added additional checks.
- Bugfix: WolfpeltCloak.cs: Some typos, and now any wolf is killabled for quest.
------------------------------------------------------------------------------
Noret (7.Dec.2004):
- Changed: Players with active pulsing spell can't stealth
- Changed: All effects are canceled when player logs out (LD or /quit)
------------------------------------------------------------------------------
Duff (6.Dec.2004):
*) Code from Doulbousiouf
- Add : stuck command
*) Code from me
- BugFix : craft prymary skill save in db so remove bug of craft npc
------------------------------------------------------------------------------
Blue (5.Dec.2004):
- Bugfix: CombatHeal can be used solo
- Bugfix: Escape function for sql database
------------------------------------------------------------------------------
Noret (5.Dec.2004):
- Bugfix: When creating new SQL tables AllowDBNull check was reversed
------------------------------------------------------------------------------
Gandulf (5.Dec.2004)
*) Code by me
- Add: BerserkAbility and ProtectAbility Added
- Change: move code for criticaldamge calculation into own method CalculateCritcalDamage()
- Bugfix: Some GameMobs where added multiple times if BaseQuest.Save_INTO_DATABSE
was set to true.
------------------------------------------------------------------------------
Noret (4.Dec.2004):
*) Code from wmart
- New: /item command can be used to set magical bonuses
*) Based on code from Gandulf
- New: Guard/Intercept abilities
*) Code from me
- Changed: Matter Focus was missing
- Bugfix: Stealth CanDetect formula was... just wrong
- Bugfix: Player equipment appearence is updated when item is equipped from inventory slot
------------------------------------------------------------------------------
Gandulf (03.Dec.2004)
*) Code from me
- Add: first official quests added
- Add: IGameLocation, GameLocation as extension of Point3D to store Name,
RegionID and heading
- Clean: Removed debug message from hasFinishedQuest too reduce logfile load.
*) Code by Etaew
- Bugfix: dead players should not be able to start attack
- Bugfix: TargetObject of player is cleared if player dies
------------------------------------------------------------------------------
Duff (30.nov.2004):
*) Code from Doulbousiouf
- Bugfix : VaultKeeper
-BugFix : check of distance for each gameliving inherited methode receiveitem
*) Code from me
- Add : refresh inventory after remove material in crafting
------------------------------------------------------------------------------
Noret (1.Dec.2004):
*) Code from LeBron
- New: CombatSpeedDebuff spell handler
- Bugfix: Can't change QuickCast state while casting a spell
------------------------------------------------------------------------------
Duff (30.nov.2004):
- Bugfix : improve and clean mez stun root system
- Add : getFirstItemByName to playerinventory
- Add : craft improve and debug a bit
------------------------------------------------------------------------------
Duff (29.nov.2004):
- Bugfix : fix bug from autoaccount are all admin
------------------------------------------------------------------------------
Duff (27.nov.2004):
*) Code from Doulbousiouf
- Bugfix : fix bug from give item from far distance work
- Clean : clean a bit the usability condition and dur
*) Code from me
- Bugfix : guild system
- Rename : all eGuildrank
- Clean : remove all warning whitch are thanks to quick hack on development part
------------------------------------------------------------------------------
Noret (26.Nov.2004):
*) Code from LeBron
- New: Skill bonuses from items
- New: Spell focus
- Bugfix: Spell to-hit chance formula
*) Code from me
- New: Icons in group window for 1.68 clients, seems 1.69+ use other ID than ClientEffect
- Changed: Redone part of the player group code to reduce overhead for simple health/mana/end updates
- Changed: CC spells with different duration do not stack
- Changed: Chants do not pulse if caster is "Freezed"
- Changed: Renamed SendPlayerGroupUpdate and SendGroupPlayerUpdate
to SendGroupWindowUpdate and SendGroupMemberUpdate
------------------------------------------------------------------------------
Duff (24.nov.2004):
- Bugfix : alliance invite bugfix
- Bugfix : small cc spell bug that blue is so angry
------------------------------------------------------------------------------
Blue (24.Nov.2004):
- New: Item bonus display (Shift+I)
- New: Completely changed mysql db layer, its way faster now and db is accessed direct.
You see sql commands in gs.log for the moment so you can check whats goin on.
Its not needed anymore to preload tables into memory.
Only ItemTemplate and NPC equipments are cached for faster init. Server
starts up a lot faster now. Also lags in saving should be way more reduced.
When player is not logged in its legit to change his table entries while server
is running. When that player logs in, mysql delivers the changed / new db entry.
This is a must for php account creation.
ATTENTION: Its very important if you use ObjectDatabase.SelectObjects with a name
that could contain potential bad chars like ' you must escape that
string with GameServer.Database.Escape(somestring). For example in dropscript write
GameServer.Database.SelectObjects(typeof(MobDrops),
"MobName='"+GameServer.Database.Escape(m_mobname)+"'");
because mobname can contain chars that would interfere with sql commands.
- New: Non existing tables in mysql will be created on the fly on startup with correct properties.
I suggest to not use the create table option of the xmldbeditor when exporting to sql.
Transfer only data but let the server create the tables. There are indexes to be set
and server needs control about datatypes. You should for performance reasons
definitely export your tables to xml, drop all your tables in mysql and boot dol.
After that you have fresh correct created tables into that you can now import data from
xml using mashanis xmldbeditor. But be sure to only export the data (not creating tables)!
- Change: Disabled Speed checks until they work correct
------------------------------------------------------------------------------
Noret (24.Nov.2004):
- Bugfix: Bolt use recast timer again
------------------------------------------------------------------------------
Duff (24.nov.2004):
- Change : name of guildrank property of player to
- Change : Clean a little bit speed buff need to finish it
- Add : GTAoE select
- Change : Freeze property come back...
- Change : name of many table (like guildrank, guild, door, crafteditem) to
respect name format GuildRank (only table not class) so make
attention to rename your table (just remove DB before name for
most table and change DBRank to GuildRank for table.
And you have to change name like before for the tablename_ID field
in the xml files.
------------------------------------------------------------------------------
Noret (23.Nov.2004):
*) Code from LeBron
- Bugfix: RealmRank was set one level higher than RPs needed for it
*) Code from me
- New: Base for pulsing spells
TODO: Change spell type for Paladin heal chant to "CombatHeal", should work only in combat. And add frequency
- Changed: 2h fired weapons get 2h damage bonus
- Changed: On PvP server "friendly" NPCs are not allowed to attack "friendly" enemys
(friendly means realm != 0 for now)
- Bugfix: Server sends ClientEffect instead of ID for bolt and DD effect animations
------------------------------------------------------------------------------
Duff (22.nov.2004):
- Bugfix : unstealth by npc stealth player
- Change : remove check of stun and mezz in server rules and put stop attack
and cas in spellhandler
- Change : make a better system for remove handler and stop mezz
------------------------------------------------------------------------------
Blue (21.Nov.2004):
- Bugfix: GameServerConsole:
- Hitting just <Return> crashed the server
- Logging is completed when error occurs
------------------------------------------------------------------------------
Duff (19.nov.2004):
- Remove : all pet system
- Change : remake a most of mez stun root system
- Add : pet packet to list of packet
- Change : freeze get set
- Change : condition can not go under 70 percent
- Change : durability do not decrease with condition when use item
@nor : so why it appear in task board after i commit and not before...
------------------------------------------------------------------------------
Noret (19.Nov.2004):
*) Code from LeBron
- New: Realm Rank bonus included in formulas
- New: Combat Speed buff spell handler (haste)
- New: Acuity buff spell handler
*) Code from me
- New: Some magical bonuses on items work
- Changed: Only pure casters do critical damage with spell
- Changed: Encumberance has effect only on players with priv level < 2
- Changed: Removed "Bubble" spell handler, "Bladeturn" is closer to what live servers have
@Duff: it was doing its job well
------------------------------------------------------------------------------
Duff (19.nov.2004):
*) code from Roach & TheThane & Craigen & Phoenix & istar & wmart
-Add: Pet System
*) Code from me
- Remove: blade return spell handler witch are empty and rename bubble to bladereturn
- Bugfix: the encumbrance is fix now
- Bugfix: the guild is fix for title and ranklevel
- TODO: Necromancer supports need some improvement
- TODO : define proper models for pets
- TODO: some little fix un mob command
- TODO: remove a lot of thing hardcoded in pet system like model and name for each pet
------------------------------------------------------------------------------
Duff (17.nov.2004):
*) code from Doulbousiouf
-Add: Encumberance system
-Change: Weight for stacked objects like in official server
*) Code from me
-Change: good formula for critical strike like backstab
------------------------------------------------------------------------------
Noret (17.Nov.2004):
*) Code from LeBron
- New: Bladeturn spell handler
- New: SureShot ability handler
*) Code from Tiv
- Bugfix: "Too close to hide" range is doubled if other player has detect hidden ability
(was stealthing player)
*) Code from me
- New: GameNPCEvent.OnAICallback event fired on every AI callback (which is only if player is close)
- Changed: Damage cap for critical shot is doubled and critical shot makes no critical damage
------------------------------------------------------------------------------
Duff (16.nov.2004):
*) Code from Phoenix
-Add: Durability is now active
-Add: Critical strike implemented(correct formula will come)
-Add: CureDisease handler
-Add: Safe Fall ability handler
-Add: CureMezz spell
*) Code from RyanZA
-Add: Speed Buff
*) Code from Wmart
-Add: Mezz,Stun,Root
*) Code from me
-Change: Some improove in safe fall
-TODO: for critical strike we need to make a real system not a quick hack
and put good formula
-TODO: finish bubble spell with a timer and a test if player have ever...
------------------------------------------------------------------------------
Noret (15.Nov.2004):
- Bugfix: Sometimes fired weapons were removing endurance more than once
------------------------------------------------------------------------------
Duff (15.nov.2004):
-Add: the key to dismount from horse(no need /dismount now)
------------------------------------------------------------------------------
Noret (14.Nov.2004):
- Changed: Base WS and HP modifiers for all classes to better match live servers
------------------------------------------------------------------------------
Duff (12.nov.2004):
-BugFix: title motd amotd omotd are fix now
-Add : sentence when leader change guild rank access
-Add: guild title to player
-Add: craft title to player
------------------------------------------------------------------------------
Noret (11.Nov.2004):
- New: GamePlayerEvent.Quit event fired on forced quit
- New: GamePlayerEvent.UseSlot event fired when player tries to use some slot
------------------------------------------------------------------------------
Noret (10.Nov.2004):
*) Code from LeBron
- Bugfix: Fall damage calculation is using Z value where player left the ground
*) Code from me
- New: Parry attack result messages
- Changed: Style ID set to be unique, get new styles DB with unique IDs
- Changed: Scripts assembly is generated in memory again
- Changed: Disabled unused part of properties system to reduce used memory
------------------------------------------------------------------------------
Duff (8.nov.2004):
*) Code from me
-BugFix: guild rank have now default rank witch are good
-BugFix: function got access fix
-Change: db of crafted item do not inherite from itemtemplate and are smaller
*) Code from Crystalin
-Change: the utf8Encoding are remove to have accent and all strange font good
it use now default ANSI like in DAOC.
------------------------------------------------------------------------------
Duff (5.nov.2004):
*) Code from me
-BugFix: some bugfix of crafting again
*) Code from Crystalin
-Change: weatherMgr load now region from list of region so if some shard do
not use all region it do not load unloaded region.
------------------------------------------------------------------------------
Noret (4.Nov.2004):
*) Code from LeBron
- Bugfix: Dead players can't enter combat mode using styles
*) Code from me
- New: Weapon in left hand slot can be used for attacks
------------------------------------------------------------------------------
Duff (2.nov.2004):
-BugFix: a lot of small bugfix in crafting system
------------------------------------------------------------------------------
Blue (3.Nov.2004):
- Changed: Integrated newest mysql connector/net 1.0.1, changed it a bit so we
can use text-type in dbfields
(@duff: I did not commit all at once, so you propably updated
while I was committing stuff. I want to know what you changed there)
------------------------------------------------------------------------------
Duff (2.nov.2004):
-BugFix: fix the load of player with no guild (rank)
-BugFix: MySQL update was not clean and a lot of missing file
-Add: message in alliance and improve in code of script
------------------------------------------------------------------------------
Duff (2.nov.2004):
*) code from Doulbousiouf
-Change: change Encumberance()
-Add: Vaultkeeper
*) code from me:
-BugFix: case who in guild script bug
-Add : case info display now the access of each rank
-Add : auto make rank when guild have not to simplify migration from old system
for shard you just have to remove field with name start by "rankneededfor"
in your db of guild and after server will auto generate rank with default
name and level permission so guild master have to work a litle to make
rank like they want
------------------------------------------------------------------------------
Duff (1.nov.2004):
-Change: change system of rank in guild (sorry for db of guild)
-Change: alliance improve
-change: createguild create rank
-change: load the rank at start
-TODO: GotAccess must be remove and getaccess with flag
------------------------------------------------------------------------------
Blue (01.Nov.2004):
- Bugfix: Corrected NPC Guild Script attributes of the Crafting Masters
------------------------------------------------------------------------------
Noret (31.oct.2004):
*) Based on code from JPC
- New: 1.72 client support (please report all that seems broken but was working
with older client versions)
*) Code from me
- Changed: Placing weapon in same slot changes active weapon
- Bugfix: Active weapon is updated properly to other players
------------------------------------------------------------------------------
Duff (30.oct.2004):
-Add: update craft on player after gain point and when gain craftskill
-Add: some message in crafting
------------------------------------------------------------------------------
Duff (29.oct.2004):
-Add: save craftskill to db
-Change: type of message in craftemaster
-Change: all message are good now and change a litle to be like in DAOC in
crafting
------------------------------------------------------------------------------
Noret (28.oct.2004):
*) Code from Tiv
- New: /assist command
*) Code from me
- Bugfix: WhisperReceive event is fired for all GameTrainers now
------------------------------------------------------------------------------
Blue (28.oct.2004):
- Changed: Disabled random spawn area for mobs. Made various problems.
------------------------------------------------------------------------------
Noret (27.oct.2004):
- Changed: Bolts can be partially blocked and defenders armor affects damage.
------------------------------------------------------------------------------
Duff (27.oct.2004):
-Add: armor, weapon, tailor and fletching crafted npc
-bugfix: correct a little error in crafnpc
-Add: crafter title
------------------------------------------------------------------------------
Duff (26.oct.2004):
-Add: basic crafting system
-Add: DB crafting item
-Add: crafting skill
-Add: npc for craft
-Change: byteFX to mysql in namespace of connection
-TODO: correct formulat and texte
-TODO: complete npc and make a db with material and a db of crafted item
------------------------------------------------------------------------------
Blue (25.oct.2004):
- Change: Integrated newest ByteFX mysql driver
------------------------------------------------------------------------------
Noret (25.oct.2004):
- New: Nearsight spell handler
- Changed: Some checks for HoT to make sure it does not heal dead
- Changed: Range attack interrupt chance use same formula as spell interrupt
------------------------------------------------------------------------------
Blue (24.oct.2004):
- Bugfix: Console does not block server when scrolling in console window
------------------------------------------------------------------------------
Noret (24.oct.2004):
- New: Stat debuffs spell handlers
- New: Base for spells with immunity effect
- Changed: Spell resists are done in spell handler. All resist checks in ApplyEffectOnTarget
should be removed, now it is used only if spell is not resisted.
- Changed: Removed floating point math from /respec command formula
------------------------------------------------------------------------------
Noret (23.oct.2004):
- Changed: Weapon DPS is capped for UnstyledDamageCap calc
- Changed: Reaver gets parry spec on level 5 and protect II on level 17
- Changed: DB Flying flag changed to 0x20 by dataloggin team request
------------------------------------------------------------------------------
Blue (20.oct.2004):
- Bugfix: Now you can cast timed spells when you have 20 concentration spells active
------------------------------------------------------------------------------
Noret (19.oct.2004):
*) Code from Echostorm
- New: All skill and focus constants for properties
------------------------------------------------------------------------------
Noret (17.oct.2004):
- Changed: Critical shot use 10 endurance points
- Bugfix: Damage shield reacts only on weapon attacks
------------------------------------------------------------------------------
Corillian (16.oct.2004):
- Bugfix: Added Sleep() to DOLGameServerConsole.exe
------------------------------------------------------------------------------
Noret (15.oct.2004):
- New: Shortbows and ThrowingAxes work now (object type 5 and 16)
- New: Style special type 2 (Taunt) affects mob aggro (but is not used in styles DB2)
- New: Style to-hit and defence bonus affects missrate
- Changed: Player base miss rate is 20%, NPC 25% then modified by level difference
if target or attacker is NPC
------------------------------------------------------------------------------
Blue (13.oct.2004):
- Change: Performance improvements (occasional lag not fixed yet)
------------------------------------------------------------------------------
Noret (13.oct.2004):
- Bugfix: Item durability is not included in item AF calc and another small
fix. Armor has much more influence on damage now.
------------------------------------------------------------------------------
Noret (12.oct.2004):
*) Code from Tiv
- Bugfix: BonusXType properties in ItemTemplate return values of correct fields
*) Code from me
- New: CANTTARGET (0x08) flag for mobs DB Flags field. If flag is set mobs can not be
targeted and have no name above them. Setting both CANTTARGET and DONTSHOWNAME
cancels effect of CANTTARGET.
- Changed: Enabled diving for regions 70, 71, 72
- Changed: Flag isStartingUnderwater in regions.ini replaced with WaterLevel which is set to
5804 for regions 70, 71, 72 "Albion/Midgard/Hibernia Atlantis Remnant"
7970 for regions 30, 73, 130 "Trials of Atlantis Terrain"
18960 for regions 35, 78, 135 "Cetus' Pit"
7879 for region 163 "New Frontiers"
rest has to be found. Needed for flags in some packets to allow login underwater
and set underwater flag for mobs; will be needed for breath timer too (no not now).
Delete regions.ini
- Changed: Scripts.dll is generated on disk again. It shows line numbers in script exceptions then.
------------------------------------------------------------------------------
Noret (11.oct.2004):
- Changed: Disabled damage shield for now. It has too much problems and
I have too less time to solve them now
------------------------------------------------------------------------------
Blue (8.oct.2004):
- Bugfix: Fixed important bug that allowed multiple stacking of buffs
------------------------------------------------------------------------------
Noret (8.oct.2004):
- New: Event GameLivingEvent.GainedExperience fired when GameLiving gains experience
- Changed: StringBuilder used to format lines for /who command
- Bugfix: OnEffectExpires method was invoked if player tried to cancel negative effect
------------------------------------------------------------------------------
Blue (7.oct.2004):
- New: Changed melee damage calculation a lot to make it closer to live servers.
We made lots of tests and put approximated melee formulas in place.
Armor, Specpoints, Weaponskill will now have an important influence on damage!
-----------------------------------------------------------------------
Corillian (6.oct.2004)
- Bugfix: 1.72 requires zone id's to be 2 bytes instead of 1, changed size to ushort and 1.68 info is cast to byte
apparantly that's one of the diff's between 1.71- and 1.72. Much thanks to JPC for finding this problem.
------------------------------------------------------------------------------
Noret (6.oct.2004):
- New: Armor factor buff spell handler
- New: Armor absorbtion buff spell handler
- New: Bonuses button packet handler
------------------------------------------------------------------------------
Noret (5.oct.2004):
- Changed: QuickCast is disabled only after spell cast was finished
- Bugfix: Target of last attack result is checked for defensive styles.
Was possible to do defensive styles by anyone. (Bug# 1039908)
- Bugfix: QuickCast is not disabled every time cast time is calculated
------------------------------------------------------------------------------
Noret (3.oct.2004):
*) Code from Echostorm
- New: CriticalShot ability for ranger and hunter classes
*) Code from me
- New: Damage add spell handler
- New: Damage shield spell handler
- New: Health/Power/Endurance regen spell handlers
- New: Resist debuff spell handler
- New: Direct damage with resist debuff
- New: Level based miss rate if one of the targets is not a player (players get fixed 20%)
- New: Mob DPS closer to live servers
- Changed: DoT spells do not target attacker
- Changed: Spec level affects stat buffs
- Changed: /item command can be used to set con/qual/dur DB fields higher than 100
- Changed: renamed:
Specs.RecurvedBow to RecurveBow
Abilities.Weapon_CompositeBow to Weapon_CompositeBows
Abilities.Weapon_RecurvedBow to Weapon_RecurvedBows
"CompositeBows" to "Composite Bow"
"RecurvedBows" to "Recurve Bow"
- Bugfix: Resurrect spell checks for power needed to resurrect selected target
- Bugfix: Negative resists increase damage, positive decrease
------------------------------------------------------------------------------
Corillian (1.oct.2004)
- Bugfix: DOLGameServerConsole.exe now works properly
- New: I have implemented a temporary hack for command handling with DOLGameServerConsole.exe
commands are start, stop, exit, and any / command in scripts (NOTE: any / command is executed
with a generic unconnected client object, I might decide to implement the RA interface right
into the GS, not sure yet)
- New: Added WriteDateTime() to DOLConsole
- New: Added ProcessInput() to DOLConsole, basically is just code I removed from ConsoleThread()
- BUG: There is a problem in the linkdeath hadnling code that prevents accounts from being properly logged out
thank you soho and the Fallen Realms crew for bringing this to my attention
- Todo: RA Server/Client, Login/Patch? servers, official login client (will include the new login server protocol)
-----------------------------------------------------------------------------
Striker (28.Sep.2004)
- Bugfix: fixed a bug in all basic trainers (it was possible to get practice
weapons more than one time - thxs smallhorse for bugreport)
- Bugfix: fixed some bugs in several adanced trainers
- New: new 2 hand bonus formula, 2hand weapons should now do a bit more damage
Please give us some Feedback about 2 hand damage now. But remember that this
will not fix the low melee damage at all.
------------------------------------------------------------------------------
Blue (25.Sep.2004):
- New: Added some basic experimental "Bring a friend" code to make it more
challenging for larger groups
- Bugfix: Spells only overwrite if they are better
------------------------------------------------------------------------------
Noret (26.Sep.2004):
- Bugfix: Caster is not interrupted if IsQuickCasting flag is set
------------------------------------------------------------------------------
Duff (25.Sep.2004):
- Add: fastcreate in mob script
------------------------------------------------------------------------------
Blue (25.Sep.2004):
- Bugfix: Incorrect concentration usage (bar was always full, after some spells)
- Bugfix: Concentration spells are now canceled properly on zoning, logout and death
------------------------------------------------------------------------------
Blue (24.Sep.2004):
- New: Support for concentration based spells
- New: Str-, Dex-, Con-, DexQui-, StrCon-Buffs and all Resist Buffs
- New: Introduced new table for abilities. Abilities can now be attached to specs.
Check for my AbilityDB 2 release on the forum and help filling it up
- Bugfix: Some spells like Bolts disabled DD's
------------------------------------------------------------------------------
Noret (24.Sep.2004):
*) Code from Echostorm
- New: Critical shot ability handler (icon in Ability table has to be set to 413)
*) Code from me
- Bugfix: Exception when switching a weapon
------------------------------------------------------------------------------
Duff (19.Sep.2004):
- Add: broadcast message in console
------------------------------------------------------------------------------
Striker (20.Sep.2004)
- Bugfix: Armsman and Mercenary trainer promote to correct class again
------------------------------------------------------------------------------
Noret (20.Sep.2004):
- Bugfix: Money.GetString() method no longer make exception if money amount is negative
- Bugfix: Clients no longer crash with big inventory updates and warning
is shown if server sends packets longer than 2048 bytes
------------------------------------------------------------------------------
Duff (19.Sep.2004):
- Bugfix: small bugfix in weather. hope it work now
- Bugfix: respect formula seems to lost point so i have change the formula
------------------------------------------------------------------------------
Smallhorse (17.Sep.2004)
- Bugfix: Quest Journal is now displayed correctly
- Changed: GamePlayer.IsDoingQuest(typeof_quest) returns the current active
quest of the specific type or null if the player isn't doing it.
- Changed: Empty Regions don't display any 0 objects loade init messages
anymore
- Changed: Moved "ExcempleQuest.cs" from "scripts/Quest/ExcempleQuest.cs" to
"scripts/quests/examples/HelpSirQuait.cs"
- New: GamePlayer.HasFinishedQuest(typeof_quest) returns the number of times
the player has finished this quest. See HelpSirQuait for demo...
- New: AbstractQuest.AbortQuest() to remove a quest from the player and the
database as if the player has never had it...
------------------------------------------------------------------------------
Striker (16.Sep.2004)
- New: Armsman level5 items added to db and trainer
- cleaned project file from crafting entries (CVS was not compileable)
------------------------------------------------------------------------------
Duff (15.Sep.2004):
- Bugfix: good time between 2 quickcast and quickcast effect
------------------------------------------------------------------------------
Blue (15.Sep.2004):
- New: Abilities are loaded from db now
- Changed: Mob HP fits now original very close
------------------------------------------------------------------------------
Noret (14.Sep.2004):
*) Code from Echostorm
- New: Added in the 3 other SI mounts to the check
- Changed: Horse realm is set to players realm
*) Code from me
- Changed: Dead group members nolonger get money loot (Bug# 1019343)
- Changed: Players on steed do not aggro mobs
- Changed: GameHorse do not aggro mobs
- Bugfix: Item emblem is set to 0 when dyed (Bug# 1024578)
------------------------------------------------------------------------------
Striker (14.Sep.2004)
- New: added all Albion level 5 trainer swords
(will be added automaticly to item db)
- New: some trainers give you the chance to choose a weapontype
(slash/crush/thrust/twohand)
- New: Paladin and Mercenary trainer give multiple items now
(Thanks to Noret for little helping)
- Fix: Frostalf race can now promote to shadowblade class
------------------------------------------------------------------------------
Duff (13.Sep.2004):
- New: quick cast
------------------------------------------------------------------------------
Noret (13.Sep.2004):
- New: Mobs uncover stealthed players (thanks to SmallHorse again)
- New: Styles check for required weapon type, needs new style DB
- New: Stealth check for styles
- Changed: If target is closer than 32 units it is considered always in view
- Changed: Renamed spec "Blunts" to "Blunt"
------------------------------------------------------------------------------
SmallHorse (12.Sep.2004):
- New: Added a cheatlog file called "cheats.txt". Can be accessed via
GameServer.LogCheatAction("text");
- New: Added speedhack check and did some testing. Logentries will be
generated if a player attempts to move faster than allowed:
12.09.2004 19:31 - SPEEDHACK[10]: CharName=Smallhorse Account=smallhorse IP=192.168.0.1:4926
12.09.2004 19:31 - SPEEDHACK[20]: CharName=Smallhorse Account=smallhorse IP=192.168.0.1:4926
12.09.2004 19:32 - SPEEDHACK[30]: CharName=Smallhorse Account=smallhorse IP=192.168.0.1:4926
12.09.2004 19:32 - SPEEDHACK[40]: CharName=Smallhorse Account=smallhorse IP=192.168.0.1:4926
The number in the [] shows you the amount of speedhack packets already
received by this client or player. Please don't instantly ban anyone that
comes into this logfile right now, it is in the early testing stages.
Please report back any issues with this logfile if players get in there
without cheating(tell us what they did to go in there) or if they SHOULD
go in there, but don't...
- Bugfix: Quests reload from the DB properly now
- New: Added GamePlayer.GiveItem event that is fired whenever the player wants
to give an item to a living
- Changed: The example quest is nearly fully documented in very detail now!
- Known Bug: Quest Journal packet is still wrong, still need some correct logs from recent live servers.
------------------------------------------------------------------------------
SmallHorse (12.Sep.2004):
- Changed: Fixed a LOT of bugs in the questsystem. It is nearly complete now.
- Changed: All GameObjects should now call "Notify" instead of "GameEventMgr.Notify" to allow for quests
- Changed: Quests can store custom string properties!
NOTE: Quests don't yet work 100% ... I will fix this stuff on quests tonight ... Thanks to Duff for the initial checkin!
- Known Bug: Quests don't reload yet
- Known Bug: Quest Journal packet is wrong! Don't know the correct one yet, this one isn't ...
- Todo: Make a GamePlayer.MoveItem Event so that quests can be notified even for items which
have the IsDropable/IsPickable flag to false
------------------------------------------------------------------------------
Duff (11.Sep.2004):
*) Code from SmallHorse in great part and a bit by me and thydion
- New: Quest system
------------------------------------------------------------------------------
Noret (8.Sep.2004):
- Changed: GamePlayer class is used if character class type in DB is incorrect
- Bugfix: Visible equipment is updated when player unstealths
- Bugfix: Player inventory is saved in DB when player character is saved (Bug# 1019477)
------------------------------------------------------------------------------
Duff (7.Sept.2004):
*) Code from Ogre:
- BugFix: form command in guild
*) Code from me:
- BugFix: a lot of other command in guild with similar bug
------------------------------------------------------------------------------
Noret (7.Sep.2004):
*) Code from SmallHorse (finished by me)
- New: Formula for player speed while stealthed (tested on live)
- New: Formula for range to enemy check when stealthing
- Changed: Dead players don't prevent stealthing
*) Code from me
- New: Players are stealthed when enter detection range
------------------------------------------------------------------------------
Duff (6.Sept.2004):
- Change: speed when stealth is calculate with level of stealth now
------------------------------------------------------------------------------
Noret (6.Sep.2004):
- New: 1.71 client support; "new" 1.70 clients that reported 171 version
will still work but you won't see NPC names
- New: Level 5 players get free full respec since 1.70
- Bugfix: Players can unstealth if enemy is close
- Bugfix: Characters with Frostalf race can be created (Bug# 1022592)
------------------------------------------------------------------------------
Noret (5.Sep.2004):
- New: Chance to unstealth when starting to aim is based on stealth spec
- New: Stealth detection range formula based on spec and detect hidden ability
- New: Infiltrators/Shadowblades/Nightshades get detect hidden ability
on stealth spec level 16+
- New: Check for sprint ability in /sprint command (just in case...)
Can't stealth if dead
- Changed: Reduced "too close to an enemy to hide" even more,
gonna start guessing formula soon
- Bugfix: No more stealthed ghosts (thanks to SH for hints)
------------------------------------------------------------------------------
Duff (3.Sept.2004):
- Add: quest database
- Add: basic quest system
-----------------------------------------------------------------------
Noret (3.Sep.2004):
- New: Installed client type and expansions are read from the packet
- Changed: Reduced range on stealth distance check, made it PvP friendly
and added check for NPCs
- Changed: Player is unstealthed only if attack result is hit
(that event is fired on all attack results including OutOfRange,
NotAllowed_ServerRules, TargetNotVisible)
- Bugfix: ENTRY_REG_DIVING_ENABLE constant changed to unique string
(was same as region description); delete regions.ini
-----------------------------------------------------------------------
Duff (3.Sept.2004):
- Change: Attackbyenemy event finished
- Change: mobs shouldn't attack stealthed players
- Change: speed is reduce when stealth now
- Change: can't stealth when close to enemy
- Change: unstealth by enemys
want to add stealth icon and effect and more check but ever done by Noret:)
-----------------------------------------------------------------------
Noret (2.Sep.2004):
- New: Model changes for stealthed player
Stealth icon while stealthed
Can't sprint while stealthed
Unstealth when attack/attacked
Can't stealth in combat
still missing: mobs shouldn't attack stealthed players, change speed
while in stealth, unstealth by enemys, can't stealth when close to enemy
- Changed: Players in unknown zones are moved to bind point
- Bugfix: Attacker/target was in combat even if attacker is not in range
-----------------------------------------------------------------------
Duff (2.Sept.2004):
- Add: event handler for hit
- Change: add distance unseen when in stealth mod
-----------------------------------------------------------------------
Noret (1.Sep.2004):
- Changed: No experience is awarded if killed NPC is grey to one
of attacking NPC (was if attacking NPC realm is not zero)
-----------------------------------------------------------------------
Striker (31.Aug.2004)
- New: added all Albion level 5 caster gifts
- New: added the gifts to their trainers
- Bugfix: corrected Necromancer and Paladin trainer text
-----------------------------------------------------------------------
Duff (29.Aug.2004):
- Bugfix: find region in m_regions is good now(ushort)
- Change: change region with diving enable
- Bugfix: fix the bug of stealth when diving
- Change: divingenable and is startunderwater is in ini file now
-----------------------------------------------------------------------
Striker (29.Aug.2004)
- New: - tested the level 5 item gift system (Cabalist Trainer now gives level 5 item)
Note: All level 5 items have no magical properties because this is
a missing feature in DOL! All level 5 gifts will be addedd this week!
-----------------------------------------------------------------------
Blue (28.Aug.2004):
- Bugfix: Fixed several things on the horse system, should be working now
- Bugfix: Mobs do not die when they are removed and were alive
-----------------------------------------------------------------------
Duff (28.Aug.2004):
- New: Diving
- New: Stealth
this 2 things need to be tested but it seems to work
-----------------------------------------------------------------------
Noret (28.Aug.2004):
- New: Single-Line Respec; free respecs on level 20 and 40 are changed
to single-line and are removed on level 21 and 41 if not used
-----------------------------------------------------------------------
Blue (27.Aug.2004):
- New: Little horse & path system, use /path to create, save and assign horseroutes
- New: By clicking on columns in Player list you can sort (DOL GUI)
- Bugfix: Damage over Time spells used no mana
-----------------------------------------------------------------------
Noret (27.Aug.2004):
*) Code from Echostorm
- New: Command /respec that sets all spec lines to 1 and returns points
Characters recieve 1 respec upon creation, and 2 more at 20th and 40th levels.
Respecs are currently cumulative due to the high demand.
Respec stones have been added to default item template to prevent confustion with
item databases. They can be created via the /item command by typing /item create
respec_stone. Respec stones may be turned in to trainers for respecs.
-----------------------------------------------------------------------
Corillian (26.Aug.2004):
- Changed: Rewrote DOLConsole to use the system console w/ Asynchronous IO. Still need to work on removing the GUI
portions and add command handlers.
-----------------------------------------------------------------------
Noret (25.Aug.2004):
- Bugfix: Players were not saved after normal quit
-----------------------------------------------------------------------
Duff (24.Aug.2004):
- Change: change a litle weather manager to not have a call of
callback function every 5 min during raining
- Bugfix: long name of guild work now
-----------------------------------------------------------------------
Noret (24.Aug.2004):
- New: GameTrainerEvent.PlayerPromoted event fired after trainer promoted player
- Changed: Base level to start adding secondary/tertiary stats is 6
-----------------------------------------------------------------------
Striker (24.Aug.2004)
- Fixed: Necro Trainer text fixed (Bug# 1011799)
-----------------------------------------------------------------------
Noret (23.Aug.2004):
- New: Some checks on char creation to allow using only 30 starting points (Bug# 1005434)
- Changed: Dead players name is lower and red like on live servers
- Changed: AE DoT damage is not reduced with distance from center
- Changed: DD spells start interrupt timer
- Changed: Caster of resisted spell is added to aggro table (Bug# 1001489)
- Changed: Only GMs can use /mount command (Bug# 1012927)
-----------------------------------------------------------------------
Noret (22.Aug.2004):
*) Code from F625
- Bugfix: Sell formula includes PackSize
-----------------------------------------------------------------------
Blue (22.Aug.2004):
- Changed: All coords are now integer, IPoint3D introduced, very useful later
-----------------------------------------------------------------------
Noret (22.Aug.2004):
*) Code from F625
- Changed: Arrows/Bolts/Poisons/Throwing weapons show count in mini info window
*) Code from me
- New: Replaced IsStackable flag with MaxCount and added PackSize to item template
MaxCount defines max amout of items allowed in one slot
PackSize defines amount of items sold at once (by merchants)
- New: Stackable items, when brought, first fill not full stacks then added to
empty slots
- Changed: Items that player can't use are greyed out in merchants list
-----------------------------------------------------------------------
Blue (21.Aug.2004):
- New: Item Emblem & Effect delve info (Shift+I) for GM & Admins
- Bugfix: Fixed the Concurrency Exception in mySQL/mssql/...,
a very nasty threading problem was the reason, now it's secured
no char could be saved after that occured, very annoying since the
server is now rock stable :p
- Bugfix: Another bug in .NET or ByteFX's code ignores unsigned flag in mysql
=> changed table InventoryItem and DOLCharacters to prevent that error
-----------------------------------------------------------------------
Version 1.5.6
Tag: DOL-1-5-008(21Aug2004)
-----------------------------------------------------------------------
SmallHorse (21.Aug.2004):
- Changed: Linkdead players won't be disconnected immediatly, they will stay in game for the same amount of time
that a normal quit operation would take them at the time they went linkdead.
- Normal Play: 20 Seconds
- Combat: Around 60 Seconds
- CharScreen: Instant
You will see the message "Your account is being logged out!" if you try to go back into the game
- Bugfix: BIG Bug fixed in GamePlayer.Die() Method. It never stopped the attack timer on the player, which made
the mob that killed the player receive a TakeDamage call every callback, leading to multiple
StartAttack/StopAttack/TakeDamage calls etc. etc. It was a realy ugly chain of errors!
- Bugfix: RegenTimers are now only active on Players when their client is in eClientState.Playing !!!
Before players were being healed even if they were disconnected and out of the game already as long as their
player object could not be garbage collected!
- Changed: Renamed GameClient "State" enumeration to "eClientState"
- TODO: I think on live servers there are little stars around the linkdead player somehow ... can anyone log how
they are generated!?
- NOTE: Don't forget to copy DOLGameServer.exe and DOLGameServerConsole.exe into your executable directory after
rebuilding, they changed (State -> eClientState rename)
- IMPORTANT: I removed your door change Duff! It was very buggy and incomplete!
Please read inside the DoorRequesHandler.cs, I wrote some comments why I removed it ...
-----------------------------------------------------------------------
Duff (21.Aug.2004):
- New : Added a door DB and DoorRequestHandler check the DB first
- Change : guild cleaned a bit
-----------------------------------------------------------------------
Noret (19.Aug.2004):
- Bugfix: ArgumentNullException instead of fall damage
-----------------------------------------------------------------------
Blue (19.Aug.2004):
- Bugfix: And another rare deadlock hunted down :)
- Bugfix: Enumeration exception in ChangeHealth
-----------------------------------------------------------------------
Smallhorse (19.Aug.2004):
- Bugfix: Fixed a nasty nasty racing condition between DAOC Client and DOLServer in the NPCCreationRequestHandler,
that caused the client (especial slower ones to lag and finally crash and the GameTicker on DOL getting
out of sync.
- Bugfix: Display of StatPrint event is now correct, was buggy before for outgoing packets/bytes
-----------------------------------------------------------------------
Noret (19.Aug.2004):
*) Code from Xseven
- New: Command /range showing the range to current target
-----------------------------------------------------------------------
Smallhorse (19.Aug.2004):
- Bugfix: Now Mobs really deal no XP when Guards/RealmNPC's or GM's help in killing (IsWorthReward Method in GameNPC)
- New: Message class (utils/Message) which helps in sending out messages to many players in the area
- Changed: Some lock(x) methods have been cleaned up to be more secure, many still not checked...
- Changed: StatPrint event doesn't force a GC anymore
- Changed: Server tries to bind to Port at the beginning of the startup and will start to listen at the end
-----------------------------------------------------------------------
Noret (18.Aug.2004):
- Changed: NPCs and Players on PvP and PvE servers can be targeted with
nearest friendly/enemy target button when they should be.
This also fixes name colors. (Bug# 994129)
- Bugfix: Realm speciality points are saved
- Bugfix: Y offset of NF Forest Sauvage zone should be 68, delete old zones.ini
-----------------------------------------------------------------------
Blue (18.Aug.2004):
- Bugfix: Fixed another deadlock condition in WorldMgr.
Occurred in rare cases when a grouped player disconnects.
-----------------------------------------------------------------------
Noret (17.Aug.2004):
- New: Realm points (can raise only by one realm level every kill)
- New: for /code command:
method print(object) showing ToString() value of the object
variable player storing the player that entered the command
- Changed: 2 minutes PvP immunity if killed by player
-----------------------------------------------------------------------
Blue (17.Aug.2004):
- Change: Server port only opens when server is started
- Bugfix: Fixed a deadlock condition that stopped the server from working after time
-----------------------------------------------------------------------
Duff (14.Aug.2004):
- Change: networkadaptater is different now it do not use management class
mono do not make management namespace because linux have no
database of your pc
-----------------------------------------------------------------------
Smallhorse (15.Aug.2004):
- New: Started fixing the XML dokumentation tags ...
- New: Some stuff to make cheating a bit harder:
- All GM+ commands will be logged (gm_actions.txt)
- All item transfers from GM+ to player will be logged (gm_actions.txt)
- All money transfer from GM+ to player will be logged (gm_actions.txt)
- If a GM+ hits a mob, the mob will not be worth any XP anymore
- If a realm NPC hits a mob, the mob will not be worth any XP anymore
- New: GM+ can quit instantly
-----------------------------------------------------------------------
Smallhorse (15.Aug.2004):
- New: Another step into the DOL for MONO direction:
Moved ALL GUI Elements from GameServer to the DOLGameServer project.
The GUI now basically uses GameServer and GameClient events for interaction with
the GameServer project.
GameServer actually doesn't referenze Windows.Forms anymore! The only drawback
of this change currently is, that there is no progress dialog anymore while loading
the regions... I am looking into that...
- Changed: ServerEvent renamed to GameServerEvent ... don't kill me, the attributes
have been renamed to [GameServerStarted] and [GameServerStopped] too ...
*hides because all the scripters will go for a horse-hunt now*
-----------------------------------------------------------------------
Smallhorse (15.Aug.2004):
- Changed: If script compilation fails, the error messages are now much more informative!
- Bugfix: Changed the weather packet, now it is correct ;-)
The parameters for a storm are:
x/starting line = The x coordinate inside the region where the storm starts
width/duration = The width of the storm cloud, the bigger the cloud, the longer the storm good = >16000
speed = The speed of the storm-cloud in coordinates/second
fogDiffusion = How deep (in coordinates) you need to be in the storm to get "fogged" ;-) good = 16000
intensity = 0-128 ... how intense the storm is ... good values are > 20 and < 120
- Changed: Weather system cleaned up a bit ... no need for additional threads etc ...
- Changed: /weather command has more options now
-----------------------------------------------------------------------
Duff (14.Aug.2004):
- New: Weather system for rain is implemented!!!
many thanks to Malkavien from Amtenael for his help and to Smally too
-----------------------------------------------------------------------
SmallHorse (14.Aug.2004):
- Changed: Event System uses ReaderWriterLocks now for a very good performance, multiple
Notify operations are now possible at the same time ...
- Changed: The Event System has been moved from GameServer to an own class called GameEventMgr.
- New: Object event system. Now events can be registered for individual objects too ... eg.
GameEventMgr.AddHandler(player, GamePlayerEvent.Released, new DOLEventHandler(MyHandler));
will add an event handler for the Released event for the "player" object ... this will get
very useful for Quests etc....
- New: (Code inspired by F625) Block new account creations with invalid characters (only a-z,A-Z,0-9 allowed)
*) Code from Crystal
- New: PlayerInventory code reworked a bit to be more beautiful, including a method to combine
items. First use is for dyeing objects... :)
- Changed: Some global script methods moved from global.cs to GlobalConstants.cs ... to use them
you can call GlobalConstants.XXX from inside GameServer or Scripts now...
- Changed: Inside information about items in the delve window for plvl > 1
-----------------------------------------------------------------------
Noret (14.Aug.2004):
- New: 1.71 client version support
- Changed: On hp/mana/end change only that player is updated to the group
- Changed: Shadowblades can equip left-handed weapons
*) Code from Striker
- Bugfix: Shadowblade has left axe ability now
- New: added some new files for advanced guild items, will start working
on it soon (1 week) :)
-----------------------------------------------------------------------
SmallHorse (12.Aug.2004):
- Changed: Some more changes to GameServer... included Regions, more failsafe startup/shutdown
Don't forget to copy DOLGameServer.exe and DOLGameServerConsole.exe to your executing
directory if you compile the CVS yourself ...
- Changed: Converted the OnXXX delegates from GameNPC to GameNPCEvent ... and fixed the HorseRace
event which was relying heavily on those callbacks ...
-----------------------------------------------------------------------
Noret (12.Aug.2004):
- Changed: Can't start casting a spell on dead target if spell target type is not "Corpse"
- Bugfix: Heal caster is added to aggro list (was target)
-----------------------------------------------------------------------
SmallHorse (12.Aug.2004):
- Bugfix: EventMgr is now initialized BEFORE the world is loaded ;-)
- Bugfix: Some more error handling if server startup fails
-----------------------------------------------------------------------
SmallHorse (11.Aug.2004):
- Changed: Removed all (for GameServer) unnecessary projects from the solution file
for faster solution loading ...
- Changed: Converted all the OnXXX delegates, events and callbacks from the
GameObject and GameLiving into Global Events...
- New: Command: /recompile ... Recompiles all Scripts (Admin Command)
- New: Command: /code <codesnippet> ... Let's you execute arbitary code statements
The variable "target" can be used to access your current target in game
Example: /code target.WriteLine(target.Name);
Prints out your current target's name ... take care that you have a valid
target or things will crash. This is a dangerous command and should ONLY
be used if you know what you do! Might be useful to look into variables.
-----------------------------------------------------------------------
Blue (11.Aug.2004):
- Bugfix: One of the largest memory leaks fixed
-----------------------------------------------------------------------
Noret (11.Aug.2004):
- New: PvP immunity timer
15 sec after entering the game
30 sec after changing region
30 sec after release (TODO: 2 min if killed by player)
- New: /safety command for PvP server
- Changed: /who command shows guild name on PvP server (Bug# 1006364)
-----------------------------------------------------------------------
SmallHorse (10.Aug.2004): Quite some changes, let's start slowly
I tagged the code before committing my changes, so
nothing is lost ... (look below for tag-details)
- Changed: Cleaned up the GameServer ... it held all Options as properties,
now all options are accessed through the GameServer.Options property
and the options can not be changed anymore while the server is running!
- Changed: EVENT SYSTEM - PART 1 - GLOBAL EVENT SYSTEM:
First step of cleaning up the event system. EventMgr, GameEventMgr
and IStartupScript as well as IGameEvent etc. all have been removed.
Instead, there is a global system inside GameServer now.
The effect of this change is, that all your GameEvents will fail because
they expect their "StartEvent" method to be called as well as their
constructor. This won't happen anymore now. I have reworked all official
GameEvents so they work with the new event system, you can look at them
as example on how things work now... But I might change it to something
more meaningfull than "ScriptsCompiled" ... we will see ...
NOTE: This is the first step of revamping the event system, more
changes will follow in the days to come... I know it might be a small
inconvenience to rewrite your gameevents, but it's easy to do and the
new system will proove more stable and flexible in the end ...
you'll see =)
NOTE: There might still be bugs, I didn't have time to test it thoroughly.
*) Code from Echo:
- New: /played command to show how much of your RL Time you "wasted" inside DAOC ;-)
-----------------------------------------------------------------------
Version 1.5.5
Tag: DOL-1-5-007(10Aug2004)
-----------------------------------------------------------------------
Noret (9.Aug.2004):
- Changed: Even inactive objects are removed from the region
- Changed: Player name and last name are updated for all clients in range
-----------------------------------------------------------------------
Blue (8.Aug.2004):
- Bugfix: Exception in spell handling when target is sprinting
-----------------------------------------------------------------------
Noret (8.Aug.2004):
*) Code from Ogre
- Bugfix: Region objects cleanup was running only once
-----------------------------------------------------------------------
Noret (7.Aug.2004):
*) Code from zerofriction
- Bugfix: Command '/item savetemplate' saves IsStackable flag now (Bug# 1004946)
*) Code from me
- Changed: Players with DamageOverTime effect or in another region have
correct name color in group window
-----------------------------------------------------------------------
Duff (6.Aug.2004):
- Bugfix: emblem is ushort in all code now!so your emblem can be see
by all people.
-----------------------------------------------------------------------
Noret (5.Aug.2004):
- Changed: Cleaned EmblemNPC script a bit
- Changed: On PvP server players can use items from all realms
- Bugfix: Mobs didn't attack players on PvE server
- Bugfix: Dead players can't speak (Bug# 1002298)
- Bugfix: Character select screen shows shield emblem
- Bugfix: Was possible to join the group while in combat (Bug# 1002266)
-----------------------------------------------------------------------
SmallHorse (2.Aug.2004):
- New: Server rule to allow/deny a client connection by many factors...
(IP, Date/Time, name, player count, etc. anything you can imagine)
Look at AbstractServerRules.cs to see some examples of usage!
--- Happy banning of cheaters! ---
-----------------------------------------------------------------------
Noret (2.Aug.2004):
*) Code from Ogre
- Bugfix: PvP server: Only players can't attack players in safe regions
*) Code from me
- Changed: Experience for living and level can be set in server rules script
- Changed: Ability to use item can be set in class script
- Bugfix: Guild emblem and EmblemNPC should be working now
-----------------------------------------------------------------------
Duff (1.Aug.2004):
- Bugfix: Remove some bug in guild system thanks to Cthonic and Schaf
-----------------------------------------------------------------------
Noret (31.Jul.2004):
*) Code from Ogre
- Bugfix: PvP server: Only players can't attack players in safe regions
-----------------------------------------------------------------------
Noret (31.Jul.2004):
*) Code from Ogre
- Changed: No PVP in noob dungeons (Tomb of Mithra, Nisse's Lair, Muire Tomb)
-----------------------------------------------------------------------
Noret (29.Jul.2004):
- Changed: On guild name change player is updated for all clients in visibility range
- Changed: Dead players are release on forced Quit (Bug# 999924)
-----------------------------------------------------------------------
Duff (29.Jul.2004):
- Add: emblem NPC
- Add: emblem system in guild script
- Add: embleme dialogue
- Add: emblem dialogue reponse handler
So check all bug on emblem i have check the server work with it
-----------------------------------------------------------------------
Noret (28.Jul.2004):
*) Code from Ogre
- New: Housing zones added to the list of no PVP zones
- Bugfix: Endurance on group window for 1.69+ clients
- Bugfix: The check to see if a trade is valid was backwards
- Bugfix: Players can't attack their group or guild members on PVP server
*) Code from me
- Bugfix: Some small bugs fixed
-----------------------------------------------------------------------
Striker (27.07.04):
- Bugfix: Mercenary Trainer now promotes to Mercenary instead of to Infiltrator ;-)
-----------------------------------------------------------------------
Noret (27.Jul.2004):
- New: Some server rules can be set in a script now. Default rules include:
for Normal server type:
all accounts with priv level > 1 are considered friendly by all mobs,
take no fall damage, can hear and talk to all realms, can trade with all
realms, can create chars in all realms and add players from all realms
to friend list
for PvP server type:
NPCs with realm != 0 are considered "Friendly" and can't be attacked (Bug# 993151)
Tir Na Nog, Jordheim, City of Camelot are safe regions
for PvE server type:
players can't be attacked (Bug# 995574)
- New: /serverinfo command showing server name, version, type, amount of clients playing, uptime
- Changed: Very custom delve info can be set in spell handler script
- Changed: Race name is shown if players are from different realms
- Changed: Some events are removed on server stop
-----------------------------------------------------------------------
Noret (23.Jul.2004):
- Bugfix: Other clients can see players riding a horse (Bug# 996560)
- Bugfix: Guild list is cleared before loading (couldn't stop/start the server)
- Bugfix: Alliance table renamed to "DBAlliance" (was "DBguild", couldn't start the server)
-----------------------------------------------------------------------
Duff (23.Jul.2004):
- BugFix: promote bug promote wrong player
- Change: change the name of guild.xls
- Add: gamealliance system
- Add: alliance chat
- Add: alliance database
-----------------------------------------------------------------------
SmallHorse (22.Jul.2004):
*) Code from Ogre
- New: /faceloc and /facegloc commands
*) Code from Echostorm
- New: "You have attained the rank of XXX" message on levelup if title changed
-----------------------------------------------------------------------
Noret (22.Jul.2004):
- New: /item commands:
object <ID> [slot #] - to change object type
damagetype <ID> [slot #] - to change item damage type
weight <weight> [slot #] - to change item weight
- Bugfix: /item dps_af and spd_abs commands work again
-----------------------------------------------------------------------
Noret (21.Jul.2004):
- Changed: 8 characters allowed in each realm on PvP server (Bug# 993147)
-----------------------------------------------------------------------
Noret (19.Jul.2004):
- New: Character starting locations from live sever (logged by Avatarius)
- Changed: All class and trainer scripts now use enum for character class
-----------------------------------------------------------------------
Smallhorse (17.Jul.2004):
- Bugfix: PvP Servers now always show the char-screen (Bug# 992857)
- Bugfix: Relogging and making new toon keeps stats from previous toon (Bug# 992855)
- Bugfix: Error (and other) messages should now properly be displayed in Console mode too
- Bugfix: Error when 2 players connect at the same time. (Bug# 934353)
-----------------------------------------------------------------------
Noret (17.Jul.2004):
- Changed: Some guild related messages
- Bugfix: Player is removed from online guild members only on forced quit
- Bugfix: NullReferenceException in /gu and /o commands if player is not in the guild
- Bugfix: NullReferenceException on decline to leave the guild dialog responce
- Bugfix: Guild name is set on guild creation
- Bugfix: Guild invite dialog is sent to target now, not the player that typed the command
- Bugfix: /gc create adds player that typed command to the guild
basic guild system should be working now
- Bugfix: Other players can see emblems on visible items (Bug# 906670)
-----------------------------------------------------------------------
Duff (16.Jul.2004):
- Bugfix: add check for group in createguild function
- moved: check for group is now in guild script
-----------------------------------------------------------------------
Blue (15.Jul.2004):
- New: Introduced ClientEffect on spells to have independend client effect ID
- Changed: Temp. disabled saving of Abilities since it makes some
serious problems on mySQL (needs redesign). Dont worry it does no harm to your skills.
-----------------------------------------------------------------------
Noret (15.Jul.2004):
- New: Cure poison spell handler
- New: Heal over time spell handler
- Bugfix: Equipped NPC lefthanded weapon is shown (Bug# 984231)
-----------------------------------------------------------------------
Duff (15.Jul.2004):
- Bugfix: fix the bug when you hit command with no guild (nullexception)
- Rename: rename guildDB to DBguild
- Bugfix: check if argument is good and put try and catch
-----------------------------------------------------------------------
Blue (14.Jul.2004):
- Bugfix: Players lost something on zoning (Bug# 990233)
- Bugfix: too many connections on mySQL
-----------------------------------------------------------------------
Duff (14.Jul.2004):
- Bugfix: fix a lot of bug in guild script and guild system in general
-----------------------------------------------------------------------
Noret (13.Jul.2004):
- New: Delve info for Icons on top of the screen (dots/buffs)
- Changed: All players can be attacked by spells on PvP server
- Changed: Cleaned some spell handlers
-----------------------------------------------------------------------
Duff (12.Jul.2004):
- BugFix: i have commit the guild script witch is not finished by error...
so i corect some bug in it but all witch must be do in it is not finished
TODO:finished and debug the script and change some name function to better name
-----------------------------------------------------------------------
Noret (12.Jul.2004):
- New: Elevation bonus for fired weapons (1 point Z difference = 2 points range)
- Changed: Sprint effect is stopped if player not moving for 5 pulses
- Changed: Ability to use left handed weapons can be set in class script
- Bugfix: Null reference exception in PlayerMoveItemRequestHandler
-----------------------------------------------------------------------
Blue (11.Jul.2004):
- New: Damage over time spells
- Changed: Redesigned spell system for duration spells, no chants/conc spells yet
- Changed: Server Port only opens when startup phase is finished
- Bugfix: Ping timeout loop
- Bugfix: Possible fixed keyvalue changed message while saving
- Fixed some minor things
-----------------------------------------------------------------------
Duff (11.Jul.2004):
- New: add guild system (db player manager and guild and script to speack and create
guild but need to be check, increase and debug...
-----------------------------------------------------------------------
SmallHorse (9.Jul.2004):
- New: I added a project called DOLGameServerConsole
This project creates a very very simple exe file that will run
the GameServer in CONSOLE ONLY mode!!!
The programm will load the GameServer and instantly start it up.
Simply start the "DOLGameServerConsole.exe" after compiling and
you'll see.
NOTE: This does NOT interfer with your ability to run the GameServer
in the normal GUI mode. If you start the Server via "DOLGameServer.exe"
you will get the GUI like before, no changes there...
NOTE: If you have not configured your GameServer yet, you might need
to configure it. To change options, settings, etc. you will need to
start the Server via GUI mode just like you did before. Do your
configuration, test it and then you can shutdown and restart without
GUI if you like it better.
NOTE: Why do something like this? Well I want to see if this console
only mode solves some of the strange strange STRANGE problems we have got
with the GameServer occassionally. If problems occur now, we KNOW they can
not come from any stupid GUI elements!
NOTE: This is NO Linux build. The GUI elements still are included in
the files, they are just not used when you start up GUIless...
-----------------------------------------------------------------------
Version 1.5.5
Tag: DOL-1-5-006(9Jul2004)
-----------------------------------------------------------------------
SmallHorse (9.Jul.2004):
*) Code from me
- New: Changed the Version number of GameServer to 1.5.5 beause there have been
so many changes in 1.5.4 already.
*) Code from egaMad:
- Bugfix: /disband command and button fixed, they checked the groupleader twice
- New: Command: /afk [message]
-----------------------------------------------------------------------
Noret (7.Jul.2004):
- New: 1.70 client version support, for NF zones use:
"/jump to 444000 555000 0 163" - Emain Macha
"/jump to 577000 555000 0 163" - Hadrian's Wall
"/jump to 555000 444000 0 163" - Odin's Gate
"/jump to 41000 31000 16000 233" - Summoner's Hall
"/jump to 32000 32000 16000 233" - Summoner's Hall
"/jump to 32000 32000 16000 244" - Passage of Conflict (Frontiers RvR dungeon)
"/jump to 555000 555000 0 234" - (1to4BG) The Proving Grounds
"/jump to 555000 555000 0 235" - (5to9BG) The Lions Den
"/jump to 555000 555000 0 236" - (10to14BG) The Hills of Claret
"/jump to 555000 555000 0 237" - (15to19BG) Killaloe
"/jump to 555000 555000 0 238" - (20to24BG) Thidranki
"/jump to 555000 555000 0 239" - (25to29BG) Braemar
"/jump to 555000 555000 0 240" - (30to34BG) Wilton
"/jump to 555000 555000 0 241" - (35to39BG) Molvik
"/jump to 555000 555000 0 242" - (40to44BG) Leirvik
"/jump to 314000 288000 0 242" - (40to44BG Take 2) Leirvik
- Changed: Removed region 254 from default config, both 40to44BG zones are in region 242
- Changed: If account is already logged in client will see
"Your account is already logged in!"
- Changed: ActiveWeaponSlot changes if ActiveWeapon was destroyed
-----------------------------------------------------------------------
Duff (7.Jul.2004):
- moved: code for leader from quit to removeplayer of playergroup class
- New: add guild rank and guild flag to character
-----------------------------------------------------------------------
SmallHorse (6.Jul.2004):
*) Code from egaMad
- Bugfix: New Groupleader is set when the groupleader quits (in GamePlayer.Quit method)
- Changed: /who command now displays players from all realms in all details for GMs
- Changed: Inviting of players from other realms not possible anymore
- New: Command: /invite <playername>
- New: Command: /disband
-----------------------------------------------------------------------
Noret (6.Jul.2004):
- New: Message is sent when player learns new ability/skill/spell line
Message is sent when player gains power in spell line
- Changed: Messages for all hibernian advanced trainers
- Changed: ChangeHealth/Mana/Endurance returns the amount really changed (not passed amount)
- Changed: Can't pickup money object if not owner
-----------------------------------------------------------------------
Noret (5.Jul.2004):
*) Code from Striker
- Bugfix: Berserker's Charge is now an Ability not a Spec
- Bugfix: Shadowblade/Warrior has now ThrownWeapons Ability
*) Code from me:
- Bugfix: Null reference exception in InviteToGroupHandler
-----------------------------------------------------------------------
Noret (4.Jul.2004):
- New: Ammo bonus to fired weapon's damage
- New: /item count [slot #] to change count of stackable items
/item create takes [count] as param to create given amount of
items (only if stackable)
- Changed: /emote command message if player is dead
- Changed: Player death message on normal server type is sent only to
killer and dead player realms
- Bugfix: Group invite dialog is not sent if group is already full and
player was added to the group even if group was full
(can read chat but can't speak) (Bug# 984873)
-----------------------------------------------------------------------
SmallHorse (3.Jul.2004):
*) Code from me:
- Bugfix: No more Z-distance checks are done when one of the two Z values is ZERO
This should make the MobRandomWalk scripts work again. (No more "out of range")
*) Code from egaMad
- New: /emote command for players
-----------------------------------------------------------------------
Noret (1.Jul.2004):
- New: /item info command shows IsStackable flag
/item isstackable command sets IsStackable flag
- Bugfix: InventoryItem.CopyFrom() now sets IsStackable flag from item template (Bug# 983104)
-----------------------------------------------------------------------
Noret (30.Jun.2004):
*) Code from Striker
- Bugfix: Mercenary Trainer now supports Half Ogre and Inconnu
-----------------------------------------------------------------------
Noret (29.Jun.2004):
*) Code from Echostorm
- New: Reaver trainer
*) Code from me
- Bugfix: Necromancer trainer promotes to Necromancer class now
-----------------------------------------------------------------------
Duff (29.Jun.2004):
- New : add guild db file
-----------------------------------------------------------------------
SmallHorse (29.Jun.2004):
*) Code from Rubs
- Changed: Added all housing and new frontier zones in WorldMgr
Delete old regions.ini and zones.ini for this to work.
-----------------------------------------------------------------------
Noret (27.Jun.2004):
- Changed: Style endurance formula based on even more tests
- Changed: Failed style use full endurance, missed/parried/blocked/evaded use 1/2
- Bugfix: Backup style endurance is used if primary style failed
- Bugfix: Correct style animation is shown for styles with ID > 255
-----------------------------------------------------------------------
Noret (26.Jun.2004):
- New: Different range for fired weapons (Longbow/RecurvedBow/CompositeBow/other)
and ammo bonus to range
- Changed: Can't talk to other realms (yell/say/whisper) on normal server type (Bug# 978350)
- Changed: Falling damage formula based on tests (nearly impossible to get exact formula)
160 .. 1024 = 0 .. 99% damage, can't die from falling damage if health is full
- Bugfix: Overflow in money conversion to long resulting in negative money amount (Bug# 979929)
- Bugfix: Null exceptions on death from fall damage
-----------------------------------------------------------------------
Noret (25.Jun.2004):
- New: Ammo is needed to shot (no throwing weapons yet)
- New: Endurance is used/needed to make a shot
- New: Old target is stored for autofire to allow archer to choose next target
- New: Ground target packet handler
- Changed: Ranged weapons damage on sitting target is not doubled
- Bugfix: InCombat is true if LastAttack OR (was AND) LastAttacked was 10sec ago
- Bugfix: Target LOS flag is set in target packet handler
(solves "Target is not in view!" problem with autofire)
- Bugfix: Spell cast and ranged attack is interrupted if strafing
-----------------------------------------------------------------------
SmallHorse (25.Jun.2004)
*) Code from Striker
- Changed: Midgard Composite Bow works now
- Changed: Hibernia Recurved Bow works now
- CHanged: RecurveBow renamed to RecurvedBow now (in all files)
*) Code from Macdarwin
- Changed: Mobs should now save their equipment template properly
*) Code from me:
- Changed: Removed the slow-down in player health property again as this
is already done in game client and not handled server side!
For npc's however the code will stay in :)
-----------------------------------------------------------------------
SmallHorse (24.Jun.2004):
*) Code from Juarez (with some bugfixing and changes by me)
- New: Fallin Damage! Players will take damage when they fall now.
From 100 to 600 coords it is from 1% to 99% of MaxHealth,
From 601 to 2500 coords it is 99% of MaxHealth,
From 2500 upwards you will become a bloody pulp when you hit the ground
- New: When you fall below 33% health you will slow down ...
From 33% health to 1% you will slow down from 100% to 20% of your base
speed. This is implemented in the Health property of GamePlayer...
TODO: Some more testing on live servers need to be done to get the exact
formula.
*) Code from me:
- New: Mobs will now also slow down exactly like players do when they are hurt.
This takes archery to a totally new level of enjoyment...
This is implemented in the Health property of GameNPC and in the WalkTo
method!
-----------------------------------------------------------------------
SmallHorse (22.Jun.2004):
- Changed: "StartMeleeAttack" is now "StartAttack" because it is not for
used for melee only anymore.
- New: Lots of Archery changes. Important for me in this version was
testing the bow. Using the slot-icon, drawing, auto-firing, holding,
etc... And getting this code on the CVS before the merge would get
too big. It is a work in progress. If any of you fix some bugs here
I am very thankful :)
KNOWN ISSUES:
1) You don't need any arrows yet and they have no effect in range,
damage or damagetype yet.
2) When auto shooting when you have no target, or the target is
out of range, you can still cycle through your shoot modes.
3) When selecting a target with autofire/autoreload and having
no target before, you might get the "Target is not in view!"
message one time before the arrow is fired.
4) Only tested with longbow, no crossbow and no throw weapons tested
5) No way of canceling a range-attack other than moving, switching
weapons or let the hold-timeout run out...
6) There is still debug-message output in the code for archery!
So don't use this version in productive environments! Too many bugs!
NOTE: This is a work in progress and I have encountered strange
bugs while testing. My Client always disconnected and the Game-
Server went unresponsible after a short amount of time.
I could not pinpoint this back to any archery code changes though.
One thing I noticed in previous tests was that packet 0xF2 (0x5A)
was received by the GameServer right before the crash. This is an
UDP packet ... perhaps I mess up somewhere in the UDP routines,
gotta check that (strange though why it didn't happen til now).
-----------------------------------------------------------------------
Blue (22.Jun.2004):
- New: Hard timeout for players after 10 min, when not on charscreen or playing
- Changed: Some more methods use Z in checks, fixes some aggro problems
- Bugfix: Ping timeouts do not kick you out when loading
- Bugfix: Shutdown/Stop of server cleaned up
-----------------------------------------------------------------------
Noret (22.Jun.2004):
- Bugfix: Friars "Staff" specialization was named "Staves"
-----------------------------------------------------------------------
Blue (21.Jun.2004):
- New: Ping Timeouts, should solve the already logged in problem once for all
- Bugfix: Catching bug when player enters unknown zone
- Bugfix: Catching bug when players abilities or specs cannot be loaded properly
- Bugfix: Combat without valid/dead targets stop before doing any other attack related things
-----------------------------------------------------------------------
Noret (21.Jun.2004):
*) Code from Juarez
- Bugfix: DOLClient removes servers from favorites list (not only DB)
*) Code from me
- New: Camp bonus (20% of base exp if mob was not killed for last hour)
- Changed: GainExperience(long exp) is back for compatibility
- Changed: Aggro strings according to last aggro system changes
- Bugfix: Null exceptions in SwitchWeapon() method
-----------------------------------------------------------------------
Blue (18.Jun.2004):
- New: Added basic aggro (for first start mobs>=Lvl3 get default aggro of 30)
- New: /mob aggro command added 0 = no aggro, 100 = guard like, attacks even violets
- Bugfix: Error in connection code caused server to not accept new connections
- Bugfix: Mobs attacked even after zoning
-----------------------------------------------------------------------
Noret (18.Jun.2004):
- New: /hood command
- Changed: Experience cap formula according to 1.48 patch notes
- Changed: GainExperience now takes experience bonuses as params for later use
- Changed: Enchanter and Mentalist get same spec lines order as on live
servers (Bug# 975186)
- Bugfix: Half-levels were not working if living gained too much experience
- Bugfix: Left handed weapons can be equiped again (Bug# 975009)
-----------------------------------------------------------------------
SmallHorse (18.Jun.2004):
- New: Added a "Send Packet" entry to the player-list in the GameServer.
This is an admin only feature and very useful for developers!
Clicking on this menu entry in the context menu for a playing
player will bring up a packet dialog where you can enter a custom
packetcode and custom packet data that you can send to this player.
The dialog currently also displays the player's SessionID, ObjectID
as well as the player's target ObjectID in hex values for use in the
packet to send.
This dialog has already prooven very successfull and useful during
my ranged attack and combat animation tests. It let's you play around
with packets on the fly and with ease...
Note on usage: Simply enter the packet-code you want to send eg. "BC" and
in the textarea enter hex values seperated by space, comma or semicolon.
Eg. "0B 95 00 00 02 3A 00 00 F4 33 80 00"
The target OID etc. information is refreshed on a 2.5 second basis or by
clicking the "Refresh Values" button.
When you are finished, simply close the dialog with the X button...
If the player exits, zones, or goes out of playing-mode somehow, the
dialog is automatically closed too.
Happy packet testing!
- Bugfix: Switching weapons with quickbar icons now correctly updates the
WeaponSkill etc.
- New: Introduced enum for ranged attack state in GameLiving. This is just a little
add and won't enable anything to do with ranged attacks just yet, lots more
for ranged combat will follow soon when I have finished tests.
-----------------------------------------------------------------------
SmallHorse (16.Jun.2004):
- Changed: You can now activate weapons that you are wielding by pulling
their icons to your quickbar and then clicking on them! Also
prints out some messages.
- Bugfix: Stacking items were not saved at the new position when moving
them, they always stayed at the same location unless you moved
them to the same slot twice ...
-----------------------------------------------------------------------
Noret (16.Jun.2004):
- New: Added "Player just entered the game!" message
-----------------------------------------------------------------------
Blue (14.Jun.2004):
- Bugfix: Fixed an error when attacking with style and no weapon
- Bugfix: Loading styles made an error (more a warning)
-----------------------------------------------------------------------
Noret (14.Jun.2004):
*) code from Striker
- Changed: corrected formulas for item Delve info
*) code from me
- New: Trainers info button shows spells and styles list
- New: Delve info for styles
- Changed: Hunters spec keyname renamed to "Spear"
- Changed: New exp table, closer to what live servers have (yes...)
-----------------------------------------------------------------------
Blue (14.Jun.2004):
- New: Much work went into Styles
- Changed: More resist on higher level mobs
- Changed: Damage with bolts depend from spec and targets level
- Bugfix: Styles are available after training
- Bugfix: No Endurance regen anymore in combat
- Bugfix: Regeneration starts after level up
- Bugfix: Follow code, mobs had sometimes incorrect heading
- and a fairly good amount of things I cant remember of...
-----------------------------------------------------------------------
Noret (12.Jun.2004):
- Changed: StopAttack only if item was moved to (or from) weapon slot
- Bugfix: Merchants give money for all stacked items, not just one
-----------------------------------------------------------------------
Noret (11.Jun.2004):
- Changed: Amnesia removes targets from NPC aggro table
- Changed: Heal spellhandlers code clean up
-----------------------------------------------------------------------
Blue (10.Jun.2004):
- New: Basic bolt spells, no blocking and combat check yet
- Changed: DD spell damage matches more closely the original now
- Changed: Rewrote the spell system a bit to get it more clean
- Changed: Lowered Cast interrupt chance against even targets but targets con level has more influence now
- Changed: Adjusted full resist chance on spells
- Bugfix: Spell Damage Cap applied after resists
- Bugfix: Fixed crash in /who ALL under certain circumstances
- Bugfix: Recast timers
-----------------------------------------------------------------------
Noret (10.Jun.2004):
- Changed: Startup weapons are placed in right hand, shields in left hand
- Changed: Vikings get starting shield
-----------------------------------------------------------------------
Noret (9.Jun.2004):
- Changed: Item AF cap for overall AF calculations for non cloth armor is level * 2
- Bugfix: Encumberance and WS/WD/AF is updated when players equipment changes
- Bugfix: Item template ID is now used to check if items can be stacked
-----------------------------------------------------------------------
Noret (8.Jun.2004):
- Changed: Different level up sounds for different realms
- Bugfix: IsStackable property in ItemTemplate was using m_isdropable for set/get (Bug# 968995)
-----------------------------------------------------------------------
Smallhorse (8.Jun.2004):
- Changed: DOLDatabase is now using version 0.76 of the ByteFX Data Provider Library
-----------------------------------------------------------------------
Noret (7.Jun.2004):
- Bugfix: Player's active weapons are now shown (packet has changed in 1.68)
-----------------------------------------------------------------------
Blue (7.Jun.2004):
- Bugfix: Already connected (Bug #966985)
-----------------------------------------------------------------------
Smallhorse (6.Jun.2004):
- Bugfix: New InventoryItems were stackable by default, causing some bugs
- Bugfix: Stacking an item onto itself caused it to vanish ;-) Ooopps ;-)
- New: *) GameServer has debug levels now look at GameServer.cs
*) New debug levels can be defined by simply adding the flag to the eDebugLevels enum
*) Debug levels can be tested with GameServer.Instance().IsDebugLevel(eDebugLevels.xxx)
*) During DEBUG builds ALL debug flags are set automatically, on release builds none
*) Debug flags can be set/removed while the gameserver is running by choosing the flags
in the GameServer/Debug levels/xxx menu of the GameServer console
*) Please whenever making debug output in the Console or to the player or anything,
make a debug-flag test now (and change the old code) and if needed implement a new flag
This will help us get unneccessary debug output removed instantly on release builds and
still leaves us the option open to check a debug flag at runtime if we need more debug
output
-----------------------------------------------------------------------
Smallhorse (5.Jun.2004):
- New: UseSlotHandler.cs ... initial checkin for future weaponswitch using the iconbar
- New: Items made stackable (came across this when I wanted to make arrows ;-)
InventoryItems & ItemTemplates have a "IsStackable" optional attribute now.
If two items are stackable and their template_id is equal, then they are stacked
in the inventory. The count is stored in the InventoryItem.Count property and
is updated automatically in the DB when you stack items, destack items, move stacks,
etc.
TODO: Change name of items in inventory Now="15 TestItem" Should="15 TestItems"
"You drop the TestItem" -> "You drop 15 TestItems"
"You pick up the TestItem" -> "You pick up 15 TestItems"...
- New: Added two methods to the PacketLib
SendDebugMessage -> to send a simple debug message to a client with optional formating
eg. xxx.Out.SendDebugMessage("Value0={0}, Value1={1}",123,321);
On the client this looks like: "[DEBUG] Value0=123 Value1=321" in the System Window
SendDebugPopupMessage -> same as SendDebugMessage but in an own popup window
- New: Added some helper methods to the GM scripts (mostly untested though!) I just hated
dieing when testing some new functions against mobs ;-)
"/givexp <ammount>" to give your target <ammount> XP
"/heal" to completely heal your target (if no target->self) including mana,endu,health
"/harm <ammount>" to hit your target for <ammount> damage
-----------------------------------------------------------------------
Duff (4.Jun.2004):
- New: add crypt system (RC4 and RSA) to loginserver
- New: add Lspacketout to loginserver
-----------------------------------------------------------------------
SmallHorse (3.Jun.2004):
*) Changed: Borland Build Files from Macdarwin
-----------------------------------------------------------------------
Blue (2.Jun.2004):
*) Code from Striker
- Changed: Item delve info closer to original now
- Bugfix: Magician
*) from me
- Bugfix: Spell List display
-----------------------------------------------------------------------
SmallHorse (1.Jun.2004):
- Changed: Added the code to support 1.69 server side
- Note: Launcher for 1.69 still needs to be rewritten, so be patient
a day or two :-)
-----------------------------------------------------------------------
Noret (1.Jun.2004):
- Bugfix: Some problems with equipping left handed weapons
- Bugfix: Power formula for resurrection spell is more accurate now (Bug# 963160)
-----------------------------------------------------------------------
Blue (31.May.2004):
- New: Timestamps in console window
- Bugfix: FriarTrainer did not promote the player
*) Code from me and Noret:
- Bugfix: PlayerPosition & Heading Update (client crash)
- Bugfix: Removed checksum from incoming packets
- Bugfix: Changed PlayerCreate Packet to new structure (invalid models before)
-----------------------------------------------------------------------
SmallHorse (31.May.2004):
- Changed: 1.67 is not supported anymore
- New: 1.68 is supported now!!!
Important Note: You now MUST download and use the 1.68+ launcher from
our main homepage "http://www.dolserver.com" in the download section.
(http://www.dolserver.com/fileadmin/downloadFiles/DOLLoader168.zip)
- !!N O T E!!
I have tested the 1.68 version just a little bit. It might still contain
lots of bugs in the packet-structure or even in sending/receiving etc.
It worked for me, but I have not test it completly! Use with care, this
is the initial debug version for 1.68, so don't expect anything...
- TODO: Fix the equipment packet to new format (see forum) ...
(equiped weapons on npcs and players might not appear to others)
-----------------------------------------------------------------------
Blue (30.May.2004):
- New: HP/Power/Endurance regeneration match the original more closely
- New: Specpoints are considered in melee damage
- New: Con level of enemy <-> attacker influences damage output in melee
- Bugfix: Some crashes in attacks (You dont attack when in attack mode)
-----------------------------------------------------------------------
Noret (30.May.2004):
- New: Distance check for /pray command
- New: Effect animation for /pray command
- Bugfix: Cloaks/rings/bracers/belts/jewels can be equipped
- Bugfix: No active weapon = no parry
- Bugfix: Players no longer can pray while moving
-----------------------------------------------------------------------
Blue (29.May.2004):
- New: Basic aggro table on mobs
- Changed: Reduced mob speed
- Bugfix: Exception in GamePlayer when attacking with no target
-----------------------------------------------------------------------
Noret (28.May.2004):
- New: Check if player has ability to equip item (Bug# 961928, 959094, 938970)
- Changed: Can't enter combat mode without a weapon in right hand
- Changed: First letters of player name can be used for /jump command
- Changed: Guardians get Evade I ability at level 2 (was 1)
- Bugfix: Reavers get ability to use Flexible weapons
- Bugfix: Heros get ability to use Large Weapons
- Bugfix: Heros get ability to use Celtic Spears
- Bugfix: Champions get ability to use Large Weapons
- Bugfix: Savages get ability to use Hand to Hand weapons
- Bugfix: Valewalkers get ability to use Scythes
- Bugfix: Berserkers get ability to use Left Axes
- Bugfix: Shield could be used in right- and two-handed slots
- Bugfix: Blocks were working with 2h weapons (Bug# 961681)
-----------------------------------------------------------------------
Blue (26.May.2004):
- Changed: Priv level changes are now saved
- Bugfix: Mobs don't attack sometimes
-----------------------------------------------------------------------
Blue (25.May.2004):
- New: Disabling of spells with recast timers on it
- Changed: After convincing screenshot Shadowblades get their Small Shield Ability back
- Changed: Added Z coord check in distance calculations
- Bugfix: Attacking very high level mobs with spells resulted in exception
- Bugfix: Pet target spells are disabled temporary
-----------------------------------------------------------------------
Noret (25.May.2004):
- New: Delve info for spells (shift+i)
- Bugfix: Spelllist is updated on class promotion
- Bugfix: Relative positional checks were broken
- Bugfix: Changes to character's base stats were not saved in DB (Bug# 958036)
- Bugfix: Trading with enemy realm is not allowed on normal server type (Bug# 958718)
- Bugfix: Spell delve info looks correct in ToA
-----------------------------------------------------------------------
Blue (24.May.2004):
- New: Spell cast interrupts by enemy attacks
- Changed: Ramped up the HP's for Warrior, Berserker and Savage
- Bugfix: Removed Small Shield Ability from Shadowblades (according to Herald)
-----------------------------------------------------------------------
Noret (21.May.2004):
- Changed: Normal players can use /sprint command (was ePrivLevel.GM)
- Changed: Hit chance formula for spells
- Changed: Grey mobs don't give exp and loot
- Bugfix: Character is saved if client disconnects while entering the world
-----------------------------------------------------------------------
Noret (20.May.2004):
- Changed: Standing up on movement is done in CurrentSpeed property now
- Changed: Spell cast is now cancelled when player enters combat mode
- Changed: Removed OnSkillTrained method from all classes, is done in GamePlayer now
- Bugfix: WeaponSkill returns correct values on high levels
- Bugfix: A typo in Spiritmasters "Spirit Suppression" spell line (Bug# 956854)
-----------------------------------------------------------------------
Blue (18.May.2004):
- New: Ability to sprint (note that Endurance regeneration is too slow yet)
- New: Recast Timer on some spells
- Changed: Spells are ordered by level
- Bugfix: Spells in spec spell lines are visible after login now
-----------------------------------------------------------------------
Noret (17.May.2004):
- New: Spreadheal spell handler
- New: Lifedrain spell handler
- New: Added PBAoE and AoE DD spell types to DirectDamage spell handler
- New: Resurrect spell handler
- New: Amnesia spell handler
- Changed: AddXPGainer is called from GameLiving.TakeDamage now
- Changed: Caster is losing 5% of endurance with every spell cast
- Changed: Evade chance capped at 50%
- Changed: Block only if attacker is in front
- Changed: Players can parry if not in combat mode
- Changed: Next mob target has to be in same region and in aggro range*8
- Bugfix: Mana was removed twice on spell cast
-----------------------------------------------------------------------
Smallhorse (16.May.2004):
*) Thanks to Ashly
- Changed: Updated the BORLAND Project files for the new changes
-----------------------------------------------------------------------
Noret (12.May.2004):
- Changed: Healing messages and variance on base heals
- Changed: Group heals heal only group memebers in spell range
- Changed: Resisted spells now play resisted EffectAnimation
- Changed: Reorganized spell start/end cast checks to look more logical
(and it fixes some problems, like NullReferenceException)
- Bugfix: NullReferenceException if spell don't need a target
- Bugfix: Percent based heals work correctly
- Bugfix: Free spec points are now set when char is loaded
- Bugfix: Player skill list is now updated on promotion
-----------------------------------------------------------------------
Smallhorse (12.May.2004):
*) Code from Bret
- New: Code to check for correct attack position on positional styles
-----------------------------------------------------------------------
Blue (10.May.2004):
*) Code from Striker:
- Bugfix: Startequipment from base trainer
*) Code from me:
- New: Heal spells group & single target (spelldb in forum)
- Bugfix: Fixed Shaman class
-----------------------------------------------------------------------
Noret (10.May.2004):
- Changed: Added missing abilities/specs for some classes
- Changed: Reduced amount of money loot dropped by mobs
-----------------------------------------------------------------------
Blue (9.May.2004):
*) Code from me & TheSchaf:
- New: All new chars get their start equipment
-----------------------------------------------------------------------
Noret (9.May.2004):
- New: Better filter for /who command
- Changed: Help for commands is now sent using CT_System message type
- Changed: Replaced "&" with "/" in /cmdhelp list
- Changed: Server is now closed while loading
- Bugfix: ToA races are read correctly on char creation
-----------------------------------------------------------------------
Blue (7.May.2004):
- Bugfix: Suppression spell line train problems
- Bugfix: Valkyn race
- New: Movement checks in spell casting and more other checks, still no attack interrupt
-----------------------------------------------------------------------
Blue (6.May.2004):
*) Code from Striker:
- New: Trainer for all Midgard and Hibernia classes
- Bugfix: Albion Base Trainer fixes
-----------------------------------------------------------------------
Noret (6.May.2004):
- New: More casting checks but not complete yet
- Changed: Spell target can't be changed after start of spell cast
- Changed: Some spell messages and message types
- Bugfix: Can't start casting on not active GameLiving
- Bugfix: Mana and endurance is restored after release
- Bugfix: Chance() method now returns correct values
- Bugfix: GamePlayer objects are deleted after /quit command
-----------------------------------------------------------------------
Blue (5.May.2004):
- New: Spellqueue
- New: More casting checks but not complete yet
-----------------------------------------------------------------------
Noret (5.May.2004):
- Bugfix: Clients are properly removed on server stop (Bug# 930776)
- Bugfix: Guessing trainers class name from guild name is more safe now
- Bugfix: Item absorbtion no longer makes damage negative (Bug# 946728)
-----------------------------------------------------------------------
Blue (3.May.2004):
- Changed: Spellline=>Spells and Spec=>Styles relations are now accessible in Skillbase
- Changed: Specializations will be loaded from db now. You can even specify icon there
- Bugfix: DirectDamage Spells: No negative damage on high level targets
-----------------------------------------------------------------------
Blue (2.May.2004):
- New: Direct Damage spells working (look in forum for db)
- New: Race dependend resists
- Changed: Redesigned properties on livings with buffs and bonus in mind
(because its a large change, expect new bugs)
- Bugfix: Fixed a lot other things that I cant remember of (sorry ;o)
- Bugfix: You now stay in your advanced class after relogin
-----------------------------------------------------------------------
Noret (2.May.2004):
- New: Player have to keep his grave targeted to finish praying
- New: Added trade messages
- Changed: Money messages
- Changed: Mobs do no critical damage
- Bugfix: Players have to chose advanced guild to get to level 6
- Bugfix: Fixed problem with long player names
- Bugfix: Regeneration works if max health/mana/endurance changes
-----------------------------------------------------------------------
Blue (29.Apr.2004):
Code from Striker:
- Bugfix: You couldn't reach any of the advanced classed by trainer because
the race check was wrong
-----------------------------------------------------------------------
Noret (29.Apr.2004):
- Bugfix: Styles now make correct sound and added evade animation
- Bugfix: Unstyled attacks now have correct animation (Bug# 924910)
-----------------------------------------------------------------------
Noret (29.Apr.2004):
*) Code from SmallHorse:
- Bugfix: GameTimer no longer calls removed timers (Bug# 934625)
*) Code from me:
- New: Bind emote animation is now sent when player use /bind command
- Changed: Some messages and message types
- Changed: Character data is now saved when world is saved
- Bugfix: LastPlayed is now set to current date/time when character is saved
-----------------------------------------------------------------------
SmallHorse (29.Apr.2004):
- Changed: The GameTimerManager can now catch up lost time for GameTimers
so they should be much more exact now over a longer period of
time and it will print out a warning when the gametime gets
totally out of sync!
-----------------------------------------------------------------------
Noret (27.Apr.2004):
*) Code from me:
- New: Players get half-points for half-levels after 40
- Changed: Corrected trainer targeting message
- Changed: Players get exp after 50 (again)
- Bugfix: Division by zerro when percents are used and no mana or hit points
-----------------------------------------------------------------------
Blue (26.Apr.2004):
- Bugfix: fixed a bug where stable masters couldn't load
- Bugfix: NPC Guild Scripts now bind fine to trainers
- Bugfix: Item-Mini window didn't show the correct durability% & condition%
- Bugfix: Corrupted Ability display
-----------------------------------------------------------------------
Smallhorse (26.Apr.2004):
- Changed: Cleaned up and commented the style handling
-----------------------------------------------------------------------
Smallhorse (25.Apr.2004):
- New: Added Styles/Styling. Only the special effects like taunt,
bleeding etc. are missing and some more checks but the basic
handling works. A styledatabase will be included with the next
debug-release!
- Changed: Saving/Reloading of Player Skill/Ability-Levels now working!
Styles are updated after the player loads, according to the
player's level in the required specialization. eg. "Blades",
"Slash", ...
- Changed: Target Health is sent with AttackAnimation, fixing the bug
where the target-health isn't updated correctly and is behind
the actual health by one hit... and this should also make it
possible for the killer to stay targetted without having to
switch the messages.
-----------------------------------------------------------------------
Noret (24.Apr.2004):
*) Code from me:
- New: Characters are now bound to start location on char creation
- New: Correct messages when targeting GameObjects
- New: Added exp loss messages and no exp loss for RvR deaths
- New: Killer is targeted after death
- New: GetName method to get a name with correct (I hope) article
GetPronoun method to get pronoun of an object (he/she/it/his/her/its/him/her/it)
- Changed: Corrected messages to use these methods.
- Changed: Corrected exp loss formula on death
- Bugfix: Message on zone change is always sent now
- Bugfix: BindHeading is now set when /bind command is used
- Bugfix: Correct critical damage is displayed to target (was "OK" instead)
-----------------------------------------------------------------------
Smallhorse (23.Apr.2004):
- Changed: removed the Spell.cs file from the GameServer root file
- Changed: renamed Ability."shortbows" to Ability."Weapon_Shortbows"
in the class files else the code wouldn't compile
-----------------------------------------------------------------------
Blue (23.Apr.2004):
*) Code from Striker:
- New: Class dependend Weaponskill factors for most of our class specs
-----------------------------------------------------------------------
Noret (23.Apr.2004):
*) Code from me:
- New: Added messages on zone change, death, loot, attack.
-----------------------------------------------------------------------
Blue (22.Apr.2004):
- Changed: removed all playerclass scripts from script since they are in core now.
(you can still override standard class scripts with yours!
Just plugin your class spec in scripts dir and that will be taken then.)
- Bugfix: Fixed a bug where no Merchant could be loaded from db (Zone not found)
...currently working on a spell system
-----------------------------------------------------------------------
Smallhorse (22.Apr.2004):
*) Code from me:
- New: DetailDisplayHandler.cs, handles 0x70 packets (SHIFT+I Delve),
Currently only inventory items! (Thanks to Duff!)
- Bugfix: Trailing 0 byte was forgotten in DetailDisplay message to client
Resulting in garbage display in detail window and possible client crash
- Bugfix: Only online friends are sent to the client when the client enter the game
(Thanks Duff, sorry for not fixing it sooner)
- Bugfix: Fixed bug in ScriptMgr.FindNPCGuildScriptClass which caused the gameserver
to crash if NO guildscripts are there at loadtime
- Bugfix: Removed DamageCap calculation for natural weapons
(AttackWeapon == null -> crash in calculation)
- Bugfix: When wearing no armor, GetArmorAbsorb would crash the attack routines,
now "no armor" = "no absorbage"
-----------------------------------------------------------------------
Noret (22.Apr.2004):
*) Code from me:
- New: Commands are now guessed using first letters (Request# 924936)
- New: /send and /friend works only for players in own realm (except PvP and PvE server types)
- Changed: Corrected some range constants
- Bugfix: Same player name can no longer be added in friend list few times (Bug# 922129)
- Bugfix: LastAttackTick was set even if no attack was made
-----------------------------------------------------------------------
SmallHorse (22.Apr.2004):
*) Code from Noret:
- Changed: Merchants realm is set to players realm when /merchant create is used.
- Bugfix: MaxHealth and Health of GameNPC is changed when level changes. (Bug# 938264)
This adds some hit points to every NPC (trainer, merchant had only 1hp).
-----------------------------------------------------------------------
SmallHorse (21.Apr.2004):
*) Code from Noret:
- New: WorldMgr.GetAllPlayingClientsCount() method.
- New: /who command with basic filter. (Request# 938455)
-----------------------------------------------------------------------
Blue (20.Apr.2004):
*) Code from Striker
- New: ALL Alb/Mid/Hib Class specs now complete (Wow! Striker made a great job here!)
*) Code from me:
- Changed: adjusted WeaponSkill
- Changed: displayed WeaponDamage now capped and used in calculations
-----------------------------------------------------------------------
Smallhorse (20.Apr.2004):
*) Code from Noret:
- New: Implemented exp table for better performance, corrected exp formula and added exp cap.
- New: Gained experience is now formatted using commas.
- New: Critical damage to players is capped at 50%.
- New: Added 2 more messages to /quit command.
- New: Character is saved on LevelUp.
- New: Message is sent when character is saved.
- New: Added messages to emotes.
- New: Weapon condition/quality affects DPS.
- Changed: Weapon DPS cap is applied before condition and quality.
- Changed: Players now get exp after level 50 but not spec points.
- Changed: Damage is doubled on sitting players (was 1.8).
- Changed: Players now have base 10% chance to do critical damage.
- Changed: Some messages and message types.
- Changed: In zones.ini "offsetyx" is changed to "offsetx";
old zones.ini will not work but it will save 1 byte of my disk space for each zone.
- Bugfix: Corrected critical damage chance (was 1% lower).
- Bugfix: StartDay() is now using dayStart correctly (Bug# 934790).
-----------------------------------------------------------------------
Blue (19.Apr.2004):
*) Code from Zjovaz:
- New: All classic Albion Trainer
*) Code from me
- New: Added several new Class specs (Albion should be complete)
- New: Evade/Advanced Evade/Parry/Block (Shields now have a meaning)
- New: Enemy hits on different parts of armor
- New: WeaponSkill, Effective overall Armorfactor, WeaponDamage
- New: Trainer
- New: NPCGuildScript Feature, you can assign a script to all NPC's with specific guild at once
(look into trainer to see how its done)
- New: Profession
- New: Stats raise on level up when you are an advanced class
TODO: Damagecalculation to consider Weaponskill vs ArmorFactor
-----------------------------------------------------------------------
Smallhorse (19.Apr.2004):
*) Code from Noret:
- Changed: /roll and /random commands look like on live servers.
- Changed: Send target text message only if 'consider' flag is set.
- Changed: Fixed all emote commands & messages
- Bugfix: Added description to zones in WorldMgr.SetDefaultINI();
delete old zones.ini for this to work. (Bug# 934382)
- Bugfix: Players can buy items on all pages now. (Bug# 926760)
-----------------------------------------------------------------------
Smallhorse (31.Mar.2004):
*) Code from me:
- Bugfix: Fixed sit handling - Fighting, Dying, Releasing while sitting/standing
-----------------------------------------------------------------------
Smallhorse (30.Mar.2004):
*) Code from Blue:
- Bugfix: corrected Message Packet, changed PlayerJump-Packet as suggested by noret (Bug #925051)
- Bugfix: you can only quit when standing still (Bug #925457)
- Bugfix: fixed sitting when dead and after release (Bug #925457)
- Bugfix: Weapon too advanced check removed, we have DPS cap instead
- Bugfix: you can enter combat mode without target now
- Bugfix: quit is delayed too when player attacks something without the enemy attacking the player (Bug #925457)
-----------------------------------------------------------------------
DEBUG BUILD 1.5.3
Tag: DOL-1-5-005(29Mar2004)
-----------------------------------------------------------------------
Smallhorse (29.Mar.2004):
*) Code from Blue:
- New: Quit timer implemented
- Bugfix: mob flags are stored in db now. So ghost/fly/noname flags are persistant now
- Bugfix: If player quits after jump to other location or zoned into dungeon,
he had bad coords stored. In fact the screen was black in the dungeon after relogin.
Same applies for much other things were you only see sky when relogin.
- Bugfix: mobs disappeared in dungeons when attack. This problem was related to Z-coord handling (Bug #924922)
*) Code from me:
- New: Quit can be forced (see going linkdead, will have to be refined!) ...
-----------------------------------------------------------------------
Smallhorse (28.Mar.2004):
*) Code from Blue:
- New: Release warnings (Bug #922934)
- New: You can destroy items in your inventory by pressing Shift+D (Bug #924382)
- Bugfix: critical damage had no effect on health (Bug #924559)
*) Code from me:
- New: Added messages to sitting and /stand command (Feature Request #924343)
- Bugfix: Fixed undead/release bug (Bug #905522, #906303, #924802) !THANKS TO NORET!
-----------------------------------------------------------------------
Smallhorse (27.Mar.2004):
*) Code from Blue:
- New: Implemented complete Release Timer feature
- Changed: internal renamed name mistakes: Mythril and Platin to Mithril and Platinum
- Bugfix: its not possible to pickup one bag of coins several times now (Bug #919245)
- Bugfix: GameMasters and Admins see "noname"-Mobs as [Mobname]-DOR (Bug #916952)
- Bugfix: Quit is prevented when player is dead (Bug #922934)
- Bugfix: now you cannot release for 10 seconds after death (autorelease is possible) (Bug #922934)
-----------------------------------------------------------------------
Smallhorse (26.Mar.2004):
*) Code from me:
- New: Created a class GameStaticItemTimed that manages vanishing objects in the world.
- New: Added "Emote" method to GameLiving for easier animation on all livings (suggested by Espie)
- New: Added "GetSpotFromHeading" method to GameObject (suggested by Mashani)
- Changed: GameInventoryItem's are now removed from the floor after 3 minutes (Bug #923631)
*) Code from Blue:
- Bugfix: player cannot pickup inactive items anymore (Bug #919245)
-----------------------------------------------------------------------
Smallhorse (25.Mar.2004):
*) Code from Blue
- Changed: Merchants refuse to trade with players from enemy realms (Bug #922173)
- Changed: Changed money handling. You have to use money value as one long value.
Use Money class as helper if you need conversion between
Copper, Silver, Gold, Platinum or Mythril count and money value
You should not calculate with Silver, Gold, Copper..., use money value for arithmetic.
- Bugfix: Display bug when player receives money (Bug #922127)
*) Code from me
- Changed: GameMoney uses Money helper class too now
- Bugfix: Removed X,Y,Z properties from GamePlayer (is handled in GameLiving already)(Bug #922878)
-----------------------------------------------------------------------
Smallhorse (24.Mar.2004):
*) Code from Blue
- Added: introduced ToA races (Bug #909172)
- Bugfix: Mobs did not always attack the player in combat depending of player position
-----------------------------------------------------------------------
Smallhorse (23.Mar.2004):
*) Code from Blue
- Changed: moved all player classes into the core, but can still be overridden by scripts
(please cleanup your playerclasses dir in script directory)
- Bugfix: changed minimum size (Bug #920931)
- Bugfix: if spell db was not available, casters crashed while loading (Bug #919172, #921194, #919619)
- Bugfix: Delete Character raised exceptions sometimes
- Bugfix: Critical hit damage is now lower or equal the base damage (Bug #919310)
- Bugfix: Mobs attack now even when the first hit by a player was a miss (Bug #919503)
- Bugfix: Server reported "Invalid path .\scripts" when Save Console was previously selected (Bug #921175)
-----------------------------------------------------------------------
Smallhorse (17.Mar.2004):
*) Code from me
- Changed: Made Data Window expand when you resize the Gameserver window
-----------------------------------------------------------------------
Smallhorse (17.Mar.2004):
*) Code from Blue
- Bugfix: wrong stats (Bug #916273)
- Changed: Gameserver starts at 12pm now (Request #910054)
- Changed: Server window sizable (Request #909873)
- New: added Close menu entry to tray icon
-----------------------------------------------------------------------
Smallhorse (15.Mar.2004):
*) Code from Blue
- Changed: redesigned skill system, but still not complete
- New: Added Ability & Spec Action handler (you can invoke scripts by clicking on abilities now)
- New: Added TempProperties to livings
*) Code from Duff (modified by me a bit)
- New: Friend System (/friend)
- Known Bugs: You can add yourself as friend
Your friendlist doesn't show your friends already in game when you login
*) Code from me
- Changed: PlayerClasses are first searched in the scripts assembly, then in the gameserver
- Changed: Ability & Spec Action handlers are searched in gameserver AND script assembly
- Removed: GSPacketMgr ... it was still laying around unneeded since the new packetsystem
-----------------------------------------------------------------------
Smallhorse (11.Mar.2004):
*) Code from Blue
- New: Preparation for Abilities, Skills, etc. to be handled in the DB
- New: Possibility to dump packets sent by the GameServer in raw hex format
*) Code from Striker
- New: 2 Missing Player Base Class Definitions
-----------------------------------------------------------------------
Smallhorse (10.Mar.2004):
*) Code by me...
- Changed shutdown order in GameServer. GameEvents are now killed before
the WorldMgr and the GameTimer exits, so that you can clean up properly
- Changed WorldMgr NPCUpdateThread to not write error messages if shut down properly
- Changed PacketLib167, no more deep level checking of play state etc. Exceptions will
be thrown now if something goes wrong
*) Code by Blue:
- Added encumberance (no speed effect yet)
- fixed some bugs in SH's new code
-----------------------------------------------------------------------
Smallhorse (8.Mar.2004):
*) Big change day:
- New: GSMessages removed, packethandling completly rewritten with
thoughts about 1.68 support and future encryption/packet changes
by our friends at Mythic.
Please note that all scripts/classes that used GSMessages have
to be updated. Take a look at the existing scripts to see how
it is done now. I am aware that this changes are heavy stuff, but
it is neccessary so we are fit for the future!
-----------------------------------------------------------------------
Smallhorse (4.Mar.2004):
*) Code from Blue...
- New: WeaponSkill & EffectiveOverallArmorFactor properties
*) Code from me...
- Bugfix: /walk command shows incomplete usage information (Bug #902602)
-----------------------------------------------------------------------
Smallhorse (3.Mar.2004):
*) Code from Duff...
- Bugfix: Fixed Merchant Item Paging (Bug #908710)
*) Code from Blue...
- New: Included new features in the DBSpell table
*) Code from me...
- Bugfix: Bug with Loot bag of coin (Bug #906671)
- New: Included visibility & line of sight checks in combat
-----------------------------------------------------------------------
Smallhorse (3.Mar.2004):
*) Code from Blue...
- Added DPS cap
- Added quality influence on weapons
- Added all base classes without SI (thx to striker for that!) and
introduced some Ability constants
- Added basic "missing" to combat
- Added hitsound to attacks
- Bugfix: SkillBase didnt clone the SpellLines/Specs/Abilities
- Bugfix: Mobs had incorrect health some timespan after release (Bug #906966)
*) Code from me...
- Bugfix: Mob health is now sent in the MoveTo function (not only release)
and only if mobhealthpercent!=100
- Bugfix: Mobs hit multiple times when aggro transfers on group-members (Bug #906669)
- Bugfix: Players appear at random places when zoning (Bug #907764)
- Bugfix: Script Editor : Edit function gives error (Bug #907190)
-----------------------------------------------------------------------
Smallhorse (29.Feb.2004):
- Bugfix: StatusUpdate sent after player-death
- Bugfix: CalculateAttackObject ... maxTaker calculation
- Bugfix: Repeatedly sending updates without any new content (health/mana/endu/conc)
-----------------------------------------------------------------------
DEBUG BUILD 1.5.1
-----------------------------------------------------------------------
Smallhorse (29.Feb.2004):
*) Code from Blue...
- Bugfix: player endurance zero after login (Bug #905418)
- Bugfix: group gets lost after zoning (Bug #904236)
- Bugfix: mobs disappear after time (Bug #906298)
*) Code from me
- Loot money from a kill is now split between group members equally
- Scripts are now built with debug-flag on!
*) Code from Several
- /mob kill { Kills the mob without removing it from the DB}
- /mob regen { regenerates the mob health to maximum }
- /mob info { amplified informations output about the mob }
- /mob realm {changing the mob's realm }
- /mob level {changing the mob's level }
-----------------------------------------------------------------------
Smallhorse (28.Feb.2004):
- Bugfix: Pickup error (client crash when pressing g) (Bug #906304)
- Bugfix: Untested! Mob follow after player death (Bug #905522)
-----------------------------------------------------------------------
Smallhorse (27.Feb.2004):
- Bugfix: Weird client/server behavior after midnight in gametime
-----------------------------------------------------------------------
Smallhorse (27.Feb.2004):
*) Code from Blue ...
- Bugfix: mob colors do not update after level up (Bug #902650)
- Bugfix: mobs did not always respawn
-----------------------------------------------------------------------
Smallhorse (27.Feb.2004):
- Fixed "Mob moves around and pops when players come into view/release" bug
- Added basic Money loot bags to mob kills (they vanish again after 2 mins)
To add your own loot, just "override" the "DropLoot()" method in GameMob
- Added owner array to GameStaticItem. Now kill loot can not be taken anymore
by players not participating in the kill and dropped items can not be taken
by anyone but the dropper
-----------------------------------------------------------------------
Smallhorse (26.Feb.2004):
*) Code from Blue ...
- Gravestones will only be raised if player loses xp
- changed command line parser to accept string arguments surrounded by quotes "..."
- Bugfix: /item name now uses the new string argument feature to get the name (Bug #903658)
- Bugfix: HitPoints now raise for all level ups (Bug #903764)
*) Code from Duff ...
- Pray Timer added
*) Code from me ... (yes I code too)
- Exp packet sent in 0x40 - Player Init instead of AddToWorld()
- Pray Timer cleaned a bit
- Better debug output when char-creation/loadingn fails
- If any Object can't be added to the Region because it's Zone is invalid, the database ID of that object is now shown
-----------------------------------------------------------------------
Smallhorse (25.Feb.2004):
*) Code from Blue ...
- Bugfix: group chat now with names in front
- Bugfix: if player is the last player in a group he leaves the group now
- Bugfix: Looking for group / Find
- Pray on gravestones
- Players can only have one gravestone
-----------------------------------------------------------------------
Smallhorse (23.Feb.2004):
*) Code from Blue ...
- fixed release bug (player is still dead after release)
- fixed no xp bar
- fixed various other things around release
TODO: mobs attack players of group if one member attacks a mob and dies?? mobs cannot know about groups
TODO: respawn not functional
TODO: mobs disappear sometimes without reason
TODO: if player releases then the group window is empty, players have to stay in groups after release
-----------------------------------------------------------------------
SmallHorse (23.Feb.2004):
*) Fixed base startspeed of player back to 191 coordinates/second instead of just 100
*) Fixed client-hang problem when trying to log in with level 50+ characters
-----------------------------------------------------------------------
SmallHorse (22.Feb.2004):
1) Merged Blue's changes
2) Fixed various bugs that were connected to following
3) Included very basic bind/release stuff
Known Bugs:
*) When you enter the game, your xp bar isn't loaded ... no clue why
*) When you release into a region where mobs were following someone, they move
*) The xp bar sometimes isn't updated correctly when you die and loose xp ...
*) DeathCount is not reset to 0 again when you level up yet ...
-----------------------------------------------------------------------
SmallHorse (16.Feb.2004):
1) Merged lots of Blue's fixes for my code rewrite!
-----------------------------------------------------------------------
SmallHorse (14.Feb.2004):
1) New folder structure in the /GameServer directory
2) All GameObjects have been rearanged and refactored, many functions have been renamed.
Many Enumerators have been renamed, they all start with a lowercase "e" now ... eg.
ePrivilege instead of Privilege.
3) Completly refactored the combat code from Duff, it is not tightly integrated
into the gameserver but leaves the scripters all freedom they want. Combat IS different
than what was in 1.4, a LOT different!
4) Included Blue's basic classcode (mainly for testing purposes)
5) Included all of Crystalin's fixes for Inventory etc.
6) Fixed several bugs ... wherever I encountered them
7) Fixed all scripts in the /GameServer/scripts directory to reflect the new changes
Notes:
*) Players start out with much too much health ;-) 100 currently
*) For testing purposes, mobs respawn all 2-4 Minutes if killed
*) Mobs follow the attacker and return to their spawnpoint if they loose the target
Known Bugs:
*) Players can quit in combat
*) Mobs don't hit while following, they are always too far away, can't get them
to stick properly ...
*) Player death is untested (and no release possible anyway)
*) Player groups in combat is untested
*) No real aggro is available on mobs yet ...
-----------------------------------------------------------------------
Rivendel (5.Feb.2004):
1) ByteFX updated to remove some Glitches
2) Removed some Warnings ;-)
3) Get in DOL again
-----------------------------------------------------------------------
Corillian (3.Feb.2004):
1) Wrote a managed wrapper for the DevIL image library, can be used for various things
2) Wrote an MPK packer/unpacker for those of you that need such a thing
3) Added the ability for an admin to broadcast a message to all players from the control panel
4) A bunch of stuff I can't remember because I wrote it 1-2 weeks ago and never got around to committing it ;)
TODO: send kort the linux wrapper, FTP stuff, tinker with the new DOLClient and LoginServer some more,
fix some scripts, add some new scripts, etc...
-----------------------------------------------------------------------
Smallhorse (1.21.2004):
1) Rolled back some SessionID changes of Corillian ... :-) ...
Now players are visible to each other again ... ;-) ...
2) Merged Blue(to be added to the core development team soon)'s code with
ours ... now the combat system has some nice features like healing,
groupxp, attacking and even some basic aggro!
-----------------------------------------------------------------------
Corillian (1.16.2004):
1) Worked on the linux version of the login server for 5 hours to no avail. Mono is very finicky and i'm not exactly
a linux power user ;). Goaty is helping me out though so maybe the 2 of us combined will have it figured out within
a day or 2.
2) Rewrote the world management class and associated code. It is now much more efficient in a multitude of areas.
SessionID's are now a hash key generated from your account name. These are pretty much garunteed to be unique because
account names must be unique and I doubt anyone will ever have a server with the X billion accounts it would take to cause
conflicts ;).
If anyone has problems with WorldMgr related things please let me know.
3) Rewrote the combat animation packet according to skal's updated specifications. Thanks skal. Still have to rewrite the combat system (again)
but there are multiple ppl working on different parts of it so I think it should go pretty quickly. Blue, duff, and Anakin
have done some impressive things so far and they will have played key roles in the finished subsystem. Thanks for your work guys
and keep it up.
4) I fixed the bug where people were not logged out of their account if the server shut down while they were connected or
they crashed. If anyone experiences this problem again please let me know asap.
5) Breeze is working on the guild system and as soon as he's done with his exams it shouldn't take too long for us to get that implemented.
6) Added some minor GUI updates to the game server (in compliance with the kingetje's requests). Still gotta figure out how i'll do the
dynamic resizing for it though. It's a bit diff than the LSCP dynamic resizing due to the DB management panel.
Tomorrow/today I have my doctor's appointment that will dictate when I ship for the military. The latest I will leave is february 9th.
The soonest I could possibly leave is 9 days from the time I write this. We'll see what happens...
I'd like to remind everyone again that if you idle in IRC and check back from time to time you will be able to play with all the new toys as we
implement them (and thus need them to be tested) =).
-----------------------------------------------------------------------
Corillian (1.15.2004):
Sorry about the lack of updates. I was out of town all last weekend.
1) Rewrote all of the group code to be more efficient and now everything is based off of the generic Group class
2) Added the PlayerGroup class to take care of the higher lvl player group functionality that was removed from Group
3) Added a slightly modified version of Anakin's /group script
Linux version of the login server is almost done. I just have to write the C++ console wrapper and it "should"
be good to go.
-----------------------------------------------------------------------
Corillian (1.8.2004):
1) Finished the new login server
2) Implemented most of kingetje's GUI recommendations in the new login server
-----------------------------------------------------------------------
Corillian (1.6.2004):
1) Finished writing the login client. Time for some intensive testing.
2) Fixed a problem in WebUIGenerator.cs, thanks LightBringer for bringing it to my attention
(He really does bring the light hehe)
3) Fixed a bunch of random bugs people informed me of, can't remember what exactly.
4) Fixed the GSMessages.SendTradeWindow() function and added the ability to specify the page
If it breaks any scripts (which it probably does) i'm sorry, i havn't bothered checking yet
TODO:
Finish the new login server
Add more intra-server communication
Fix the server shutdown problems with clients not logging out
Fix the GameMerchant.PlayerBuy() function
Take a look at the UDP problem a small % of people are experiencing
Add the FTP functionality
Binds
Mob Combat
It's a never ending list that I add more than I take off ;)
-----------------------------------------------------------------------
Corillian (1.5.2004):
1) Almost finished writing the new login client
2) Embedded an FTP client from http://www.sf.net/projects/dotnetftpclient. It's in the DOL.FTP namespace.
I will be making various things FTP compatable within the next few days.
3) Added a javascript web ui template. You can find it in ../DOLSharp/GameServer/webui/template
4) Implemented the DOLPlayer.cs fix (thanks to whoever submitted that, I forgot who it was, sry)
5) Added SelectAllObjects() to ObjectDatabase which selects all of the objects for the specified table.
-----------------------------------------------------------------------
Corillian (1.4.2004):
1) Worked on login server and client some more. Basic communication routines are complete.
2) Tweaked the combat stuff again. Most notably the combat related enums are no longer in the PlayerInventory class
3) Updated DOLPlayer.cs script
4) Fixed a typo in ComputeAI() in the below entry (that one took a lot of work ;))
Todo list is still the same as below ;)
-----------------------------------------------------------------------
Corillian (1.2.2004):
First commit of the new year!!
1) Added basic AI handling for mobs (you can now override ComputeAI() for GameMob derived classes)
2) Started rewriting login server (not done)
3) Started writing our new login client (not done)
TODO: yup, still gotta do mob combat, binds, and ftp client. However, I have now added to this list:
I need to finish rewriting the login server and finish writing the login client. The new login server
and new login client will allow us to bypass mythic's encryption and login client. This is good for us
and them. It means they don't have to worry about us cracking their encryption, we don't have to
worry about cracking their encryption (which is sometimes a bit of an annoyance), and we can put more
cool stuff into it (and we are). The login client will be full of extra goodies like a favorites list etc...
More information as it gets closer to being completed.
-----------------------------------------------------------------------
Corillian (8.24.2003):
1) Added XMLWebUIGenerator.cs to the scripts. This class generates the web ui as xml files instead of javascript.
Default is the javascript.
2) Tweaked the combat routines and hopefully fixed a few bugs there
3) Added the RegionMgr stuff to call the AI routine for each mob. This is the groudwork for mob combat.
4) Fixed and added another variation of the SendAttackMode() function
TODO: Still gotta add the mob part of combat and add the bind stuff and an FTP client to web ui
-----------------------------------------------------------------------
Corillian (8.23.2003):
1) Added a web ui script and a starting template
TODO: Still gotta add the mob part of combat and add the bind stuff and an FTP client to web ui
-----------------------------------------------------------------------
Corillian (8.22.2003):
1) Added Duff's combat stuff. Still a bit buggy and I need to work out the kinks.
TODO: Still gotta add the mob part of combat and add the bind stuff
-----------------------------------------------------------------------
Corillian (8.15.2003):
1) Added a script view
2) Added the ability to launch a script editor
3) You can create and delete scripts and script directories from within the script view
4) Added new project DOLControls and a new DOLMenuItem class along with it. This is for
.NET style menu's. There's still some work to do but it's lookin pretty good.
5) Rewrote the options dialog
6) Added the options to the database
7) Rewrote a bunch of functions in ObjectDatabase to allow for multiple attributes in
database classes. See DOLOptions for an example.
8) Added ExternalInit() to GameServer to remove some problems that were occuring because
the DB init stuff was in Init() which was called from the constructor.
--Second Commit--
1) Included the bitmaps that I forgot to include in the last commit (doh!)
2) Fixed a DB bug where it was no longer loading the primary key
3) Added WindowsUI.dll for the new menu system, it's very cool =)
4) Removed the context menu from the notify icons because it was incompatable with new menu system.
I figure it's just a copy of the control panel main menu so why have 2 menu's that do the same thing?
5) Added invalid names support. Create a file called invalidnames.txt in the install dir and it will not
let a player be created with a name that contains any portion of the text in that file. Please put
1 name segment per line and it must be lowercase.
-----------------------------------------------------------------------
Corillian (8.12.2003):
1) Added mana, health, endurance, and concentration to packet updates
2) Fixed sitting
3) Added progress dialog for world loads
4) Added Player main menu entry
-----------------------------------------------------------------------
Corillian (7.12.2003):
1) Added mana, health, endurance, and concentration to players and related DB
2) Added world save progress dialog box to give ppl something to look at for world saves
3) Added the ability to force a connection to a login server or a disconnection from one
4) Added OnScriptsLoaded() and OnScriptsUnloaded() in script_init.cs. They are called
when the scripts .dll is first loaded and when its unloaded to recompile.
5) Added attackmode.cs and sit.cs to usercommands
6) Added ability to sit and switch to attack mode (see #5)
I think that's it, I can't remember, ah well ;)
-----------------------------------------------------------------------
Smallhorse (6.12.2003):
1) Added "TurnTo(GameObject)" to GameObject
2) Fixed the /send messages so you can use the reply button now (thanks Cisien!)
-----------------------------------------------------------------------
Corillian (3.12.2003):
1) Added various new GUI features
2) Fixed the login server
3) Fixed the inter-server communication
4) The regions packet is now dynamically generated based on the registered regions
5) Fixed a bug in the item script
-----------------------------------------------------------------------
Smallhorse (28.11.2003):
1) GameObjects are NOT saved in the DB per default anymore! The reason for
this is, that we want our mobs, items, quests etc. to start in the same
spot everytime we restart the server and not have their position saved!
2) Added some flags to NPC's (GHOST, FLY, NONAME) and added respective entries
to the /mob command (/mob ghost, /mob fly, /mob noname)
GHOST ... makes the npc be ghostlike (eg. you can see through it's model)
FLY ... without this flag, the npc is always droped to the floor, with it, the NPC can fly!
NONAME ... when this flag is set, the mob doesn't display a name anymore and can
not be targeted by players anymore. GM's (users with the debug status)
however see the name and can target.
3) Modified the /walk script ... you can now give a Z coordinate to make mobs fly (if they
have the FLY flag set! Known "Bugs": Mobs can NOT fly upwards at more than 45° Degrees
which means eg. if your mob flies in X,Y direction for 100 coordinates, it can not rise
or lower by more than 100 coordinates. This seems to be a client problem!
Anyone know of a live server mob that stays in place and rises and lowers?
4) Added day/night cycle and added a /time command. Now players should see the same sun/moon
at the same time :)
5) Fixed some small bugs with money and item handling.
-----------------------------------------------------------------------
Corillian (25.11.2003):
1) Added the HandleCommandNoPlvl() function to ScriptMgr
2) Modified the datatable classes to conform to previously established coding standards
3) Changed the id for all item related DB classes to a string instead of int
4) Rewrote many of the scripts to accomodate new string id's
5) Fixed a DOLConsole.WriteLine() bug
6) Added a context menu to the list view for players in the GS control panel with various options
7) Moved the region and zone defs to .ini files and added the associated handling
8) Added the ToA zones/regions and finished off the rest of the SI zones/regions
-----------------------------------------------------------------------
Rivendel (21.11.2003):
1) Bugfixes of MySQL-Code (Close open connection)
TODO: Dokumentation of DOLDatabase
-----------------------------------------------------------------------
Corillian (15.11.2003):
1) Added custom NPC's folder
2) Added TownCrier custom NPC which demonstrates DB usage through a script
3) Added temporary mem bug fix
4) Fixed world saves bug
5) Added Mod() function to GameObject class
6) Made the DB functions for the Game* classes lower level and forced more polymorphism
TOOD: fix 50 SQL connections bug
-----------------------------------------------------------------------
Corillian (4.11.2003):
1) Documented game server project. Still a ways to go though. Especially on DOLDatabase
-----------------------------------------------------------------------
SmallHorse (23.10.2003):
1) Fixed some small bugs with NPC Update :)
-----------------------------------------------------------------------
SmallHorse (23.10.2003):
1) Corillian, about the problem with Merchant and stuff, you commited
your files without updating first I guess. The changes I made to the
same files as you were not merged and your version overwrote mine.
You can see that in CVS history (yours is the last commit)
Anyway, we have to take care this won't happen, else we might get in
troubles. ... I fixed the files as far as I could find out where
changes of me have been overwritten ...
-----------------------------------------------------------------------
SmallHorse (23.10.2003):
1) Refactored trading and stuff a bit
-----------------------------------------------------------------------
SmallHorse (22.10.2003):
1) MMT ... Money, Merchants, Trading
This is not very heavily tested code, so there might be bugs in it still
2) More global gameevents
-----------------------------------------------------------------------
Corillian (21.10.2003):
1) Added better error handling for the login request packet handler
2) Moved all the mob initialization stuff in the /mob create command that wasn't player
dependent to the GameMob constructor
3) Added the ability to specify the class and add params for the constructor when creating
a custom mob (see /mob create)
4) (GameMerchant.cs) Made the Load and Save functions for the DB virtual so scripters can properly inherit from GameMerchant
-----------------------------------------------------------------------
SmallHorse (19.10.2003):
1) Added NPC equipment! This is a rather big change. A table was added called
NPCEquipment. It holds equipment templates. You can make many mobs wear the
same equipment with just one command :)
Added lots of commands to mob script. Also, mobs are now saved automatically
after each change. No need to type /mob save anymore!
Example to equip a mob with items:
/mob create //Creates the mob
/mob model 28 //Sets the mob to guard model
/mob name Guard //Set the mobname to Guard
/mob equip righthand 4 //Makes the mob wear a briton longsword for his righthand
/mob equip lefthand 61 //Makes the mob wear a towershield in lefthand
/mob equip cloak 57 26 //makes the mob wear a black cloak
/mob equipsave 1 //Saves this mobs equipment as template 1 ... without this
//the equipment is NOT saved!
/mob create //Create a second mob
/mob name Guard2 //Name the mob
/mob model 28 //Set the mobmodel to guard too
/mob equip 1 //Make the mob wear the equipmentset 1
You see it is pretty comfortable once you have a certain equipmentset. You can also
load a equipmentset, modify some values and then save it as new set :)
Also added an optional parameter to /mob create you can now use
"/mob create <baseclass>" This will try to create a mob of the specific class. This
is very powerful to customize the game!
2) Added very basic door usage. Players can open doors now. This is pretty buggy since
no visibility checks are done and you can not close doors anymore ... it is just a
solution to enable the opening of doors at all!
3) I fixed bugs with the ClassType stuff in the tables. Today I tried out setting mobs
to another class I created in the scripts directory and it didn't work. After lots
of searching I found out why. "CreateInstance" does NOT throw an exception if the
type is not found in an assembly. Instead it returns null. But the current code was
only searching for the type in the script assembly if CreateInstance threw an exception.
So this never happened ... I fixed this and now you can create custom mobs easily ;-)
-----------------------------------------------------------------------
SmallHorse (18.10.2003):
1) Fixed the charoverview and worldenter bugs with inventory items, now
they are correctly set on load (Character table changed!)
2) GamePlayer is now constructed with a Character as parameter and will save this
character when the player quits or disconnects.
3) Started documenting the inventory Code
4) Renamed some functions... eg. InventoryUpdateSlot -> UpdateInventorySlot ...
5) Wrote a virtual bool ReceiveItem in GameLiving and also added an OnReceiveItem event
Take a look at PlayerMoveItemRequestHandler to see when it is called and how it
works with NPC's (standard is that they don't accept items)
-----------------------------------------------------------------------
SmallHorse (18.10.2003):
1) Made ClassType property in the DB tables optional. If it is set in the
XML then it will load, if it isn't set it is ignored and the base object
is created. Modified the DB framework because a bug prevented this.
DBObjects that are null are not "null" they are "DBNull", so testing
against "null" is pointless ;-)
2) Added Crystalin's inventory code and rewrote it (Sorry Crystal for
rewriting it, but now it is a bit easier I think! But THANK YOU VERY VERY
MUCH for your GREAT WORK!!!) Still need some fixing and adding of stuff.
3) Fixed the bug that made characters "vanish" from charcter overview when
starting DAOC, going to the char overview and quitting without entering
the game. The "Name, X,Y,Z, region ..." entries were overwritten in the DB.
TODO: Write the ActiveWeaponSlot into char database!
TODO: Fix bug in charoverview having to do with ActiveWeaponSlot in players!
TODO: Fix bug when entering the world having to do with ActiveWeaponSlot in players!
TODO: Save Chars when they quit not only when they disconnect!
TODO: Document the inventory code
-----------------------------------------------------------------------
Corillian (16.10.2003):
1) Fixed GUI freeze (hopefully)
2) Started adding preprocessor cmds for linux build
3) Created project for login server linux build
4) Modified DB to allow for inheritance via scripts
-----------------------------------------------------------------------
Corillian (15.10.2003):
1) Re-organized scripts so that there are GM commands
2) Added plvl command
3) Organized some console output
4) Fixed plvl bug (tnks soho)
5) Misc GUI tweaks
6) Fixed a bug in DOLConsole and changed all Monitor.* to lock()
-----------------------------------------------------------------------
SmallHorse (15.10.2003):
1) Added functions to GameLiving ... Say,Yell,Whisper ... to enable
GameLiving to talk you now only say living.Say("Haha, you can't catch me");
2) Added function to GamePlayer ... Send ... to enable players to send
direct messages to others. Very useful for callbacks etc.
3) Created a lot of callback commands that have to do with communication
Now you can set callback handlers on mobs/npcs etc. to make them react
to /say /whisper /yell ... etc ...
4) Made two funny GameEvents as tutorial and scripting example.
a) A NPC that replies and talks to you. When you rightclick on it, it will
write it's text in a popup window on the client and react to clicks on
text in [brackets]
b) A NPC (a little spider) that will start following you if you are close
enough and rightclick it. It will keep following you everywhere like
a dog. The speed of the spider is based on the distance towards the
player it follows. It's really fun :-)
*) Both NPCs can be found X=505599, Y=437679, Region=1 (Albion Home)
This is close to the HorseRace event too ;-)
-----------------------------------------------------------------------
SmallHorse (15.10.2003):
1) Implemented the group code from Crystal and corrected some small bugs
2) Added an "alias" parameter to the "CmdAttribute" class. Optionally you can
now give some aliases to be used for the command eg.
[CmdAttribute(
"&quit",
new string[]{"&Quit","&q","&Q"}, //<---- these are aliases for the cmd
(uint)PrivLevel.Player,
"Removes the player from the world",
"/quit")]
If the cmd has no aliases, simply leave out the alias cmd
3) Pulled up the GameMob and include a GameNPC class from which GameMob derives
4) Documented so much that my fingers are aching!
-----------------------------------------------------------------------
SmallHorse (09.10.2003):
1) Added events to all gameobjects like OnArriveOnTarget, OnCloseToTarget,
OnMountSteed, ... and many many more
2) To demonstrate the power of the events I wrote an game event called
HorseRace.cs It is a complete horserace fully implemented as script!
-----------------------------------------------------------------------
Corillian (11.10.2003):
1) Finished DB management GUI
2) Connected DB stuff to options GUI and .ini's
3) Modified db connection class so it creates an XML directory if it doesn't exit
4) Moved location where DB is loaded
5) Other misc things that i can't remember right now
-----------------------------------------------------------------------
SmallHorse (09.10.2003):
1) Implemented basic horseriding ... target a mob and type /mount or /dismount
(No, you can not control your horse ... sorry this is not possible in DAOC)
2) Fixed /mob remove bug ... works now
-----------------------------------------------------------------------
SmallHorse (09.10.2003):
1) ID System has been changed. Should work much better now. There are now several functions
available in WorldMgr now to find mobs/items/players around another item etc. Eg you want
to find all players around anothre player now?
foreach(GamePlayer player in WorldMgr.GetPlayersCloseToObject(client.Player,WorldMgr.VISIBILITY_DISTANCE))
{
// "player"... take care ... I can see you! :)
}
You don't need to worry about "null" values anymore or anything. The Enumerator returned by
GetPlayersCloseToObject will take care of it all.
2) Implemented some of the script commands Crystalin sent me. ( /say /send /who )
3) Removed some more bugs I found ... don't know where or what exactly ...
4) Implemented lots of functionality in the base gameobjects (GamePlayer/GameItem/GameMob) it is very easy
to create a mob now ... you don't have to take care about the id system anymore. Just create an empty
class GameMob, fill in the fields and say "mob.AddToWorld()" that's it... or want to move a player to
another region? "Player.MoveTo(regionid,x,y,z,heading);" will do the trick ... it takes care of removing
the player from the current region, removing the player from other players watching this player etc etc.
Just take a look at the gameobjects to get a clue.
5) Mobs are sweet :) try /walk ;-) for an extra kick!
-----------------------------------------------------------------------
SmallHorse (30.09.2003):
1) Removed a bug that caused a client's OID to be freed while he was logging in
2) Improved network performance. Now only mobs that haven't been updated during the
last 400 unit move of a player or all mobs when the last full update was >30s in past
3) Removed a bug that caused scripted mobs to vanish ... /mob ... works now
/object is still buggy, need to update objects in player-move too ... was searching
for the best solution, will fix it soon
The new mob/network code is still not tested with more clients etc. So there might be bugs and
stuff! I have tested as good as I could and things seem quite fine. Please test and give me
feedback. Currentl highlights: Unneccessary traffic is removed. I tested running around with my
client through camelot hills and looked at all the mobs ... the network traffic was only ~2kb!
1kb upload and 1kb download! I know for moving mobs it will increase, but this is good already!
-----------------------------------------------------------------------
Corillian (01.10.2003):
1) Added GetCommandList() to ScriptMgr
2) Added the &cmdhelp command for displaying all available commands for a plvl
3) Added globals.cs to scripts which will contain global enums etc... (currently has PrivLevel enumeration)
4) Added "basic" GUI support for connected clients. You can currently view account name, IP, state, plvl for any connected client
5) Added commands are no longer executed if the player account doesn't have sufficient plvl
6) Added property PrivLevel to Account.cs
7) Documented GSMessages.cs and part of GameClient.cs documentation needs to be cleaned up and added to everything (correctly, with 3 /'s)
TODO: Game Server console output SERIOUSLY needs to be cleaned up.
TODO: Add an Init() function in the scripts that gets called right after the script DLL has been compiled to initialize script globals
TODO: All commands should support a &<command> help. We can either write this directly in all the scripts or make it an attribute
TODO: We need to assess script memory management and usage. All script memory must be deallocated in order for a run-time recompile to work.
If this is not possible then recompiling scripts without restarting will also be impossible because the DLL itself isn't deallocated until all its memory is.
-----------------------------------------------------------------------
SmallHorse (28.09.2003):
Ok first of all, don't panic! The changes I have done are many!
Good news. I documented every class I touched fully with /// ... so you should have
a pretty good documentation now... at least for WorldMgr, Region, IDManager ... etc.
1) Completly rewrote the IDManager ... its roughtly 7500% faster now ...
2) Rewrote BIG parts of the WorldMgr
3) Rewrote BIG parts of the Region
4) Renamed the MobMgr to RegionMgr ... because it will handle all tasks in that region not only mobs
5) Changed the way visbility and mob-updates work. Mobs/Items are now loaded into one table per Region
during server startup. This table holds all objects, wether visible or not. Then there also is a
list that holds just the visible objects (or objects that have been visible lately) in this Region
These are the objects that have an ObjectID.
When a player doesn't move, the server sends mob updates the visibility list every 30 seconds.
When a player moves the server updates the visibility list every 400 units. This works just
perfect and since this is done in each player's thread (when getting the 0x01 msg), it is quick
and allows for multithreading very well! When an object get's out of view it will be removed by
a timer after being unseen for 120 seconds (so it is sure to have timed out at all clients)
and it's ID is free for use by new objects entering the visible range.
6) Rewrote the scripts since the function names they used were changed.
7) A very empty rude EventMgr class has been added, this will be heavily worked on in the near future
8) More changes are planned ... some of them are (not neccessarily in this order)
a) Pull more functionality into the Gameobjects ... eg.
Create() -> creates the object in the world (visibly if in view)
Destroy() -> removes the object from the world (visibly if in view)
MoveTo(..) -> moves object to a specific destination
... and lot more functions that manipulate objects visibly ingame
b) Finish the EventMgr
c) Write a QuestMgr
d) Make Mobs move
e) Clean up GameServer, GameClient, ClientBase and ServerBase ...
9) I just released this unfinished stuff because I don't want to have too much conflicts later ;-)
-----------------------------------------------------------------------
Rivendel (25.09.2003):
1) Objects are working and scripted so now you can add/remove/save Alchemie-Tables jea ;-)
-----------------------------------------------------------------------
SmallHorse (25.09.2003):
1) Every scriptcommand is now an own classfile ... look at /GameServer/scripts
2) new /jump command with lots of options :) :) -> made by Crystal!
3) added character saving to database when clients disconnect ... the
database is written to disk when you stop the server :)
-----------------------------------------------------------------------
Rivendel (24.09.2003):
1) TableNames could now be differnt from Class-Name (Attributes.DataTable)
2) Set up Projects for C#Builder and SharpDevelop both freely available and fully usable for DOL
-----------------------------------------------------------------------
Corillian (24.09.2003):
1) Login server is now fully functional
2) I still need to connect the options to the LS GUI etc...
3) I need to add automatic saving to all servers along with other timer related functionality.
4) I need to add Stop() for when someone closes the GUI for all servers
5) In ClientBase.cs I added exception handling for SocketException.
When a client is forcibly closed a warning is no longer shown.
-----------------------------------------------------------------------
SmallHorse (24.09.2003):
1) I fixed some more bugs! OID of client was set incorrectly. I discovered an error
in packet 0x88 (position update) ... there the OID and not the PID should be sent!
2) I fixed a bug in the GetObjectTypeByIDFromRegion(...) the test was wrong and always
resulted in no objects found
3) I changed the default stat-location (currently only for Albion working correctly)
Now you start inside the nice Church :) :)
4) I made mobs more stable :) ... no, they don't move ... i said ... they are stable! ;-)
5) I implemented Milci's target code (no, not questcode yet) and just made some changes.
E.g. client.Player.TargetObject ... TargetObject = GameObject (can be mob/player/... anything)
6) I added some new admin commands to the commandhandler.cs (this shows real scripting power already!!!)
/gloc -> shows your current coordinates and region in global coordinate display
/mob create -> creates a temporary mob at your player's position
/mob name newName -> changes the name of a mob you have targeted to newName
/mob guild newGuild -> changes the guildname a mob you have targeted to newGuild (currently buggy!)
/mob model newModel -> changes the mob-model a mob you have targeted to newModel
/mob size newSize -> (number 0-255) changes the mob-size of target mob (50 = normal size)
/mob save -> saves the target mob into the database (currently as NEW entry, always!!!)
-----------------------------------------------------------------------
SmallHorse (23.09.2003):
1) I fixed the "GSIDManager" class, it had some bugs because it was replacing
the unused values with "0" instead of "null" this caused old lackover sessionID's
which caused havok.
2a) I added/renamed some functions in the "WorldMgr".
GetClientsCloseToClient(GameClient ... -> renamed -> GetClientsCloseToObject(GameObject ...
GetMobsCloseToObject(GameObject ... -> added
GetMobsCloseToSpot(regionid,x,y,z,radius ... -> added
2b) I added some functions to "Region"
3) Added proper disconnect handling. Now players can disconnect from the
server and the other players will see them vanish! SessionID and ObjectID
of the Player are freed correctly too.
4) If an Account is already logged into the game, you can not login
with the same account another time
5) Fixed another bug with UDP. After getting an DisposedException, the UDP
wouldn't continue to work, now it continues regardless of those exceptions
6) Fixed some bugs in connection with client/mob lists. Now whenever you call
a function in WorldMgr that returns an array of Items (eg mobs, players, clients)
you will ALWAYS get back an array ... if no items are found, the array will be
empty, but you won't get back "null" anymore!
7) Static mobs are now initialized when the player enters the game, and not
after the timer expires (which could lead to mobs appearing after 30 seconds delay)
----------------------------------------------------------------------------