Deprecated: The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /home/iano/public_html/tpforums-vb5/forum/includes/class_core.php on line 5842

PHP Warning: Use of undefined constant MYSQL_NUM - assumed 'MYSQL_NUM' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_BOTH - assumed 'MYSQL_BOTH' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 588

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 612

PHP Warning: Use of undefined constant archive_postsperpage - assumed 'archive_postsperpage' (this will throw an Error in a future version of PHP) in ..../archive/index.php on line 456
Finding program width, pixel reading [Archive] - Forums

PDA

View Full Version : Finding program width, pixel reading



Xleniz
01-27-2013, 03:34 PM
Hello, I worked on pixel reader for 4 days, and today I decided to trash it.
Then I took it out of the trash and thought "Maybe someone need the position functions for screen size".
I used a class file, so I changed "v. " in front of every variable, if error, tell me........

INFO:
getpixel inside of bitmap variable is used with bitmaps,
the Pinvoke getpixel is used for different windows,
the BitBlt is used for different windows and very fast,
and the fastest way (that increased speed so much) was using lockbits and bitmaps

lockbits is found at:
http://www.codeproject.com/Tips/240428/Work-with-bitmap-faster-with-Csharp

and BitBlt is quite complicated, I havent got it to work.
Here is code:

First, what you will use (not sure if all is needed):


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Collections;
using System.Drawing.Imaging;


Then, pinvokes (functions from windows dll files, still not sure)


[DllImport("user32.dll")]
private static extern IntPtr GetForegroundWindow();
[DllImport("user32.dll")]
private static extern int GetWindowText(IntPtr hWnd, StringBuilder text, int count);
[DllImport("user32.dll")]
static extern short GetAsyncKeyState(System.Windows.Forms.Keys vKey);
[DllImport("user32.dll", SetLastError = true)]
static extern IntPtr FindWindow(string lpClassName, string lpWindowName);



Then, variables:


int r = 0;
int g = 0;
int b = 0;
bool Hello = true;
IntPtr handle = IntPtr.Zero;
int chars = 256;
StringBuilder buff;
int chars;
Bitmap printScreen = new Bitmap(0, 0);
Graphics Screen;
int programWidth;

/* Screen Variables */
int screenStartY;
int screenStartX;
int screenstartYMin;
int screenstartXMin;
int screenStartEnd;
double tileSize; // Remember, use (int)tileSize when working
/* END */


And function:



static int FindWidth()
{

while (Hello && GetAsyncKeyState(Keys.Escape) == 0)
{
System.Threading.Thread.Sleep(150);
handle = GetForegroundWindow();
buff = new StringBuilder(chars);
if (GetWindowText(handle, buff, chars) > 0)
{
if (buff.ToString() == "Tibia")
{
printScreen = new Bitmap(System.Windows.Forms.Screen.PrimaryScreen.W orkingArea.Width, System.Windows.Forms.Screen.PrimaryScreen.WorkingA rea.Height);
Screen = Graphics.FromImage(printScreen as Image);
Screen.CopyFromScreen(0, 0, 0, 0, printScreen.Size);

for (int i = Screen.PrimaryScreen.WorkingArea.Width - 1; i > Screen.PrimaryScreen.WorkingArea.Width / 2; i--)
{
r = printScreen.GetPixel(i, (Screen.PrimaryScreen.WorkingArea.Height) - 10).R;
g = printScreen.GetPixel(i, (Screen.PrimaryScreen.WorkingArea.Height) - 10).G;
b = printScreen.GetPixel(i, (Screen.PrimaryScreen.WorkingArea.Height) - 10).B;

if (r > 110 && r < 180 &&
g > 110 && g < 180 &&
b > 110 && b < 180)
{
programWidth = i;
for (int c = 0; c < Screen.PrimaryScreen.WorkingArea.Height/3; c++)
{
r = printScreen.GetPixel((int)(Screen.PrimaryScreen.Wo rkingArea.Width/2), c).R;
g = printScreen.GetPixel((int)(Screen.PrimaryScreen.Wo rkingArea.Width / 2), c).G;
b = printScreen.GetPixel((int)(Screen.PrimaryScreen.Wo rkingArea.Width / 2), c).B;

if (r > 36 && r < 50 && g > 36 && g < 50 && b > 36 && b < 50)
{
screenStartY = c + 1;
break;
}
}

for (int k = programWidth-2; k > (Screen.PrimaryScreen.WorkingArea.Width/2); k--)
{
r = printScreen.GetPixel(k, (Screen.PrimaryScreen.WorkingArea.Height/2)).R;
g = printScreen.GetPixel(k, (Screen.PrimaryScreen.WorkingArea.Height/2)).G;
b = printScreen.GetPixel(k, (Screen.PrimaryScreen.WorkingArea.Height/2)).B;
if (r > 110 && r < 130 && g > 110 && g < 130 && b > 110 && b < 130)
{
screenStartX = k - 2;
break;
}
}

for (int l = 0; l < Screen.PrimaryScreen.WorkingArea.Width/3; l++)
{
r = printScreen.GetPixel(l, v.screenStartY).R;
g = printScreen.GetPixel(l, v.screenStartY).G;
b = printScreen.GetPixel(l, v.screenStartY).B;
if (r <= 50 && g <= 50 && b <= 50)
{
screenstartXMin = l + 1;
break;
}
}


screenStartEnd = (screenStartX - screenstartXMin);
tileSize = (screenStartEnd / 15);

return i;
}
}
}
}
}
return 100;
}


Remember, you need:



this.FormBorderStyle = FormBorderStyle.None;
this.TopMost = true;
this.Width = (Screen.PrimaryScreen.WorkingArea.Width - FindWidth());
this.Location = new Point(Screen.PrimaryScreen.WorkingArea.Width - this.Width, Screen.PrimaryScreen.WorkingArea.Height - this.Height);


inside of public FormName() {}

This program will only start when Tibia is started and logged in.
If this program continues in an endless while loop, press ESCAPE.

thxbb

Wesker
01-27-2013, 04:52 PM
This code is so so so so long..............

http://tpforums.org/vbulletin/showthread.php?5627-Pixel-Reading-By-Wesker

Lockbits is overrated and its pure BS, also why does every1 use BitBlt ? if u wait a few days until i finish my tutorial you will be able to do magic with the piece of API ill give there, of course you will have to translate it to your lenguage

Xleniz
01-27-2013, 07:20 PM
This code is so so so so long..............

http://tpforums.org/vbulletin/showthread.php?5627-Pixel-Reading-By-Wesker

Lockbits is overrated and its pure BS, also why does every1 use BitBlt ? if u wait a few days until i finish my tutorial you will be able to do magic with the piece of API ill give there, of course you will have to translate it to your lenguage

mkay, im just saying lockbits loads 100+ pixel position colors under 0.2 sec, while bitmap.getpixel takes 8+ seconds...
u know better way?

Wesker
01-27-2013, 10:49 PM
mkay, im just saying lockbits loads 100+ pixel position colors under 0.2 sec, while bitmap.getpixel takes 8+ seconds...
u know better way?

if you read about lockbits, the things you can actually do with it are limited, and doesn't do the job well, theres alot of stuff around lockbits, and i forgot the other1 on gui mmm but ill remember it eventually
the easier and faster way should be around the API but getting it from the x,y


Dim tmpOleColor As Integer = API_Calls.GetPixel(ScreenDC, xIndex, ypos)

this way your not calling a bitmap and your not performing an stupid task around getpixel and making it slower, but then again thats my point of view on it

sorry playing league of legends cant type much about it LOL

so i was on this matter and it reminds me pixels can be read by percentages, there's no need to read a hole line, only if you want the exact amount of pixels, and yet if you do it like that it will be problematic in a bot, should people heal by the number of pixels that can be 1-500 and how do they know how much help is that ? or should they just count how many pixels to x, x+150 = health x+75 = heals and so on there several options on what your task should be in your case


Screen = Graphics.FromImage(printScreen as Image);

Your printing screens with is highly unrecommended, and slows the performance of the bot, and you're also doing a bitmap task


PrintScreen = new Bitmap(System.Windows.Forms.Screen.PrimaryScreen.W orkingArea.Width, System.Windows.Forms.Screen.PrimaryScreen.WorkingA rea.Height);

So my question is is it really .2 secs when you're reading the wide on the screen ?
Have you confirm that the infinite loop doesn't spill bugs such as "clipboard errors" , " IDATA object" ? Besides that you're using windows.forms i would avoid that at all cost

have u consider working with the API ? mmm im not nearly familiar with csharp i dont know if u have to invoke Gdi32 but your using user32 so ill guess you have to



<DllImport("Gdi32.dll")>

however this contains http://msdn.microsoft.com/en-us/library/ms927613.aspx



StretchDIBits This function copies the color data for a rectangle of pixels in a DIB to the specified destination rectangle.

SetPixel This function sets the pixel at the specified coordinates to the specified color.

RoundRect This function draws a rectangle with rounded corners.

GetPixel This function retrieves the RGB color value of the pixel at the specified coordinates.

GetNearestColor This function returns the system palette color that will be displayed when the specified color value is used.

GetDC This function retrieves a handle to a display device context for the client area of the specified window.

GetCurrentPositionEx This function retrieves the current position in logical coordinates.

DeleteDC This function deletes the specified DC.

BitBlt This function transfers pixels from a specified source rectangle to a specified destination rectangle, altering the pixels according to the selected raster operation (ROP) code.

IF YOUR USING BitBlt your going to use extra steps, is better to just call getpixel, but not from the clipboard or bitmap but from the screen, it will be faster and it wont bug when you open/close windows like i believe it occurs with your code "rare" times, it happend with the book pages i posted the code was a bit buggy

Blaster_89
01-28-2013, 04:11 AM
You know you can use the Windows API to accomplish the same task with more accuracy, right?

Xleniz
01-28-2013, 06:48 AM
if you read about lockbits, the things you can actually do with it are limited, and doesn't do the job well, theres alot of stuff around lockbits, and i forgot the other1 on gui mmm but ill remember it eventually
the easier and faster way should be around the API but getting it from the x,y


Dim tmpOleColor As Integer = API_Calls.GetPixel(ScreenDC, xIndex, ypos)

this way your not calling a bitmap and your not performing an stupid task around getpixel and making it slower, but then again thats my point of view on it

sorry playing league of legends cant type much about it LOL

so i was on this matter and it reminds me pixels can be read by percentages, there's no need to read a hole line, only if you want the exact amount of pixels, and yet if you do it like that it will be problematic in a bot, should people heal by the number of pixels that can be 1-500 and how do they know how much help is that ? or should they just count how many pixels to x, x+150 = health x+75 = heals and so on there several options on what your task should be in your case


Screen = Graphics.FromImage(printScreen as Image);

Your printing screens with is highly unrecommended, and slows the performance of the bot, and you're also doing a bitmap task


PrintScreen = new Bitmap(System.Windows.Forms.Screen.PrimaryScreen.W orkingArea.Width, System.Windows.Forms.Screen.PrimaryScreen.WorkingA rea.Height);

So my question is is it really .2 secs when you're reading the wide on the screen ?
Have you confirm that the infinite loop doesn't spill bugs such as "clipboard errors" , " IDATA object" ? Besides that you're using windows.forms i would avoid that at all cost

have u consider working with the API ? mmm im not nearly familiar with csharp i dont know if u have to invoke Gdi32 but your using user32 so ill guess you have to



<DllImport("Gdi32.dll")>

however this contains http://msdn.microsoft.com/en-us/library/ms927613.aspx



BitBlt This function transfers pixels from a specified source rectangle to a specified destination rectangle, altering the pixels according to the selected raster operation (ROP) code.

IF YOUR USING BitBlt your going to use extra steps, is better to just call getpixel, but not from the clipboard or bitmap but from the screen, it will be faster and it wont bug when you open/close windows like i believe it occurs with your code "rare" times, it happend with the book pages i posted the code was a bit buggy

Yes I know bitmap loading is not good, which is why I aimed on bitblt..
Saving an image takes for me under 0.1 second (less?), I dont see problem,
and I have a distant memory of me using getpixel pinvoke from HDC taking 10+ seconds.

Btw, is getpixel pinvoke same as yours?:{

Wesker
01-28-2013, 04:49 PM
Yes I know bitmap loading is not good, which is why I aimed on bitblt..
Saving an image takes for me under 0.1 second (less?), I dont see problem,
and I have a distant memory of me using getpixel pinvoke from HDC taking 10+ seconds.

Btw, is getpixel pinvoke same as yours?:{

might not be i dont know where ur getting getpixel, since ur not using the dll, your probably just using csharp getpixel, no idea to be honest but ill paste my code i guess in the afternoon

Xleniz
01-29-2013, 06:50 AM
might not be i dont know where ur getting getpixel, since ur not using the dll, your probably just using csharp getpixel, no idea to be honest but ill paste my code i guess in the afternoon

Well, I used pinvoke (Pinvoke = load dlls with interop from pinvoke.net in C#),
so it is the same. I think DLL is slow, and lockbits are fast but have to load multiple images.

kkkkkkkkkk.

Keep positive.
kkkkkkkkk.

DarkstaR
01-29-2013, 07:24 PM
Lockbits is overrated and its pure BS, also why does every1 use BitBlt ? if u wait a few days until i finish my tutorial you will be able to do magic with the piece of API ill give there, of course you will have to translate it to your lenguage


LockBits() is the accepted standard for any commercial software that works intensively with images. Internally, GetPixel() and SetPixel() both have to call LockBits() everytime they are used - this means LockBits() IS able to to everything they are able to do, if used correctly. Also, due to the fact that you only have to call it once for all pixels, it is much faster. I think it was Jo3Bingham who had a sprite ripper that gained like 2000% efficiency when he switched from GetPixel() to LockBits() (Could be wrong on the details, it's been a while).

It's really annoying/pathetic how you try to find a reason to relentlessly criticize everything you see. At least try and use reasonable arguments.

jo3bingham
01-29-2013, 07:47 PM
LockBits() is the accepted standard for any commercial software that works intensively with images. Internally, GetPixel() and SetPixel() both have to call LockBits() everytime they are used - this means LockBits() IS able to to everything they are able to do, if used correctly. Also, due to the fact that you only have to call it once for all pixels, it is much faster. I think it was Jo3Bingham who had a sprite ripper that gained like 2000% efficiency when he switched from GetPixel() to LockBits() (Could be wrong on the details, it's been a while).

It's really annoying/pathetic how you try to find a reason to relentlessly criticize everything you see. At least try and use reasonable arguments.

This is correct. Sketchy is the one who introduced me to LockBits()/UnlockBits() and I will never use GetPixel()/SetPixel() again. Also, now that I use WPF, instead of WinForms, it uses DirectX instead of GDI so you can't use LockBits() (unless you reference it), but using BitmapResource is probably twice as fast as LockBits(), and that's saying something.

Wesker
01-29-2013, 09:46 PM
LockBits() is the accepted standard for any commercial software that works intensively with images. Internally, GetPixel() and SetPixel() both have to call LockBits() everytime they are used - this means LockBits() IS able to to everything they are able to do, if used correctly. Also, due to the fact that you only have to call it once for all pixels, it is much faster. I think it was Jo3Bingham who had a sprite ripper that gained like 2000% efficiency when he switched from GetPixel() to LockBits() (Could be wrong on the details, it's been a while).

It's really annoying/pathetic how you try to find a reason to relentlessly criticize everything you see. At least try and use reasonable arguments.

when ur using lockbits, to do a simple task it goes to the memory of the system, now a simple task such as reading 1 by 1 by 1 or reading 100 pixels its easy with lockbits however the code its complicated, and performing simultaneus tasks with lockbits its not just frustrating its anoying and stupid, you might not now this but, theres o theres was a wow bot, that used gui methid from and around getpixel, its easier to read getpixel and work with it while it changes, whats a sprite ripper ? a transfer of X to somewhere but it is however the same X



This is correct. Sketchy is the one who introduced me to LockBits()/UnlockBits() and I will never use GetPixel()/SetPixel() again. Also, now that I use WPF, instead of WinForms, it uses DirectX instead of GDI so you can't use LockBits() (unless you reference it), but using BitmapResource is probably twice as fast as LockBits(), and that's saying something.

like i said before lockbits its not an option for a bot based on gui, you can check out the microsoft forum, for know issues and bugs that will only occur on lockbits, because and lets face it here, theres alot of windows resources and most of them have anoying bugs, like the clipboard, and this is once again a current windows gadget the we all use....... the clipboard, and it contains alot of bugs, that i had to face while developing my bot, i did try lockbits, and i did like 5 or 7 large pieces of code, even went to support microsoft forums, and some hacking forums, no1 really recomends lockbits for several tasks, which is what the bots may have to do, if you dont believe me you can code it ur selfs with lockbits, check mana, hp and then char, less then 10 mins a bug will pop-up not to mention moving the mouse to your health bar lol


it really depends of what ur going to do for me what it works like a charm is :


Imports System
Imports System.Runtime.InteropServices

Friend Class API_Calls

<DllImport("User32.dll")> _
Public Shared Function GetCursorPos(ByRef pt As POINTAPI) As Integer
End Function

<StructLayout(LayoutKind.Sequential)> _
Public Structure POINTAPI
Public x As Integer
Public y As Integer
End Structure

<DllImport("Gdi32.dll")> _
Public Shared Function GetPixel(ByVal hdc As IntPtr, ByVal x As Integer, ByVal y As Integer) As Integer
End Function

<DllImport("Gdi32.dll")> _
Public Shared Function CreateDC(ByVal driverName As String, ByVal deviceName As String, ByVal output As String, ByVal lpInitData As IntPtr) As IntPtr
End Function

<DllImport("Gdi32.dll")> _
Public Shared Function DeleteDC(ByVal dc As IntPtr) As Boolean
End Function
End Class




Dim tmpOleColor As Integer = API_Calls.GetPixel(ScreenDC, xIndex, ypos)
Dim tmpColor As Color = ColorTranslator.FromOle(tmpOleColor)


voila no hard work there, and it supports like bizillion of other operations within the same timer without any problems

jo3bingham
01-29-2013, 10:00 PM
Then you obviously didn't code it correctly. Blame yourself, not the function.

Blequi
01-29-2013, 10:06 PM
like i said before lockbits its not an option for a bot based on gui, you can check out the microsoft forum, for know issues and bugs that will only occur on lockbits, because and lets face it here, theres alot of windows resources and most of them have anoying bugs, like the clipboard, and this is once again a current windows gadget the we all use....... the clipboard, and it contains alot of bugs, that i had to face while developing my bot, i did try lockbits, and i did like 5 or 7 large pieces of code, even went to support microsoft forums, and some hacking forums, no1 really recomends lockbits for several tasks, which is what the bots may have to do, if you dont believe me you can code it ur selfs with lockbits, check mana, hp and then char, less then 10 mins a bug will pop-up not to mention moving the mouse to your health bar lol


Can you explain what errors do you find when dealing with lock/unlockbits?

Because I have a tibia-map like application that uses it intensively and works like a charm, I never faced one possible bug using it.

Wesker
01-29-2013, 10:36 PM
Then you obviously didn't code it correctly. Blame yourself, not the function.

not blaming the function, id said and ill repeat it... theres alot of use for lockbits, HOWEVER lockbits is not the best choise to perform bot tasks



Can you explain what errors do you find when dealing with lock/unlockbits?

Because I have a tibia-map like application that uses it intensively and works like a charm, I never faced one possible bug using it.

i whould paste the code's and bugs, but it was a while ago i dont have the sources of those proyects atm, but ill search them out, theres no bugs within the code, i remember some people on microsoft forums help me with it, and reported a malfunction within lockbits, kuz i was been very "active" at that time and requested backup because it crashed over and over again, so it was i believe max32 or something like it who had the same issue that i had, but he was developing AI of ants that transmited info between them, he created some other thing, again this comes for about 6 months of research and coding, not like im making up this shit LOL, ill try to find the disc and paste the codes here, hey if i found a method thats more effective and if your right, why the fuck should i denie it, i rather apologize and go that way LOL


tibia map like stuff, i think you guys use it to send or copy bitmaps or images, thats a very useful code, however try reading an image in movement or action, and after 5 mins it will start bugging, like i said before its coping a bitmap to the system memory and theres a bug over there, it was not lockbits by it self, it was something that interact with it, might be just me but i doubt it, when i posted those things alot of people had the same issue again my stats :

win7
2mb ram
.net 4.5
programming in .net or c++ gave me those errors
opengl and directx

i learn that way to use the code i posted earlier..... + im using percentages i believe im not completly sure, that lockbits bugged with that also, gave me the wrong colors "thats my belief im not sure and might be an error that i just remember atm"

DarkstaR
01-30-2013, 04:26 AM
when ur using lockbits, to do a simple task it goes to the memory of the system, now a simple task such as reading 1 by 1 by 1 or reading 100 pixels its easy with lockbits however the code its complicated, and performing simultaneus tasks with lockbits its not just frustrating its anoying and stupid, you might not now this but, theres o theres was a wow bot, that used gui methid from and around getpixel, its easier to read getpixel and work with it while it changes, whats a sprite ripper ? a transfer of X to somewhere but it is however the same X


You would be someone who sacrifices performance for simplicity.

Sketchy
01-30-2013, 06:16 PM
tibia map like stuff, i think you guys use it to send or copy bitmaps or images, thats a very useful code, however try reading an image in movement or action, and after 5 mins it will start bugging

Sounds like you are using the GDI GetPixel function directly on the screen/window device context you got through GetDC, that's just downright stupid and extremely slow. It's much better to use BitBlt to copy its contents into your own DC and then access the pixels from that. This gives you a static image to work with and will provide a far higher pixel reading throughput, and I'm talking in the order of 50 times more based upon a simple C# benchmark I made running on Windows 7 on an Intel Core 2 Duo E6550 @ 2.33 GHz (the GDI+ GdipBitmapGetPixel (ie: Bitmap.GetPixel) was even faster). It also doesn't need to be said that direct access to the pixel buffer, either using a GDI device-independent bitmap (CreateDIBSection which returns a pointer to the buffer with no need for locking) or GDI+ Bitmap with GdipBitmapLockBits (ie: Bitmap.LockBits), blew everything else out of the water.


For anyone interested here's the source of the benchmark I made (requires .NET 4.0), it includes basic wrappers around a GDI DIB and GDI+ Bitmap class which simplify direct pixel access. Speaking of direct pixel access it uses pointers within unsafe blocks for best performance falling back to the Marshal class if UNSAFE hasn't been defined, I've added two additional build configurations (for debug and release, release of course for best performance) with this defined (unfortunately must be manually done :() and unsafe code allowed. One more thing you will need the window you are going to copy from opened when you run, by default it just looks for a Tibia client. Should be something useful in this at least for people to use ;)

Wesker
01-30-2013, 06:52 PM
Well i don't lose anything trying it again, for the thousand times, ill search my old disc (every time i format pc i save 2/3 dvd of the stuff i got there) and ill post the codes somewhere around the forum, however...... in those 6 months the best way to do so, and it was confirmed, it was getpixel, I'm not being stubborn and i know it looks like it, if there's a faster way we should all use it

ill dig into it when i reach 1700 elo LOL, thanks for the source and info, ill check that later, but my question is have you tried to make a cavebot with lockbits ?




You would be someone who sacrifices performance for simplicity.

i thought about it, not worth it, wont argue anymore, i trolled enought on this forum :)

-------
I believe I'm the only1 on this forum that used this method to create a cavebot, targeting and looter, i still have some issues with and around the hole Proyect, tried as many as possible methods to do so, even went to QT++ to try some other stuff, the only things and resources i didn't try is c (which is stupid working with this), Delphi (because i don't know it), c# (because i never got my hands to it), and CSharp (i never like that language, don't know why), and so many others that would help me, because i don't know them or the code could be a snowball, i even tried Java :/
i could do a simple healer on Macromedia, but it was slow as fuck LOL, but it looked awesome........

ill search that cd, it has about 450 lines of c++ code that no1 could find a bug for, ill post it on this forum, maybe some1 here finds it, but if people on microsoft forums didn't, my hopes are not that high here <_<

Blequi
01-30-2013, 07:01 PM
ill search that cd, it has about 450 lines of c++ code that no1 could find a bug for, ill post it on this forum, maybe some1 here finds it, but if people on microsoft forums didn't, my hopes are not that high here <_<


do not underestimate tpforums.

DarkstaR
01-30-2013, 07:04 PM
every1 knows that performance is always the way to go.

Then why did you just say otherwise?



btw not trying to troll you, but isnt your bot loading lua scripts from the outside ? your not the one to talk about performance vs simplicity, kuz its just simpler to leave the cavebot as it is on your bot isnt it ?, but then again the piece of code might be 1 world wonder, and thats all you care about, your code been perferct, but the interface been narrow and pre-homosapiens

The fuck are you talking about? Where else will I load a Lua script from? Hyperspace? My bot is currently the most efficient bot. That is a fact. Go compare and contrast.



-------
I believe I'm the only1 on this forum that used this method to create a cavebot, targeting and looter, i still have some issues with and around the hole Proyect, tried as many as possible methods to do so, even went to QT++ to try some other stuff, the only things and resources i didn't try is c (which is stupid working with this), Delphi (because i don't know it), c# (because i never got my hands to it), and CSharp (i never like that language, don't know why), and so many others that would help me, because i don't know them or the code could be a snowball, i even tried Java :/
i could do a simple healer on Macromedia, but it was slow as fuck LOL, but it looked awesome........

ill search that cd, it has about 450 lines of c++ code that no1 could find a bug for, ill post it on this forum, maybe some1 here finds it, but if people on microsoft forums didn't, my hopes are not that high here <_<

C/C++ is never a stupid alternative, it's just less attractive to unfamiliar/bad coders. It will be much more efficient and work well for this, and can be done very easily. Pixel reading, however, is , in itself, a retarded and slow concept, as far as I am concerned.

Wesker
01-30-2013, 07:08 PM
Coding in C something that has to do with images is stupid, that's why c++ exists.... i never heard of a game developed on c (well there where u can't call them real games atm) not going to argue about it, because apparently u got issues


i knew i had to delete that line faster :/ , thats what happens when you trigger darkstar, his bot is the most advanced wonder of this era, wait him on time's magazine <3


on topic :

ill check that lockbits again.........





do not underestimate tpforums.

tp forums are just a bunch of leechers, and the coders are a few, so the people that could solve my issue are 30 ? at the most, im counting ManInTheCave and so many others that got no idea what a pixel is LOL, my hopes are on sketchy, joe, darkpallys,blaster,blequi, maybe klusbert but i doubt hes going this way (pixel kind) maybe ian if he ever tried it, and if he ever reads the forum again, and im missing meganobody or meganoob cant remember the name properly we leaved it at mega, so we got 7 people that might find the error or bug, vs 800 microsoft users in the graph section, i dont understimate i face reallity

DarkstaR
01-30-2013, 07:14 PM
Coding in C something that has to do with images is stupid, that's why c++ exists.... i never heard of a game developed on c (well there where u can't call them real games atm) not going to argue about it, because apparently u got issues


i knew i had to delete that line faster :/ , thats what happens when you trigger darkstar, his bot is the most advanced wonder of this era, wait him on time's magazine <3


on topic :

ill check that lockbits again.........

I said C/C++, not simply C. C++ is my preferred alternative, but C works as well. In fact, if you look at the way Tibia's earlier clients were compiled, they used heavy C practices (Don't believe me? I'm sure someone else here can back that up). Also, I never said "my bot is the most advanced wonder of this era," I simply stated that it is the most efficient. And it is.


EDIT:

I should also note:
1. C++ is translated to C-Like code when it is compiled. There are notable differences, but it's due to the way the machine puts everything together.
2. The back-end for .NET is written in C/C++.

C can do anything that any other language can do, and do it faster 9 out of 10 times. Just because you don't have the capacity to understand it, it doesn't mean it still can't do it. Like I said, preferring otherwise is sacrificing performance for simplicity.

Wesker
01-30-2013, 07:18 PM
I said C/C++, not simply C. C++ is my preferred alternative, but C works as well. In fact, if you look at the way Tibia's earlier clients were compiled, they used heavy C practices (Don't believe me? I'm sure someone else here can back that up). Also, I never said "my bot is the most advanced wonder of this era," I simply stated that it is the most efficient. And it is.


im not gonna fight, ur awesome, u know everything, your sexy with that half-way there beard, ur better than super man, thank you for been here for us darkstar i whouldnt know what to do without you, confirming what i already know.

your the man.



now can you stay in topic please this is something i trully care about....

DarkstaR
01-30-2013, 07:26 PM
now can you stay in topic please this is something i trully care about....

Last I checked, you are the one who strayed off topic. I stayed on topic by talking about LockBits and giving an explanation of why it is better.
1. You attacked my explanation, talking about it being "easier," and went off-topic
2. You went off-topic in a reply to Blequi.
3. You responded to Sketchy and went off-topic talking about your ELO in LoL.
4. You went off-topic and brought up C/C++ and my bot.


Please, show me where I did anything except for either address the thread or address the topics which you brought up in your barely-understandable, broken-English rants.