Go to the bottom of MobInfos.txt and add this:
Code:
100 Demon 6 731 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False
101 AncientDemon 6 556 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False
102 FloodDemon 6 217 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False
103 HeavenDemon 6 252 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False
104 ChaosDemon 6 225 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False
105 SacredDemon 6 251 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False
Now go to the bottom of items.txt and add this:
Code:
723991 DemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723992 AncientDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723993 FloodDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723994 HeavenDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723995 ChaosDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723996 SacredDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
Now go to your clients ini folder, and make a new txt folder called itemtype.txt.
Download

now Open the itemtype decrypter and for the first line pick itemtype.dat and the second line pick itemtype.txt, then click do it.
now open your itemtype.txt and go to the very bottom and add:
Code:
723991 DemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723992 AncientDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723993 FloodDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723994 HeavenDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723995 ChaosDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
723996 SacredDemonBox 0 0 0 0 0 0 0 0 0 0 0 7403361 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 QuestItem Used~To~Unleash~The~Demon 5
Now open back up itemtype decrypter and this time for the first line pick itemtype.txt and the second line pick itemtype.dat, and check the box check for encryption, then click do it.
Ok now extract

to you're Client .
Now open the ani folder and open ItemMinIcon.Ani and at the very bottom add:
Code:
[Item723991]
FrameAmount=1
Frame0=data/ItemMinIcon/723991.dds
[Item723992]
FrameAmount=1
Frame0=data/ItemMinIcon/723992.dds
[Item723993]
FrameAmount=1
Frame0=data/ItemMinIcon/723993.dds
[Item723994]
FrameAmount=1
Frame0=data/ItemMinIcon/723994.dds
[Item723995]
FrameAmount=1
Frame0=data/ItemMinIcon/723995.dds
[Item723996]
FrameAmount=1
Frame0=data/ItemMinIcon/723996.dds
Now still in the ani folder open MapItemIcon.Ani and at the very bottom add:
Code:
[Item723991]
FrameAmount=1
Frame0=data/MapItemIcon/723991.dds
[Item723992]
FrameAmount=1
Frame0=data/MapItemIcon/723992.dds
[Item723993]
FrameAmount=1
Frame0=data/MapItemIcon/723993.dds
[Item723994]
FrameAmount=1
Frame0=data/MapItemIcon/723994.dds
[Item723995]
FrameAmount=1
Frame0=data/MapItemIcon/723995.dds
[Item723996]
FrameAmount=1
Frame0=data/MapItemIcon/723996.dds
Now open up your source project and go to Mob.cs, search for:
Code:
DI2.Info.ID = 729910;
DI2.Info.MaxDur = DI2.Info.DBInfo.Durability;
DI2.Info.CurDur = DI2.Info.MaxDur;
}
Below that add:
Code:
if (Name.Contains("Demon") && MyMath.ChanceSuccess(100000))
{
Char.CPs += 150000;
}
if (Name.Contains("AncientDemon") && MyMath.ChanceSuccess(100000))
{
Char.CPs += 150000;
}
if (Name.Contains("FloodDemon") && MyMath.ChanceSuccess(100000))
{
Char.CPs += 150000;
}
if (Name.Contains("HeavenDemon") && MyMath.ChanceSuccess(100000))
{
Char.CPs += 150000;
}
if (Name.Contains("ChaosDemon") && MyMath.ChanceSuccess(100000))
{
Char.CPs += 150000;
}
if (Name.Contains("SacredDemon") && MyMath.ChanceSuccess(100000))
{
Char.CPs += 150000;
}
Now go to NPCDialog.cs and add:
Code:
#region DemonBoxDealer
case 12677:
{
if (Control == 0)
{
GC.AddSend(Packets.NPCSay("I am the DemonBoxDealer. To buy a DemonBox you need 50k CP's. Please choose:"));
GC.AddSend(Packets.NPCLink("DemonBox", 1));
GC.AddSend(Packets.NPCLink("AncientDemon", 2));
GC.AddSend(Packets.NPCLink("FloodDemon", 3));
GC.AddSend(Packets.NPCLink("HeavenDemon", 4));
GC.AddSend(Packets.NPCLink("ChaosDemon", 5));
GC.AddSend(Packets.NPCLink("SacredDemon", 6));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
if (Control == 1)
{
if (GC.MyChar.CPs >= 50000)
{
GC.MyChar.CPs -= 50000;
GC.MyChar.AddItem(723991);
GC.AddSend(Packets.NPCSay("Here you are."));
GC.AddSend(Packets.NPCLink("Thanks", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
else
{
GC.AddSend(Packets.NPCSay("You do not have enough CP's"));
GC.AddSend(Packets.NPCLink("Damn", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
}
if (Control == 2)
{
if (GC.MyChar.CPs >= 50000)
{
GC.MyChar.CPs -= 50000;
GC.MyChar.AddItem(723992);
GC.AddSend(Packets.NPCSay("Here you are."));
GC.AddSend(Packets.NPCLink("Thanks", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
else
{
GC.AddSend(Packets.NPCSay("You do not have enough CP's"));
GC.AddSend(Packets.NPCLink("Damn", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
}
if (Control == 3)
{
if (GC.MyChar.CPs >= 50000)
{
GC.MyChar.CPs -= 50000;
GC.MyChar.AddItem(723993);
GC.AddSend(Packets.NPCSay("Here you are."));
GC.AddSend(Packets.NPCLink("Thanks", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
else
{
GC.AddSend(Packets.NPCSay("You do not have enough CP's"));
GC.AddSend(Packets.NPCLink("Damn", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
}
if (Control == 4)
{
if (GC.MyChar.CPs >= 50000)
{
GC.MyChar.CPs -= 50000;
GC.MyChar.AddItem(723994);
GC.AddSend(Packets.NPCSay("Here you are."));
GC.AddSend(Packets.NPCLink("Thanks", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
else
{
GC.AddSend(Packets.NPCSay("You do not have enough CP's"));
GC.AddSend(Packets.NPCLink("Damn", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
}
if (Control == 5)
{
if (GC.MyChar.CPs >= 50000)
{
GC.MyChar.CPs -= 50000;
GC.MyChar.AddItem(723995);
GC.AddSend(Packets.NPCSay("Here you are."));
GC.AddSend(Packets.NPCLink("Thanks", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
else
{
GC.AddSend(Packets.NPCSay("You do not have enough CP's"));
GC.AddSend(Packets.NPCLink("Damn", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
}
if (Control == 6)
{
if (GC.MyChar.CPs >= 50000)
{
GC.MyChar.CPs -= 50000;
GC.MyChar.AddItem(723996);
GC.AddSend(Packets.NPCSay("Here you are."));
GC.AddSend(Packets.NPCLink("Thanks", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
else
{
GC.AddSend(Packets.NPCSay("You do not have enough CP's"));
GC.AddSend(Packets.NPCLink("Damn", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
}
break;
}
#endregion
Now go to Character.cs and above:
Code:
default:
{
MyClient.LocalMessage(2005, "Unable to use the item.");
MyClient.LocalMessage(2011, " ItemID: " + I.ID);
break;
}
Add :
Code:
#region DemonBox
case 720125:
{
Mob Demon = new Mob("100 Demon 6 731 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False");
Demon.EntityID = 450;
Hashtable MapMobs = (Hashtable)Game.World.H_Mobs[Loc.Map];
DMap D = (DMap)DMaps.H_DMaps[Loc.Map];
Game.Mob _Mob = new NewestCOServer.Game.Mob(Demon);
_Mob.Loc = new NewestCOServer.Game.Location();
_Mob.Loc.Map = Loc.Map;
_Mob.Loc.X = Loc.X;
_Mob.Loc.Y = Loc.Y;
_Mob.StartLoc = _Mob.Loc;
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
while (Game.World.H_Chars.Contains(_Mob.EntityID) || MapMobs.Contains(_Mob.EntityID))
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
MapMobs.Add(_Mob.EntityID, _Mob);
RemoveItem(I);
break;
}
#endregion
#region AncientDemonBox
case 720125:
{
Mob Demon = new Mob("101 AncientDemon 6 556 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False");
Demon.EntityID = 450;
Hashtable MapMobs = (Hashtable)Game.World.H_Mobs[Loc.Map];
DMap D = (DMap)DMaps.H_DMaps[Loc.Map];
Game.Mob _Mob = new NewestCOServer.Game.Mob(Demon);
_Mob.Loc = new NewestCOServer.Game.Location();
_Mob.Loc.Map = Loc.Map;
_Mob.Loc.X = Loc.X;
_Mob.Loc.Y = Loc.Y;
_Mob.StartLoc = _Mob.Loc;
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
while (Game.World.H_Chars.Contains(_Mob.EntityID) || MapMobs.Contains(_Mob.EntityID))
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
MapMobs.Add(_Mob.EntityID, _Mob);
RemoveItem(I);
break;
}
#endregion
#region FloodDemonBox
case 720125:
{
Mob Demon = new Mob("102 FloodDemon 6 217 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False");
Demon.EntityID = 450;
Hashtable MapMobs = (Hashtable)Game.World.H_Mobs[Loc.Map];
DMap D = (DMap)DMaps.H_DMaps[Loc.Map];
Game.Mob _Mob = new NewestCOServer.Game.Mob(Demon);
_Mob.Loc = new NewestCOServer.Game.Location();
_Mob.Loc.Map = Loc.Map;
_Mob.Loc.X = Loc.X;
_Mob.Loc.Y = Loc.Y;
_Mob.StartLoc = _Mob.Loc;
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
while (Game.World.H_Chars.Contains(_Mob.EntityID) || MapMobs.Contains(_Mob.EntityID))
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
MapMobs.Add(_Mob.EntityID, _Mob);
RemoveItem(I);
break;
}
#endregion
#region HeavenDemonBox
case 720125:
{
Mob Demon = new Mob("103 HeavenDemon 6 252 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False");
Demon.EntityID = 450;
Hashtable MapMobs = (Hashtable)Game.World.H_Mobs[Loc.Map];
DMap D = (DMap)DMaps.H_DMaps[Loc.Map];
Game.Mob _Mob = new NewestCOServer.Game.Mob(Demon);
_Mob.Loc = new NewestCOServer.Game.Location();
_Mob.Loc.Map = Loc.Map;
_Mob.Loc.X = Loc.X;
_Mob.Loc.Y = Loc.Y;
_Mob.StartLoc = _Mob.Loc;
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
while (Game.World.H_Chars.Contains(_Mob.EntityID) || MapMobs.Contains(_Mob.EntityID))
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
MapMobs.Add(_Mob.EntityID, _Mob);
RemoveItem(I);
break;
}
#endregion
#region ChaosDemonBox
case 720125:
{
Mob Demon = new Mob("104 ChaosDemon 6 225 250 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False");
Demon.EntityID = 450;
Hashtable MapMobs = (Hashtable)Game.World.H_Mobs[Loc.Map];
DMap D = (DMap)DMaps.H_DMaps[Loc.Map];
Game.Mob _Mob = new NewestCOServer.Game.Mob(Demon);
_Mob.Loc = new NewestCOServer.Game.Location();
_Mob.Loc.Map = Loc.Map;
_Mob.Loc.X = Loc.X;
_Mob.Loc.Y = Loc.Y;
_Mob.StartLoc = _Mob.Loc;
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
while (Game.World.H_Chars.Contains(_Mob.EntityID) || MapMobs.Contains(_Mob.EntityID))
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
MapMobs.Add(_Mob.EntityID, _Mob);
RemoveItem(I);
break;
}
#endregion
#region SacredDemonBox
case 720125:
{
Mob Demon = new Mob("105 SacredDemon 6 251 50000 2500 70 10000 0 0 100 70 21 8036 0 False 18 100000 500000 500 3 False");
Demon.EntityID = 450;
Hashtable MapMobs = (Hashtable)Game.World.H_Mobs[Loc.Map];
DMap D = (DMap)DMaps.H_DMaps[Loc.Map];
Game.Mob _Mob = new NewestCOServer.Game.Mob(Demon);
_Mob.Loc = new NewestCOServer.Game.Location();
_Mob.Loc.Map = Loc.Map;
_Mob.Loc.X = Loc.X;
_Mob.Loc.Y = Loc.Y;
_Mob.StartLoc = _Mob.Loc;
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
while (Game.World.H_Chars.Contains(_Mob.EntityID) || MapMobs.Contains(_Mob.EntityID))
_Mob.EntityID = (uint)Program.Rnd.Next(400000, 500000);
MapMobs.Add(_Mob.EntityID, _Mob);
RemoveItem(I);
break;
}
#endregion
If Helped Press Thanks !!