CVS 08-12
Posted: 08 Dec 2004, 22:27
Code: Select all
- Changed: byte to int for craftingprimaryskill in dolcharacter table
- Add: Enchanter custom npc
- BugFix : guild name escape to fix the ' bug
- Add: vaultkeeper quild
- 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...
- Bugfix: Fixed some typos in /task command
- Change: Moved quickcast out of player into QuickCastAbilityHandler
- Change: Renamed QckCastEffect to QuickCastEffect
- Add: Engage Ability
- 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
- 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
- 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.
- Changed: Players with active pulsing spell can't stealth
- Changed: All effects are canceled when player logs out (LD or /quit)
- Add : stuck command
- BugFix : craft prymary skill save in db so remove bug of craft npc
- Bugfix: CombatHeal can be used solo
- Bugfix: Escape function for sql database
- Bugfix: When creating new SQL tables AllowDBNull check was reversed
- 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.
- New: /item command can be used to set magical bonuses
- New: Guard/Intercept abilities
- 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
- Add: IGameLocation, GameLocation as extension of Point3D to store Name, RegionID and heading
- Clean: Removed debug message from hasFinishedQuest too reduce logfile load.
- Bugfix: dead players should not be able to start attack
- Bugfix: TargetObject of player is cleared if player dies
- Bugfix : VaultKeeper
-BugFix : check of distance for each gameliving inherited methode receiveitem
- Add : refresh inventory after remove material in crafting
- New: CombatSpeedDebuff spell handler
- Bugfix: Can't change QuickCast state while casting a spell
- Bugfix : improve and clean mez stun root system
- Add : getFirstItemByName to playerinventory
- Add : craft improve and debug a bit