DGuard - Custom Game Guard
This is a game guard made by me. It is very basic and really easy to bypass if you know what your doing but it will more then likely keep those script kiddies at bay and helps if you want a little assurance.
You don't have to use it if you don't want to but its here if you want it.
How to use it.
1. Extract the zip to your Rose Online directory.
2. Edit the DGuard.ini and put in your ip (or the ip for the server)
3. Edit your launcher to Shell("DGuard.exe") instead of Shell("TRose.exe @TRIGGER_SOFT@ _server IP") or Use easy.exe.
4. (Optional)[this is if you edited your launcher to shell the gameguard] Delete easy.exe.
(for neon cube revamp users)
In main.cpp
[code=text]go to line 2489
Change
strcpy(settings.szRagExeCall, "TRose.exe @TRIGGER_SOFT@ _server 127.0.0.1");
to
strcpy(settings.szRagExeCall, "DGuard.exe");[/code]
(^ The above has not been tested but in theory it should work)
If you find this confusing just post your questions and ill try to answer them in the order they are posted. If you find an error post the error (most of the possible errors are codded with a special number, post the error code) and if possible post a screen shot.
I will update the program when its needed.
Enjoy.
Download:
v2.2
http://default.site40.net/release/DGuard3.zip
v2
http://default.site40.net/release/DGuard2.zip
v1
http://default.site40.net/release/DGuard.zip
(If you would like another mirror just post requesting it)
Note:
This is not meant for arcturus
v2 - Customizable splash screen
v2.2 - Bug fixes
- Closes when rose closes
Re: DGuard - Custom Game Guard
You really got time to much ;P
Hitting the Thanks button xd
Re: DGuard - Custom Game Guard
Re: DGuard - Custom Game Guard
updated, made the splash screen customizable through the .ini file.
Re: DGuard - Custom Game Guard
Re: DGuard - Custom Game Guard
Re: DGuard - Custom Game Guard
@TS can i use this to other game or private server for protection? thnx
Re: DGuard - Custom Game Guard
Um you would need to edit the source because the game guard is set to run rose etc if you need it for another game i can make a version of it just pm the what game.
-Edit, decided to release my source due to a ton of people asking me to hard code there servers ip etc so here ya'll go, do it yourself xD
You need nini.dll if your going to still use the ini and this was made in vb.net with .net framework 3.5
Form1.vb
Code:
Imports System.IO
Imports Nini.Config
Imports System.Data
Imports System
Public Class Form1
Public Sub GetProcesses()
ListBox1.Items.Clear()
Dim p As Process
For Each p In Process.GetProcesses
ListBox1.Items.Add(p.ProcessName)
Next
End Sub
Public Sub KillProcess()
Try
Dim r = "TRose"
Dim h = "WPE PRO"
Dim c = "Cheat Engine"
Dim t = "TSearch"
Dim o = "OLLYDBG"
Dim a = "artmoney733"
Dim g = "gw32"
Dim q = "MemEditor"
Dim m = "DGuard"
Dim p As Process
For Each p In Process.GetProcesses
If p.ProcessName = ListBox1.SelectedItem Then
p.Kill()
KillProcess()
End If
Next
If ListBox1.SelectedItem = h Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
End If
Else
If ListBox1.SelectedItem = c Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
End If
Else
If ListBox1.SelectedItem = t Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
End If
Else
If ListBox1.SelectedItem = o Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
End If
Else
If ListBox1.SelectedItem = a Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
End If
Else
If ListBox1.SelectedItem = g Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
End If
Else
If ListBox1.SelectedItem = q Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
Else
If ListBox1.SelectedItem = r Then
If ListBox1.SelectedItem = r Then
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
KillRose()
Else
Me.Close()
End If
KillProcess()
Me.Close()
End If
Else
GetProcesses()
End If
End If
End If
End If
End If
End If
End If
End If
End If
GetProcesses()
Catch ex As Exception
MsgBox("Hack Tool Terminated.")
Me.Close()
End Try
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
GetProcesses()
Timer1.Start()
Timer1.Interval = "1000"
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Try
Dim r = "TRose"
Dim h = "WPE PRO"
Dim c = "Cheat Engine"
Dim t = "TSearch"
Dim o = "OLLYDBG"
Dim a = "artmoney733"
Dim g = "gw32"
Dim q = "MemEditor"
Dim m = "DGuard"
ListBox1.SelectedItem = h
If ListBox1.SelectedItem = h Then
KillProcess()
Else
ListBox1.SelectedItem = c
If ListBox1.SelectedItem = c Then
KillProcess()
Else
ListBox1.SelectedItem = t
If ListBox1.SelectedItem = t Then
KillProcess()
Else
ListBox1.SelectedItem = o
If ListBox1.SelectedItem = o Then
KillProcess()
Else
ListBox1.SelectedItem = a
If ListBox1.SelectedItem = a Then
KillProcess()
Else
ListBox1.SelectedItem = g
If ListBox1.SelectedItem = g Then
KillProcess()
Else
ListBox1.SelectedItem = q
If ListBox1.SelectedItem = q Then
KillProcess()
Else
ListBox1.SelectedItem = r
If ListBox1.SelectedItem = r Then
GetProcesses()
Else
Form2.Close()
Me.Close()
End If
GetProcesses()
End If
End If
End If
End If
End If
End If
End If
GetProcesses()
Catch ex As Exception
MsgBox("Hack Tool Terminated")
End Try
End Sub
Private Sub NotifyIcon1_MouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.MouseDoubleClick
End Sub
Private Sub NotifyIcon1_MouseHover(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.MouseUp
NotifyIcon1.Text = "DGuard - Enabled"
End Sub
Public Sub KillRose()
Try
Dim r = "TRose"
Dim k As Process
For Each k In Process.GetProcesses
ListBox1.SelectedItem = r
If k.ProcessName = ListBox1.SelectedItem Then
k.Kill()
MsgBox("Hacking program detected - R.O.S.E has been closed.")
ListBox1.SelectedItem = r
KillRose()
End If
Next
GetProcesses()
Form2.Close()
Me.Close()
Catch ex As Exception
MsgBox("Erorr please report it to the admin - ERRCODE - 1001982JDG0x7")
End Try
End Sub
End Class
Form2.vb (splash)
Code:
Imports Nini.Config
Imports System.IO
Public Class Form2
Public Sub GetProcesses()
ListBox1.Items.Clear()
Dim p As Process
For Each p In Process.GetProcesses
ListBox1.Items.Add(p.ProcessName)
Next
End Sub
Public Sub KillProcess()
Try
Dim m = "DGuard"
Dim p As Process
For Each p In Process.GetProcesses
If p.ProcessName = ListBox1.SelectedItem Then
p.Kill()
Me.Close()
End If
Next
If ListBox1.SelectedItem = m Then
ListBox1.SelectedItem = m
If ListBox1.SelectedItem = m Then
KillProcess()
Me.Close()
End If
Else
GetProcesses()
End If
GetProcesses()
Catch ex As Exception
MsgBox("Erorr please report it to the admin - ERRCODE - 1001982JDG0x3")
End Try
End Sub
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim source As New IniConfigSource
' Load the configuration source file
source = New IniConfigSource("DGuard.ini")
' Set the config to the Logging section of the INI file.
Dim config As IConfig
config = source.Configs("Server")
' Load up some normal configuration values
Dim IP As String = source.Configs("Server").Get("IP")
Dim Splash As String = source.Configs("App").Get("Splash")
'Start the game
Dim trose As String = "TRose.exe @TRIGGER_SOFT@ _server "
Shell(trose & IP)
Dim client As New System.Net.WebClient()
Dim stream As New System.IO.MemoryStream()
Dim data As Byte() = client.DownloadData(Splash)
client.Dispose()
stream.Write(Data, 0, Data.Length)
PictureBox1.Image = Image.FromStream(stream)
Timer1.Start()
Timer1.Interval = "1000"
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Me.Hide()
Form1.Show()
Timer1.Stop()
End Sub
End Class
I know it is very basic and very messy but hey, it works :P
Essentially its a programmatic task killer that searches for malicious programs and terminates them and rose if they are caught running.
Re: DGuard - Custom Game Guard
thanks but unfortunately
i know nothing about coding
i hope someone will explain what to do
thanks again
Re: DGuard - Custom Game Guard
hey Viper sorry for posting/reply long i got busy this day. hehe BTW just like mine it coded in vb6 i use API but my problem is when the player rename the exe like autopots.exe it only terminate it if he scan autopots.exe in taskmanager but when user rename the hack it will no longer terminate cuz what my guard only terminate is what program is coded inside my guard.exe so is your program is like mine also? BTW thank for ur reply and posting ur work source here. I use mine in ranonline.
Re: DGuard - Custom Game Guard
redfox02 yes if it gets renamed it doesn't kill it, i do plan however to make a future release with a better guard that hooks the trose dll so if the packets are being tampered with it will disconnect etc, i am working on a project called Vaffel, its an open source rose server coded in perl based off osrose packet structure, with it though we can hard code a game guard into the source. However right now we have so many filters and checks in Vaffel that it makes it virtually impossible to edit packets.