Multi client is important to us. if you can make just that, we'd really appreciate it xhen..
Printable View
Multi client is important to us. if you can make just that, we'd really appreciate it xhen..
This is GUI?
can someone please teach how to use those codes....
thanks for everything
We miss you xkhen !!!!
I nid a multiclient
is this d3d menu hack?Quote:
I'll be quitting making trainers now. :) I'll giving you my source code for free. :) You can distribute it as long as you want. Just give credits anyway.
I'll be now concentrating to my real world and my studies. Kudos Everyone!
Code:
//This is for Form1.h (Display of the trainer) //
#pragma once
namespace DNS {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
using namespace System::IO;
/// <summary>
/// Summary for Form1
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
//
//TODO: Add the constructor code here
//
}
protected:
/// <summary>
/// Clean up any resources being used.
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
System::Windows::Forms::ListViewItem^ listViewItem;
private: System::Windows::Forms::Label^ label1;
protected:
private: System::Windows::Forms::Label^ label2;
private: System::Windows::Forms::Label^ label3;
private: System::Windows::Forms::Timer^ timer1;
private: System::Windows::Forms::GroupBox^ groupBox1;
private: System::Windows::Forms::Button^ cmdCopy;
private: System::Windows::Forms::GroupBox^ groupBox2;
private: System::Windows::Forms::CheckBox^ chkAnimation;
private: System::Windows::Forms::CheckBox^ chkNOCD;
private: System::Windows::Forms::CheckBox^ chkWallhack;
private: System::Windows::Forms::ComboBox^ comboBox1;
private: System::Windows::Forms::GroupBox^ groupBox3;
private: System::Windows::Forms::ListView^ listView1;
private: System::Windows::Forms::ColumnHeader^ columnHeader1;
private: System::Windows::Forms::ColumnHeader^ columnHeader2;
private: System::Windows::Forms::ColumnHeader^ columnHeader3;
private: System::Windows::Forms::ColumnHeader^ columnHeader4;
private: System::Windows::Forms::Button^ cmdLoad;
private: System::Windows::Forms::Button^ cmdSave;
private: System::Windows::Forms::Button^ cmdTeleport;
private: System::Windows::Forms::Button^ cmdClear;
private: System::Windows::Forms::Button^ cmdAdd;
private: System::Windows::Forms::TextBox^ txtName;
private: System::Windows::Forms::Label^ label6;
private: System::Windows::Forms::Label^ label5;
private: System::Windows::Forms::Label^ label4;
private: System::Windows::Forms::SaveFileDialog^ saveFileDialog1;
private: System::Windows::Forms::OpenFileDialog^ openFileDialog1;
private: System::Windows::Forms::NumericUpDown^ numericDropDownX;
private: System::Windows::Forms::NumericUpDown^ numericDropDownY;
private: System::Windows::Forms::NumericUpDown^ numericDropDownZ;
private: System::Windows::Forms::Label^ label7;
private: System::ComponentModel::IContainer^ components;
private:
/// <summary>
/// Required designer variable.
/// </summary>
#pragma region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
void InitializeComponent(void)
{
this->components = (gcnew System::ComponentModel::Container());
this->label1 = (gcnew System::Windows::Forms::Label());
this->timer1 = (gcnew System::Windows::Forms::Timer(this->components));
this->label2 = (gcnew System::Windows::Forms::Label());
this->label3 = (gcnew System::Windows::Forms::Label());
this->groupBox1 = (gcnew System::Windows::Forms::GroupBox());
this->cmdCopy = (gcnew System::Windows::Forms::Button());
this->label6 = (gcnew System::Windows::Forms::Label());
this->label5 = (gcnew System::Windows::Forms::Label());
this->label4 = (gcnew System::Windows::Forms::Label());
this->groupBox2 = (gcnew System::Windows::Forms::GroupBox());
this->comboBox1 = (gcnew System::Windows::Forms::ComboBox());
this->chkAnimation = (gcnew System::Windows::Forms::CheckBox());
this->chkNOCD = (gcnew System::Windows::Forms::CheckBox());
this->chkWallhack = (gcnew System::Windows::Forms::CheckBox());
this->groupBox3 = (gcnew System::Windows::Forms::GroupBox());
this->numericDropDownX = (gcnew System::Windows::Forms::NumericUpDown());
this->numericDropDownY = (gcnew System::Windows::Forms::NumericUpDown());
this->numericDropDownZ = (gcnew System::Windows::Forms::NumericUpDown());
this->txtName = (gcnew System::Windows::Forms::TextBox());
this->cmdLoad = (gcnew System::Windows::Forms::Button());
this->cmdSave = (gcnew System::Windows::Forms::Button());
this->cmdTeleport = (gcnew System::Windows::Forms::Button());
this->cmdClear = (gcnew System::Windows::Forms::Button());
this->cmdAdd = (gcnew System::Windows::Forms::Button());
this->listView1 = (gcnew System::Windows::Forms::ListView());
this->columnHeader1 = (gcnew System::Windows::Forms::ColumnHeader());
this->columnHeader2 = (gcnew System::Windows::Forms::ColumnHeader());
this->columnHeader3 = (gcnew System::Windows::Forms::ColumnHeader());
this->columnHeader4 = (gcnew System::Windows::Forms::ColumnHeader());
this->saveFileDialog1 = (gcnew System::Windows::Forms::SaveFileDialog());
this->openFileDialog1 = (gcnew System::Windows::Forms::OpenFileDialog());
this->label7 = (gcnew System::Windows::Forms::Label());
this->groupBox1->SuspendLayout();
this->groupBox2->SuspendLayout();
this->groupBox3->SuspendLayout();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->numericDropDownX))->BeginInit();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->numericDropDownY))->BeginInit();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->numericDropDownZ))->BeginInit();
this->SuspendLayout();
//
// label1
//
this->label1->AutoSize = true;
this->label1->Location = System::Drawing::Point(26, 15);
this->label1->Name = L"label1";
this->label1->Size = System::Drawing::Size(13, 13);
this->label1->TabIndex = 0;
this->label1->Text = L"0";
//
// timer1
//
this->timer1->Enabled = true;
this->timer1->Interval = 50;
this->timer1->Tick += gcnew System::EventHandler(this, &Form1::timer1_Tick);
//
// label2
//
this->label2->AutoSize = true;
this->label2->Location = System::Drawing::Point(26, 28);
this->label2->Name = L"label2";
this->label2->Size = System::Drawing::Size(13, 13);
this->label2->TabIndex = 1;
this->label2->Text = L"0";
//
// label3
//
this->label3->AutoSize = true;
this->label3->Location = System::Drawing::Point(26, 41);
this->label3->Name = L"label3";
this->label3->Size = System::Drawing::Size(13, 13);
this->label3->TabIndex = 2;
this->label3->Text = L"0";
//
// groupBox1
//
this->groupBox1->Controls->Add(this->cmdCopy);
this->groupBox1->Controls->Add(this->label6);
this->groupBox1->Controls->Add(this->label5);
this->groupBox1->Controls->Add(this->label3);
this->groupBox1->Controls->Add(this->label4);
this->groupBox1->Controls->Add(this->label2);
this->groupBox1->Controls->Add(this->label1);
this->groupBox1->Location = System::Drawing::Point(271, 13);
this->groupBox1->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->groupBox1->Name = L"groupBox1";
this->groupBox1->Padding = System::Windows::Forms::Padding(3, 2, 3, 2);
this->groupBox1->Size = System::Drawing::Size(124, 89);
this->groupBox1->TabIndex = 3;
this->groupBox1->TabStop = false;
this->groupBox1->Text = L" Coordinates ";
//
// cmdCopy
//
this->cmdCopy->ForeColor = System::Drawing::Color::Black;
this->cmdCopy->Location = System::Drawing::Point(6, 59);
this->cmdCopy->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->cmdCopy->Name = L"cmdCopy";
this->cmdCopy->Size = System::Drawing::Size(111, 24);
this->cmdCopy->TabIndex = 3;
this->cmdCopy->Text = L"Copy";
this->cmdCopy->UseVisualStyleBackColor = true;
this->cmdCopy->Click += gcnew System::EventHandler(this, &Form1::cmdCopy_Click);
//
// label6
//
this->label6->AutoSize = true;
this->label6->Location = System::Drawing::Point(11, 41);
this->label6->Name = L"label6";
this->label6->Size = System::Drawing::Size(17, 13);
this->label6->TabIndex = 2;
this->label6->Text = L"Z:";
//
// label5
//
this->label5->AutoSize = true;
this->label5->Location = System::Drawing::Point(11, 28);
this->label5->Name = L"label5";
this->label5->Size = System::Drawing::Size(17, 13);
this->label5->TabIndex = 1;
this->label5->Text = L"Y:";
//
// label4
//
this->label4->AutoSize = true;
this->label4->Location = System::Drawing::Point(11, 15);
this->label4->Name = L"label4";
this->label4->Size = System::Drawing::Size(17, 13);
this->label4->TabIndex = 0;
this->label4->Text = L"X:";
//
// groupBox2
//
this->groupBox2->Controls->Add(this->comboBox1);
this->groupBox2->Controls->Add(this->chkAnimation);
this->groupBox2->Controls->Add(this->chkNOCD);
this->groupBox2->Controls->Add(this->chkWallhack);
this->groupBox2->Location = System::Drawing::Point(271, 106);
this->groupBox2->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->groupBox2->Name = L"groupBox2";
this->groupBox2->Padding = System::Windows::Forms::Padding(3, 2, 3, 2);
this->groupBox2->Size = System::Drawing::Size(124, 111);
this->groupBox2->TabIndex = 4;
this->groupBox2->TabStop = false;
this->groupBox2->Text = L" Utilities ";
//
// comboBox1
//
this->comboBox1->Enabled = false;
this->comboBox1->ForeColor = System::Drawing::Color::Red;
this->comboBox1->FormattingEnabled = true;
this->comboBox1->Items->AddRange(gcnew cli::array< System::Object^ >(5) {L"Warrior", L"Cleric", L"Academic", L"Archer",
L"Mage"});
this->comboBox1->Location = System::Drawing::Point(9, 80);
this->comboBox1->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->comboBox1->Name = L"comboBox1";
this->comboBox1->Size = System::Drawing::Size(101, 21);
this->comboBox1->TabIndex = 3;
this->comboBox1->Text = L"<= Class =>";
//
// chkAnimation
//
this->chkAnimation->AutoSize = true;
this->chkAnimation->Location = System::Drawing::Point(7, 58);
this->chkAnimation->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->chkAnimation->Name = L"chkAnimation";
this->chkAnimation->Size = System::Drawing::Size(89, 17);
this->chkAnimation->TabIndex = 2;
this->chkAnimation->Text = L"No Animation";
this->chkAnimation->UseVisualStyleBackColor = true;
this->chkAnimation->CheckedChanged += gcnew System::EventHandler(this, &Form1::chkAnimation_CheckedChanged);
//
// chkNOCD
//
this->chkNOCD->AutoSize = true;
this->chkNOCD->Enabled = false;
this->chkNOCD->ForeColor = System::Drawing::Color::Red;
this->chkNOCD->Location = System::Drawing::Point(7, 39);
this->chkNOCD->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->chkNOCD->Name = L"chkNOCD";
this->chkNOCD->Size = System::Drawing::Size(90, 17);
this->chkNOCD->TabIndex = 1;
this->chkNOCD->Text = L"No Cooldown";
this->chkNOCD->UseVisualStyleBackColor = true;
this->chkNOCD->CheckedChanged += gcnew System::EventHandler(this, &Form1::chkNOCD_CheckedChanged);
//
// chkWallhack
//
this->chkWallhack->AutoSize = true;
this->chkWallhack->Location = System::Drawing::Point(7, 20);
this->chkWallhack->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->chkWallhack->Name = L"chkWallhack";
this->chkWallhack->Size = System::Drawing::Size(76, 17);
this->chkWallhack->TabIndex = 0;
this->chkWallhack->Text = L"Wall Hack";
this->chkWallhack->UseVisualStyleBackColor = true;
this->chkWallhack->CheckedChanged += gcnew System::EventHandler(this, &Form1::chkWallhack_CheckedChanged);
//
// groupBox3
//
this->groupBox3->Controls->Add(this->numericDropDownX);
this->groupBox3->Controls->Add(this->numericDropDownY);
this->groupBox3->Controls->Add(this->numericDropDownZ);
this->groupBox3->Controls->Add(this->txtName);
this->groupBox3->Controls->Add(this->cmdLoad);
this->groupBox3->Controls->Add(this->cmdSave);
this->groupBox3->Controls->Add(this->cmdTeleport);
this->groupBox3->Controls->Add(this->cmdClear);
this->groupBox3->Controls->Add(this->cmdAdd);
this->groupBox3->Controls->Add(this->listView1);
this->groupBox3->Location = System::Drawing::Point(13, 13);
this->groupBox3->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->groupBox3->Name = L"groupBox3";
this->groupBox3->Padding = System::Windows::Forms::Padding(3, 2, 3, 2);
this->groupBox3->Size = System::Drawing::Size(252, 206);
this->groupBox3->TabIndex = 5;
this->groupBox3->TabStop = false;
this->groupBox3->Text = L" Teleport Box [F1-F10 <=> Alt+1 to 5] ";
//
// numericDropDownX
//
this->numericDropDownX->Location = System::Drawing::Point(68, 145);
this->numericDropDownX->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->numericDropDownX->Maximum = System::Decimal(gcnew cli::array< System::Int32 >(4) {99999, 0, 0, 0});
this->numericDropDownX->Minimum = System::Decimal(gcnew cli::array< System::Int32 >(4) {99999, 0, 0, System::Int32::MinValue});
this->numericDropDownX->Name = L"numericDropDownX";
this->numericDropDownX->Size = System::Drawing::Size(55, 20);
this->numericDropDownX->TabIndex = 5;
//
// numericDropDownY
//
this->numericDropDownY->Location = System::Drawing::Point(129, 145);
this->numericDropDownY->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->numericDropDownY->Maximum = System::Decimal(gcnew cli::array< System::Int32 >(4) {99999, 0, 0, 0});
this->numericDropDownY->Minimum = System::Decimal(gcnew cli::array< System::Int32 >(4) {99999, 0, 0, System::Int32::MinValue});
this->numericDropDownY->Name = L"numericDropDownY";
this->numericDropDownY->Size = System::Drawing::Size(55, 20);
this->numericDropDownY->TabIndex = 5;
//
// numericDropDownZ
//
this->numericDropDownZ->Location = System::Drawing::Point(190, 145);
this->numericDropDownZ->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->numericDropDownZ->Maximum = System::Decimal(gcnew cli::array< System::Int32 >(4) {99999, 0, 0, 0});
this->numericDropDownZ->Minimum = System::Decimal(gcnew cli::array< System::Int32 >(4) {99999, 0, 0, System::Int32::MinValue});
this->numericDropDownZ->Name = L"numericDropDownZ";
this->numericDropDownZ->Size = System::Drawing::Size(55, 20);
this->numericDropDownZ->TabIndex = 5;
//
// txtName
//
this->txtName->Location = System::Drawing::Point(7, 145);
this->txtName->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->txtName->Name = L"txtName";
this->txtName->Size = System::Drawing::Size(55, 20);
this->txtName->TabIndex = 4;
//
// cmdLoad
//
this->cmdLoad->BackColor = System::Drawing::Color::Transparent;
this->cmdLoad->ForeColor = System::Drawing::Color::Black;
this->cmdLoad->Location = System::Drawing::Point(202, 176);
this->cmdLoad->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->cmdLoad->Name = L"cmdLoad";
this->cmdLoad->Size = System::Drawing::Size(47, 21);
this->cmdLoad->TabIndex = 2;
this->cmdLoad->Text = L"Load";
this->cmdLoad->UseVisualStyleBackColor = false;
this->cmdLoad->Click += gcnew System::EventHandler(this, &Form1::cmdLoad_Click);
//
// cmdSave
//
this->cmdSave->ForeColor = System::Drawing::Color::Black;
this->cmdSave->Location = System::Drawing::Point(152, 176);
this->cmdSave->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->cmdSave->Name = L"cmdSave";
this->cmdSave->Size = System::Drawing::Size(47, 21);
this->cmdSave->TabIndex = 2;
this->cmdSave->Text = L"Save";
this->cmdSave->UseVisualStyleBackColor = true;
this->cmdSave->Click += gcnew System::EventHandler(this, &Form1::cmdSave_Click);
//
// cmdTeleport
//
this->cmdTeleport->ForeColor = System::Drawing::Color::Black;
this->cmdTeleport->Location = System::Drawing::Point(102, 176);
this->cmdTeleport->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->cmdTeleport->Name = L"cmdTeleport";
this->cmdTeleport->Size = System::Drawing::Size(47, 21);
this->cmdTeleport->TabIndex = 2;
this->cmdTeleport->Text = L"Tele";
this->cmdTeleport->UseVisualStyleBackColor = true;
this->cmdTeleport->Click += gcnew System::EventHandler(this, &Form1::cmdTeleport_Click);
//
// cmdClear
//
this->cmdClear->ForeColor = System::Drawing::Color::Black;
this->cmdClear->Location = System::Drawing::Point(53, 176);
this->cmdClear->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->cmdClear->Name = L"cmdClear";
this->cmdClear->Size = System::Drawing::Size(47, 21);
this->cmdClear->TabIndex = 2;
this->cmdClear->Text = L"Clear";
this->cmdClear->UseVisualStyleBackColor = true;
this->cmdClear->Click += gcnew System::EventHandler(this, &Form1::cmdClear_Click);
//
// cmdAdd
//
this->cmdAdd->ForeColor = System::Drawing::Color::Black;
this->cmdAdd->Location = System::Drawing::Point(4, 176);
this->cmdAdd->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->cmdAdd->Name = L"cmdAdd";
this->cmdAdd->Size = System::Drawing::Size(47, 21);
this->cmdAdd->TabIndex = 2;
this->cmdAdd->Text = L"Add";
this->cmdAdd->UseVisualStyleBackColor = true;
this->cmdAdd->Click += gcnew System::EventHandler(this, &Form1::cmdAdd_Click);
//
// listView1
//
this->listView1->Columns->AddRange(gcnew cli::array< System::Windows::Forms::ColumnHeader^ >(4) {this->columnHeader1, this->columnHeader2,
this->columnHeader3, this->columnHeader4});
this->listView1->FullRowSelect = true;
this->listView1->GridLines = true;
this->listView1->HeaderStyle = System::Windows::Forms::ColumnHeaderStyle::Nonclickable;
this->listView1->HideSelection = false;
this->listView1->Location = System::Drawing::Point(7, 15);
this->listView1->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->listView1->MultiSelect = false;
this->listView1->Name = L"listView1";
this->listView1->Size = System::Drawing::Size(239, 116);
this->listView1->TabIndex = 0;
this->listView1->UseCompatibleStateImageBehavior = false;
this->listView1->View = System::Windows::Forms::View::Details;
//
// columnHeader1
//
this->columnHeader1->Text = L"Name";
this->columnHeader1->Width = 58;
//
// columnHeader2
//
this->columnHeader2->Text = L"X Coord";
this->columnHeader2->Width = 58;
//
// columnHeader3
//
this->columnHeader3->Text = L"Y Coord";
this->columnHeader3->Width = 58;
//
// columnHeader4
//
this->columnHeader4->Text = L"Z Coord";
this->columnHeader4->Width = 58;
//
// saveFileDialog1
//
this->saveFileDialog1->OverwritePrompt = false;
this->saveFileDialog1->ShowHelp = true;
this->saveFileDialog1->Title = L"Save your current date (Will overwrite files with the same name without prompt)";
//
// openFileDialog1
//
this->openFileDialog1->FileName = L"-Select File-";
this->openFileDialog1->ShowHelp = true;
this->openFileDialog1->Title = L"Open coordinates data";
//
// label7
//
this->label7->AutoSize = true;
this->label7->Font = (gcnew System::Drawing::Font(L"Trebuchet MS", 8.25F, static_cast<System::Drawing::FontStyle>((System::Drawing::FontStyle::Bold | System::Drawing::FontStyle::Underline)),
System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(0)));
this->label7->Location = System::Drawing::Point(133, 222);
this->label7->Name = L"label7";
this->label7->Size = System::Drawing::Size(135, 16);
this->label7->TabIndex = 6;
this->label7->Text = L"Created By: XKhen0017";
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(406, 243);
this->ControlBox = false;
this->Controls->Add(this->label7);
this->Controls->Add(this->groupBox3);
this->Controls->Add(this->groupBox2);
this->Controls->Add(this->groupBox1);
this->DoubleBuffered = true;
this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::FixedSingle;
this->Margin = System::Windows::Forms::Padding(3, 2, 3, 2);
this->MaximizeBox = false;
this->Name = L"Form1";
this->Opacity = 0.9;
this->Text = L"DNest Sea v85 Trainer";
this->groupBox1->ResumeLayout(false);
this->groupBox1->PerformLayout();
this->groupBox2->ResumeLayout(false);
this->groupBox2->PerformLayout();
this->groupBox3->ResumeLayout(false);
this->groupBox3->PerformLayout();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->numericDropDownX))->EndInit();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->numericDropDownY))->EndInit();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->numericDropDownZ))->EndInit();
this->ResumeLayout(false);
this->PerformLayout();
}
#pragma endregion
private: System::Void timer1_Tick(System::Object^ sender, System::EventArgs^ e);
private: System::Void chkWallhack_CheckedChanged(System::Object^ sender, System::EventArgs^ e);
private: System::Void chkNOCD_CheckedChanged(System::Object^ sender, System::EventArgs^ e);
private: System::Void cmdCopy_Click(System::Object^ sender, System::EventArgs^ e);
private: System::Void cmdClear_Click(System::Object^ sender, System::EventArgs^ e);
private: System::Void cmdAdd_Click(System::Object^ sender, System::EventArgs^ e);
private: System::Void cmdTeleport_Click(System::Object^ sender, System::EventArgs^ e);
private: System::Void chkAnimation_CheckedChanged(System::Object^ sender, System::EventArgs^ e);
private: System::Void cmdSave_Click(System::Object^ sender, System::EventArgs^ e);
private: System::Void cmdLoad_Click(System::Object^ sender, System::EventArgs^ e);
//private: System::Void timer2_Tick(System::Object^ sender, System::EventArgs^ e);
};
}
Code:// This code is for Form1.cpp ( Main function of the trainer)
#include "Form1.h"
#include "Codes.h"
#include "Psapi.h"
using namespace DNS;
void Main(void)
{
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
Application::Run(gcnew Form1);
Application::Exit();
}
void Form1::timer1_Tick(System::Object^ sender, System::EventArgs^ e)
{
//===================================================================================
__try
{
DWORD *CharZ_1 = (DWORD*)(*(DWORD*)MAINADD + 0x4c4);
DWORD *CharZ_2 = (DWORD*)(*(DWORD*)CharZ_1 + 0x8);
DWORD *CharZ_3 = (DWORD*)(*(DWORD*)CharZ_2 + 0x34);
DWORD *CharX_1 = (DWORD*)(*(DWORD*)MAINADD + 0x4c4);
DWORD *CharX_2 = (DWORD*)(*(DWORD*)CharX_1 + 0x8);
DWORD *CharX_3 = (DWORD*)(*(DWORD*)CharX_2 + 0x30);
DWORD *CharY_1 = (DWORD*)(*(DWORD*)MAINADD + 0x4c4);
DWORD *CharY_2 = (DWORD*)(*(DWORD*)CharY_1 + 0x8);
DWORD *CharY_3 = (DWORD*)(*(DWORD*)CharY_2 + 0x38);
//============================================================================================
this->label1->Text = (*(float*)CharX_3).ToString("f0");
this->label2->Text = (*(float*)CharY_3).ToString("f0");
this->label3->Text = (*(float*)CharZ_3).ToString("f0");
//============================================================================================
if(listView1->Items->Count != 0)
{
if (GetAsyncKeyState(0x70))
{
axis((float)Convert::ToInt32(listView1->Items[0]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[0]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x71))
{
axis((float)Convert::ToInt32(listView1->Items[1]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[1]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x72))
{
axis((float)Convert::ToInt32(listView1->Items[2]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[2]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x73))
{
axis((float)Convert::ToInt32(listView1->Items[3]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[3]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x74))
{
axis((float)Convert::ToInt32(listView1->Items[4]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[4]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x75))
{
axis((float)Convert::ToInt32(listView1->Items[5]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[5]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x76))
{
axis((float)Convert::ToInt32(listView1->Items[6]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[6]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x77))
{
axis((float)Convert::ToInt32(listView1->Items[7]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[7]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x78))
{
axis((float)Convert::ToInt32(listView1->Items[8]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[8]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(0x79))
{
axis((float)Convert::ToInt32(listView1->Items[9]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[9]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(VK_MENU) && GetAsyncKeyState(0x31))
{
axis((float)Convert::ToInt32(listView1->Items[10]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[10]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(VK_MENU) && GetAsyncKeyState(0x32))
{
axis((float)Convert::ToInt32(listView1->Items[11]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[11]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(VK_MENU) && GetAsyncKeyState(0x33))
{
axis((float)Convert::ToInt32(listView1->Items[12]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[12]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(VK_MENU) && GetAsyncKeyState(0x34))
{
axis((float)Convert::ToInt32(listView1->Items[13]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[13]->SubItems[2]->Text));
}
else if (GetAsyncKeyState(VK_MENU) && GetAsyncKeyState(0x35))
{
axis((float)Convert::ToInt32(listView1->Items[14]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[14]->SubItems[2]->Text));
}
}
//~~~~~~~~~~~~~~~~~~~~~ ANIMATION!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
switch (comboBox1->SelectedIndex)
{
case 0:
if ((GetKeyState(VK_CAPITAL) & 0x0001)!=0)
{
if (GetAsyncKeyState(0x57))
{
animation(220);
Sleep(50);
}
}
break;
case 1:
if ((GetKeyState(VK_CAPITAL) & 0x0001)!=0)
{
if (GetAsyncKeyState(0x57))
{
animation(76);
Sleep(50);
}
}
break;
case 2:
if ((GetKeyState(VK_CAPITAL) & 0x0001)!=0)
{
if (GetAsyncKeyState(0x57))
{
animation(124);
Sleep(50);
}
}
break;
case 3:
if ((GetKeyState(VK_CAPITAL) & 0x0001)!=0)
{
if (GetAsyncKeyState(0x57))
{
animation(90);
Sleep(50);
}
}
break;
case 4:
if ((GetKeyState(VK_CAPITAL) & 0x0001)!=0)
{
if (GetAsyncKeyState(0x57))
{
animation(169);
Sleep(50);
}
}
break;
}//~~~~~~~~~~~~~~~~~END OF ANIMATION~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
}
__except (EXCEPTION_EXECUTE_HANDLER) { }
//==============================END===================================================
char dndn[1024];
GetWindowTextA(GetForegroundWindow(),dndn,1024);
if (dndn != NULL)
{
if (GetAsyncKeyState(VK_HOME))
{
if (this->Visible == true)
{
this->Visible = false;
Sleep(500);
}
else
{
this->Visible = true;
Sleep(500);
}
}
}
}
//================Wallhack Enable/Disable=================================================
void Form1::chkWallhack_CheckedChanged(System::Object^ sender, System::EventArgs^ e)
{
WallhackCheat(this->chkWallhack->Checked);
}
//===============No Animation Cheat=======================================================
void Form1::chkAnimation_CheckedChanged(System::Object^ sender, System::EventArgs^ e)
{
NoAnimationCheat(this->chkAnimation->Checked);
}
//================No cooldown Enable/Disable==============================================
void Form1::chkNOCD_CheckedChanged(System::Object^ sender, System::EventArgs^ e)
{
//if(this->chkNOCD->Checked) { timer2->Enabled = true; }
//else { timer2->Enabled = false; }
NoCoolDownCheat(this->chkNOCD->Checked);
}
//=============== This is to activate the no cooldown feature.. Since i cant loop on a checkbox >.<
/*
void Form1::timer2_Tick(System::Object^ sender, System::EventArgs^ e)
{
switch (comboBox1->SelectedIndex)
{
case 0:
__try
{
war(this->chkNOCD->Checked);
aerial(this->chkNOCD->Checked);
}
__except(EXCEPTION_EXECUTE_HANDLER) {}
break;
case 1:
__try
{
acadcle(this->chkNOCD->Checked);
aerial(this->chkNOCD->Checked);
}
__except(EXCEPTION_EXECUTE_HANDLER) {}
break;
case 2:
__try
{
acadcle(this->chkNOCD->Checked);
aerial(this->chkNOCD->Checked);
}
__except(EXCEPTION_EXECUTE_HANDLER) {}
break;
case 3:
__try
{
archer(this->chkNOCD->Checked);
aerial(this->chkNOCD->Checked);
}
__except(EXCEPTION_EXECUTE_HANDLER) {}
break;
case 4:
__try
{
mage(this->chkNOCD->Checked);
aerial(this->chkNOCD->Checked);
}
__except(EXCEPTION_EXECUTE_HANDLER) {}
break;
}
}
*/
//===================Copy button==========================================================
void Form1::cmdCopy_Click(System::Object^ sender, System::EventArgs^ e)
{
this->numericDropDownX->Text = label1->Text;
this->numericDropDownY->Text = label2->Text;
this->numericDropDownZ->Text = label3->Text;
}
//===================================Clear button=========================================
void Form1::cmdClear_Click(System::Object^ sender, System::EventArgs^ e)
{
listView1->Items->Clear();
}
//===============================Add button===============================================
void Form1::cmdAdd_Click(System::Object^ sender, System::EventArgs^ e)
{
listViewItem = gcnew Windows::Forms::ListViewItem(this->txtName->Text);
listViewItem->SubItems->Add(this->numericDropDownX->Text);
listViewItem->SubItems->Add(this->numericDropDownY->Text);
listViewItem->SubItems->Add(this->numericDropDownZ->Text);
listView1->Items->Add(this->listViewItem);
Sleep(50);
txtName->Text = "";
numericDropDownX->Text = "0";
numericDropDownY->Text = "0";
numericDropDownZ->Text = "0";
}
//========================= Teleport =====================================================
void Form1::cmdTeleport_Click(System::Object^ sender, System::EventArgs^ e)
{
__try
{
if (listView1->SelectedIndices->Count > 0)
{
int i = listView1->SelectedIndices[0];
axis((float)Convert::ToInt32(listView1->Items[i]->SubItems[1]->Text),
(float)Convert::ToInt32(listView1->Items[i]->SubItems[2]->Text));
}
else if(listView1->Items->Count == 0 && listView1->SelectedIndices->Count == 0)
{ MessageBoxA(NULL,"No records found...","Error",MB_OK); }
else
{ MessageBoxA(NULL,"No coordinate is clicked...","Error",MB_OK); }
}
__except (EXCEPTION_EXECUTE_HANDLER)
{ MessageBoxA(NULL,"Error reading data.\n\nPlease login your character...","Error",MB_OK); }
}
//=================== SAVE ===========================================================
void Form1::cmdSave_Click(System::Object^ sender, System::EventArgs^ e)
{
saveFileDialog1->Filter = "Coordinates Files|*.coor;*.ini";
if (saveFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
{
String^ coordinates = saveFileDialog1->FileName;
if(coordinates != nullptr)
{
StreamWriter^ sw = gcnew StreamWriter(coordinates);
sw->WriteLine("<<========== " + coordinates + " ==========>>");
for (int i = 0; i < listView1->Items->Count; i++)
{
sw->WriteLine(listView1->Items[i]->Text);
sw->WriteLine(listView1->Items[i]->SubItems[1]->Text);
sw->WriteLine(listView1->Items[i]->SubItems[2]->Text);
sw->WriteLine(listView1->Items[i]->SubItems[3]->Text);
}
sw->Close();
}
MessageBoxA(NULL,"Done saving your coordinates.","Info",MB_OK);
}
}
//=================== LOAD ============================================================
void Form1::cmdLoad_Click(System::Object^ sender, System::EventArgs^ e)
{
openFileDialog1->Filter = "Coordinates Files|*.coor;*.ini";
if ( openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
{
String^ coordinates = openFileDialog1->FileName;
if(coordinates != nullptr)
{
listView1->Items->Clear();
StreamReader ^reader= gcnew StreamReader(coordinates);
reader->ReadLine(); //READ THE FIRST LINE[ To Skip it from being read]
do
{
listViewItem = gcnew Windows::Forms::ListViewItem(reader->ReadLine());
listViewItem->SubItems->Add(reader->ReadLine());
listViewItem->SubItems->Add(reader->ReadLine());
listViewItem->SubItems->Add(reader->ReadLine());
listView1->Items->Add(this->listViewItem);
}
while(reader->Peek() != -1);
reader->Close();
}
MessageBoxA(NULL,"File loaded successfully...","Info",MB_OK);
}
}
Code:// This text is for Functions.h (This is where all commands are put)
#include <Windows.h>
void WriteMemory( unsigned long ulAddress, unsigned char ucAmount, ...)
{
DWORD dwOldProtect;
VirtualProtect((void*)ulAddress, ucAmount, PAGE_EXECUTE_READWRITE, &dwOldProtect);
va_list* va = new va_list;
va_start(*va, ucAmount);
for (unsigned char ByteToWrite = va_arg(*va, unsigned char), ucIndex = 0; ucIndex < ucAmount; ucIndex++, ByteToWrite = va_arg(*va, unsigned char))
{
*(unsigned char*)(ulAddress + ucIndex) = ByteToWrite;
}
va_end(*va);
delete va;
VirtualProtect((void*)ulAddress, ucAmount, dwOldProtect, &dwOldProtect);
}
Code://This is for the addresses ingame....
#define Wallhack1 0x00587E96
#define Wallhack2 0x00587E89
#define NoCoolDown 0x006836A7
#define NoAnimation 0x00576444
#define MAINADD 0x010114F8
Code://Attachment process
#include <Windows.h>
extern void Main();
::BOOL WINAPI DllWork ( __in ::HMODULE hModule )
{
Main();
return true;
}
::BOOL WINAPI DllMain ( __in ::HMODULE hModule, __in ::DWORD dwReason, __in __reserved ::LPVOID lpvReserved )
{
::HANDLE hThread = NULL;
if ( dwReason == DLL_PROCESS_ATTACH )
{
if (( hThread = ::CreateThread(NULL, 0, (::LPTHREAD_START_ROUTINE)&DllWork, (::HMODULE)hModule, 0, NULL) ) == NULL )
{
return FALSE;
}
if ( ::CloseHandle(hThread) == FALSE )
{
//do nothing
}
}
return TRUE;
}
Code://This includes the all-in***********s... includes wallhack, no cd, capslocking etc etc....
#include "MainAddress.h"
#include "Functions.h"
void WallhackCheat(bool fEnable)
{
if(fEnable)
{
WriteMemory(Wallhack1,3, 0x90, 0x90,0x90);
WriteMemory(Wallhack2,2, 0x90, 0x90);
}
else
{
WriteMemory(Wallhack1,3, 0x89, 0x50,0x08);
WriteMemory(Wallhack2,2, 0x89, 0x10);
}
}
void NoCoolDownCheat(bool fEnable)
{
if(fEnable)
{
WriteMemory(NoCoolDown,2,0x90,0x90);
}
else
{
WriteMemory(NoCoolDown,2,0x7a,0x0E);
}
}
void NoAnimationCheat(bool fEnable)
{
if(fEnable)
{
WriteMemory(NoAnimation,6,0x90, 0x90, 0x90, 0x90, 0x90, 0x90);
}
else
{
WriteMemory(NoAnimation,6,0x89, 0x83, 0xec, 0x00, 0x00, 0x00 );
}
}
/* #region Test Mode for Skill No Cooldown. ~~
void acadcle(bool cheat)
{
if(cheat)
{ //for academics and clerics...
DWORD *A1 = (DWORD*)(*(DWORD*)MAINADD + 0x424);
DWORD *A2 = (DWORD*)(*(DWORD*)A1 + 0x50);
*(float*)(*(DWORD*)A2 + 0x1db) = 0;
}else{}
}
void war(bool cheat)
{
if(cheat)
{ //for warriors..
DWORD *W1 = (DWORD*)(*(DWORD*)MAINADD + 0x424);
DWORD *W2 = (DWORD*)(*(DWORD*)W1 + 0x68);
*(float*)(*(DWORD*)W2 + 0x1db) = 0;
} else {}
}
void mage(bool cheat)
{
if(cheat)
{ //for mages...
DWORD *M1 = (DWORD*)(*(DWORD*)MAINADD + 0x424);
DWORD *M2 = (DWORD*)(*(DWORD*)M1 + 0x20);
*(float*)(*(DWORD*)M2 + 0x1db) = 0;
} else{}
}
void archer(bool cheat)
{
if(cheat)
{ // for archers not sure tho
DWORD *AC1 = (DWORD*)(*(DWORD*)MAINADD + 0x424);
DWORD *AC2 = (DWORD*)(*(DWORD*)AC1 + 0x38);
*(float*)(*(DWORD*)AC2 + 0x1db) = 0;
} else {}
}
void aerial(bool fEnable)
{
if(fEnable)
{ //aerial evasion...
DWORD *E1 = (DWORD*)(*(DWORD*)0x012837E8 + 0xa8);
DWORD *E2 = (DWORD*)(*(DWORD*)E1 + 0x0);
DWORD *E3 = (DWORD*)(*(DWORD*)E2 + 0x708);
DWORD *E4 = (DWORD*)(*(DWORD*)E3 + 0x14);
*(float*)(*(DWORD*)E3 + 0x1db) = 0;
}
else
{}
}
#endregion */
void axis(float x,float y)
{
DWORD *CharX_1 = (DWORD*)(*(DWORD*)MAINADD + 0x4c4);
DWORD *CharX_2 = (DWORD*)(*(DWORD*)CharX_1 + 0x8);
*(float*)(*(DWORD*)CharX_2 + 0x30) = x;
//Teleport and saving point
DWORD *CharY_1 = (DWORD*)(*(DWORD*)MAINADD + 0x4c4);
DWORD *CharY_2 = (DWORD*)(*(DWORD*)CharY_1 + 0x8);
*(float*)(*(DWORD*)CharY_2 + 0x38) = y;
}
void animation(int value)
{
DWORD *A_1 = (DWORD*)(*(DWORD*)MAINADD + 0x6d0);
DWORD *A_2 = (DWORD*)(*(DWORD*)A_1 + 0x10);
DWORD *A_3 = (DWORD*)(*(DWORD*)A_2 + 0x140);
DWORD *A_4 = (DWORD*)(*(DWORD*)A_3 + 0x14);
*(DWORD*)(*(DWORD*)A_4 + 0x54) = value;
}
Program Used: Visual Studio 2012 Ultimate (You can use Visual Studio C++ 2008 for more compatability)
<=== This next source code is for the DNLauncher ===>
Program Used: My Favorite AutoIT Programming Tool. (This was the first program language I've learned.)Code:#NoTrayIcon
#RequireAdmin
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include "injectme.au3"
#include <GuiConstants.au3>
#include <Constants.au3>
#include <String.au3>
#include <Date.au3>
#include "hotkey.au3"
#include "vkConstants.au3"
#region MINIMIZE TRAINER ===============================
Opt("TrayOnEventMode", 1)
Opt("TrayMenuMode", 1)
TraySetOnEvent($TRAY_EVENT_PRIMARYUP, "SpecialEvent")
#endregion MINIMIZE TRAINER ===============================
FileInstall("logo.jpg", @TempDir & "\NTBC.dat")
updateme_firstrun()
#region ### START Koda GUI section ### Form=D:\Program Files (x86)\AutoIt3\KoDA\Forms\New!.kxf
$Form1_1 = GUICreate("DNest Launcher v1.7.0", 434, 356, -1, -1)
$menu_1 = GUICtrlCreateMenu("&File")
$Update_1 = GUICtrlCreateMenuItem("&Check Update", $menu_1)
$space = GUICtrlCreateMenuItem("", $menu_1)
$exit_1 = GUICtrlCreateMenuItem("&Exit", $menu_1)
$faq_1 = GUICtrlCreateMenu("&Help")
$faq = GUICtrlCreateMenuItem("F&AQ", $faq_1)
$Group1 = GUICtrlCreateGroup("", 8, 5, 417, 305)
$Pic1 = GUICtrlCreatePic @TempDir & "\NTBC.dat", 16, 21, 400, 110)
$Group2 = GUICtrlCreateGroup("", 16, 141, 225, 161, BitOR($GUI_SS_DEFAULT_GROUP, $BS_FLAT))
$Label1 = GUICtrlCreateLabel("Folder to browse:", 24, 157, 85, 17)
$dnpath = GUICtrlCreateInput("", 24, 181, 209, 21, BitOR($GUI_SS_DEFAULT_INPUT, $ES_AUTOVSCROLL, $ES_READONLY))
$Label2 = GUICtrlCreateLabel("Executable:", 24, 213, 60, 17)
$exe = GUICtrlCreateInput("DragonNest.exe", 24, 237, 209, 21, BitOR($GUI_SS_DEFAULT_INPUT, $ES_AUTOVSCROLL, $ES_READONLY))
$browseb = GUICtrlCreateButton("Browse", 24, 269, 97, 25)
$trnr = GUICtrlCreateCheckbox("Enable Trainer", 140, 269, -1, 25)
GUICtrlSetState(-1, $GUI_CHECKED)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group3 = GUICtrlCreateGroup("", 248, 141, 169, 161, BitOR($GUI_SS_DEFAULT_GROUP, $BS_FLAT))
$selsea = GUICtrlCreateRadio("DNSEA", 264, 160, 65, 17)
GUICtrlSetState(-1, $GUI_DISABLE)
$seldgn = GUICtrlCreateRadio("PlayDGN", 336, 160, 65, 17)
GUICtrlSetState(-1, $GUI_DISABLE)
$launch = GUICtrlCreateButton("Launch DragonNest", 264, 189, 139, 25)
GUICtrlSetState(-1, $GUI_DISABLE)
$forceclose = GUICtrlCreateButton("Force Relaunch DN", 264, 222, 139, 25)
$Label3 = GUICtrlCreateLabel("© XKhen, 2012 - DNLauncher", 261, 269, 148, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$StatusBar1 = _GUICtrlStatusBar_Create($Form1_1)
_GUICtrlStatusBar_SetText($StatusBar1, "Select DragonNest folder")
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
#region GLOBAL DECLARATIONS! ====================================
Global $ip, $trainer, $dnpathbrowsed, $Form2, $msvc, $netframe, $dnstart, $number = 1, $pid = 0, $process = 0
Global $proc = "DragonNest.exe"
Global $path = IniRead("config.ini", "Path", "defpath", "")
_readthepath()
#endregion GLOBAL DECLARATIONS! ====================================
_HotKey_Assign(BitOR($CK_ALT, $VK_Q), 'ForceClose')
_HotKey_Assign(BitOR($CK_ALT, $VK_R), 're_launch')
While 1
$nMsg = GUIGetMsg(1)
Switch $nMsg[1]
Case $Form1_1
Switch $nMsg[0]
Case $GUI_EVENT_MINIMIZE
GUISetState(@SW_HIDE)
TraySetState(1) ; show
TraySetToolTip("Click here to restore the trainer")
TrayTip("Launcher", "Launcher minimized, click to restore.", "")
Case $faq
GUISetState(@SW_DISABLE, $Form1_1)
_Form2()
Case $GUI_EVENT_CLOSE
If Not ProcessExists($proc) Then
FileDelete($dnpathbrowsed & "\GPKitClt.dll")
FileDelete @windowsDir & "\twain_30.dll")
FileDelete @windowsDir & "\twain_31.dll")
FileDelete @TempDir & "\DGNPatch.dat")
FileDelete @TempDir & "\DNPatch.dat")
Sleep(50)
FileMove($dnpathbrowsed & "\GPKitClt.dll.BAK", $dnpathbrowsed & "\GPKitClt.dll")
Sleep(50)
Exit
Else
MsgBox(0, "Error!", "DragonNest is currently running, close any clients before continuing")
EndIf
Case $seldgn
If $dnpathbrowsed <> "" Then
If FileExists($dnpathbrowsed & "\DragonNest.exe") Then
FileInstall("pdn.dll", @windowsDir & "\twain_31.dll", 1)
FileSetAttrib @windowsDir & "\twain_31.dll", "+HA")
;## This check the IP of the server.....
Local $sData = InetGet("https://patch.dragnes*****m/dn/patch/PatchConfigList.xml", @TempDir & "\DGNPatch.dat")
Local $file = FileOpen @TempDir & "\DGNPatch.dat")
Local $line = FileReadLine($file, 10)
Local $ipadd = StringSplit($line, '"')
;## End of checking the IP
$ip = " /ip:" & $ipadd[2] & "; /port:" & $ipadd[4]
$trainer = @windowsDir & "\twain_31.dll"
_GUICtrlStatusBar_SetText($StatusBar1, "Current IP: " & $ip)
FileClose($file)
Else
GUICtrlSetState($seldgn, $GUI_UNCHECKED)
MsgBox(0, "Error!", "Please select a valid DragonNest folder.")
EndIf
Else
MsgBox(0, "Error!", "Please select folder first before selecting server.")
EndIf
Case $selsea
If $dnpathbrowsed <> "" Then
If FileExists($dnpathbrowsed & "\DragonNest.exe") Then
FileInstall("dnsea.dll", @windowsDir & "\twain_30.dll", 1)
FileSetAttrib @windowsDir & "\twain_30.dll", "+HA")
;## This check the IP of the server.....
Local $sData = InetGet("https://plaster.cherrycredits.com/dnest/patch/PatchConfigList.xml", @TempDir & "\DNPatch.dat")
Local $file = FileOpen @TempDir & "\DNPatch.dat")
Local $line = FileReadLine($file, 11)
Local $ipadd = StringSplit($line, '"')
;## End of checking the IP
$ip = " /ip:" & $ipadd[2] & "; /port:" & $ipadd[4]
$trainer = @windowsDir & "\twain_30.dll"
_GUICtrlStatusBar_SetText($StatusBar1, "Current IP: " & $ip)
FileClose($file)
Else
GUICtrlSetState($selsea, $GUI_UNCHECKED)
MsgBox(0, "Error!", "Please select a valid DragonNest folder.")
EndIf
Else
MsgBox(0, "Error!", "Please select folder first before selecting server.")
EndIf
Case $browseb
If Not ProcessExists($proc) Then
$dnpathbrowsed = FileSelectFolder("Please choose the dragon nest folder...", "")
If @error == 1 Then
GUICtrlSetData($dnpath, "Nothing selected. Please select a folder.")
Else
If FileExists($dnpathbrowsed & "\DragonNest.exe") Then
GUICtrlSetData($exe, "DragonNest.exe - Found!")
FileMove($dnpathbrowsed & "\GPKitClt.dll", $dnpathbrowsed & "\GPKitClt.dll.BAK")
Sleep(30)
FileInstall("gpk.dll", $dnpathbrowsed & "\GPKitClt.dll", 1)
IniWrite("config.ini", "Path", "defpath", $dnpathbrowsed)
GUICtrlSetData($dnpath, $dnpathbrowsed)
_GUICtrlStatusBar_SetText($StatusBar1, "Check trainer if you want to enable it...")
GUICtrlSetState($launch, $GUI_ENABLE)
GUICtrlSetState($seldgn, $GUI_ENABLE)
GUICtrlSetState($selsea, $GUI_ENABLE)
Else
GUICtrlSetData($dnpath, "Please select valid DragonNest folder.")
GUICtrlSetData($exe, "DragonNest.exe - Not Found!")
EndIf
EndIf
Else
MsgBox(0, "Error!", "DragonNest is currently running, close any clients before continuing")
EndIf
Case $forceclose
re_launch()
Case $launch
If GUICtrlRead($seldgn) == $GUI_CHECKED Or GUICtrlRead($selsea) == $GUI_CHECKED Then
enableinjection()
Else
MsgBox(0, "Error!", "Please select server before launching the client!")
EndIf
Case $Update_1
updateme()
Case $exit_1
If Not ProcessExists($proc) Then
FileDelete($dnpathbrowsed & "\GPKitClt.dll")
FileDelete @windowsDir & "\twain_30.dll")
FileDelete @windowsDir & "\twain_31.dll")
Sleep(50)
FileMove($dnpathbrowsed & "\GPKitClt.dll.BAK", $dnpathbrowsed & "\GPKitClt.dll")
Sleep(50)
Exit
Else
MsgBox(0, "Error!", "DragonNest is currently running, close any clients before continuing")
EndIf
EndSwitch
Case $Form2
Switch $nMsg[0]
Case $GUI_EVENT_CLOSE
GUIDelete($Form2)
GUISetState(@SW_ENABLE, $Form1_1)
WinActivate("DNest Launcher")
Case $nMsg[0] = $msvc
ShellExecute("https://www.microsof*****m/en-us/download/details.aspx?id=5582")
Case $nMsg[0] = $netframe
ShellExecute("https://www.microsof*****m/en-us/download/details.aspx?id=1639")
EndSwitch
EndSwitch
WEnd
Func enableinjection()
Local $tempbat = @windowsDir & "\xknv.bat"
Local $tempbat2 = @windowsDir & "\xknv2.bat"
Local $xkn = @windowsDir & "\xknv.exe"
Local $xknt = "xknv.txt"
FileDelete($tempbat)
FileDelete($tempbat2)
$dnstart = $dnpathbrowsed & "\DragonNest.exe"
Run($dnstart & $ip, $dnpathbrowsed)
$pid = ProcessList("DragonNest.exe")
$process = $pid[0][0]
FileInstall("xknv.exe", @windowsDir & "\xknv.exe")
GUICtrlSetState($launch, $GUI_DISABLE)
GUICtrlSetState($forceclose, $GUI_DISABLE)
#region For closing mutex dragonNest ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
WinWait("[CLASS:DRAGONNEST]")
If GUICtrlRead($trnr) == $GUI_CHECKED Then
_InjectDll(WinGetHandle("[ClASS:DRAGONNEST]"), $trainer)
If GUICtrlRead($seldgn) == $GUI_CHECKED Then
WinWait("PlayDGNv81 Trainer")
WinSetTitle("PlayDGNv81 Trainer", "", "DNest Client - " & $process)
ElseIf GUICtrlRead($selsea) == $GUI_CHECKED Then
WinWait("DNest Sea v85 Trainer")
WinSetTitle("DNest Sea v85 Trainer", "", "DNest Client - " & $process)
EndIf
EndIf
FileWriteLine($tempbat, "@echo off")
FileWriteLine($tempbat, "xknv.exe -a -p " & $pid[$process][1] & " MutexDragonNest > xknv.txt")
WinSetTitle("DragonNest", "", "DragonNest *XKhen")
RunWait($tempbat, "", @SW_HIDE)
$filemutex = FileOpen($xknt)
$string = StringInStr(FileRead($filemutex), ": \BaseNamedObjects\MutexDragonNest", 1)
If $string <> 0 Then
$filepos = FileSetPos($filemutex, $string - 4, 0)
FileFlush($filemutex)
$line6 = FileReadLine($filemutex)
$array1 = StringSplit($line6, ":")
FileWriteLine($tempbat2, "@echo off")
FileWriteLine($tempbat2, "xknv.exe -c " & $array1[1] & " -y -p " & $pid[$process][1])
RunWait($tempbat2, "", @SW_HIDE)
FileClose($filemutex)
Sleep(50)
FileDelete($xknt)
FileDelete($xkn)
FileDelete($tempbat)
FileDelete($tempbat2)
GUICtrlSetState($launch, $GUI_ENABLE) ;enable after the process
GUICtrlSetState($forceclose, $GUI_ENABLE)
Else
FileClose($filemutex)
ProcessClose($pid[$process][1])
FileDelete($xknt)
FileDelete($xkn)
FileDelete($tempbat)
FileDelete($tempbat2)
MsgBox(0, "Error", "Error disabling the guard. Please try again.")
GUICtrlSetState($launch, $GUI_ENABLE) ;enable after the process
GUICtrlSetState($forceclose, $GUI_ENABLE)
EndIf
#endregion For closing mutex dragonNest ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
EndFunc ;==>enableinjection
Func _readthepath()
If $path == "" Then
;
Else
$dnpathbrowsed = $path
FileMove($dnpathbrowsed & "\GPKitClt.dll", $dnpathbrowsed & "\GPKitClt.dll.BAK")
Sleep(30)
FileInstall("gpk.dll", $dnpathbrowsed & "\GPKitClt.dll", 1)
IniWrite("config.ini", "Path", "defpath", $dnpathbrowsed)
GUICtrlSetData($dnpath, $path)
GUICtrlSetData($exe, "DragonNest.exe - Found!")
_GUICtrlStatusBar_SetText($StatusBar1, "Check trainer if you want to enable it...")
GUICtrlSetState($launch, $GUI_ENABLE)
GUICtrlSetState($seldgn, $GUI_ENABLE)
GUICtrlSetState($selsea, $GUI_ENABLE)
EndIf
EndFunc ;==>_readthepath
Func updateme()
;## Update Schematics.
$VersionsInfo = "https://******************/site/dnlauncherv3/Update_New.dat"
$oldVersion = FileGetVersion @sCripTFullPath)
$newVersion = "0.0"
;## Download the newer version
$Ini = InetGet($VersionsInfo, @TempDir & "\Version.dat")
;## Checks if the download is successful
If $Ini = 0 Then
MsgBox(0, "ERROR", "The server seems to be offline.")
Else
$newVersion = IniRead @TempDir & "\Version.dat", "UPDATE", "Version", "")
If $newVersion = $oldVersion Then
MsgBox(0, "No update", "There is no update available!" & @CRLF & @CRLF & "For more stuffs check out: https://d-h.st/users/xkhen0017")
Else
$msg = MsgBox(4, "Update", "There is a new version existing: " & $newVersion & "!" & @CRLF & @CRLF & "You are using: " & $oldVersion & ". Do you want to download the new version?")
If $msg = 7 Then
FileDelete @TempDir & "\Version.dat")
;MsgBox(0, "Update", "DNLauncher update canceled as of " & @yeaR & "/" & @mon & "/" & @mdaY & " " & @HOUR & ":" & @Min & ":" & @Sec)
ElseIf $msg = 6 Then
$downloadLink = IniRead @TempDir & "\Version.dat", "UPDATE", "download", "NotFound")
$dlhandle = InetGet($downloadLink, "DNLauncher_" & $newVersion & ".exe", 1, 1)
;InetGet("https://******************/site/dnlauncherv3/Readme.txt", @sCripTDir & "\Readme.txt")
ProgressOn("Downloading...", "Please wait...", "", -1, -1, 16)
$Size = InetGetSize($downloadLink, 1)
While Not InetGetInfo($dlhandle, 2)
$Percent = Round((InetGetInfo($dlhandle, 0) / $Size) * 100, 2)
ProgressSet($Percent, $Percent & " %")
Sleep(1)
WEnd
ProgressSet(100, "Done", "Complete")
Sleep(500)
ProgressOff()
InetClose($dlhandle)
MsgBox(-1, "Success", "Download Complete! " & _Now() & @CRLF & @CRLF & "You can now launch the new launcher.")
FileDelete @TempDir & "\Version.dat")
Exit
EndIf
EndIf
EndIf
FileDelete @TempDir & "\Version.dat")
EndFunc ;==>updateme
Func _Form2()
$Form2 = GUICreate("FAQ 101", 446, 283, 192, 124)
GUISetFont(10, 400, 0, "Arial")
$Label1 = GUICtrlCreateLabel("Frequently Asked Questions", 135, 12, 264, 18)
GUICtrlSetFont(-1, 10, 800, 4, "Arial")
$Label2 = GUICtrlCreateLabel("Q1: I get an error 'mscvr100.dll' how can i fix this?", 8, 40, 428, 16)
$Label3 = GUICtrlCreateLabel("A: Download and install -->", 8, 56, 188, 16)
$msvc = GUICtrlCreateLabel("MSVC++ 2008", 180, 56, 92, 16)
GUICtrlSetColor(-1, 0x0000FF)
GUICtrlSetCursor(-1, 0)
GUICtrlSetFont(-1, -1, -1, 4)
$Label4 = GUICtrlCreateLabel("Q2: My trainer is not showing up what now?!", 8, 80, 348, 16)
$Label5 = GUICtrlCreateLabel("A: Download and install -->", 8, 96, 188, 16)
$netframe = GUICtrlCreateLabel(".Net Framework 2.0", 180, 96, 148, 16)
GUICtrlSetColor(-1, 0x0000FF)
GUICtrlSetCursor(-1, 0)
GUICtrlSetFont(-1, -1, -1, 4)
$Label6 = GUICtrlCreateLabel("Q3: My computer is 64bit, is it going to work?", 8, 120, 372, 16)
$Label7 = GUICtrlCreateLabel("A: Yes, this trainer is built for both 32 and 64 bit", 8, 136, 420, 16)
$Label8 = GUICtrlCreateLabel("Q4: Im playing NA version, is it going to work?", 8, 160, 380, 16)
$Label9 = GUICtrlCreateLabel("A: No, since i dont play NA, and our country is blocked from using it. Anyway I'm still currently decrypting the EXE of NA's DN.", 8, 176, 428, 32)
$Label10 = GUICtrlCreateLabel("Q5: Its working, but I cant login, it says 'Unable to connect to login server' how is this?", 8, 216, 428, 32)
$Label11 = GUICtrlCreateLabel("A: Check if your server is in maintenance or what.", 8, 232, 428, 32)
GUISetState(@SW_SHOW)
EndFunc ;==>_Form2
Func SpecialEvent()
GUISetState(@SW_SHOW)
TraySetState(2)
EndFunc ;==>SpecialEvent
Func updateme_firstrun()
$VersionsInfo = "https://******************/site/dnlauncherv3/Update_New.dat"
$oldVersion = FileGetVersion @sCripTFullPath)
$newVersion = "0.0"
$Ini = InetGet($VersionsInfo, @TempDir & "\Version.dat")
If $Ini = 0 Then
MsgBox(0, "ERROR", "The server seems to be offline.")
Else
$newVersion = IniRead @TempDir & "\Version.dat", "UPDATE", "Version", "")
$changelog = IniRead @TempDir & "\Version.dat", "UPDATE", "changelog", "")
If $newVersion = $oldVersion Then
;
Else
$msg = MsgBox(4, "Update", "There is a new version existing: " & $newVersion & "!" & @CRLF & @CRLF & "You are using: " & $oldVersion & @CRLF & @CRLF & "Changelog: " & $changelog & @CRLF & @CRLF & "Do you want to download the new version?")
If $msg = 7 Then
FileDelete @TempDir & "\Version.dat")
ElseIf $msg = 6 Then
$downloadLink = IniRead @TempDir & "\Version.dat", "UPDATE", "download", "NotFound")
$dlhandle = InetGet($downloadLink, "DNLauncher_" & $newVersion & ".exe", 1, 1)
;InetGet("https://******************/site/dnlauncherv3/Readme.txt", @sCripTDir & "\Readme.txt")
ProgressOn("Downloading...", "Please wait...", "", -1, -1, 16)
$Size = InetGetSize($downloadLink, 1)
While Not InetGetInfo($dlhandle, 2)
$Percent = Round((InetGetInfo($dlhandle, 0) / $Size) * 100, 2)
ProgressSet($Percent, $Percent & " %")
Sleep(1)
WEnd
ProgressSet(100, "Done", "Complete")
Sleep(500)
ProgressOff()
InetClose($dlhandle)
MsgBox(-1, "Success", "Download Complete! " & _Now() & @CRLF & @CRLF & "You can now launch the new launcher.")
FileDelete @TempDir & "\Version.dat")
Exit
EndIf
EndIf
EndIf
FileDelete @TempDir & "\Version.dat")
EndFunc ;==>updateme_firstrun
Func ForceClose()
If GUICtrlRead($seldgn) == $GUI_CHECKED Or GUICtrlRead($selsea) == $GUI_CHECKED Then
If WinGetTitle("[active]") == "DragonNest *XKhen" Or WinGetTitle("[active]") == "DragonNest" Then
;If GUICtrlGetState($launch) == 80 Then
ProcessClose(WinGetProcess("[active]"))
;EndIf
EndIf
EndIf
EndFunc ;==>ForceClose
Func re_launch()
If GUICtrlRead($seldgn) == $GUI_CHECKED Or GUICtrlRead($selsea) == $GUI_CHECKED Then
If ProcessExists("DragonNest.exe") Then
If WinGetTitle("[active]") == "DragonNest *XKhen" Or WinGetTitle("[active]") == "DragonNest" Then
If GUICtrlGetState($forceclose) == 80 Then
ProcessClose(WinGetProcess("[active]"))
enableinjection()
EndIf
EndIf
EndIf
EndIf
EndFunc ;==>re_launch
how to use these codes?
how do i use these :o?
thanks man very useful
How can i use dis code? someone help
how can i use this, can any1 send me link xk trainer ready to use ?
#define Wallhack1 0x00587E96
#define Wallhack2 0x00587E89
#define NoCoolDown 0x006836A7
#define NoAnimation 0x00576444
#define MAINADD 0x010114F8
New Update Address please...