
tmo
Active Members-
Posts
27 -
Joined
-
Last visited
Everything posted by tmo
-
Watch here: http://www.autoitscript.com/forum/index.ph...=0&p=494789 All u need is attached.
-
if you want to solve equations numerally, why dont you use newton iteration or the fixed point iteration?
-
thx to nomad for the memory UDF. this script allows you to change your name in warcraft III customgames by editing the process memory. If Not ProcessExists('war3.exe') Then MsgBox(48,"Error", "Warcraft 3 Process not found! Please start Warcraft III first.") Exit EndIf ; includes / options #include <nMemory2.au3> #include <GUIConstants.au3> #include <Constants.au3> Opt("GUIOnEventMode", 1) Opt("TrayOnEventMode", 1) ;memory stuff Global $type1 = 'char[4]' Global $type2 = 'char[20]' $PID = ProcessExists('war3.exe') SetPrivilege("SeDebugPrivilege", 1) Global $hMem = _MemoryOpen($PID) Global $offset = _getOffset($hMem) ;other variables Global $sOriginalName = _getName($hMem) ;create GUI and GUICtrl's $GUI = GUICreate("Warcraft III TFT Namespoofer", 300,200) $info1 = GUICtrlCreateLabel("Original Name:", 5, 10, 100, 20) $info2 = GUICtrlCreateLabel("Current Name:", 5, 35, 100, 20) $originalName = GUICtrlCreateInput($sOriginalName, 100, 10, 100, 20, $ES_READONLY) $currentName = GUICtrlCreateInput($sOriginalName, 100, 35, 100, 20, $ES_READONLY) $changeName = GUICtrlCreateInput("", 100, 60, 100, 20) $change = GUICtrlCreateButton("Change Name!", 110, 85, 80, 20) $reset = GUICtrlCreateButton("Reset Name!", 210, 10, 80, 20) $credits = GUICtrlCreateButton("Credits!", 120, 150, 60, 20) ; set events GUISetOnEvent($GUI_EVENT_CLOSE, "_exit") GUICtrlSetOnEvent($credits, "_credits") GUICtrlSetOnEvent($change, "_changeName") GUICtrlSetOnEvent($reset, "_resetName") ;show GUI/Tray GUISetState() While 1 Sleep(10) WEnd ;functions Func _changeName() _setName(GUICtrlRead($changeName)) EndFunc Func _resetName() _setName($sOriginalName) EndFunc Func _setName($sName) _MemoryWrite($offset, $hMem, $sName, $type2) GUICtrlSetData($currentName, $sName) EndFunc Func _getName($hMemory) Return _MemoryRead($offset,$hMemory, $type2) EndFunc Func _getOffset($hMemory) Local $i = 0 While $i <= 16^4 AND _MemoryRead('0x' & hex($i,4) & '02D4',$hMemory,$type1) <> "PX3W" $i += 1 WEnd Return '0x' & hex($i,4) & '02B4' EndFunc ;Exit Func _exit() SetPrivilege("SeDebugPrivilege", 0) If _MemoryClose($hMem) = 1 Then Exit Else MsgBox(48, "Error", "An error occured while trying to close the Memory") EndIf EndFunc ;credits Func _credits() $msgreturn = MsgBox(68, "Credits", "Written by: blub, tmo & sin" & @CRLF & "Questions/Feedback at http://www.lame.de.tc" & @CRLF & "Do you wanna visit us?", 10) If $msgreturn = 6 OR $msgreturn = -1 Then _visit("http://chiller123.ch.funpic.de/forum/index.php") EndIf EndFunc ;visit URL Func _visit($url) RunWait("rundll32.exe url.dll,FileProtocolHandler " & $url, @WorkingDir) EndFunc nMemory2.au3
-
what about this one: Func _primeFactor($iNum) Local $aRet[Ceiling(log($iNum)/log(2))] Local $a = 0 Local $i = 2 If $iNum = 1 Then $aRet[0] = 1 Return $aRet EndIf While $iNum > 1 If Mod($iNum,$i) = 0 Then $aRet[$a] = $i $a += 1 $iNum /= $i Else $i += 1 EndIf WEnd Return $aRet EndFunc looks more smartly, huh?
-
if the result is a rational number, you just somehow know it due to experience. if the result is a irrational number, you can use an iterational method like Newton: f(x) = x^2 - a = 0 <-- the solution is a^0.5 f'(x) = 2x now u can use the following iteration:
-
i have written an autoitscript, which performs the gauß algorithm on a n x n matrix. i was supposed to write it with excel, but in order to get the algorithm in my head, i first wrote it with autoit: here is the code: gaus_advanced.au3 feel free to use, comment on or improve it
-
actually the integral for f(x) = x between 0 and 1 is 0.5
-
just use the definition of an integral. like he did
-
How great is the interest in some extra Math UDF's?
tmo replied to JSThePatriot's topic in AutoIt Example Scripts
@DTV: try ConsoleWrite(2^10)oÝ÷ Ù©ÝʰY[zË«¦¸¬yÛkÉ«¢+Ù ½¹Í½±]É¥Ñ ÉxÀ¸Ô¤oÝ÷ Ù©ÝʰY[yëÞj+zË«¦¸¬yئi×+(æ®¶s`¤gVæ2ôæWwFöäFW&Föâb33c¶bÂb33c¶FbÂb33c·7F'BÂb33c¶67W&7 b33c·Òb33c·7F'@ Fð b33c·Òb33c·ÒWV7WFR7G&æu&WÆ6Rb33c¶bÂgV÷C·gV÷C²ÂgV÷C²b33c·gV÷C²òWV7WFR7G&æu&WÆ6Rb33c¶FbÂgV÷C·gV÷C²ÂgV÷C²b33c·gV÷C² VçFÂ&÷VæBWV7WFR7G&æu&WÆ6Rb33c¶bÂgV÷C·gV÷C²ÂgV÷C²b33c·gV÷C²Âb33c¶67W&7Ò &WGW&âb33c·¤VæDgVæ0 ¤6öç6öÆUw&FRôæWwFöäFW&FöâgV÷C·ã2³"§ÓgV÷C²ÂgV÷C³2§ã"³"gV÷C²Â -
Anyone good at coding or physics? Here's a start...
tmo replied to magician13134's topic in AutoIt Example Scripts
for programs like this i'd wish Object-Oriented Programming for AutoIt. too bad that dream will never come true. -
well actually (x*cos(pi) - x)/sin(x) is nothing other than -2*x/sin(x) as cos(pi) equals -1 and -x-x = -2*x
-
Func _Lowest($aiNumbers) Local $iMin = $aiNumbers[0] For $i = 1To Ubound($aiNumbers)-1 If $aiNumbers[$i] < $iMin Then $iMin = $aiNumbers[$i] Next Return $iMin EndFunc same works for the highest, just use > instead of < the numbers of which you want to determinate the lowest have to be given in an array.
-
i have created a topic for this some time before, but somehow my acc has been deleted or i have forgotten it so i created a new one and cant edit my old topic anymore. so i create a new one i improved this plotting tool alot i think, you can scroll now with arrow-keys (unfortunately now its a lil bit slower), set an parameter q which will let u draw sth like q*x with q from -5 to 5 step 1 for example. you can draw Function compositions(is it the right word in english), too. you can use e and pi as well. get the sourcecode here: plotternew.au3 but dont be so strict with the scroll-feature, some bugs may occur as the script has to move 200 labels when u scroll only once. make you own mind about what happens when someone presses the arrowkeys continuously ah and btw: dont ask me about the math thingie i used. after some time i dont understand it myself what i have done there
-
Simple script request from a noob
tmo replied to VizjerianExile's topic in AutoIt General Help and Support
dont keep it to simple -
Simple script request from a noob
tmo replied to VizjerianExile's topic in AutoIt General Help and Support
i belive you are not as boolean support (true and false) were added only a few versions ago (actually 3.2.0) -
While True Send("s") WEnd and btw: dont mix up the autoitmacros with an autoitscript plz. read the helpfile for more information.
-
Simple script request from a noob
tmo replied to VizjerianExile's topic in AutoIt General Help and Support
this should do the work: While True $timestamp = TimerInit() $time = random(60, 120, 1) * 1000 While TimerDiff($timestamp) < $time sleep(1000) WEnd MouseClick("right") WEnd -
{=} is just wrong. thats all.
-
you should take a look at this: http://www.autoitscript.com/forum/index.ph...2473&hl=FTP
-
how to set up time to execute function?
tmo replied to Dag's topic in AutoIt General Help and Support
now think about my first method once again. what about having global variable $i which increases each time the adlib-function is called. then you can use the Mod($i, x) method again. -
OP is the one who created the topic, i.e. you
-
how to set up time to execute function?
tmo replied to Dag's topic in AutoIt General Help and Support
so you should decide to use AdLibEnable() -
use random(1,3) and look for Switch...Case...EndSwitch in the autoit helpfile
-
how to set up time to execute function?
tmo replied to Dag's topic in AutoIt General Help and Support
if u somehow know how long the script needs to pass the loop once you can do it like this: lets assume the script needs 1 second to pass the loop $i = 0 While true If Mod($i, 60) = 0 Then ;this part is done every minute EndIf If Mod($i, 60*60*2) = 0 Then ;this part is done every 2 hours EndIf $i += 1 ;....your other code.... WEnd be sure to inform yourself about AdLibEnable(), too.