UEZ

[GAME] AUTOITEROIDS v1.019 Build 2016-01-14 Final

55 posts in this topic

#1 ·  Posted (edited)

Here my 1st game ever.

 

A try to remake of the arcade classical 2D game Asteroids® by Atari (1979). :D

 

More information about Asteroids® here or here!

 

Play online here :idea:

 

 

Please don't link to file below directly from other websites!

 

Downloads (2263 previously):  AUTOITEROIDS v1.019 Build 2016-01-14.7z (use e.g. 7-Zip to extract archive)

 

Only compiled version incl. needed files here: <4shared.com> or <MediaFire.com>

 

 

post-29844-1242504010_thumb.png

 

 

 

LEGAL NOTICE:

 

This game is an unoffical clone of the original Asteroids®

game and is not endorsed by the registered trademark

and copyright owners Atari Interactive, Inc.

 

 

 

Short description:

 

AUTOITEROIDS is a remake of the video arcade game released in 1979 by Atari, Inc.

It was one of the most popular and influential games of the Golden Age of Arcade Games.

The player controls a spaceship in an asteroid field which is periodically traversed by flying saucers.

The object of the game is to shoot and destroy asteroids and saucers while not colliding with either,

or being hit by the saucers' counter-fire.

 

 

Keys:

 

ctrl - shoot,

up - thrust,

left - turn left,

right - turn right,

space - hyper jump

 

 

Game details:

 

game is starting with 3 asteroids

every 10.000 points increase of level (among other things amount of asteroids + 1)

every 30.000 points extra live

biggest asteroid = 20 points

medium asteroid = 50 points

smallest asteroid = 100 points

big alien spaceship = 200 points

small alien spaceship = 1000 point

 

 

Credits:

 

Main code: UEZ

Bass UDF: BrettF

Bass DLL: www.un4seen.com

GDI+ font loader code: Yashied

Menu item code: rasim

Sound + sound code modifications: Spiff59

Font: ck! [Freaky Fonts]

GetKeyboardState code: eukalyptus

Atari for the original game concept

AutoIt forum for all the help and the source of knowledge :P

 

Have fun :party:

UEZ

:D

 

 

Change log:

2009-05-16 release of the game AUTOITEROIDS

2009-05-17 thanks to Spiff59 for modification of the sound part -> now the sound is much smoother

2009-05-18 adjusted collision parameters -> now much better collision detection

2009-05-24 added highscore feature and fixed several bugs (RC1)

2009-05-31 pre final version released (only credit intro left)

2009-06-09 some bugs fixed and made some game setting modifications -> game play now smoother; also collision detection adjusted again; credit intro still in building phase :-(

2009-06-11 fixed some wrong game settings and change highscore file format -> now encrypted to avoid highscore manipulation ;-). Old score will be overwritten!

2009-06-13 display of level in GUI title menu was not working properly -> fixed

2009-06-14 released final version but without a credit part (will come later, if I find more time)

2009-06-16 minor: forgot to calculate font size when you change the window resolution (720x480 is optimized for collision detection - other window resolutions may not working properly for collision detection)

2009-06-17 minor: still overlooked font size parameteres and alien spaceship shoot parameters when windows sizes <> 720x480

2009-06-18 minor: some game settings added (will wait a few seconds after all asteroids have been destroyed) and added shadow at Asteroids label in About window

2009-07-01 minor: last update of the game code -> explosion of human spaceship fixed (copy/paste bug), change routine for copy bmp to GUI and added fps display counter

2009-12-21 minor: fixed some small bugs, replaced IsPressed() with WinAPI_GetKeyboardState function (thanks Eukalyptus), added latest Bass.dll, made game play specific modifications and changed code to be compatible with AutoIt v3.3.2.0!

2009-12-29 minor: forgot to undo silly modifications and added faster GDI+ backbuffer technique (thanks to AndyG for the idea)!

2011-04-12 minor: made small modifications, tried some optimizations (it is very hard to remember what I did in the code after a very long time of absence) :)

2011-04-29 minor: GUIRegisterMsg($WM_ERASEBKGND, "WM_ERASEBKGND") caused About window to look awful and added check for aero to place game graphic window to GUI more precise using _WinAPI_BitBlt()

2011-05-13 minor: cleaned up WinAPI display settings and forgot to undo About window settings.

2011-05-31 minor: speeded up game play by adding bitmaps instead of using one _WinAPI_CreateCompatibleBitmap(). I don't know why this is faster :P

2011-06-09 minor: changed FPS code because old code displayed too high FPS values

2012-07-30 minor: changed drawline function from integer to float to avoid wobbling of asteroids and spaceship

2016-01-14 minor: fixed code to run on AutoIt v3.3.14.2 when no highscore exists and changed GDI+ variable

Edited by UEZ
3 people like this

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

REALLY GOOD UEZ!!!

It's just like the real game... movement, sounds, feel-of-control, visuals.

I can even fly through the screen. I used to line up 2 rows of space ships on the pay-to-play game.

I do miss the ability to shoot 4 times in a row though. I used to lay-out a blanket of bullets for the ships.

Can this be added?

Thanks

8)

Edited by Valuater

NEWHeader1.png

Share this post


Link to post
Share on other sites

REALLY GOOD UEZ!!!

It's just like the real game.

I can even fly through the screen. I used to line up 2 rows of space ships on the pay-to-play game.

I do miss the ability to shoot 4 times in a row though. Can this be added?

Thanks

8)

Thanks Valuater.

Yes, you are right - the code is not working properly ($amount_of_shoots_max = 4 is already set) :)

I put it also to my to do list :party:

UEZ


Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
Share on other sites

Well Done UEZ!!, very nice game, I like the realistic movements

Share this post


Link to post
Share on other sites

Well Done UEZ!!, very nice game, I like the realistic movements

Thanks, the human ship movement was a lot easier than the other parts.

UEZ


Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
Share on other sites

Amazing! 100% Amazing

Thank you so much lots of great work very much to be learned from the source. An amazing demonstration!


AutoIt changed my life.

Share this post


Link to post
Share on other sites

UEZ, good job!

Posted Image

Thanks.

Amazing! 100% Amazing

Thank you so much lots of great work very much to be learned from the source. An amazing demonstration!

Thanks for the feedback - currently I lost the overview over my code :)

UEZ


Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
Share on other sites

you should remove bullet limit to make it more authentic


0x616e2069646561206973206c696b652061206d616e20776974686f7574206120626f64792c20746f206669676874206f6e6520697320746f206e657665722077696e2e2e2e2e

Share this post


Link to post
Share on other sites

#10 ·  Posted (edited)

you should remove bullet limit to make it more authentic

I wanted to make it 1:1 as much as possible - keep it simple with all its limitations!

I forgot to implement the explosion of the human space which is not an explosion of 10 pixel but breaks in several parts!

I will implement it in the next release.

UEZ

Edited by UEZ

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
Share on other sites

This is absolutely fantastic!

Kudos, UEZ.

I wonder if this would speed collision detection?

;check space ship for border collision
                $z = $border_limes * $object_scale
                If $x < -$z Then $x = $width + $z
                If $x > $width + $z Then $x = -$z
                If $y < -$z Then $y = $height + $z
                If $y > $height + $z Then $y = -$z

Share this post


Link to post
Share on other sites

#12 ·  Posted (edited)

This is absolutely fantastic!

Kudos, UEZ.

I wonder if this would speed collision detection?

;check space ship for border collision
                    $z = $border_limes * $object_scale
                    If $x < -$z Then $x = $width + $z
                    If $x > $width + $z Then $x = -$z
                    If $y < -$z Then $y = $height + $z
                    If $y > $height + $z Then $y = -$z
Thanks for feedback.

Btw, the check of the border is not the real problem but your are right :)

UEZ

Edited by UEZ

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
Share on other sites

Thanks for feedback.

Btw, the check of the border is not the real problem but your are right :)

UEZ

Yes, I noticed that's not the "collision" that I'd like to see happening more often :party:

That area just jumped out at me. I'm good at cleanup, but all this GDI+stuff is greek to me.

How long ago did you start this?

I just have to say, again, I'm flabberghasted. Extremely impressed.

Share this post


Link to post
Share on other sites

#14 ·  Posted (edited)

Yes, I noticed that's not the "collision" that I'd like to see happening more often :)

That area just jumped out at me. I'm good at cleanup, but all this GDI+stuff is greek to me.

How long ago did you start this?

I just have to say, again, I'm flabberghasted. Extremely impressed.

I started it approx. 2 weeks ago but I had this in mind a long time ago (just dreamt of it).

Btw, how can I set up the music speed using bass.udf (_BASS_ChannelSetAttribute?)? Because the sound of the alien starship is too slow...

Thanks,

UEZ

Edited by UEZ

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
Share on other sites

UEZ this is just totally awesome. Kudos to you my friend. Here comes 5* :)

WBD

Share this post


Link to post
Share on other sites

UEZ this is just totally awesome. Kudos to you my friend. Here comes 5* :party:

WBD

Posted my 5 stars too! :)

8)


NEWHeader1.png

Share this post


Link to post
Share on other sites

Way Cool UEZ! Jumpy for me but looks just like the orig....

Share this post


Link to post
Share on other sites

#19 ·  Posted (edited)

The smaller files attached below seem to behave better...

Edit: I also tinkered with the definitions for the alien ship sounds to make them looping, then moved the Play() to the random statement that brings the ship out, so it's only called once. Then I put a ChannelStop in your alien_ship_reset routine. So it only starts the sound once when the ship appears and lets it loop until the ship is gone. Seems to sound real smooth with no pauses. I was playing with the control logic for the thump/thump game sounds too, so better make sure I didn;t screw it up. Anyway, it was easier to attach the changes in the whole file than paste them into this post. (Hope you don't mind me playing with your baby, I think it's pretty cool , and I guess I'm bored).

Edit: Deleted attachments to free up some disk space.

Edited by Spiff59

Share this post


Link to post
Share on other sites

#20 ·  Posted (edited)

The smaller files attached below seem to behave better...

Edit: I also tinkered with the definitions for the alien ship sounds to make them looping, then moved the Play() to the random statement that brings the ship out, so it's only called once. Then I put a ChannelStop in your alien_ship_reset routine. So it only starts the sound once when the ship appears and lets it loop until the ship is gone. Seems to sound real smooth with no pauses. I was playing with the control logic for the thump/thump game sounds too, so better make sure I didn;t screw it up. Anyway, it was easier to attach the changes in the whole file than paste them into this post. (Hope you don't mind me playing with your baby, I think it's pretty cool , and I guess I'm bored).

Thanks Spiff59, the sound is really much smoother. I updated it (1st post)!

UEZ

Edited by UEZ

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯

Share this post


Link to post
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

  • Similar Content

    • UEZ
      Speed-up AutoIt using FreeBasic
      By UEZ
      Here some of my GDI+ examples which I boosted by coding a DLL created with FreeBasic.
       
      Plasma Variante 5:
      ;coded by UEZ build 2016-06-06 #pragma compile(Icon, "c:\Program Files (x86)\AutoIt3\Icons\au3.ico") #AutoIt3Wrapper_Run_Au3Stripper=y #Au3Stripper_Parameters=/so /pe /rm #AutoIt3Wrapper_Run_After=del /f /q "%scriptdir%\%scriptfile%_stripped.au3" #AutoIt3Wrapper_UseX64=n #include <GDIPlus.au3> #include <GuiConstantsEx.au3> #include <WindowsConstants.au3> _GDIPlus_Startup() Global $hGUI, $iFPS = 0, $iShowFPS = 0, $bExit, $pBitmap, $hHBitmap Global Const $iW = 600, $iH = 400, $sTitle = "GDI+ Plasma v5 boosted" Global Const $fPi = ACos(-1) AutoItSetOption("GUIOnEventMode", 1) GDIPlus_Plasmav5() AutoItSetOption("GUIOnEventMode", 0) _GDIPlus_Shutdown() Func GDIPlus_Plasmav5() $bExit = False $hGUI = GUICreate($sTitle, $iW, $iH) GUISetState(@SW_SHOW, $hGUI) ;create canvas elements Local Const $hDC = _WinAPI_GetDC($hGUI) Local Const $hDC_backbuffer = _WinAPI_CreateCompatibleDC($hDC) Local Const $hHBitmap = _WinAPI_BitmapCreateDIB($iW, $iH, $pBitmap) ; much faster than _WinAPI_CreateCompatibleBitmap($hDC, $iW, $iH) Local Const $DC_obj = _WinAPI_SelectObject($hDC_backbuffer, $hHBitmap) Local Const $hCanvas = _GDIPlus_GraphicsCreateFromHDC($hDC_backbuffer) ;~ _GDIPlus_GraphicsSetSmoothingMode($hCanvas, $GDIP_SMOOTHINGMODE_HIGHQUALITY) _GDIPlus_GraphicsSetPixelOffsetMode($hCanvas, $GDIP_PIXELOFFSETMODE_HIGHQUALITY) Local Const $hBrush_FPS = _GDIPlus_BrushCreateSolid(0xFFFFFFFF), _ $hFormat_FPS = _GDIPlus_StringFormatCreate(), _ $hFamily_FPS = _GDIPlus_FontFamilyCreate("Arial"), _ $hFont_FPS = _GDIPlus_FontCreate($hFamily_FPS, 8), _ $tLayout_FPS = _GDIPlus_RectFCreate(0, 0, 60, 16) $iFPS = 0 GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit_About") Local $iSizeW = 4, $iSizeH = 4, $fTime = 0.0 Local $sDLL = @ScriptDir & "\GDI+ Plasma v5 Booster.dll" If Not FileExists($sDLL) Then _BoosterDLL(True) Local $hDLL = DllOpen($sDLL) AdlibRegister("CalcFPS", 1000) Do DllCall($hDLL, "none", "Boost", "ptr", $hCanvas, "int", $iSizeW, "int", $iSizeH, "int", $iW, "int", $iH, "float", $fTime) $fTime += 0.0075 _GDIPlus_GraphicsDrawStringEx($hCanvas, "FPS: " & $iShowFPS, $hFont_FPS, $tLayout_FPS, $hFormat_FPS, $hBrush_FPS) _WinAPI_BitBlt($hDC, 0, 0, $iW, $iH, $hDC_backbuffer, 0, 0, $SRCCOPY) $iFPS += 1 If $bExit Then ExitLoop Until Not Sleep(10) AdlibUnRegister("CalcFPS") ;release resources _GDIPlus_FontDispose($hFont_FPS) _GDIPlus_FontFamilyDispose($hFamily_FPS) _GDIPlus_StringFormatDispose($hFormat_FPS) _GDIPlus_BrushDispose($hBrush_FPS) _GDIPlus_GraphicsDispose($hCanvas) _WinAPI_SelectObject($hDC_backbuffer, $DC_obj) _WinAPI_DeleteDC($hDC_backbuffer) _WinAPI_DeleteObject($hHBitmap) _WinAPI_ReleaseDC($hGUI, $hDC) GUIDelete($hGUI) DllClose($hDLL) EndFunc ;==>GDIPlus_Plasmav5 Func _Exit_About() $bExit = True EndFunc ;==>_Exit_About Func CalcFPS() ;display FPS $iShowFPS = $iFPS ;~ ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $iShowFPS = ' & $iShowFPS & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console $iFPS = 0 EndFunc ;==>CalcFPS Func _WinAPI_BitmapCreateDIB($iWidth, $iHeight, ByRef $pHBitmap) Local $tBMI = DllStructCreate($tagBITMAPINFO) $tBMI.biSize = DllStructGetSize($tBMI) - 4 $tBMI.biWidth = $iWidth $tBMI.biHeight = -$iHeight $tBMI.biPlanes = 1 $tBMI.biBitCount = 32 Local $aResult = DllCall("gdi32.dll", "ptr", "CreateDIBSection", "hwnd", 0, "struct*", $tBMI, "uint", 0, "ptr*", 0, "ptr", 0, "uint", 0) $pHBitmap = $aResult[4] Return $aResult[0] EndFunc ;Code below was generated by: 'File to Base64 String' Code Generator v1.20 Build 2015-09-19 Func _BoosterDLL($bSaveBinary = False, $sSavePath = @ScriptDir) Local $BoosterDLL $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '3TshADwyPEY8UDxaADxpPG08gTyLADyUPLI8yzz1ADz6PCc9UT2FAD2MPZU9nD0UAD5MPs4+3z7qAD74PgM/LD8yAD9CP0w/Yj9sAD+BP4c/oT/BAD/iP/Q/ACAAAAB0AQAAGTA8ADBGME4wWDBsADCFMN4wKDE/ADFGMVIxWTH1ADEIMg8yHDIjADK1MsgyzzLcADLjMoYzlzOeADOxM8IzyDPdADPsM/QzCTQVADQbNCU0LjRQADRZNHI0gTSUADSbNLY0xjTSADTsNAE1EjUiADUqNTI1OjVCADVKNVI1WjViADV1NZs1rDXnADX/NRk2WDZ2ADaLNpw2pDasAWAk3jbjNgg3GAA3KTcuNzM3OwA3QDdIN1E3WwA3YTdqN3s35gA38zcSOBg4LQA4lTiwOM04+AA4BjlHOXU5ggA5pznEOdE55gA57Tn7OQ06IQA6MTpLOmw6fgA6gzqIOp86rAA6ujq/Osw64QA67jr0OiE7OQA7PztPO1U7ZgA7bDtzO4U7jwA7uTvQO+o79AA7FTwnPDM8TwA8WDx8PJw8tBA8yjze0BUAPQYAPQ89FT1IPU4EPWEwFqQ9qT2yAD25PcI95T0DAD4JPg8+ND46AD5hPmc+dz6ZAD6xPr4+yD7jBD7t8Bf+PhE/G4A/Mz85P/0/QCYQMAAAeGAAETAfADAlMCwwiTChADC1MLow1TDhADDvMPYwBjEhADEvMTUxPDGGADGTMZ8xtTHEATAn3TEbMjEyPwAyRTJUMmMykgAyMzNSM5IzxAAz/jMGNA40FhA0HjQm0Bc2ND4ANFQ0pTS0NMkANO009jQSNRqANTQ1ODVENQAHUEAAAAxgAIjwBwAwUAAAHPGN8AcwMABcMmAyZDJoMlBsMnAyQAHQ4jAAoAwwGDAcsQLg8wCABDAIMAwwEBEB/w8ADwAPAA8ADwAPAA8ADwAPDwAPAA8ACAA=' $BoosterDLL = _WinAPI_Base64Decode($BoosterDLL) If @error Then Return SetError(1, 0, 0) Local $tSource = DllStructCreate('byte[' & BinaryLen($BoosterDLL) & ']') DllStructSetData($tSource, 1, $BoosterDLL) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 18944) If @error Then Return SetError(3, 0, 0) $tSource = 0 Local Const $bString = Binary(DllStructGetData($tDecompress, 1)) If $bSaveBinary Then Local Const $hFile = FileOpen($sSavePath & "\GDI+ Plasma v5 Booster.dll", 18) If @error Then Return SetError(2, 0, $bString) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_BoosterDLL Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall("ntdll.dll", "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress  
       
      3D Object Rotation v1.3.0:
      ;coded by UEZ build 2016-06-04 #pragma compile(Icon, "c:\Program Files (x86)\AutoIt3\Icons\au3.ico") #AutoIt3Wrapper_Run_Au3Stripper=y #Au3Stripper_Parameters=/so /pe /rm #AutoIt3Wrapper_Run_After=del /f /q "%scriptdir%\%scriptfile%_stripped.au3" #include <GDIPlus.au3> #include <GuiConstantsEx.au3> #include <WindowsConstants.au3> #Region GDIPlusEx Constants Global Const $_sGDIPEX_IIDBMP = "{EB22CE37-EE56-458B-AD13-3FC836E8CE49}" Global Const $_sGDIPEX_IIDBUF = "{1CB99E61-15BA-4B1F-8C7E-25D00AE60F2D}" Global Const $_tagGDIPEX_BUFFER = "Draw int(int;int;uint); Gfx handle(); pBits ptr(); Width int(); Height int(); Stride int();" Global Const $_tagGDIPEX_BITMAP = "Bmp handle(); Gfx handle(); Scan0 ptr(); Width int(); Height int(); Stride int(); Draw int(struct*;int;int); DrawRect int(struct*;int;int;uint;uint);" Global $_aGDIPEX_ASMSTRUCT[1] Global $_oGDIPEX_D2DFACTORY OnAutoItExitRegister("__GDIPlusEx_OnExit") Global Const $_hGDIPEX_GDIPDLL = _GDIPlus_Startup(Default, True) Global Const $_hGDIPEX_D2DDLL = DllOpen("d2d1.dll") Global Const $_hGDIPEX_MOD_GDI32 = _WinAPI_GetModuleHandle("gdi32.dll") Global Const $_hGDIPEX_MOD_GDIPLUS = _WinAPI_GetModuleHandle("gdiplus.dll") Global Const $_hGDIPEX_MOD_KERNEL32 = _WinAPI_GetModuleHandle("kernel32.dll") Global Const $_hGDIPEX_MOD_USER32 = _WinAPI_GetModuleHandle("User32.dll") Global Const $_pGDIPEX_LIB_SELOBJ = _WinAPI_GetProcAddress($_hGDIPEX_MOD_GDI32, "SelectObject") Global Const $_pGDIPEX_LIB_DELOBJ = _WinAPI_GetProcAddress($_hGDIPEX_MOD_GDI32, "DeleteObject") Global Const $_pGDIPEX_LIB_DELDC = _WinAPI_GetProcAddress($_hGDIPEX_MOD_GDI32, "DeleteDC") Global Const $_pGDIPEX_LIB_RELDC = _WinAPI_GetProcAddress($_hGDIPEX_MOD_USER32, "ReleaseDC") Global Const $_pGDIPEX_LIB_BITBLT = _WinAPI_GetProcAddress($_hGDIPEX_MOD_GDI32, "BitBlt") Global Const $_pGDIPEX_LIB_GLOBALFREE = _WinAPI_GetProcAddress($_hGDIPEX_MOD_KERNEL32, "GlobalFree") Global Const $_pGDIPEX_LIB_GFXDEL = _WinAPI_GetProcAddress($_hGDIPEX_MOD_GDIPLUS, "GdipDeleteGraphics") Global Const $_pGDIPEX_LIB_BMPDEL = _WinAPI_GetProcAddress($_hGDIPEX_MOD_GDIPLUS, "GdipDisposeImage") Global Const $_pGDIPEX_ASM_OBJ_QUERYIF = __GDIPlusEx_ASMCreate("0x538B4424088B5C2410890383400401B8000000005BC20C00", "0x49890883410801B800000000C3") Global Const $_pGDIPEX_ASM_OBJ_ADDREF = __GDIPlusEx_ASMCreate("0x8B442404834004018B4004C20400", "0x834108018B4108C3") Global Const $_pGDIPEX_ASM_OBJ_RELBUF = __GDIPlusEx_ASMCreate("0x538B5C2408836B0401837B040075448B43388B531C52FFD08B433C8B53288B4B305152FFD08B43408B532052FFD08B43448B532852FFD08B433C8B532C8B4B245152FFD08B433453FFD0B8000000005BC204008B43045BC20400", "0x534889CB836B0801837B080075504883EC20488B4360488B4B28FFD0488B4368488B4B40488B5350FFD0488B4370488B4B30FFD0488B4378488B4B40FFD0488B8380000000488B4B48488B5338FFD0488B43584889D9FFD04883C4205BC38B43085BC3") Global Const $_pGDIPEX_ASM_OBJ_RELBMP = __GDIPlusEx_ASMCreate("0x538B5C2408836B0401837B0400752A8B432C8B532052FFD08B43308B532452FFD08B43288B531C52FFD08B432853FFD0B8000000005BC204008B43045BC20400", "0x534889CB836B0801837B080075314883EC20488B4348488B4B30FFD0488B4350488B4B38FFD0488B4340488B4B28FFD0488B43404889D9FFD04883C4205BC38B43085BC3") Global Const $_pGDIPEX_ASM_OBJ_BUFDRAW = __GDIPlusEx_ASMCreate("0x5356578B5C24108B7424148B7C2418B8FFFFFFFF817B0847504542752E8B4C241C5183EC08C7042400000000C7442404000000008B5328528B5310528B530C5257568B5324528B434CFFD05F5E5BC21000", "0x534889CB4989D24D89C348C7C0FFFFFFFF81790C47504542754B4883EC484C894C244048C74424380000000048C744243000000000488B43404889442428488B431448894424204D31C9448B4B104D89D84C89D2488B4B38488B8388000000FFD04883C4485BC3") Global Const $_pGDIPEX_ASM_OBJ_BUFGFX = __GDIPlusEx_ASMCreate("0x8B5424048B421CC20400", "0x488B4128C3") Global Const $_pGDIPEX_ASM_OBJ_BUFBITS = __GDIPlusEx_ASMCreate("0x8B5424048B4218C20400", "0x488B4120C3") Global Const $_pGDIPEX_ASM_OBJ_BUFWIDTH = __GDIPlusEx_ASMCreate("0x8B5424048B420CC20400", "0x8B4110C3") Global Const $_pGDIPEX_ASM_OBJ_BUFHEIGHT = __GDIPlusEx_ASMCreate("0x8B5424048B4210C20400", "0x8B4114C3") Global Const $_pGDIPEX_ASM_OBJ_BUFSTRIDE = __GDIPlusEx_ASMCreate("0x8B5424048B4214C20400", "0x8B4118C3") Global Const $_pGDIPEX_ASM_OBJ_BMPBMP = __GDIPlusEx_ASMCreate("0x8B5424048B4224C20400", "0x488B4138C3") Global Const $_pGDIPEX_ASM_OBJ_BMPGFX = __GDIPlusEx_ASMCreate("0x8B5424048B4220C20400", "0x488B4130C3") Global Const $_pGDIPEX_ASM_OBJ_BMPSCAN0 = __GDIPlusEx_ASMCreate("0x8B5424048B4218C20400", "0x488B4120C3") Global Const $_pGDIPEX_ASM_OBJ_BMPWIDTH = __GDIPlusEx_ASMCreate("0x8B5424048B420CC20400", "0x8B4110C3") Global Const $_pGDIPEX_ASM_OBJ_BMPHEIGHT = __GDIPlusEx_ASMCreate("0x8B5424048B4210C20400", "0x8B4114C3") Global Const $_pGDIPEX_ASM_OBJ_BMPSTRIDE = __GDIPlusEx_ASMCreate("0x8B5424048B4214C20400", "0x8B4118C3") Global Const $_pGDIPEX_ASM_BMPDRAW = __GDIPlusEx_ASMCreate("0x5756538B7424108B7C2414817F0847504542740E817F08475045417405E98E010000F30F7E4E0CF30F7E442418660FFEC8660FEFFF660F6FF0F30F7E6F0C660FEACD660FEEC7660FFAC8660F6FD0660FFAD6B801000000660F6EF8660F70FFE0660F66F9660FD7C783F8000F853801000083EC20660FD60C24660F7EC1660F73D804660F7EC38B47148944240C0FAFC38D04888B571801C289542408660F7ED1660F73DA04660F7ED38B4614894424140FAFC38D04888B561801C289542410B800000047660F6EF8660F70FF00B801000000F30F2AF0660FEFED8B5C24048B7C24088B44240C014424088B7424108B442414014424108B0C248A46033C000F8483000000660F6E063CFF7477660F6E0F660F60C5660F60CDF20F70C093F20F70C993660F60C5660F60CD660FFEC7660FFECF0F5CC70F5CCFF30F10D6F30F5CD0F30F59CAF30F10E0F30F58E1F30F53DC660F70D1000F59CA660F70D000660F70DB000F59C20F58C10F59C3F30F10C40F58C7660FFAC7660F6BC0F20F70C039660F67C0660F7E0783C60483C70483E9010F8F63FFFFFF83EB010F8F3FFFFFFF83C420B800000000EB0CB8FEFFFFFFEB05B8FFFFFFFF5B5E5FC21000", "0x575653415441554883EC20F30F7F3424F30F7F7C24104889CE4889D7817F0C47504542740E817F0C475045417405E99D010000F30F7E4E1066410F6EC166410F6ED0660F73F804F30F10C2660FFEC8660FEFFF660F6FF0F30F7E6F10660FEACD660FEEC7660FFAC8660F6FD0660FFAD6B801000000660F6EF8660F70FFE0660F66F9660FD7C783F8000F853801000066410F7EC8660F73D90466410F7EC94831C0660F7EC1660F73D804660F7EC38B47184989C30FAFC3678D0488488B7F204801C74989FA660F7ED1660F73DA04660F7ED38B46184989C50FAFC3678D0488488B76204801C64989F4B800000047660F6EF8660F70FF00B801000000F30F2AF0660FEFED4489CB4C89D74D01DA4C89E64D01EC4489C18A46033C000F8483000000660F6E063CFF7477660F6E0F660F60C5660F60CDF20F70C093F20F70C993660F60C5660F60CD660FFEC7660FFECF0F5CC70F5CCFF30F10D6F30F5CD0F30F59CAF30F10E0F30F58E1F30F53DC660F70D1000F59CA660F70D000660F70DB000F59C20F58C10F59C3F30F10C40F58C7660FFAC7660F6BC0F20F70C039660F67C0660F7E074883C6044883C70483E9010F8F61FFFFFF83EB010F8F49FFFFFF48C7C000000000EB1048C7C0FEFFFFFFEB0748C7C0FFFFFFFFF30F6F7C2410F30F6F34244883C420415D415C5B5E5FC3") Global Const $_pGDIPEX_ASM_BMPDRAWRECT = __GDIPlusEx_ASMCreate("0x575653558B7424148B7C2418817F0847504542740E817F08475045417405E9DA010000F30F6F44241CF30F7E560CF30F7E5F0C0F5BC00F5BD20F5BDB0F12C80F28F00F28EA0F5EE90F57FF0F58C80F5DCB0F5FC70F5CC80FC2F906660FD7C7A90F0000000F858C0100000F28D00F5CC60F58C8F30F5BC0660F5BC9F30F5BD283EC20660FD60424660FD64C2408660F7ED1660F73DA04660F7ED38B4714894424140FAFC38D04888B571889D501C2895424108B4424140FAF471001C58B46148944241C8B761889742418B800000047660F6EF8660F70FF00B801000000F30F2AF08B0C24F30F2AC1F30F10C8F30F59CDF30F2CD1C1E20289548D00F30F58C683C1013B4C24087CE0660F70EDE18B5C24048B7C24108B44241401442410F30F2AC3F30F59C5F30F2CC08B7424180FAF44241C01C68B0C248B548D008A4416033C000F8488000000660F6E04163CFF747B660F6E0F660FEFD2660F60C2660F60CAF20F70C093F20F70C993660F60C2660F60CA660FFEC7660FFECF0F5CC70F5CCFF30F10D6F30F5CD0F30F59CAF30F10D0F30F58D1F30F53E2660F70D9000F59CB660F70D8000F59C3660F70E4000F58C10F59C4F30F10C20F58C7660FFAC7660F6BC0F20F70C039660F67C0660F7E0783C70483C1013B4C24080F8C58FFFFFF83C3013B5C240C0F8C25FFFFFF83C420B800000000EB0CB8FEFFFFFFEB05B8FFFFFFFF5D5B5E5FC21800", "0x660F6E4C2428660F6E442430660F62C85756535541544155415641574883EC30F30F7F3424F30F7F7C2410F3440F7F4424204889D74889CE817F0C47504542740E817F0C475045417405E9FA01000066410F6EC066410F6ED1660F73FA04660FEBC2660F73F908660FEBC1F30F7E5610F30F7E5F100F5BC00F5BD20F5BDB0F12C80F28F00F28EA0F5EE90F57FF0F58C80F5DCB0F5FC70F5CC80FC2F906660FD7C7A90F0000000F85940100000F28D00F5CC60F58C8F30F5BC0660F5BC9F30F5BD266490F7EC04D89C149C1E92066490F7ECA4D89D349C1EB20660F7ED1660F73DA04660F7ED34831C08B47184989C50FAFC3678D04884C8B67204C89E54901C44C89E80FAF47144801C58B46184989C74C8B7620B800000047660F6EF8660F70FF00B801000000F30F2AF04831C94489C1F30F2AC1F30F10C8F30F59CDF30F2CD1C1E20289548D00F30F58C683C1014439D17CE14831D2660F70EDE14489CB4C89E74D01ECF30F2AC3F30F59C5F3480F2CC04C89F6410FAFC74801C64489C18B548D008A4416033C000F848C000000660F6E04163CFF747F660F6E0F660FEFD2660F60C2660F60CAF20F70C093F20F70C993660F60C2660F60CA660FFEC7660FFECF0F5CC70F5CCFF30F10D6F30F5CD0F30F59CAF3440F10C0F3440F58C1F3410F53E0660F70D900660F70D0000F59CB0F59C2660F70E4000F58C10F59C4F3410F10C00F58C7660FFAC7660F6BC0F20F70C039660F67C0660F7E074883C70483C1014439D10F8C54FFFFFF83C3014439DB0F8C28FFFFFF48C7C000000000EB1048C7C0FEFFFFFFEB0748C7C0FFFFFFFFF3440F6F442420F30F6F7C2410F30F6F34244883C430415F415E415D415C5D5B5E5FC3") Global Const $_pGDIPEX_ASM_BMPCLR = __GDIPlusEx_ASMCreate("0x8B542404660F6E442408660F70C0008B4A100FAF4A148B5218660F7F0283C21083E9107FF4C20800", "0x660F6EC2660F70C0008B51140FAF5118488B4920660F7F014883C11083EA107FF3C3") #EndRegion GDIPlusEx Constants Global $hGUI, $iFPS = 0, $iShowFPS = 0, $bExit Global Const $iW = 800, $iH = 400, $iWh = $iW / 2, $iHh = $iH / 2, $sTitle = "GDI+ 3D Object Rotation v1.3.0 alpha / aka Rutt Etra Izer FX" Global Const $fPi = ACos(-1), $fRad = $fPi / 180, $fDeg = 180 / $fPi AutoItSetOption("GUIOnEventMode", 1) Global Const $sDLL = @ScriptDir & "\Rutt_Etra_Izer_FX_Booster.dll" If Not FileExists($sDLL) Then _Booster_DLL(True) Global $hDLL = DllOpen($sDLL) GDIPlus_Rutt_Etra_Izer_FX() DllClose($hDLL) AutoItSetOption("GUIOnEventMode", 0) Exit Func GDIPlus_Rutt_Etra_Izer_FX() $bExit = False $hGUI = GUICreate($sTitle, $iW, $iH) GUISetState(@SW_SHOW, $hGUI) ;create canvas elements Local $oCanvas = _GDIPlusEx_BufferCreate($hGUI) _GDIPlus_GraphicsSetSmoothingMode($oCanvas.Gfx, $GDIP_SMOOTHINGMODE_HIGHQUALITY) _GDIPlus_GraphicsSetPixelOffsetMode($oCanvas.Gfx, $GDIP_PIXELOFFSETMODE_HIGHQUALITY) Local Const $hBrush_Clr = _GDIPlus_BrushCreateSolid(0xF0000000), _ $hBrush_FPS = _GDIPlus_BrushCreateSolid(0xF0808080), _ $hPen = _GDIPlus_PenCreate(0xFF0000FF), _ $hFormat_FPS = _GDIPlus_StringFormatCreate(), _ $hFamily_FPS = _GDIPlus_FontFamilyCreate("Arial"), _ $hFont_FPS = _GDIPlus_FontCreate($hFamily_FPS, 8), _ $tLayout_FPS = _GDIPlus_RectFCreate(0, 0, 60, 16) Local Const $hPath = _GDIPlus_PathCreate() Local Const $hImage = _GDIPlus_BitmapCreateFromMemory(_Ninja()) Local $aDim = _GDIPlus_ImageGetDimension($hImage) Local $i, $fX = 0, $fY = 67.5 * $fRad, $fZ = 0, $c, $iX, $iY, $bAutoIt = False, _ $iStep = 3, $fScale = 1.5, $fPerpCor = 1500, $fZPower = 0.25 Local Const $iCountX = Int($aDim[0] / $iStep), $iCountY = Int($aDim[1] / $iStep) Local $tData = Create_Rutt_Etra_Izer_Struct($hImage, $iStep, $fZPower, 1), $c $iFPS = 0 GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit_About") AdlibRegister("CalcFPS", 1000) Local $fTimer Do DllCall($__g_hGDIPDll, "int", "GdipFillRectangle", "handle", $oCanvas.Gfx, "handle", $hBrush_Clr, "float", 0, "float", 0, _ "float", $iW, "float", $iH) Switch $bAutoIt Case True For $c = 1 To $iCountX * $iCountY + $iCountX + $iCountY + 1 Translate3Dto2D($tData, $c, $fX, $fY, $fZ, $iW / 2, $iH / 2, $fScale, $fPerpCor) If $c > 1 Then DllCall($__g_hGDIPDll, "int", "GdipDrawLine", "handle", $oCanvas.Gfx, "handle", $tData.Pen(($c)), _ "float", $tData.fX(($c - 1)), "float", $tData.fY(($c - 1)), _ "float", $tData.fX(($c)), "float", $tData.fY(($c))) EndIf Next Case Else DllCall($hDLL, "none", "Boost", "ptr", $oCanvas.Gfx, "struct*", $tData, "uint", $iCountX, "uint", $iCountY, _ "float", $fX, "float", $fY, "float", $fZ, "float", $iW / 2, "float", $iH / 2, "float", $fScale, "float", $fPerpCor) EndSwitch _GDIPlus_GraphicsDrawStringEx($oCanvas.Gfx, "FPS: " & $iShowFPS, $hFont_FPS, $tLayout_FPS, $hFormat_FPS, $hBrush_FPS) ;draw background message text _GDIPlusEx_BufferDraw($oCanvas) $iFPS += 1 ;~ $fZ += 0.015 If Mod(Int($fY * 100), Int($fPi * 100)) Then ;when rotation is at 180° (Pi) Then stop rotation for some seconds $fY += -0.005 $fTimer = TimerInit() Else If TimerDiff($fTimer) > 5000 Then $fY += -0.005 EndIf ;~ $fX += -0.0333 If $bExit Then ExitLoop Until Not Sleep(10) AdlibUnRegister("CalcFPS") ;release resources _GDIPlus_FontDispose($hFont_FPS) _GDIPlus_FontFamilyDispose($hFamily_FPS) _GDIPlus_StringFormatDispose($hFormat_FPS) _GDIPlus_BrushDispose($hBrush_Clr) _GDIPlus_BrushDispose($hBrush_FPS) _GDIPlus_PenDispose($hPen) _GDIPlus_PathDispose($hPath) _GDIPlus_ImageDispose($hImage) $oBuffer = Null For $c = 1 To $iCountX * $iCountY + $iCountX + $iCountY ;~ ConsoleWrite($tData.Pen(($c)) & @CRLF) _GDIPlus_PenDispose($tData.Pen(($c))) Next GUIDelete($hGUI) EndFunc ;==>GDIPlus_Rutt_Etra_Izer_FX Func Translate3Dto2D($tStruct, $iPos, $fRotX, $fRotY, $fRotZ, $fCenterX = 0, $fCenterY = 0, $fScale = 1, $fZDeepCorrection = 1000) Local Const $fCosRotX = Cos($fRotX), $fSinRotX = Sin($fRotX), _ $fCosRotY = Cos($fRotY), $fSinRotY = Sin($fRotY), _ $fCosRotZ = Cos($fRotZ), $fSinRotZ = Sin($fRotZ), _ $f1 = $fCosRotY * $tStruct.x(($iPos)), _ $f2 = $fSinRotX * $tStruct.y(($iPos)), _ $f3 = $fCosRotX * $tStruct.z(($iPos)), _ $f4 = $fCosRotX * $tStruct.y(($iPos)), _ $f5 = $fSinRotX * $tStruct.z(($iPos)), _ $f6 = $f1 - $fSinRotY * ($f2 + $f3), _ $fXPos = ($fCosRotZ * $f6 - $fSinRotZ * ($f4 - $f5)) * $fScale, _ $fYPos = ($fSinRotZ * $f6 + $fCosRotZ * ($f4 - $f5)) * $fScale, _ $fZPos = ($fSinRotY * $tStruct.x(($iPos)) + $fCosRotY * ($f2 + $f3)) * $fScale, _ $fZPerspCorrection = 1 / ($fZPos / $fZDeepCorrection + 1) $tStruct.fX(($iPos)) = $fXPos * $fZPerspCorrection + $fCenterX $tStruct.fY(($iPos)) = $fYPos * $fZPerspCorrection + $fCenterY $tStruct.fZ(($iPos)) = $fZPos EndFunc ;==>Translate3Dto2D Func _Exit_About() $bExit = True EndFunc ;==>_Exit_About Func CalcFPS() ;display FPS $iShowFPS = $iFPS $iFPS = 0 EndFunc ;==>CalcFPS Func Create_Rutt_Etra_Izer_Struct($hImage, $iStep = 10, $fZPower = 0.15, $fPenSize = 1) $iStep = $iStep < 2 ? 2 : Int($iStep) Local $aDim = _GDIPlus_ImageGetDimension($hImage) Local Const $hIA = _GDIPlus_ImageAttributesCreate() Local $tColorMatrix = _GDIPlus_ColorMatrixCreateGrayScale() _GDIPlus_ImageAttributesSetColorMatrix($hIA, 0, True, $tColorMatrix) Local Const $hImage_Grey = _GDIPlus_BitmapCreateFromScan0($aDim[0], $aDim[1]) Local Const $hGfx = _GDIPlus_ImageGetGraphicsContext($hImage_Grey) _GDIPlus_GraphicsDrawImageRectRect($hGfx, $hImage, 0, 0, $aDim[0], $aDim[1], 0, 0, $aDim[0], $aDim[1], $hIA) Local Const $iCountX = Int($aDim[0] / $iStep), $iCountY = Int($aDim[1] / $iStep) Local $tBitmapData1 = _GDIPlus_BitmapLockBits($hImage, 0, 0, $aDim[0], $aDim[1], $GDIP_ILMREAD, $GDIP_PXF32ARGB) Local $tBitmapData2 = _GDIPlus_BitmapLockBits($hImage_Grey, 0, 0, $aDim[0], $aDim[1], $GDIP_ILMREAD, $GDIP_PXF32ARGB) Local Const $iScan01 = DllStructGetData($tBitmapData1, "Scan0") Local Const $iScan02 = DllStructGetData($tBitmapData2, "Scan0") Local $tPixel1 = DllStructCreate("int [" & $aDim[0] * $aDim[1] & "];", $iScan01) Local $tPixel2 = DllStructCreate("int [" & $aDim[0] * $aDim[1] & "];", $iScan02) Local $iX, $iY, $iRowOffset, $iPixel2, $iPixel11, $iPixel12, $c = 1, $hBrush Local $iDim = $iCountX * $iCountY + $iCountX + $iCountY + 1 Local Const $tagData = "struct;float x[" & $iDim & "];float y[" & $iDim & "];float z[" & $iDim & "];float fX[" & $iDim & "];float fY[" & $iDim _ & "];float fZ[" & $iDim & "];uint pen[" & $iDim & "];endstruct" Local $tData = DllStructCreate($tagData) For $iY = 0 To $aDim[1] Step $iStep $iRowOffset = $iY * $aDim[0] + 1 For $iX = 0 To $aDim[0] Step $iStep $iPixel2 = DllStructGetData($tPixel2, 1, $iRowOffset + $iX) $tData.x(($c)) = $iX - $aDim[0] / 2 $tData.y(($c)) = $iY - $aDim[1] / 2 $tData.z(($c)) = 0x80 * $fZPower - BitAND($iPixel2, 0xFF) * $fZPower If $iX Then $iPixel11 = DllStructGetData($tPixel1, 1, $iRowOffset + $iX - 1) - 0x20000000 $iPixel12 = DllStructGetData($tPixel1, 1, $iRowOffset + $iX) $hBrush = _GDIPlus_LineBrushCreate(0, 0, $iStep, 1, $iPixel11, $iPixel12) $tData.Pen(($c - 1)) = _GDIPlus_PenCreate2($hBrush, $fPenSize) ;~ ConsoleWrite($c - 1 & ": " & $tData.Pen(($c - 1)) & @CRLF) ;~ _GDIPlus_PenSetLineJoin($aData[$d].Pen(($c - 1)), 2) ;~ _GDIPlus_PenSetMiterLimit($aData[$d].Pen(($c - 1)), 10) _GDIPlus_PenSetLineCap($tData.Pen(($c - 1)), 0x02, 0x02, 0) _GDIPlus_BrushDispose($hBrush) EndIf $c += 1 Next Next _GDIPlus_BitmapUnlockBits($hImage, $tBitmapData1) _GDIPlus_BitmapUnlockBits($hImage_Grey, $tBitmapData2) _GDIPlus_ImageAttributesDispose($hIA) _GDIPlus_GraphicsDispose($hGfx) _GDIPlus_ImageDispose($hImage_Grey) Return $tData EndFunc ;==>Create_Rutt_Etra_Izer_Struct ;Code below was generated by: 'File to Base64 String' Code Generator v1.20 Build 2015-09-19 Func _Ninja($bSaveBinary = False, $sSavePath = @ScriptDir) Local $Ninja $Ninja &= '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' $Ninja &= '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' $Ninja &= '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' $Ninja &= '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' $Ninja &= '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' $Ninja &= 'gSMAJS/+1BWFVV0sbvz/AFMOAvvyPoy3zCmx1YwVB6CANAYOqOo82VUpN8/wCtEZKAS7UoHOr9GWhLhQKhYQp5hRqKGAnpNUV5hLSO8YjmwjfVtX/obKwsXH7Mk08wysdYIS0HmAHAs8X9RaD7EKcsvpNMufWJvRFXYo7xGaCHDmvmLKA7GGO1DOkaio6SVCOF4jhtiE7tLYo17Z+pTAeSi9HBACCMWuzLd+JqI97PfqACKUu3KTMMgvPUvHYwJ+It+EI6dkwGLJ3hUd3sVbp79Dge45YCoQO14PSCGtzVu++Jbx/AKx8Ik8ZhQgqrWJW65FIVKL/M8JKDG3pETFHwf1BEQC1RPaAZQvFwazh9LmbaywwG5vURExfiJX+KhE7nABrxLwC3ndy9BJYq7gnbFa+41SG4yfuVU700nxKWH0H6lIj7wIrMnGCQWBRYjxHGWzw8xMij0JSkLcMTLFeGT+42avvzEr+MKp0SrX0Ap79XqBXAAGNduIqG2WU3jrzM5Z2JeojFhMCmQiuwA7HfqeIgQKDUZa/HpKxOoTS+f/ACCNQpymKJ07ItEZcC17Xf8AIlTfjUWx5d6IGLifBDClK/6zCl78tphUdwsZlXvL+4zZCruKDfzNaPVkcoqwuB7OIJa7TfvuWAc1q+GOFK9Cy+3ED0mN+/ZEbYF4dygSxtfH+BGJV2+sIbKXn9RPegIZ8dxlr9r36YmM2ry7jXmXhWIJWIKoa9455O4Ate1JUCKDSQcQ70WQ530t+4yKLoNiu58MgCem5hFF5GhEA78Bh85/9j7s6zUr+HN2rgUNNFWDtP6lmt6qoK9CVQi5Wtt4xAkCbAh8wQVU2ND3xHtawGX4AxMWl9FKuX/KWo13AbF0uhzHSmA5BX3UqOFR2rAKr8UAfLmEIetqqXl6lNNWTB7W237gbhfQ/UQxYivIwlFa2+Y6KL3HS/QY0thtSt8/qF8YwREJXpfpYdhiltup4Qf5N4iWIthT8HEwHZZmAPm9wsrTRwQ1s1xCdGR65i5exVo+kRCFSrq4sZYshHpkh3Sppq/TlAi5MwhVTIlGACJYn5qPogniNoyhb6S6tOaPMCjVDMuVVaSrrzUciOf5KkLaYFQAPiRBAGaBZttxSD+4GsWvzfEuNCbWYTN5bBDvf800YuVhoB3aIkyQd45hGGFhnzBdbBRXRxDAjfY8koQ8TgYIUxTWre4IxbTx3AygMFYegvHPmVpyLSwvK3Dq0t5uomZjOK8zgG/iUlB+0hCog8EVBXnY5Nhov7rEcqt3t/AW1Kc+1w3AHEnwhkLWWVzxGFlrvgiFkGsMfM9A4zMejZivtrcOpVkYOwwH9K+47mikEOEZIteWOkAF4B/qG6XgYfP6gVQKeJXgKVhxVQyhbNtksOcopTqBGv4G5BykzVLDlWU0A1fOCZL4uF21a4REiIcP7I/LO7KlwIAZjvPQZZw54jQXlbDErloOohaDBWxvOuYDvEBCH5fxBmI+WviMWlfMRUTj6oMGAhoJlD85hFXWL4jOKXogKvI9B8xFIOUvHlnYmxX334ieamRMkaECc7/cuQrlpj5jtAGklAAOij5gih33v43FLHW/6lcCu04IFgDwj6v6izHRdmfCaZRUHbzoezCqTlUkmNci6bHiIFa0NWE3jRGdqN1Hl1CtKKOTeqJUpJcgSAOrChmuYFzdCFe/MOLh30rPH4l0JX5ZXRG+5eFSbKxCaCY4HiP5IxxOZpHby9IIUFB8zqelRuWCes4R4alarrO5axhY3/FJnS4IwzQt1doQgFYwXEigOrpCoCmjZKJ54V44Y1VLShvBo+o5xOrMefliiGA6CaG+9xyt4yJly3UbDuaF6dX6xVvZtFwEMgL4PqK7jApofv5ghNTjMOjm9QuEKWV+c+8Q1cbVNvo5GHZwLypGTHj34uBKhoQH7gS4eiXDBOw25RhAhbnOZVMtH4iTYftgrQeOIoPrnPr9YMApVZnyv6igsHFoXmvHmaCB' $Ninja &= '1RPjURT92H6lkdv09U5Zm2AuUUN4IugUSw11qO4obNLOHonUpnzqq81dRCUEp8LqiHkA3pYYMW4gGkLUZqEptgR0WUBeSUIODJ1FUFdaMzC9veYA2FI3TBFtfaMEjJVkYAVSnDmcxwr27tVvHvBchpOy7e4qiBLX7vEt4yxVMHUrQNVDgipWRhNCkaUOy+PWKU9tgoODD9wBTWgzngnM261TLbLu6naG5U9atsjd2XLwKt+yA4higQ3k4l+gmjCHVwOy0VfcQUTDMS69tS5qzymIqvNi6S5iUZq+PiG6VUFRmchbEdnEQAOvMcQluuYFiqjDg9+fEVKoe2CEKpRstqvl9oC6LQtep4jFtYM4yQxEpGwabQ/cSZSC8WkAqJ8BAAQCJVHEoKH5LGYWWrF/91Lq0hsf+UvZslDC0FTk214i5558Y9JybZMy07ACk1Ggl5NdxFFNF9RwW5IaNV3bKBUvqNBXb3DSatqCQfJVZf1EKIK7WKi9KeX5lAiNcdeZlspKzHjTKKIIu23vESIga0cES4QNKsR+8RoL1BMYySlCCDrTx1CKULsFqpYGjdyaY95SZON3KFhWrHB7s3mis03+IIKNHKrlC0XgYCtEBOTm4Amg84gq+FfiBQ3TzMsHUBo5EaZWO9QzGW6yjlT1UqLSjL1iEuq7i5pOhMzbXFLt+JcoLWUKPqw1NCeWgbzy64hR+IloUONv/sqOMs8OP7mZ0DRyav7gD7SvyB7yQoEgor2+lQUR7piflgstbBowrSMiNzWZyiwk7zBwE+QsXhZXYg/cDKKsGn5iqqyLP7Rtt1/5saLnGQ/DLQ2YlAmlrfDHDAcG3WdzPgo7DDCwEBySxh2MQ9SjWYFqgzT6V+4JcAxn8EBs0UDSMtMHF/1F55LeQgLEA65hrRlNBj1ZdQAFqjQGI1Kr3ZTgfuZS2Ybb7zGFe3FsdpyK/iZQeopPRm6ZvG/8+0cdO1wy6PEmmMQbx2P7im8L5uCsk9swMFv6YIgOXyQoOPrimUWacxpeh+IjwtU6hIybC1z6f93CcxQ6/W5VoR0F61MGN2zkMqoV93OZ0ELdX+Z25TU/Ednh6FYgTLuXC8rvuU7A8QFWc8VqIrEap9ziVx03UFVjrklCXG6AyhXlCxjfF4uZGZ1QSNbByWDXr3HrNyU09kOwQO1tf1KbyOXHtqKKVtQzK2h4YoGQqFRQT2iUQB3iI7I+a/P+ouaOKzfmYxiryH8RnLS+RhlH0SGAD3kv5YufP4/gahlr0d9zBFdrr6hiEbrRGhZpaWRJipPVNm8sUczLpdXmBTAX1cOwzwzeDYTKlhnnIr63A3otgf7l6Bvar9R/UnAfbcdsvav/ADOoKWKC+T5giywckCb/AI4/xTtTyEFQR6vySkrfefc2bD0PiKT3iD8wz18T+4UVl1hbMhG8cS4z7VKSAdgbYWeSAlZOpUyJzlwRrEw7xMKx2KPfuLf+ZBcK2KdQEDG4AKx6jIwW5pRD55ZxfP8AD/qJld0Qlc1qA5F6IIAC3+pwwhQcf6icQuijpExvPhtSgCujmUYsNXDmIvl/g0/4f//Z' Local $bString = _WinAPI_Base64Decode($Ninja) If @error Then Return SetError(1, 0, 0) $bString = Binary($bString) If $bSaveBinary Then Local Const $hFile = FileOpen($sSavePath & "\Ninja.jpg", 18) If @error Then Return SetError(2, 0, $bString) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_Ninja Func _Booster_DLL($bSaveBinary = False, $sSavePath = @ScriptDir) Local $Booster_DLL $Booster_DLL &= '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' $Booster_DLL &= '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' $Booster_DLL &= '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' $Booster_DLL &= 'AcB4hcCJxw+E2CGBCRx2izUBBMHjQAIB3olGCNN36IIiADYDRwyJRiFmKhThDBwkZ6HRAotEshhSphWIYiBxxW3BFACNUPyD4vt0NgCD6ECD4L90LtkBDgMdEQMhBEAkBFABahRgDwwSBIQSBFFMFYSDBYENAYPEMOAuIMMx9ulKsV8VRDEBFQQkpMAT0QPolqfAblcIYRtHCPABcPUBLnbwAeAFUSxQMAHoZntBp/OoFPTN9FjwMyIVTEzHBZEBkRroeAAQjUAEQI0EhR7RE+Bo8OhWsBDHogkxAykqxBARH3ABoyEIuGwQWAAQLUEAg/gHBA+O8YiD+AsPjs0hXKFhATBGhY2iWsQAkeGJiz100AC7eCEB0P8PhC3AArvBAuCmESAtD4X7AWDDDIEC+0EBc0mLE4tLRASLIVYQjbFRAImwRcQPtrEC4IIKsQIg+CAPhIWCAAgP3IRNgACBENE/UfEPEJQ5ZDVl9IJEwgbUBeuLAHMEixODwwgDCpYCBoYCBlXM6I9RYAOLRcxjAoliAXIE06FhEDHbhcB/kA7rsZCwJTsdEQEgfaWNPFsyGY00Er2RBgHwYnHejU0mzMYjcOeLQGwjD4Qy6nEJRcgxMUMdBLhJMh1F2KIiRcxZIusKjXMSM9AvhTv/X7cA//+LSwSFyQ8AhMP+///pK/8A//8Pt4EAAAAAEIlNwInHgc+AAAD//2aDuQFEAAAPSMeLfcQtAQEsKdABx4nwiSB9zOir/AFkRcwgi03AZokCcoPDAAyB+2xYABAPlIKFAagLAai2BgB0EInBgckAnv+APhUAlsEMkGIBSLZFzGCIBuu9iwEtAh8rCgMFH0IAH4k+66EAiw0cZAAQAfEAi0EEiUQkCIsAQQiLQAjHBCQEcFAAtEQkBOi5LvsAKAAIABPMABPoqQUAD5AFAFVXVlODFOwcABsoAEX/FShAwQAQix0ggAWDIOwEiy18AQc9RAGAAoXbdCiNdgCAiwOJBCT/1QAOAInG/9eFwHUMAIX2dAiLQwSJADQk/9CLWwiFaNt124YmYAAcABWDgMQcW15fXcOAHwyhJAAMABsHw422pYBnAAA+GMcATgyABQUAGwEAA+jI9///AIXAicN0QotEJCQgBCaJAwAGJInUQwSDUaEEUYmCVYURJEMIgzkxwII6GFsEw7gAr//r9In2GI28J4U3gkGLXCQKIIBDD4ASMcBbw7CQjbQmgQ8LhBVEGQCF0nQXiwI52AB1CutOiwg52YB0KInCi0IIwA8G8c86yhOLSAiJSoIIwEzo2vb//w0LAOvRidCLUgiJOcIZ69nAR8EnATqD+BABD4R/ABByHYMQ+AN1DcRND4Wdu8AEwBi4QUqAGcYFk8ADEwIDQA513oJHhcB0KBGLWAIfXQAfhdvAidh178cFgQaCOtYFgQsKPSSEJZ7GS8QXfHQXQwtBHUcfwCuGDlyhhA7X6Kn9ALlZgF1AjXQmAOibQQNjA0ADw5sDQDyBOFAARQAAdAUxwMMAZpBmgXgYCwHAD5TAD7bAwRPAPkAEZoE4TVrEB+sGzgRSxCNWU4tUJAIMAG8QA1I8D7cAcgYPt0IUhfYAjUQCGHQbMckAkItQDDnadwcAA1AIOdNyDIMAwQGDwCg58XWa6MBkXsEXwbsx9kC8AIt8JDCJPCToBAcDQDT4CHcLZiyBPQHYIA8L4FWJ8MkiVpC4YQLoRuAXgCBI56E8oAGNkGECDwi3gBTCAGoGjVwAAhiF7XUO68cAZpCDxgGDwyiQOe50JqBaCAggBQCJfCQEiRwk6FCWAgAAAEbegQveA8QL4AXEHDH2W4kG8MJj4CVTMduD7MYIZxHgUwiJ2OdJ4xH2tuCI4BHjoCVhX2ECooMt4n3ZgAOhBsPhBjHAqWcJA/PlGXbjB+/iGR0gGQbAAEAM4A9WMfbFBgZTwCwMdA1hFewPKjbjB+XjIYjoIY1UAAEYD7dJBoXJBHTHYA+Q9kInIER0B4CH' $Booster_DLL &= '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' $Booster_DLL &= 'AVN0ZCMCAAB7BfIAeeBLbVRpbWVAQXNGaWxlkQAAApeRAVRpY2tDb4R1bhBN6wJJbgARDGFswAetESYDTGUEYXZuAQCTA1F1AGVyeVBlcmZvQHJtYW5jZcIEZaByAAEEU7wUDRgBi2MOUxRncQFVbmgCC8BkRXhjZXDBBXAKAXEEdARTbGVlcAAAggRUZXJtaRBuYXRlpRYAiQQIVGxzQAxWYWx1MGUAlgRPBEQEALYABFZpcnR1YWzFsAN0wAsAALkVAQIMQAAANwBfX+BdbwBuZXhpdACRAEBfYW1zZ1/CAAAAtgBfY29udHIAb2xmcAAAXgGMX2mAEnAFbQBisAAAb2IAAMwBX2yAb2NrAHMCXxQEIEgDX3VuMgEfBABhYm9ydAAlBDOwC/IEKwQwFLABAAAENgQTAUkEZnB1wHRzAE0EZkAm0DcYBGZ3sBaQAIcEbQG0Ao8EbWVtc2VZ0AKpBGAAMAFhAB69QARzdHJsZbAYwAGRAG5jbXAA4QQAdmZwcmludGaLQDEwTWdQMWx1c+Jr/hTwAD8APwA/AD8APwA3AABLRVJORUwzMv9CB3F2MAE/AD8APwA/ADUAwG1zdmNydBUGDwAbDwAAABAQAAQA4CcA/BCQMABPAg8ADwAPAA8A/w8ADwAPAA8ADwAPAA8ADwD/DwAPAA8ADwAPAA8ADwAPAD8PAA8ADwAPAA8ADgDgAAQQHDAADGQAEBj+0D8fDwAPAA8ADwAPAA8A/w8ADwAPAA8ADwAPAA8ADwD/DwAPAA8ADwAPAA8ADwAPAB8PAA8ADwAPAAUAJ7MAABAAANAAAAAAHTAiME8wYjAAZzCHMJAw1zAA+jAFMRMxIDEANjFcMYExlDEAwjHMMdgx4jEAAjIUMhsyITIASDJPMloygTIAiDK5MhU0VzQAYjRoNHw0hTQAlTSeNHE3dzcAojmxObw52TkA6zkCOic6NzoAQDplOm46dzoAhDqrOtc6/DoAFDuDO4w7oTsA3TshPDI8RjwAUDxaPGk8bTwAgTyLPJQ8sjwAyzz1PPo8Jz0AUT2FPYw9lT0AnD0UPkw+zj4A3z7qPvg+Az8ALD8yP0I/TD8AYj9sP4E/hz8AoT/BP+I/9D8AACAAAHQBAAAAGTA8MEYwTjAAWDBsMIUw3jAAKDE/MUYxUjEAWTH1MQgyDzIAHDIjMrUyyDIAzzLcMuMyhjMAlzOeM7EzwjMAyDPdM+wz9DMACTQVNBs0JTQALjRQNFk0cjQAgTSUNJs0tjQAxjTSNOw0ATUAEjUiNSo1MjUAOjVCNUo1UjUAWjViNXU1mzUArDXnNf81GTYAWDZ2Nos2nDYApDasNrs23jYA4zYINxg3KTcALjczNzs3QDcASDdRN1s3YTcAajd7N+Y38zcAEjgYOC04lTgAsDjNOPg4BjkARzl1OYI5pzkAxDnROeY57TkA+zkNOiE6MToASzpsOn46gzoAiDqfOqw6ujoAvzrMOuE67joA9DohOzk7PzsATztVO2Y7bDsAczuFO487uTsA0DvqO/Q7FTwAJzwzPE88WDwAfDycPLQ8yjwC3oCuAD0GPQ89gBU9SD1OPWHAWACkPak9sj25PQDCPeU9Az4JPgAPPjQ+Oj5hPgBnPnc+mT6xPoC+Psg+4z7twF8A/j4RPxs/Mz8QOT/9PwCPMAAAAlyAAREwHzAlMAAsMIkwoTC1MAC6MNUw4TDvMAD2MAYxITEvMQA1MTwxhjGTMSCfMbUxxMCS3TEAGzIxMj8yRTIAVDJjMpIy7jIA9jL+MgYzDjMAFjMeMyYzRDMASDNUMwBAAADKDMAWEMAYAFDAAYABOijAGDDBAwCuwQMMMCgYMBzBA+DDAwQw8AgwDDBCDD8APwA/AAM/ABYA' $Booster_DLL = _WinAPI_Base64Decode($Booster_DLL) If @error Then Return SetError(1, 0, 0) Local $tSource = DllStructCreate('byte[' & BinaryLen($Booster_DLL) & ']') DllStructSetData($tSource, 1, $Booster_DLL) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 17408) If @error Then Return SetError(3, 0, 0) $tSource = 0 Local Const $bString = Binary(DllStructGetData($tDecompress, 1)) If $bSaveBinary Then Local Const $hFile = FileOpen($sSavePath & "\Rutt_Etra_Izer_FX_Booster.dll", 18) If @error Then Return SetError(2, 0, $bString) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_Booster_DLL Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall("ntdll.dll", "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress #Region GDIPlusEx functions Func _GDIPlusEx_BitmapCreate($iWidth, $iHeight, $iColor = 0) $iWidth = Int($iWidth) $iHeight = Int($iHeight) If $iWidth < 1 Or $iHeight < 1 Then Return SetError(2, 1, False) Local $tBmp = __GDIPlusEx_BitmapCreate($iWidth, $iHeight, $iColor) If @error Or Not IsDllStruct($tBmp) Then Return SetError(9, 2, False) Local $oBitmap = __GDIPlusEx_BitmapCreateObject($tBmp) If Not IsObj($oBitmap) Then __GDIPlusEx_BitmapDispose($tBmp) Return SetError(9, 3, False) EndIf Return $oBitmap EndFunc ;==>_GDIPlusEx_BitmapCreate Func _GDIPlusEx_BufferCreate($hWnd, $iWidth = 0, $iHeight = 0) $iWidth = Int($iWidth) $iHeight = Int($iHeight) If $iWidth < 1 Or $iHeight < 1 Then Local $aSize = WinGetClientSize($hWnd) If $iWidth < 1 Then $iWidth = $aSize[0] If $iHeight < 1 Then $iHeight = $aSize[1] EndIf Local $hDC = _WinAPI_GetDC($hWnd) If @error Then Return SetError(10, 9, False) Local $hCDC = _WinAPI_CreateCompatibleDC($hDC) Local $tBmpInfo = DllStructCreate("struct; uint Size; uint Width; int Height; short Planes; short BitCount; uint Compression; uint SizeImage; int XPelsPerMeter; int YPelsPerMeter; uint ClrUsed; uint ClrImportant; endstruct;") DllStructSetData($tBmpInfo, "Size", DllStructGetSize($tBmpInfo)) DllStructSetData($tBmpInfo, "Width", $iWidth) DllStructSetData($tBmpInfo, "Height", -($iHeight + 4)) DllStructSetData($tBmpInfo, "Planes", 1) DllStructSetData($tBmpInfo, "BitCount", 32) Local $aResult = DllCall("gdi32.dll", "handle", "CreateDIBSection", "handle", 0, "struct*", $tBmpInfo, "uint", 0, "ptr*", 0, "handle", 0, "uint", 0) If @error Or Not $aResult[0] Or Not $aResult[4] Then _WinAPI_DeleteDC($hCDC) _WinAPI_ReleaseDC($hWnd, $hDC) Return SetError(10, 9, False) EndIf Local $hDib = $aResult[0] Local $pBits = $aResult[4] $aResult = DllCall("kernel32.dll", "handle", "GlobalAlloc", "uint", 0, "ulong_ptr", 256) If @error Or Not $aResult[0] Then Return SetError(10, 9, False) Local $pBuffer = $aResult[0] Local $tBuffer = DllStructCreate("struct; ptr Vtbl; int RefCnt; uint IsGDIPEX; uint Width; uint Height; uint Stride; ptr pBits; handle Gfx; handle Dib; handle DC; handle CDC; handle Wnd; handle Obj; ptr pGlobalFree; ptr pGfxDel; ptr pSelObj; ptr pDelObj; ptr pDelDC; ptr pRelDC; ptr pBitBlt; ptr pQueryInterface; ptr pAddRef; ptr pRelease; ptr pDraw; ptr pGetGfx; ptr pGetBits; ptr pGetW; ptr pGetH; ptr pGetStride; endstruct;", $pBuffer) DllStructSetData($tBuffer, "pBits", $pBits) DllStructSetData($tBuffer, "Dib", $hDib) DllStructSetData($tBuffer, "OBJ", _WinAPI_SelectObject($hCDC, $hDib)) DllStructSetData($tBuffer, "Gfx", _GDIPlus_GraphicsCreateFromHDC($hCDC)) DllStructSetData($tBuffer, "Width", $iWidth) DllStructSetData($tBuffer, "Height", $iHeight) DllStructSetData($tBuffer, "Stride", $iWidth * 4) DllStructSetData($tBuffer, "DC", $hDC) DllStructSetData($tBuffer, "CDC", $hCDC) DllStructSetData($tBuffer, "Wnd", $hWnd) DllStructSetData($tBuffer, "IsGDIPEX", 0x42455047) DllStructSetData($tBuffer, "pGlobalFree", $_pGDIPEX_LIB_GLOBALFREE) DllStructSetData($tBuffer, "pGfxDel", $_pGDIPEX_LIB_GFXDEL) DllStructSetData($tBuffer, "pSelObj", $_pGDIPEX_LIB_SELOBJ) DllStructSetData($tBuffer, "pDelObj", $_pGDIPEX_LIB_DELOBJ) DllStructSetData($tBuffer, "pDelDC", $_pGDIPEX_LIB_DELDC) DllStructSetData($tBuffer, "pRelDC", $_pGDIPEX_LIB_RELDC) DllStructSetData($tBuffer, "pBitBlt", $_pGDIPEX_LIB_BITBLT) DllStructSetData($tBuffer, "pQueryInterface", $_pGDIPEX_ASM_OBJ_QUERYIF) DllStructSetData($tBuffer, "pAddRef", $_pGDIPEX_ASM_OBJ_ADDREF) DllStructSetData($tBuffer, "pRelease", $_pGDIPEX_ASM_OBJ_RELBUF) DllStructSetData($tBuffer, "pDraw", $_pGDIPEX_ASM_OBJ_BUFDRAW) DllStructSetData($tBuffer, "pGetGfx", $_pGDIPEX_ASM_OBJ_BUFGFX) DllStructSetData($tBuffer, "pGetBits", $_pGDIPEX_ASM_OBJ_BUFBITS) DllStructSetData($tBuffer, "pGetW", $_pGDIPEX_ASM_OBJ_BUFWIDTH) DllStructSetData($tBuffer, "pGetH", $_pGDIPEX_ASM_OBJ_BUFHEIGHT) DllStructSetData($tBuffer, "pGetStride", $_pGDIPEX_ASM_OBJ_BUFSTRIDE) DllStructSetData($tBuffer, "Vtbl", DllStructGetPtr($tBuffer, "pQueryInterface")) DllStructSetData($tBuffer, "RefCnt", 1) Local $oBuffer = ObjCreateInterface($pBuffer, $_sGDIPEX_IIDBUF, $_tagGDIPEX_BUFFER) If Not IsObj($oBuffer) Then _GDIPlus_GraphicsDispose(DllStructGetData($tBuffer, "Gfx")) _WinAPI_SelectObject(DllStructGetData($tBuffer, "CDC"), DllStructGetData($tBuffer, "OBJ")) _WinAPI_DeleteObject(DllStructGetData($tBuffer, "Dib")) _WinAPI_DeleteDC(DllStructGetData($tBuffer, "CDC")) _WinAPI_ReleaseDC(DllStructGetData($tBuffer, "Wnd"), DllStructGetData($tBuffer, "DC")) DllCall("kernel32.dll", "ptr", "GlobalFree", "struct*", $pBuffer) Return SetError(10, 9, False) EndIf Return $oBuffer EndFunc ;==>_GDIPlusEx_BufferCreate Func _GDIPlusEx_BufferDraw($oBuffer, $iX = 0, $iY = 0, $iROP = 0x00CC0020) If Not IsObj($oBuffer) Then Return SetError(2, 1, False) Local $iStatus = $oBuffer.Draw($iX, $iY, $iROP) If Not $iStatus Then Return SetError(9, 2, False) Return True EndFunc ;==>_GDIPlusEx_BufferDraw Func __GDIPlusEx_ASMCreate(ByRef Const $bBC32, ByRef Const $bBC64) Local $iSize Switch @AutoItX64 Case True $iSize = BinaryLen($bBC64) Case Else $iSize = BinaryLen($bBC32) EndSwitch Local $aResult = DllCall("kernel32.dll", "ptr", "VirtualAlloc", "ptr", 0, "ulong_ptr", $iSize + 16, "dword", 0x00001000, "dword", 0x00000040) If @error Or Not $aResult[0] Then Return SetError(1, 0, False) Local $pStruct = Number($aResult[0]) If Mod($pStruct, 16) Then $pStruct = $pStruct + 16 - Mod($pStruct, 16) Local $tStruct = DllStructCreate("byte[" & $iSize & "];", $pStruct) Switch @AutoItX64 Case True DllStructSetData($tStruct, 1, $bBC64) Case Else DllStructSetData($tStruct, 1, $bBC32) EndSwitch DllCall("kernel32.dll", "bool", "VirtualProtect", "struct*", $pStruct, "ulong_ptr", $iSize, "dword", 16, "dword*", 0) Local $iIdx = $_aGDIPEX_ASMSTRUCT[0] + 1 If $iIdx >= UBound($_aGDIPEX_ASMSTRUCT) Then ReDim $_aGDIPEX_ASMSTRUCT[$iIdx + 1] $_aGDIPEX_ASMSTRUCT[0] = $iIdx $_aGDIPEX_ASMSTRUCT[$iIdx] = $pStruct Return $pStruct EndFunc ;==>__GDIPlusEx_ASMCreate Func __GDIPlusEx_BitmapCreate($iW, $iH, $iColor = 0) $iW = Int($iW) $iH = Int($iH) Local $iStride = $iW * 4 If Mod($iStride, 16) Then $iStride += 16 - Mod($iStride, 16) Local $aResult = DllCall("kernel32.dll", "handle", "GlobalAlloc", "uint", 0x40, "ulong_ptr", $iStride * ($iH + 4) * 4 + 32) If @error Or Not $aResult[0] Then Return SetError(9, 1, False) Local $pScan0 = Number($aResult[0]) $aResult = DllCall("kernel32.dll", "handle", "GlobalAlloc", "uint", 0x40, "ulong_ptr", 256) If @error Or Not $aResult[0] Then DllCall("kernel32.dll", "ptr", "GlobalFree", "struct*", $pScan0) Return SetError(9, 2, False) EndIf Local $tBitmap = DllStructCreate("struct; ptr Vtbl; int RefCnt; uint IsGDIPEX; uint Width; uint Height; uint Stride; ptr pScan0; ptr pScan0ORIG; endstruct;", $aResult[0]) DllStructSetData($tBitmap, "Width", $iW) DllStructSetData($tBitmap, "Height", $iH) DllStructSetData($tBitmap, "Stride", $iStride) DllStructSetData($tBitmap, "pScan0ORIG", $pScan0) If Mod($pScan0, 16) Then $pScan0 += 16 - Mod($pScan0, 16) DllStructSetData($tBitmap, "pScan0", $pScan0) DllStructSetData($tBitmap, "IsGDIPEX", 0x41455047) If $iColor Then DllCallAddress("none", $_pGDIPEX_ASM_BMPCLR, "struct*", $tBitmap, "uint", $iColor) Return $tBitmap EndFunc ;==>__GDIPlusEx_BitmapCreate Func __GDIPlusEx_BitmapCreateObject($tBmp) If @error Or Not IsDllStruct($tBmp) Then Return SetError(2, 1, False) Local $tBitmap = DllStructCreate("struct; ptr Vtbl; int RefCnt; uint IsGDIPEX; uint Width; uint Height; uint Stride; ptr pScan0; ptr pScan0ORIG; handle Gfx; handle Bmp; ptr pGlobalFree; ptr pGfxDel; ptr pBmpDel; ptr pQueryInterface; ptr pAddRef; ptr pRelease; ptr pGetBmp; ptr pGetGfx; ptr pGetScan0; ptr pGetW; ptr pGetH; ptr pGetStride; ptr pDraw; ptr pDrawRect; endstruct;", DllStructGetPtr($tBmp)) Local $hBmp = _GDIPlus_BitmapCreateFromScan0(DllStructGetData($tBmp, "Width"), DllStructGetData($tBmp, "Height"), $GDIP_PXF32ARGB, DllStructGetData($tBmp, "Stride"), DllStructGetData($tBmp, "pScan0")) Local $hGfx = _GDIPlus_ImageGetGraphicsContext($hBmp) DllStructSetData($tBitmap, "Bmp", $hBmp) DllStructSetData($tBitmap, "Gfx", $hGfx) DllStructSetData($tBitmap, "pGlobalFree", $_pGDIPEX_LIB_GLOBALFREE) DllStructSetData($tBitmap, "pGfxDel", $_pGDIPEX_LIB_GFXDEL) DllStructSetData($tBitmap, "pBmpDel", $_pGDIPEX_LIB_BMPDEL) DllStructSetData($tBitmap, "pQueryInterface", $_pGDIPEX_ASM_OBJ_QUERYIF) DllStructSetData($tBitmap, "pAddRef", $_pGDIPEX_ASM_OBJ_ADDREF) DllStructSetData($tBitmap, "pRelease", $_pGDIPEX_ASM_OBJ_RELBMP) DllStructSetData($tBitmap, "pGetBmp", $_pGDIPEX_ASM_OBJ_BMPBMP) DllStructSetData($tBitmap, "pGetGfx", $_pGDIPEX_ASM_OBJ_BMPGFX) DllStructSetData($tBitmap, "pGetScan0", $_pGDIPEX_ASM_OBJ_BMPSCAN0) DllStructSetData($tBitmap, "pGetW", $_pGDIPEX_ASM_OBJ_BMPWIDTH) DllStructSetData($tBitmap, "pGetH", $_pGDIPEX_ASM_OBJ_BMPHEIGHT) DllStructSetData($tBitmap, "pGetStride", $_pGDIPEX_ASM_OBJ_BMPSTRIDE) DllStructSetData($tBitmap, "pDraw", $_pGDIPEX_ASM_BMPDRAW) DllStructSetData($tBitmap, "pDrawRect", $_pGDIPEX_ASM_BMPDRAWRECT) DllStructSetData($tBitmap, "Vtbl", DllStructGetPtr($tBitmap, "pQueryInterface")) DllStructSetData($tBitmap, "RefCnt", 1) Local $oBitmap = ObjCreateInterface(DllStructGetPtr($tBmp), $_sGDIPEX_IIDBMP, $_tagGDIPEX_BITMAP) If Not IsObj($oBitmap) Then _GDIPlus_GraphicsDispose($hGfx) _GDIPlus_BitmapDispose($hBmp) Return SetError(9, 3, False) EndIf Return $oBitmap EndFunc ;==>__GDIPlusEx_BitmapCreateObject Func __GDIPlusEx_BitmapDispose(ByRef $tBitmap) If Not IsDllStruct($tBitmap) Then Return SetError(2, 1, False) DllCall("kernel32.dll", "ptr", "GlobalFree", "struct*", DllStructGetData($tBitmap, "pScan0ORIG")) DllCall("kernel32.dll", "ptr", "GlobalFree", "struct*", DllStructGetPtr($tBitmap)) $tBitmap = 0 Return True EndFunc ;==>__GDIPlusEx_BitmapDispose Func __GDIPlusEx_OnExit() If Not IsArray($_aGDIPEX_ASMSTRUCT) Or UBound($_aGDIPEX_ASMSTRUCT) < 1 Or UBound($_aGDIPEX_ASMSTRUCT, 0) <> 1 Then Return If $_aGDIPEX_ASMSTRUCT[0] >= UBound($_aGDIPEX_ASMSTRUCT) Then $_aGDIPEX_ASMSTRUCT[0] = UBound($_aGDIPEX_ASMSTRUCT) - 1 For $i = 1 To $_aGDIPEX_ASMSTRUCT[0] DllCall("kernel32.dll", "bool", "VirtualFree", "ptr", $_aGDIPEX_ASMSTRUCT[$i], "ulong_ptr", 0, "dword", 0x00008000) Next $_oGDIPEX_D2DFACTORY = 0 _GDIPlus_Shutdown() EndFunc ;==>__GDIPlusEx_OnExit #EndRegion GDIPlusEx functions  
       
      3D Starfield Scrolling v1:
      ;coded by UEZ Build 2016-06-06 #include <GDIPlus.au3> #include <GUIConstantsEx.au3> #include <Timers.au3> #include <WindowsConstants.au3> Opt("GUIOnEventMode", 1) Opt("MustDeclareVars", 1) _GDIPlus_Startup() Global Const $iW = @DesktopWidth Global Const $iW2 = $iW / 2 Global Const $iH = @DesktopHeight Global Const $iH2 = $iH / 2 Global Const $hFullScreen = WinGetHandle("Program Manager") Global Const $aFullScreen = WinGetPos($hFullScreen) Global Const $main_screen_x = Abs($aFullScreen[0]) Global Const $hGUI = GUICreate("GDI+ Simple 3D Starfield Scrolling by UEZ boosted by FreeBasic", $aFullScreen[2], $aFullScreen[3], $aFullScreen[0], $aFullScreen[1], $WS_POPUP, $WS_EX_TOPMOST) GUISetBkColor(0x000000, $hGUI) GUISetState() Global $pBitmap Global Const $hBitmap = _WinAPI_BitmapCreateDIB($iW, $iH, $pBitmap) Global Const $hDC = _WinAPI_GetWindowDC($hGUI) Global Const $hDC_backbuffer = _WinAPI_CreateCompatibleDC($hDC) Global Const $DC_obj = _WinAPI_SelectObject($hDC_backbuffer, $hBitmap) Global Const $hGraphic = _GDIPlus_GraphicsCreateFromHDC($hDC_backbuffer) ;~ _GDIPlus_GraphicsSetSmoothingMode($hGraphic, $GDIP_SMOOTHINGMODE_HIGHQUALITY) _GDIPlus_GraphicsSetPixelOffsetMode($hGraphic, $GDIP_PIXELOFFSETMODE_HIGHQUALITY) Global Const $hPen = _GDIPlus_PenCreate(0, 1) Global Const $hBrush = _GDIPlus_BrushCreateSolid(0xFF000000) Global Const $hBrush_Text = _GDIPlus_BrushCreateSolid(0xA0FFFFFF) Global Const $hFormat = _GDIPlus_StringFormatCreate() Global Const $hFamily = _GDIPlus_FontFamilyCreate("Arial") Global Const $hFont = _GDIPlus_FontCreate($hFamily, 9) Global Const $tLayout = _GDIPlus_RectFCreate($iW - 128, 0, 0, 0) Global Const $maxStars = 10000 Global Const $speed = 110.0 ;the higher the value the slow the speed Global Const $c = Int(Sqrt($iW^2 + $iH^2) / $iH) Global $sDLL = @ScriptDir & "\3D Starfield Scrolling v1 Booster.dll" If Not FileExists($sDLL) Then _BoosterDLL(True) Global $hDLL = DllOpen($sDLL) Global $j = 1, $tStars = DllStructCreate("float x[" & $maxStars & "]; float y[" & $maxStars & "];int c[" & $maxStars & "]") For $j = 1 To $maxStars NewStars($j) Next Global Const $om = MouseGetCursor() Global $idle_o, $idle_n, $fps = 0, $newx, $newy, $i Global $fps2 = 0 GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") GUISetCursor(16, 1, $hGUI) OnAutoItExitRegister("_Exit") AdlibRegister("FPS", 1000) While Sleep(10) Draw_Stars() WEnd Func FPS() $fps = $fps2 $fps2 = 0 EndFunc ;==>FPS Func Draw_Stars() $idle_n = _Timer_GetIdleTime() If $idle_n < $idle_o Then _Exit() $idle_o = $idle_n _GDIPlus_GraphicsFillRect($hGraphic, 0, 0, $iW, $iH, $hBrush) DllCall($hDLL, "none", "Boost", "ptr", $hGraphic, "struct*", $tStars, "float", $speed, "float", $iW2, "float", $iH2, _ "int", $iW, "int", $iH, "int", $maxStars, "int", $c) _GDIPlus_GraphicsDrawStringEx($hGraphic, $maxStars & " stars @ " & $fps & " fps", $hFont, $tLayout, $hFormat, $hBrush_Text) DllCall("gdi32.dll", "bool", "BitBlt", "ptr", $hDC, "int", $main_screen_x, "int", 0, "int", $iW, "int", $iH, "ptr", $hDC_backbuffer, "int", 0, "int", 0, "dword", $SRCCOPY) $fps2 += 1 EndFunc ;==>Draw_Stars Func NewStars($j, $sx = 0, $sy = 0, $ex = $iW, $ey = $iH) $tStars.x(($j)) = Random($sx, $ex, 1) - $iW2 $tStars.y(($j)) = Random($sy, $ey, 1) - $iH2 $tStars.c(($j)) = 0 EndFunc ;==>NewStars Func _Exit() AdlibUnRegister("FPS") GUISetCursor($om, 1, $hGUI) _GDIPlus_FontDispose($hFont) _GDIPlus_FontFamilyDispose($hFamily) _GDIPlus_StringFormatDispose($hFormat) _GDIPlus_PenDispose($hPen) _GDIPlus_BrushDispose($hBrush) _GDIPlus_BrushDispose($hBrush_Text) _GDIPlus_GraphicsDispose($hGraphic) _WinAPI_SelectObject($hDC_backbuffer, $DC_obj) _WinAPI_DeleteDC($hDC_backbuffer) _WinAPI_DeleteObject($hBitmap) _WinAPI_ReleaseDC($hGUI, $hDC) _GDIPlus_Shutdown() GUIDelete($hGUI) DllClose($hDLL) Exit EndFunc ;==>_Exit Func _WinAPI_BitmapCreateDIB($iWidth, $iHeight, ByRef $pHBitmap) Local $tBMI = DllStructCreate($tagBITMAPINFO) $tBMI.biSize = DllStructGetSize($tBMI) - 4 $tBMI.biWidth = $iWidth $tBMI.biHeight = -$iHeight $tBMI.biPlanes = 1 $tBMI.biBitCount = 32 Local $aResult = DllCall("gdi32.dll", "ptr", "CreateDIBSection", "hwnd", 0, "struct*", $tBMI, "uint", 0, "ptr*", 0, "ptr", 0, "uint", 0) $pHBitmap = $aResult[4] Return $aResult[0] EndFunc ;Code below was generated by: 'File to Base64 String' Code Generator v1.20 Build 2015-09-19 Func _BoosterDLL($bSaveBinary = False, $sSavePath = @ScriptDir) Local $BoosterDLL $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= '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' $BoosterDLL &= 'jjqWOp46pkA6rjq2Or5wLOQAOug69DoAQAAEAAwgJiQwKDAAwlAiNwBIMEzQEYAAgtDzAAwwGDAc8QAC4PMABDAIMAww/hARAQ8ADwAPAA8ADwAAAA==' $BoosterDLL = _WinAPI_Base64Decode($BoosterDLL) If @error Then Return SetError(1, 0, 0) Local $tSource = DllStructCreate('byte[' & BinaryLen($BoosterDLL) & ']') DllStructSetData($tSource, 1, $BoosterDLL) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 19968) If @error Then Return SetError(3, 0, 0) $tSource = 0 Local Const $bString = Binary(DllStructGetData($tDecompress, 1)) If $bSaveBinary Then Local Const $hFile = FileOpen($sSavePath & "\3D Starfield Scrolling v1 Booster.dll", 18) If @error Then Return SetError(2, 0, $bString) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_BoosterDLL Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall("ntdll.dll", "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress  
       
      3D Starfield Scrolling v3 boosted.au3:
      ;coded by UEZ build 2016-06-10 #AutoIt3Wrapper_Run_Au3Stripper=y #Au3Stripper_Parameters=/so /pe /rm #AutoIt3Wrapper_Run_After=del /f /q "%scriptdir%\%scriptfile%_stripped.au3" #include <GDIPlus.au3> #include <GuiConstantsEx.au3> #include <WindowsConstants.au3> Global Const $hFullScreen = WinGetHandle("Program Manager") Global Const $aFullScreen = WinGetPos($hFullScreen) Global Const $iMainScreenX = Abs($aFullScreen[0]) Global $hGUI_3DStars, $iFPS = 0, $iCFPS, $iW, $iWh, $iH, $iHh, $hPen_Stars, $bExit_3DStars Global Const $fWarpZ = 5.5, $iStars = 21000, $fZDeep = 0.05 Global $fCycle = 0 ;for color Global $tStars = DllStructCreate("float x[" & $iStars & "];float y[" & $iStars & "];float z[" & $iStars & "];float px[" & $iStars & "];float py[" & $iStars & "]") Global $fCenterX = $iWh, $fCenterY = $iHh Global Const $sTitle = "3D Star Scrolling (" & $iStars & " stars) / FPS: " AutoItSetOption("GUIOnEventMode", 1) Global $sDLL = @ScriptDir & "\3D Starfield Scrolling v3 Booster.dll" If Not FileExists($sDLL) Then _StarsBoosterDLL(True) Global $hDLL = DllOpen($sDLL) StarScroller3D() DllClose($hDLL) AutoItSetOption("GUIOnEventMode", 0) ConsoleWrite("The end." & @CRLF) Func StarScroller3D() _GDIPlus_Startup() $bExit_3DStars = False $iW = @DesktopWidth $iH = @DesktopHeight $iWh = $iW / 2 $iHh = $iH / 2 Local $pBitmap Local $i, $xx, $yy, $fWidth, $iColor, $c, $iCount, $fPosX, $fPosY, $z = 0, $ii = -99 For $i = 0 To $iStars - 1 Reset_Star($i, 1.5) Next $hGUI_3DStars = GUICreate($sTitle & 0, $aFullScreen[2], $aFullScreen[3], $aFullScreen[0], $aFullScreen[1], $WS_POPUP, $WS_EX_TOPMOST) GUISetCursor(16, 1, $hGUI_3DStars) GUISetBkColor(0) GUISetState(@SW_SHOW, $hGUI_3DStars) Local Const $hHBitmap = _WinAPI_BitmapCreateDIB($iW, $iH, $pBitmap) Local Const $hDC = _WinAPI_GetDC($hGUI_3DStars) Local Const $hDC_backbuffer = _WinAPI_CreateCompatibleDC($hDC) Local Const $DC_obj = _WinAPI_SelectObject($hDC_backbuffer, $hHBitmap) Local Const $hGfxCtxt = _GDIPlus_GraphicsCreateFromHDC($hDC_backbuffer) Local Const $hBrush_Text = _GDIPlus_BrushCreateSolid(0xA0FFFFFF) Local Const $hFormat = _GDIPlus_StringFormatCreate() Local Const $hFamily = _GDIPlus_FontFamilyCreate("Arial") Local Const $hFont = _GDIPlus_FontCreate($hFamily, 9) Local Const $tLayout = _GDIPlus_RectFCreate($iW - 128, 0, 0, 0) _GDIPlus_GraphicsSetSmoothingMode($hGfxCtxt, $GDIP_SMOOTHINGMODE_HIGHQUALITY) _GDIPlus_GraphicsSetPixelOffsetMode($hGfxCtxt, $GDIP_PIXELOFFSETMODE_HIGHQUALITY) $hPen_Stars = _GDIPlus_PenCreate(0) $iFPS = 0 GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit_3DStars") AdlibRegister("CalcFPS", 1000) Do _GDIPlus_GraphicsClear($hGfxCtxt, 0xFF000000) ;~ _WinAPI_BitBlt($hDC_backbuffer, 0, 0, $iW, $iH, $hDC_backbuffer, 0, 0, $BLACKNESS) $ii += 0.0075 $fCenterX = $iWh + (220 * Cos($ii * 2)) $fCenterY = $iHh + (200 * Sin($ii * 3)) $iCount = DllCall($hDLL, "uint", "Boost", "ptr", $hGfxCtxt, "struct*", $tStars, "int", $iStars, _ "float", $fCenterX, "float", $fCenterY, "float", $fCycle, "float", $fZDeep, "float", $fWarpZ, "int", $iW, "int", $iH)[0] $fCycle += 0.05 ;star color cycle _GDIPlus_GraphicsDrawStringEx($hGfxCtxt, $iCount & " stars @ " & $iCFPS & " fps", $hFont, $tLayout, $hFormat, $hBrush_Text) _WinAPI_BitBlt($hDC, $iMainScreenX, 0, $iW, $iH, $hDC_backbuffer, 0, 0, $SRCCOPY) If $bExit_3DStars Then ExitLoop $iFPS += 1 Until Not Sleep(10) AdlibUnRegister("CalcFPS") _WinAPI_SelectObject($hDC_backbuffer, $DC_obj) _WinAPI_DeleteDC($hDC_backbuffer) _WinAPI_DeleteObject($hHBitmap) _WinAPI_ReleaseDC($hGUI_3DStars, $hDC) _GDIPlus_GraphicsDispose($hGfxCtxt) _GDIPlus_PenDispose($hPen_Stars) _GDIPlus_FontDispose($hFont) _GDIPlus_FontFamilyDispose($hFamily) _GDIPlus_StringFormatDispose($hFormat) _GDIPlus_BrushDispose($hBrush_Text) GUIDelete($hGUI_3DStars) _GDIPlus_Shutdown() EndFunc ;==>StarScroller3D Func _Exit_3DStars() $bExit_3DStars = True EndFunc ;==>_Exit_3DStars Func CalcFPS() $iCFPS = $iFPS $iFPS = 0 EndFunc ;==>CalcFPS Func Reset_Star($a, $fFactor = 5) $tStars.x(($a)) = (Random(0.01, $fFactor) * $iW - $iWh) * $fWarpZ $tStars.y(($a)) = (Random(0.01, $fFactor) * $iH - $iHh) * $fWarpZ $tStars.z(($a)) = $fWarpZ $tStars.px(($a)) = 0 $tStars.py(($a)) = 0 EndFunc ;==>Reset_Star Func _WinAPI_BitmapCreateDIB($iWidth, $iHeight, ByRef $pHBitmap) Local $tBMI = DllStructCreate($tagBITMAPINFO) $tBMI.biSize = DllStructGetSize($tBMI) - 4 $tBMI.biWidth = $iWidth $tBMI.biHeight = -$iHeight $tBMI.biPlanes = 1 $tBMI.biBitCount = 32 Local $aResult = DllCall("gdi32.dll", "ptr", "CreateDIBSection", "hwnd", 0, "struct*", $tBMI, "uint", 0, "ptr*", 0, "ptr", 0, "uint", 0) $pHBitmap = $aResult[4] Return $aResult[0] EndFunc ;==>_WinAPI_BitmapCreateDIB ;Code below was generated by: 'File to Base64 String' Code Generator v1.20 Build 2015-09-19 Func _StarsBoosterDLL($bSaveBinary = False, $sSavePath = @ScriptDir) Local $StarsBoosterDLL $StarsBoosterDLL &= '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' $StarsBoosterDLL &= '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' $StarsBoosterDLL &= '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' $StarsBoosterDLL &= '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' $StarsBoosterDLL &= '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' $StarsBoosterDLL &= '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' $StarsBoosterDLL &= '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' $StarsBoosterDLL &= 'NoI2pTbDNskANs829Db6NiEANyc3NzdZN3EAN343iDejN60AN7g3vjfRN9sAN/M3+Te9ONEQON845ZAXSTlhADl1OXo5lTmhADmvObY5xjnhAfAX9Tn8OUY6UwA6Xzp1OoQ6mAA6nTrbOvE6/wA6BTsUOyM7UgA7rju2O747xkA7zjvWO95wLAQAPAg8FDwAQAAEAAxgEiwwMDAAglDiNgBIMEwwsHWDQODzAAwwGDAc8QCK4PMABDAVDDAQEQE/DwAPAA8ADwAPAAQA' $StarsBoosterDLL = _WinAPI_Base64Decode($StarsBoosterDLL) If @error Then Return SetError(1, 0, 0) Local $tSource = DllStructCreate('byte[' & BinaryLen($StarsBoosterDLL) & ']') DllStructSetData($tSource, 1, $StarsBoosterDLL) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 20480) If @error Then Return SetError(3, 0, 0) $tSource = 0 Local Const $bString = Binary(DllStructGetData($tDecompress, 1)) If $bSaveBinary Then Local Const $hFile = FileOpen($sSavePath & "\3D Starfield Scrolling v3 Booster.dll", 18) If @error Then Return SetError(2, 0, $bString) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_StarsBoosterDLL Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall("ntdll.dll", "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress  
       
      FreeBasic source codes:
      3D Object Rotation v1.3.0:
      'coded by UEZ build 2016-06-10 beta #Include Once "win\gdiplus.bi" Using GDIPLUS Extern "Windows-MS" Sub Boost(ByVal hCanvas as GpGraphics Ptr, ByVal tData As Any Ptr, _ iCountX As ULong, iCountY As ULong, _ fX As Single, fY As Single, fZ As Single, fW As Single, fH As Single, fScale As Single = 1.0, fZDeepCorrection As Single = 1000.0) Export Dim As ULong c, iUBound, iSingle Dim As Single Ptr pX, pY, pZ, pfX, pfY, pFZ Dim As UInteger Ptr pPen Dim As Single fCosRotX, fSinRotX, fCosRotY, fSinRotY, fCosRotZ, fSinRotZ, f1, f2, f3, f4, f5, f6, fXPos, fYPos, fZPos, fZPerspCorrection iUBound = iCountX * iCountY + iCountX + iCountY + 1 iSingle = SizeOf(Single) For c = 0 To iUbound - 1 'get pointers to each struct element pX = tData '+ 0 * iUBound + 0 * iSingle pY = tData + 1 * iUBound * iSingle pZ = tData + 2 * iUBound * iSingle pfX = tData + 3 * iUBound * iSingle pfY = tData + 4 * iUBound * iSingle pfZ = tData + 5 * iUBound * iSingle pPen = tData + 6 * iUBound * iSingle 'calculate 3D rotation fCosRotX = Cos(fX) fSinRotX = Sin(fX) fCosRotY = Cos(fY) fSinRotY = Sin(fY) fCosRotZ = Cos(fZ) fSinRotZ = Sin(fZ) f1 = fCosRotY * pX[c] f2 = fSinRotX * pY[c] f3 = fCosRotX * pZ[c] f4 = fCosRotX * pY[c] f5 = fSinRotX * pZ[c] f6 = f1 - fSinRotY * (f2 + f3) fXPos = (fCosRotZ * f6 - fSinRotZ * (f4 - f5)) * fScale fYPos = (fSinRotZ * f6 + fCosRotZ * (f4 - f5)) * fScale fZPos = (fSinRotY * pX[c] + fCosRotY * (f2 + f3)) * fScale fZPerspCorrection = 1 / (fZPos / fZDeepCorrection + 1) pfX[c] = fXPos * fZPerspCorrection + fW pfY[c] = fYPos * fZPerspCorrection + fH pfZ[c] = fZPos 'draw lines If c > 0 Then GdipDrawLine(hCanvas, pPen[c], pfX[c - 1], pfY[c - 1], pfX[c], pfY[c]) EndIf Next End Sub End Extern  
      Plasma Variante 5:
      'coded by UEZ build 2016-06-10 beta #Include Once "win\gdiplus.bi" #Include Once "crt\math.bi" Using GDIPLUS Extern "Windows-MS" Function Dist(a As Single, b As Single, c As Single, d As Single) As Single Return Sqrt((a - c) * (a - c) + (b - d) * (b - d)) End Function Sub Boost(ByVal hCanvas as GpGraphics Ptr, iSizeW As Long, iSizeH As Long, iW As Long, iH As Long, fTime As Single) Export Dim As Long iX, iY, iARGB Dim As Single cx, cy, v, f1, fDist Const Pi As Double = 3.1415926535897932 Dim As GpBrush Ptr hBrush For iY = 0 To iH - iSizeH Step iSizeH For iX = 0 To iW - iSizeW Step iSizeW fDist = Dist(fTime * 1.5, iX, iY, 32) cx = iX + 128 * Sin(fDist / 48) fDist = Dist(iY, 128, fTime * 2.5, 8) cy = iY + 92 * Cos(fDist / 32) v = Cos(Sqrt(cx * cx + cy * cy) / 512 + fTime) f1 = v * Pi iARGB = &hFF000000 + &h10000 * Int(Abs(Cos(f1 / 2)) * &hFF) + &h100 * Int(Abs(Sin(f1 * 2)) * &hFF) + Int(Abs(Cos(f1 / 1.5)) * &hFF) GdipCreateSolidFill(iARGB, @hBrush) GdipFillRectangle(hCanvas, hBrush, iX, iY, iSizeW, iSizeH) GdipDeleteBrush(hBrush) Next Next End Sub End Extern  
      3D Starfield Scrolling v3:
      'coded by UEZ build 2016-06-10 beta #Include Once "win\gdiplus.bi" Using GDIPLUS Extern "Windows-MS" Declare Function rnd_range (first As Single, last As Single) As Single Declare Function Boost(ByVal hCanvas as GpGraphics Ptr, ByVal tStars As Any Ptr, iStars As Long, _ fCenterX As Single, fCenterY As Single, fCycle As Single, fZDeep As Single, fWarpZ As Single, _ iW As Long, iH As Long) As ULong Function rnd_range (first As Single, last As Single) As Single Function = Rnd * (last - first) + first End Function Function Boost(ByVal hCanvas as GpGraphics Ptr, ByVal tStars As Any Ptr, iStars As Long, _ fCenterX As Single, fCenterY As Single, fCycle As Single, fZDeep As Single, fWarpZ As Single, _ iW As Long, iH As Long) As ULong Export Dim As Single Ptr pX, pY, pZ, pPX, pPY Dim As ULong iSingle, i, c, iColor, iCount Dim As Single xx, yy, fWidth, fPosX, fPosY Dim As GpPen Ptr hPen iSingle = SizeOf(Single) pX = tStars pY = tStars + iStars * iSingle pZ = tStars + 2 * iStars * iSingle pPX = tStars + 3 * iStars * iSingle pPY = tStars + 4 * iStars * iSingle iCount = 0 For i = 0 To iStars - 1 xx = pX[i] / pZ[i] yy = pY[i] / pZ[i] fWidth = 1.5 / pZ[i] If pPX[i] <> 0 Then fPosX = xx + fCenterX fPosY = yy + fCenterY If fPosX > 0 And fPosX < iW And fPosY > 0 And fPosY < iH Then c = Int(&h80 + Sin(i + fCycle) * 50) If c > 255 Then c = 255 If c < 0 Then c = 0 iColor = &hF0000000 + c * &h10000 + c * &h100 + c GdipCreatePen1(iColor, fWidth, 2, @hPen) GdipDrawEllipse(hCanvas, hPen, fPosX, fPosY, fWidth, fWidth) GdipDeletePen(hPen) iCount += 1 EndIf EndIf pZ[i] -= fZDeep pPX[i] = xx pPY[i] = yy If pZ[i] < fZDeep Or pPX[i] > iW Or pPY[i] > iH Then pX[i] = (Rnd * iW - iW / 2) * fWarpZ pY[i] = (Rnd * iH - iH / 2) * fWarpZ pZ[i] = fWarpZ pPX[i] = 0 pPY[i] = 0 EndIf Next Return iCount End Function End Extern  
      3D Starfield Scrolling v1:
      'coded by UEZ build 2016-06-10 beta #Include Once "win\gdiplus.bi" Using GDIPLUS Extern "Windows-MS" Declare Function rnd_range (first As Single, last As Single) As Single Function rnd_range (first As Single, last As Single) As Single Function = Rnd * (last - first) + first End Function Sub Boost(ByVal hCanvas as GpGraphics Ptr, ByVal tStars As Any Ptr, fSpeed As Single, iW2 As Single, iH2 As Single, iW As Long, iH As Long, _ maxStars As Long, r As Long) Export Dim As Double newx, newy Dim As Single Ptr pX, pY Dim As Integer Ptr pC Dim As Long iSingle, iColor, j Dim As GpPen Ptr hPen GdipCreatePen1(&hFFFFFFFF, 1, 2, @hPen) iSingle = SizeOf(Single) pX = tStars pY = tStars + maxStars * iSingle pC = tStars + 2 * maxStars * iSingle j = 0 Do Until j > maxStars - 1 pX[j] += pX[j] / fSpeed pY[j] += pY[j] / fSpeed pC[j] += r If pC[j] > &hFF Then pC[j] = &hFF EndIf iColor = &hFF000000 + pC[j] * &h10000 + pC[j] * &h100 + pC[j] newx = pX[j] + iW2 newy = pY[j] + iH2 GdipSetPenColor(hPen, iColor) GdipDrawRectangle(hCanvas, hPen, iW2 - pX[j], iH2 - pY[j], 1, 1) If newx < 0 Or newx > iW Or newy < 0 Or newy > iH Then pX[j] = iW2 * rnd_range(0.5, 1.5) - iW2 pY[j] = iH2 * rnd_range(0.5, 1.5) - iH2 pC[j] = 0 EndIf j += 1 Loop GdipDeletePen(hPen) End Sub End Extern  
       
      I'm absolutely new to FreeBasic, so there might be much better approches! 
       
      Have fun.
       
      Download all examples + some more: FreeBasic Examples build 2016-08-29.7z
    • rm4453
      Custom Stream GUI Using Autoit Gui Wrap
      By rm4453
      Hey guys! I need to find a way to wrap an autoit gui around a game. I am planning on making a custom gui overlay for interacting with my stream, which will allow me to run giveaways and stuff like that. But I need to find a way to force the steam games to run inside my autoit gui... I have the following code so far credit to those I took code from and modified to suite my needs "can't remember who u are pls post if i owe ty to u" If I select notepad and launch it then it works great! and the notepad window is wrapped inside my gui. However if I try it with teamfortress 2 it won't work...
       
      #include <Array.au3> #include <File.au3> #include <WinAPI.au3> #include <GUIConstants.au3> Local $msg, $hwnd, $WinHwnd ;===> UDV Start $pid = 0 $Hidden = 0 $exe = 0 $sDrive = 0 $sDir = 0 $sFileName = 0 $sExtension = 0 ;===> UDV End $hwnd = GUICreate("hello") $Open = GUICtrlCreateButton("Launch Game", 10, 30, 75, 25) $Select = GUICtrlCreateButton("Select Game", 10,60,75,25) GUISetState() ;===> UDF START Func _GetWinHwnd($pid) $aWinlist = WinList() For $i = 1 To $aWinlist[0][0] If $pid = WinGetProcess($aWinlist[$i][0]) Then Return $aWinlist[$i][0] Next EndFunc ;==>_GetWinHwnd Func _SetParentWindow($pid) $WinInfo = _GetWinHwnd($pid) $WinHwnd = ControlGetHandle($WinInfo, "", "") _WinAPI_SetParent($WinHwnd, $hwnd) _WinAPI_SetWindowLong($WinHwnd, $GWL_STYLE, $WS_POPUP + $WS_VISIBLE) WinMove($WinHwnd, "", 0, 0) EndFunc ;==>_SetParentWindow Func RedrawGui($RedrawMe) If ProcessExists($pid) And $Hidden = 0 Then GUICtrlSetState($RedrawMe, @SW_HIDE) $Hidden = 1 sleep(50) _WinAPI_RedrawWindow($pid) Sleep(50) ElseIf $Hidden = 1 And Not ProcessExists($pid) Then GUICtrlSetState($RedrawMe, @SW_SHOW) $Hidden = 0 EndIf EndFunc ;===> UDF END While 1 $msg = GUIGetMsg() Switch $msg Case $GUI_EVENT_CLOSE If ProcessExists($pid) Then ProcessClose($pid) GUICtrlSetState($Open, @SW_SHOW) Else Exit EndIf Case $Open GUICtrlSetState($Open, @SW_HIDE) Sleep(100) $pid = Run('"' & $exe & '" -game tf -steam') #cs This RUN CMD is custom made for testing with TF2 change to just $exe to select any exe you want to test with -game tf specifies to launch tf2 and -steam gets rid of insecure mode error #ce RedrawGui($Open) ProcessWait($pid) Sleep(5500) _GetWinHwnd($pid) _SetParentWindow($pid) Case $Select $exe = FileOpenDialog("Please select your game!", @ScriptDir, "Executable File (*.exe)", "1", "Process Selection") Sleep(50) FileChangeDir(@ScriptDir) _PathSplit($exe, $sDrive, $sDir, $sFileName, $sExtension) EndSwitch WEnd  
    • scintilla4evr
      vPaint - GDI+ image editor
      By scintilla4evr
      Hello everyone!
      As always, I'm proud to present you vPaint. It's an image editor. It uses GDI+ as its drawing library.

      I want to thank to all members of this forum. Without you, this app wouldn't be ever written. Thank you for everything.
       
      Download:
      vPaint 4 image editor
    • Wingens
      Info scraper
      By Wingens
      Hi,
      I don't know if it is possible but I am creating a little program to catalog my game collection.
      It would be awesome if my program could get the boxcover, developer info and game info with the titles I add.
      Does anyone know how to get me started?
    • scintilla4evr
      Motion Graphics UDF
      By scintilla4evr
      Simple UDF for creating animations in GDI+
       
      If you want to see more "experimental" features, go to GitHub.