Jump to content

Writing to an .ini


bvr
 Share

Recommended Posts

In the program I am attempting...a Diablo II program that anti-Idles your character in a game for two hours...I'm trying to figure out how I can write to the .ini file after a certain function is completed.An example would be.. I have 8 Characters.

CharOne
CharTwo
CharThree
CharFour
CharFive
CharSix
CharSeven
CharEight

The program anti-idles only the ones that have a value of one.

CharOne=1
CharTwo=0
CharThree=1
CharFour=1

So when CharOne is finished anti-idling for two hours, I want it to set its value in the .ini back to 0 so that it won't choose that character again. This was a really mixed up project, and I'm just now starting to get everything in order. It seems like this method would work if its possible.

Link to comment
Share on other sites

In the program I am attempting...a Diablo II program that anti-Idles your character in a game for two hours...I'm trying to figure out how I can write to the .ini file after a certain function is completed.An example would be.. I have 8 Characters.

CharOne
 CharTwo
 CharThree
 CharFour
 CharFive
 CharSix
 CharSeven
 CharEight

The program anti-idles only the ones that have a value of one.

CharOne=1
 CharTwo=0
 CharThree=1
 CharFour=1

So when CharOne is finished anti-idling for two hours, I want it to set its value in the .ini back to 0 so that it won't choose that character again. This was a really mixed up project, and I'm just now starting to get everything in order. It seems like this method would work if its possible.

Can you post your script?
Link to comment
Share on other sites

here is the code:

;Date: April 3, 2007
;Programer: Brandon M. Royer
;Software: Diablo II Mule Bot
;Sofware Name: Mule Buddy

;LICENSE:: This is freeware. You are free to distribute, modify, and do pretty much what
;you want with it. If I didn't allow you, you would just do it anyways :)

;---General Declares----
$D2Path = IniRead("Settings.ini", "General", "D2Path", "")
$D2Exe = IniRead("Settings.ini", "General", "D2Exe", "")
$D2Parameters = IniRead("Settings.ini", "General", "D2Parameters", "")
$Difficulty = IniRead("Settings.ini", "General", "Difficulty", "")
$Account = IniRead("Settings.ini", "General", "Account", "")
$Password = IniRead("Settings.ini", "General", "Password", "")
$CharOne = IniRead("Settings.ini", "General", "CharOne", "")
$CharTwo = IniRead("Settings.ini", "General", "CharTwo", "")
$CharThree = IniRead("Settings.ini", "General", "CharThree", "")
$CharFour = IniRead("Settings.ini", "General", "CharFour", "")
$CharFive = IniRead("Settings.ini", "General", "CharFive", "")
$CharSix = IniRead("Settings.ini", "General", "CharSix", "")
$CharSeven = IniRead("Settings.ini", "General", "CharSeven", "")
$CharEight = IniRead("Settings.ini", "General", "CharEight", "")

;----Delays----
$D2LoadWait = IniRead("Settings.ini", "Delays", "D2Start", "8000")
$D2ActivateWin = IniRead("Settings.ini", "Delays", "D2ActivateWin", "5000")
$D2Login = IniRead("Settings.ini", "Delays", "D2Login", "5000")
$D2CharSelect = IniRead("Settings.ini", "Delays", "D2CharSelect", "5000")
$D2MouseClick = IniRead("Settings.ini", "Delays", "D2MouseClick", "400")
$D2MoveWindow = IniRead("Settings.ini", "Delays", "D2MoveWindow", "1000")
$D2CreateGame = IniRead("Settings.ini", "Delays", "D2CreateGame", "7500")
$D2ExitGame = IniRead("Settings.ini", "Delays", "D2ExitGame", "4000")


D2Start()
D2Activate()
D2Login()
SelectChar()
D2GameMaker()
CharOne()
CharTwo()
CharThree()
CharFour()
CharFive()
CharSix()
CharSeven()
CharEight()
D2Exit()
D2Quit()



;----This Loads Diablo II----
Func D2Start()
    Run($D2Path & '\' & $D2Exe & ' ' & $D2Parameters, $D2Path)
    WinWait('Diablo II')
    WinActivate('Diablo II')
    Sleep(5000)
    WinMove('Diablo II', '', 0, 0)
    Sleep($D2LoadWait)
EndFunc ;==>D2Start

;----Activate the Diablo II Window----
Func D2Activate()
    WinActivate("Diablo II")
    WinMove("Diablo II", "", 0, 0)
EndFunc ;==>D2Activate

;----This Logs into Your account----
Func D2Login()
    Send("{TAB}")
    Sleep(500)
    Send($Account)
    Sleep(500)
    Send("{TAB}")
    Sleep(500)
    Send($Password)
    Sleep(500)
    Send("{ENTER}")
    Sleep($D2Login)
EndFunc ;==>D2Login

;----Selects your Diablo II Character for Muling----
Func SelectChar()
     If $CharOne = 1 Then
        Send("{ENTER}")
        Sleep(1500)
       $charOne = 0
     Else
         If $CharTwo = 1 Then
         Send("Right")
         Sleep(500)
         Send("{ENTER}")
         Sleep(1500)
         $CharTwo = 0
       Else
          If $CharThree = 1 Then
            Send("Down")
            Sleep(500)
            Send("{ENTER}")
            Sleep(1500)
            $CharThree = 0
          Else
             If $CharFour = 1 Then
               Send("Down")
               Sleep(500)
               Send("Right")
               Sleep(500)
               Send("{ENTER}")
               Sleep(1500)
               $CharFour = 0
             Else
                If $CharFive = 1 Then
                  Send("Down")
                  Sleep(500)
                  Send("Down")
                  Sleep(500)
                  Send("{ENTER}")
                  Sleep(1500)
                  $CharFive = 0
                Else
                   If $CharSix = 1 Then
                     Send("Down")
                     Sleep(500)
                     Send("Down")
                     Sleep(500)
                     Send("Right")
                     Sleep(500)
                     Send("{ENTER}")
                     Sleep(1500)
                     $CharSix = 0
                   Else
                      If $CharSeven = 1 Then
                        Send("Down")
                        Sleep(500)
                        Send("Down")
                        Sleep(500)
                           Send("Down")
                        Sleep(500)
                        Send("{ENTER}")
                           Sleep(1500)
                        $CharSeven = 0
                      Else
                         If $CharEight = 1 Then
                           Send("Down")
                           Sleep(500)
                           Send("Down")
                              Sleep(500)
                              Send("Down")
                              Sleep(500)
                              Send("Right")
                              Sleep(500)
                              Send("{ENTER}")
                              Sleep(1500)
                           $CharEight = 0
                            Else
                              D2Quit()
                         EndIf
                      EndIf
                   EndIf
                EndIf
              EndIf
          EndIf
       EndIf
    EndIf
EndFunc

;----Selects the Difficutly You Wish To Mule On----
Func Difficulty()
    Select
        Case $Difficulty = 1
            MouseMove(441, 403)
            Sleep(250)
            MouseClick("left")
            Sleep(250)
            
        Case $Difficulty = 2
            MouseMove(566, 404)
            Sleep(250)
            MouseClick("left")
            Sleep(250)
            
        Case $Difficulty = 3
            MouseMove(709, 404)
            Sleep(250)
            MouseClick("left")
            Sleep(250)
    EndSelect
EndFunc ;==>Difficulty

;----Creates the Diablo Game----
Func D2GameMaker()
    MouseClick("left", 593, 490)
    Sleep(1000)
    $name = Random(1000, 999999)
    Send($name)
    Sleep(1000)
    Send("{TAB}")
    Sleep(250)
    $name = Random(1000, 999999)
    Send($name)
    Sleep(1000)
    Difficulty()
    Sleep(250)
    Send("{ENTER}")
    Sleep($D2CreateGame)
EndFunc ;==>D2GameMaker

Opt("MouseCoordMode", 0)

;Anti-Idle's Your Character for Two Hours----
For $i = 245 to 1 Step -1
Next
Func AntiIdle()
    Sleep(1000)
    Send("Mule Buddy 1.0, Visit Royersoft.com for Support")
    Sleep(5000)
    MouseMove("423, 445")
    Sleep(500)
    MouseClick("left")
    Sleep(10000)
    MouseMove("587, 327")
    Sleep(500)
    MouseClick("Left")
    Sleep(10000)
    MouseMove("240, 115")
    Sleep(500)
    MouseClick("left")
    Sleep(10000)
    Send("This is boring, please level me up!")
    Sleep(10000)
    MouseMove("411, 517")
    Sleep(500)
    MouseClick("left")
    Sleep(10000)
    MouseMove("569, 332")
    Sleep(10000)
    MouseMove("237, 96")
    Sleep(500)
    MouseClick("left")
    Sleep(10000)
    Send("You suck, just level me up man!")
    Sleep(10000)
D2Exit()
EndFunc

;----Exits a Diablo II Game----
Func D2Exit()
Send("{ESC}")
Sleep(200)
Send("{UP}")
Sleep(200)
Send("{ENTER}")
Sleep(2000)
Send("{ESC}")
TryNewChar()
EndFunc

;Character Functions--Still unsure on the purpose----
Func CharOne()
    Send("{ENTER}")
    Sleep(1500)
    D2GameMaker()
    AntiIdle()
EndFunc

Func CharTwo()
    Send("Right")
    Sleep(1500)
    Send("{ENTER"})
    Sleep(1500)
    D2GameMaker()
    AntiIdle()
EndFunc

Func CharThree()
    Send("Down")
    Sleep(1500)
    Send("{ENTER}")
    Sleep(1500)
    D2GameMaker()
    AntiIdle()
EndFunc

Func CharFour()
    Send("Down")
    Sleep(1500)
    Send("right")
    Sleep(1500)
    Send("{ENTER}")
    Sleep(1500)
    D2GameMaker()
    AntiIdle()
EndFunc

Func CharFive()
    Send("Down")
    Sleep(1500)
    Send("Down")
    Sleep(1500)
    Send({ENTER}")
    Sleep(1500)
    D2GameMaker()
    AntiIdle()
EndFunc

Func CharSix()
    Send("Down")
    Sleep(1500)
    Send("Down")
    Sleep(1500)
    Send("Right")
    Sleep(1500)
    Send("{ENTER}")
    Sleep(1500)
    D2GameMaker()
    AntiIdle()
EndFunc

Fun CharSeven()
Send("Down")
Sleep(1500)
Send("Down")
Sleep(1500)
Send("Down")
Sleep(1500)
Send("{ENTER}")
Sleep(1500)
D2GameMaker()
AntiIdle()
EndFunc

Func CharEight()
    Send("Down")
    Sleep(1500)
    Send("Down")
    Sleep(1500)
    Send("Down")
    Sleep(1500)
    Send("Right")
    Sleep(1500)
    Send("{ENTER}")
    Sleep(1500)
    D2GameMaker()
    AntiIdle()
EndFunc

    
    

;---Kills Diablo II Window----
Func D2Quit()
    Send("{ESC}")
    Sleep(500)
    Send("{ESC}")
    EndFunc

Here is the .ini:

;-------------------------------------------------------------------------------------------
;Date: April 3, 2007
;Author: Brandon M. Royer
;Sofware Name: D2MB
;Official site: http://www.Royersoft.com
;-------------------------------------------------------------------------------------------
;-------------------------------------------------------------------------------------------
;LICENSE:: This is freeware. You are free to distribute, modify, and do pretty much what 
;you want with it. If I didn't allow you, you would just do it anyways :)
;-------------------------------------------------------------------------------------------
;-------------------------------------------------------------------------------------------
; Please Note: I am not responisble if this bot gets you banned. Autoit bots are known to be
; non-detectable, but hasn't been proven. Use at your own risk.
;-------------------------------------------------------------------------------------------
; What Does This Bot Do?:
; This bot will anti-idle any of your Diablo II characters for two hours so they will not
; expire. You have to choose which ones you want to run. Thats about it till 2.0! 
;-------------------------------------------------------------------------------------------

[General]
D2Path=C:/Program Files/Diablo II
D2EXE=Diablo II.exe
D2Parameters=-w -ns -txt -skiptobnet -title "Diablo II"
Difficulty=1
Account=bvmules
Password=xxxxx

;--1=(yes)--2=(no)--
CharacterOne=2
CharacterTwo=1
CharacterThree=1
CharacterFour=1
CharacterFive=1
CharacterSix=1
CharacterSeven=1
CharacterEight=1

[Delays]
D2LoadWait=5000
D2Login=5000
D2CharSelect=8000
D2MouseSpeed=400
D2MoveWindow=1000
D2CreateGame=9500
D2ExitGame=4000
Edited by bmroyer
Link to comment
Share on other sites

Just to warn those of you that don't play Diablo 2, the following sentences may be confusing...

Not to sidestep the issue... but I am assuming the 2 hours thing is to make sure your character doesn't get deleted. You don't actually have to do anything; just pick the character and stay in the Chat channel for 2 hours. If you are *really* worried, make a simple spammer that sends a random phrase every couple minutes.

I would have told you I have Alzheimer's, but I forgot.My Splendid-Tastic Blog

Link to comment
Share on other sites

I would still have the problem with writing to the .ini file. I can't just keep using the same char. Using all 8 chars is cool, but its takes a heck of alot of time to perm 8 characters. I don't always need 8 chars permed, so thats why I'm making this. So I can choose which ones I want permed.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...