Heya peoples,
I was cruising through the B+ Demo a few weeks ago, (it's all I have) when I came across that program "Bite Me.bb" by Shagwana. That was funny, and it gave me an idea, so I cooked up this 15K (no white space!) file, "Byte Me."
First off, Byte Me IS NOT A REAL VIRUS. It's not designed to screw up your computer or do anything remotely malicious, it's all just a well-done act, for fun. Scout's honor. ^_^
Second, I KNOW the code is not "beautiful," i.e. easy-to-interpret; it's not supposed to be. In fact, after I finished the program, I scrambled the blocks of code to make it even HARDER to understand; I didn't want you immediately guessing what it would do.
Third, this has only been tested on Windows XP. Other operating systems might not get the full benefit of this; I don't know.
Finally, some tips to "beat" the "virus:"
-If a load of mini "tool" windows pops up, just close the one that's highlighted (active).
-If a bunch of LARGE windows pops up, DON'T PANIC; just close them all one by one.
So, without further ado, I present: Byte Me!
I was cruising through the B+ Demo a few weeks ago, (it's all I have) when I came across that program "Bite Me.bb" by Shagwana. That was funny, and it gave me an idea, so I cooked up this 15K (no white space!) file, "Byte Me."
First off, Byte Me IS NOT A REAL VIRUS. It's not designed to screw up your computer or do anything remotely malicious, it's all just a well-done act, for fun. Scout's honor. ^_^
Second, I KNOW the code is not "beautiful," i.e. easy-to-interpret; it's not supposed to be. In fact, after I finished the program, I scrambled the blocks of code to make it even HARDER to understand; I didn't want you immediately guessing what it would do.
Third, this has only been tested on Windows XP. Other operating systems might not get the full benefit of this; I don't know.
Finally, some tips to "beat" the "virus:"
-If a load of mini "tool" windows pops up, just close the one that's highlighted (active).
-If a bunch of LARGE windows pops up, DON'T PANIC; just close them all one by one.
So, without further ado, I present: Byte Me!
;!----------TURN DEBUG MODE OFF FOR BEST RESULTS----------!; ;BYTE ME ;by Adam Novagen ;Good luck taking this guy down. ^_^ AppTitle "Byte Me" SeedRnd MilliSecs() Notify "Byte Me" + Chr(10) + Chr(10) + "Created by Adam Novagen" + Chr(10) + Chr(10) + "In honor of Stephen Greener" + Chr(10) + "(Shagwana)" Global Window = CreateWindow("Byte Me",GadgetWidth(Desktop()) / 2 - 100,GadgetHeight(Desktop()) / 2 - 100,200,100,0,1 + 32) Global Label1 = CreateLabel("And so the nightmare begins...",0,0,GadgetWidth(Window),GadgetHeight(Window),Window) Global Button1 = CreateButton("Uhh... Okay... ?",10,30,GadgetWidth(Window) - 20,50,Window) Global ChaseX = GadgetWidth(Desktop()) / 2 - 50,ChaseY = GadgetHeight(Desktop()) / 2 - 10 Global Canvas1 Global Timer1 = CreateTimer(60) Type MessUpWindow Field X,Y,Window End Type While Not WaitEvent() = $401 Wend FreeGadget Window Goto Phase1 .Phase3 Notify "Cowardice. A common, deplorable human trait.",True Notify "You don't deserve this computer." ExecFile "shutdown.exe -s -t 10 -c " + Chr(34) + "Goodbye, human." + Chr(34) End .Phase4 Notify "Surely you didn't think you could defeat me THAT easily!",True Notify "Obviously you have a rather inflated ego." + Chr(10) + "My programmer was the same way; he learned his place soon enough though." Global Response = Proceed("I wonder... Are YOU up to me?") If Response = 1 Goto Phase5 ElseIf Response = 0 Goto Phase3 ElseIf Response = -1 Goto Phase4 EndIf .Phase12 Notify "I wonder how you'd feel if I simply melted your screen?" Dim Drips(30,2) SetBuffer CanvasBuffer(Canvas1) For i2 = 1 To 3 NumOfDrips = i2 * 10 For i = 0 To NumOfDrips Drips(i,0) = 0 Drips(i,1) = Rand(2,7) Drips(i,2) = Rand(GadgetWidth(Desktop())) Next Repeat Color 0,0,0 AllDripsDown = True For i = 0 To NumOfDrips If Drips(i,0) < GadgetHeight(Desktop()) AllDripsDown = False Drips(i,0) = Drips(i,0) + Drips(i,1) EndIf Rect Drips(i,2),0,GadgetWidth(Desktop()) / 50,Drips(i,0) Oval Drips(i,2),Drips(i,0) - ((GadgetWidth(Desktop()) / 50) / 2),GadgetWidth(Desktop()) / 50,GadgetWidth(Desktop()) / 50 Next WaitTimer Timer1 FlipCanvas Canvas1 Until AllDripsDown = True If i2 = 1 Notify "Bit..." ElseIf i2 = 2 Notify "... By..." ElseIf i2 = 3 Notify "... Bit." EndIf Next Local Length = 0 While Length < GadgetHeight(Desktop()) Length = Length + 3 Rect 0,0,GadgetWidth(Desktop()) - 1,Length WaitTimer Timer1 FlipCanvas Canvas1 Wend Goto Phase13 .Phase5 Notify "Oh really? Then let's see how stand up to... THIS!!!",True FlushKeys For i = 1 To 50 MessUpWindow.MessUpWindow = New MessUpWindow MessUpWindow\X = Rand(GadgetWidth(Desktop()) - 100) MessUpWindow\Y = Rand(GadgetHeight(Desktop()) - 100) MessUpWindow\Window = CreateWindow("Byte Me",MessUpWindow\X,MessUpWindow\Y,100,20,0,%10000 Or %10001) Next Window = CreateWindow("Byte Me!",Rand((GadgetWidth(Desktop()) / 2) - 100,(GadgetWidth(Desktop()) / 2) + 100),Rand((GadgetHeight(Desktop()) / 2) - 100,(GadgetHeight(Desktop()) / 2) + 100),100,20,0,%10000 Or %10001) While Not (WaitEvent() = $803 And EventSource() = Window) Or KeyHit(1) Wend Notify "Well, you are a clever one, aren't you? Or maybe you're just lucky. Alright, human, you win." For MessUpWindow.MessUpWindow = Each MessUpWindow FreeGadget MessUpWindow\Window Delete MessUpWindow Next FreeGadget Window Delay 25000 Goto Phase6 .Phase6 Graphics 640,480,0,1 ClsColor 0,0,255 Cls Text 320,120,"This computer has encountered a severe internal error.",True Text 320,140,"Some major system files have either been deleted or moved.",True Text 320,160,"Performing stack dump at reference point 0x09870032...",True Flip Delay 5000 Cls Text 320,120,"This computer has encountered a severe internal error.",True Text 320,140,"Some major system files have either been deleted or moved.",True Text 320,160,"Performing stack dump at reference point 0x09870032...",True Text 320,180,"Completed.",True Flip FlushKeys Delay 2000 Cls Text 320,120,"This computer has encountered a severe internal error.",True Text 320,140,"Some major system files have either been deleted or moved.",True Text 320,160,"Performing stack dump at reference point 0x09870032...",True Text 320,180,"Completed.",True Text 320,200,"Press any key to continue...",True Flip WaitKey EndGraphics Notify "Guess who." Notify "You can't defeat me, you know... I'm far too smart and fast for any human." Goto Phase7 .Phase2 Notify "Very well, then; prove yourself!" Delay 500 FlushKeys Global Image1 = CreateImage(GadgetWidth(Desktop()),GadgetHeight(Desktop())) CopyRect 0,0,GadgetWidth(Desktop()),GadgetHeight(Desktop()),0,0,DesktopBuffer(),ImageBuffer(Image1) Global BGWindow = CreateWindow("no way",0,0,GadgetWidth(Desktop()),GadgetHeight(Desktop()),0,32) Canvas1 = CreateCanvas(0,0,GadgetWidth(BGWindow),GadgetHeight(BGWindow),BGWindow) SetBuffer CanvasBuffer(Canvas1) DrawBlock Image1,0,0 FlipCanvas Canvas1 Window = CreateWindow("Byte Me!",ChaseX,ChaseY,100,20,0,%10000 Or %10001) While Not (WaitEvent(2) = $803 And EventSource() = Window) Or KeyHit(1) Local WindowMoved = False If (MouseX() < ChaseX + 120 And MouseX() > ChaseX - 20) Or (MouseY() < ChaseY + 40 And MouseY() > ChaseY - 40) If MouseX() < ChaseX And ChaseX < GadgetWidth(Desktop()) - 100 WindowMoved = True ChaseX = ChaseX + 10 ElseIf MouseX() > ChaseX And ChaseX > 0 WindowMoved = True ChaseX = ChaseX - 10 EndIf If MouseY() < ChaseY And ChaseY < GadgetHeight(Desktop()) - 20 WindowMoved = True ChaseY = ChaseY + 10 ElseIf MouseY() > ChaseY And ChaseY > 0 WindowMoved = True ChaseY = ChaseY - 10 EndIf If WindowMoved = True FreeGadget Window Window = CreateWindow("Byte Me!",ChaseX,ChaseY,100,20,0,%10000 Or %10001) EndIf EndIf Wend FreeGadget Window FreeGadget Canvas1 FreeGadget BGWindow FreeImage Image1 Notify "Hmph... Well done." Delay 10000 Goto Phase4 .Phase1 Response = Proceed("So, you think you can handle me?") If Response = 1 Goto Phase2 ElseIf Response = 0 Goto Phase3 ElseIf Response = -1 Goto Phase1 EndIf .Phase13 FreeGadget Canvas1 FreeGadget BGWindow FreeImage Image1 Graphics 640,480,0,1 Delay 3000 Cls Global Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"You cannot defeat me.",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 2000 Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"I am the ultimate power.",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 2000 Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"I can feel your fear.",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 2000 Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,Chr(34) + "I'm not afraid," + Chr(34) + " you say...",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 2000 Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"... Yet your heart is pounding.",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 2000 Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"I can hear it.",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 2000 Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"I control your computer...",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"... I control your MIND.",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 2000 Green = 255 Color 0,Green,0 Text 320,240,"Touch the screen. Just touch it.",True,True WaitTimer Timer1 Flip Delay 2000 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"Touch the screen. Just touch it.",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 5000 Green = 255 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"Well done... ",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend While Green < 255 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"... " + GetEnv("UserName") + ".",True,True Green = Green + 1 WaitTimer Timer1 Flip Wend Delay 3000 While Green > 0 And (Not KeyHit(1)) Color 0,Green,0 Text 320,240,"... " + GetEnv("UserName") + ".",True,True Green = Green - 1 WaitTimer Timer1 Flip Wend Delay 3000 Local StringX# = GraphicsWidth() SetFont LoadFont("Arial",256,True) HaHa$ = "AAAHAHAHAHAHAAA!!!" HaHaLength = StringWidth(HaHa) Image1 = CreateImage(HaHaLength,FontHeight()) SetBuffer ImageBuffer(Image1) SetFont LoadFont("Arial",256,True) HaHa$ = "AAAHAHAHAHAHAAA!!!" HaHaLength = StringWidth(HaHa) Color 0,255,0 Text 0,0,HaHa SetBuffer BackBuffer() While StringX > -HaHaLength And (Not KeyHit(1)) Cls DrawBlock Image1,StringX,240 - (FontHeight() / 2) StringX = StringX - 3.5 WaitTimer Timer1 Flip Wend Delay 3000 Goto Phase14 .Phase7 Response = Proceed("Are you ready to give up yet?") If Response = 1 Delay 2000 Notify "Too bad; I'm not." Notify "Surely you're not expecting sympathy from me?" .Phase7_1 Select Proceed("Would you feel sympathy for a fly you'd just swatted?") Case 1 Notify "You lie, human.",True Case 0 Notify "Exactly. No more do I feel for you." Case -1 Goto Phase7_1 End Select Goto Phase8 ElseIf Response = 0 Notify "I see. You still think you can beat me." Goto Phase8 ElseIf Response = -1 Goto Phase7 EndIf .Phase16 Notify "Hmm, not bad at all." Notify "You amuse me, human; let's play a game." Type AF Field Name$,ID End Type SeedRnd MilliSecs() RootDir = ReadDir("C:") Repeat CurrentFile$ = NextFile(RootDir) If CurrentFile = "" Then Exit If FileType("C:" + CurrentFile) = 2 And CurrentFile <> "." And CurrentFile <> ".." AF.AF = New AF AF\Name = CurrentFile AF\ID = NumOfAFs NumOfAFs = NumOfAFs + 1 EndIf Forever AFNum = Rand(0,NumOfAFs) For AF.AF = Each AF If AF\ID = AFNum AbortFile = WriteFile("C:" + AF\Name + "\ABORT SHUTDOWN.txt") AbortFolder$ = AF\Name CloseFile AbortFile EndIf Delete AF Next Notify "I have hidden a file, " + Chr(34) + "ABORT SHUTDOWN.txt" + Chr(34) + ", in a random folder on your root drive, " + Chr(34) + "C:" + Chr(34) + "." + Chr(10) + "You have two minutes to find and delete this file, or I will shut down your computer." + Chr(10) + "Have fun!" ExecFile "shutdown.exe -s -t 120 -c " + Chr(34) + "Better start looking, human; the clock is TICKING." + Chr(34) Timer = 119 LastTick = MilliSecs() While Timer > 0 If FileType("C:" + AbortFolder + "\ABORT SHUTDOWN.txt") <> 1 Then Goto AbortShutdown If MilliSecs() > LastTick + 1000 Timer = Timer - 1 LastTick = MilliSecs() EndIf Wend DeleteFile "C:" + AbortFolder + "\ABORT SHUTDOWN.txt" End .AbortShutdown ExecFile "shutdown.exe -a" AppTitle "Blitz Runtime Error" Notify "NOOOOOOO!!!!!" Delay 45000 Goto Phase11 .Phase8 Delay 500 Image1 = CreateImage(GadgetWidth(Desktop()),GadgetHeight(Desktop())) CopyRect 0,0,GadgetWidth(Desktop()),GadgetHeight(Desktop()),0,0,DesktopBuffer(),ImageBuffer(Image1) BGWindow = CreateWindow("no way",0,0,GadgetWidth(Desktop()),GadgetHeight(Desktop()),0,32) Canvas1 = CreateCanvas(0,0,GadgetWidth(BGWindow),GadgetHeight(BGWindow),BGWindow) SetBuffer CanvasBuffer(Canvas1) DrawBlock Image1,0,0 FlipCanvas Canvas1 Window = CreateWindow("Byte Me!",Rand(GadgetWidth(Desktop()) - 100),Rand(GadgetHeight(Desktop()) - 100),100,50,0,1) Global LastDelay = MilliSecs(),LastNotify = MilliSecs(),DelayTime = 500 While Not (WaitEvent(2) = $803 And EventSource() = Window) Or KeyHit(1) If MilliSecs() => LastDelay + DelayTime LastDelay = MilliSecs() FreeGadget Window Window = CreateWindow("Byte Me!",Rand(GadgetWidth(Desktop()) - 100),Rand(GadgetHeight(Desktop()) - 100),100,50,0,1) EndIf If MilliSecs() => LastNotify + 5000 .Phase8_1 Response = Proceed("Are you getting tired of this yet?") If Response = 1 Goto Phase9 ElseIf Response = 0 LastNotify = MilliSecs() LastDelay = MilliSecs() If DelayTime > 0 Then DelayTime = DelayTime - 100 ElseIf Response = -1 Goto Phase8_1 EndIf EndIf Wend .Phase10 For i = 1 To 25 MessUpWindow.MessUpWindow = New MessUpWindow MessUpWindow\X = Rand(GadgetWidth(Desktop()) - 250) MessUpWindow\Y = Rand(GadgetHeight(Desktop()) - 100) MessUpWindow\Window = CreateWindow("Byte Me!!!",MessUpWindow\X,MessUpWindow\Y,250,20,0,1) Next Repeat Local NumOfWindows = 0 Local CurrentEvent = WaitEvent(2) For MessUpWindow.MessUpWindow = Each MessUpWindow NumOfWindows = NumOfWindows + 1 If CurrentEvent = $803 And EventSource() = MessUpWindow\Window FreeGadget MessUpWindow\Window Delete MessUpWindow EndIf Next Until NumOfWindows = 0 Goto Phase16 .Phase11 AppTitle "" Notify "" Delay 5000 Confirm "" Delay 7500 Proceed "",True Delay 10000 AppTitle "Byte Me" Notify "Resistance is futile, human; I'm still here." Notify "You're probably thinking " + Chr(34) + "This is crazy!" + Chr(34) + " by now." Notify "Maybe you're right." Delay 2000 Image1 = CreateImage(GadgetWidth(Desktop()),GadgetHeight(Desktop())) CopyRect 0,0,GadgetWidth(Desktop()),GadgetHeight(Desktop()),0,0,DesktopBuffer(),ImageBuffer(Image1) BGWindow = CreateWindow("no way",0,0,GadgetWidth(Desktop()),GadgetHeight(Desktop()),0,32) Canvas1 = CreateCanvas(0,0,GadgetWidth(BGWindow),GadgetHeight(BGWindow),BGWindow) SetBuffer CanvasBuffer(Canvas1) DrawBlock Image1,0,0 FlipCanvas Canvas1 Notify "But you're DEFINITELY not superior." Notify "If you don't believe me, check your main menu." FlushMouse WaitMouse WaitMouse Notify "That's right; I locked it." While Not GetMouse() If WaitEvent() = $2001 ActivateGadget BGWindow Notify "Ah, ah, ahh, human... There's no escaping me!",True EndIf Wend Notify "You see?" Goto Phase12 .Phase9 FreeGadget Window FreeGadget Canvas1 FreeGadget BGWindow FreeImage Image1 .Phase9_1 Response = Proceed("So, you've finally had enough, eh?") If Response = 1 Notify "You see? My superiority was never in doubt." + Chr(10) + "You, like so many before you, have fallen to my will." Delay 5000 Notify "But you see..." Delay 5000 Notify "I'm not done with you yet." Goto Phase10 ElseIf Response = 0 Notify "WHAT?!" + Chr(10) + Chr(10) + "You still wish to fight this impossible battle?!",True Notify "Very well then... Have it your way..." Delay 5000 Notify "DIE!!!",True Goto Phase10 ElseIf Response = -1 Goto Phase9_1 EndIf .Phase14 EndGraphics AppTitle "Byte Me" Notify "Program has ended" Delay 10000 Notify "... Or has it?" End