Here's everything you need.
Run this patch on your core, and install the following script.
Patch:
Code:
Index: src/arcemu-world/CharacterHandler.cpp
===================================================================
--- src/arcemu-world/CharacterHandler.cpp (revision 2502)
+++ src/arcemu-world/CharacterHandler.cpp (working copy)
@@ -415,7 +415,7 @@
//Check if player has a level 55 or higher character on this realm and allow him to create DK.
//This check can be turned off in arcemu-optional.conf
- if( Config.OptionalConfig.GetBoolDefault( "ClassOptions" , "DeathKnightPreReq" , false ) && !has_level_55_char
+ if( 0 == 1 && Config.OptionalConfig.GetBoolDefault( "ClassOptions" , "DeathKnightPreReq" , false ) && !has_level_55_char
&& ( class_ == DEATHKNIGHT ))
{
pNewChar->ok_to_remove = true;
Index: src/arcemu-world/Player.cpp
===================================================================
--- src/arcemu-world/Player.cpp (revision 2502)
+++ src/arcemu-world/Player.cpp (working copy)
@@ -757,21 +757,21 @@
SetUInt32Value(UNIT_FIELD_BASE_MANA, info->mana );
SetUInt32Value(UNIT_FIELD_FACTIONTEMPLATE, info->factiontemplate );
- if(class_ == DEATHKNIGHT)
+ /*if(class_ == DEATHKNIGHT)
SetUInt32Value(PLAYER_CHARACTER_POINTS1, sWorld.DKStartTalentPoints); // Default is 0 in case you do not want to modify it
- else
+ else*/
SetUInt32Value(PLAYER_CHARACTER_POINTS1,0);
- if(class_ != DEATHKNIGHT || sWorld.StartingLevel > 55)
- {
+ /*if(class_ != DEATHKNIGHT || sWorld.StartingLevel > 55)
+ {*/
SetUInt32Value(UNIT_FIELD_LEVEL, sWorld.StartingLevel );
- if(sWorld.StartingLevel >= 10 && class_ != DEATHKNIGHT )
+ if(sWorld.StartingLevel >= 10 /*&& class_ != DEATHKNIGHT*/ )
SetUInt32Value(PLAYER_CHARACTER_POINTS1,sWorld.StartingLevel - 9);
- }
+ /*}
else
{
SetUInt32Value(UNIT_FIELD_LEVEL, 55 );
SetUInt32Value(PLAYER_NEXT_LEVEL_XP, 148200);
- }
+ }*/
UpdateGlyphs();
SetUInt32Value(PLAYER_CHARACTER_POINTS2, sWorld.MaxProfs );
Script:
Code:
//Gold On-kill Script
//Made by jotox/Classic
//Gold rewarded on kill.
#define GOLD 1
//Level required to get gold.
#define LEVEL_REQUIRED 10
#include "StdAfx.h"
#include "Setup.h"
void OnPlayerKill(Player * pPlayer, Player * pVictim)
{
if( pPlayer->getLevel() < LEVEL_REQUIRED || pVictim->getLevel() < LEVEL_REQUIRED )
return;
if( !pPlayer->m_bg )
return;
pPlayer->ModUnsigned32Value( PLAYER_FIELD_COINAGE , GOLD*100*100 );
pPlayer->BroadcastMessage("You have earned %u gold for an enemy kill.", GOLD);
}
void SetupGoldKill(ScriptMgr * mgr)
{
mgr->register_hook(SERVER_HOOK_EVENT_ON_KILL_PLAYER, &OnPlayerKill);
}
Tell me if you have any problems.