Help - Search - Members - Calendar
Full Version: Dreambot
Furcadia Community Forums > Creations > Third Party Development
Pages: 1, 2
Hexi
Hey all,

I've been working on a new bot. It is called DreamBot Alpha. Alpha is there cause it is in alpha stages. Testers welcome. Post any bugs here or to e-mail in readme.txt file.

Many features are still yet to be implemented, but a public test is ready for any interested. I will be updating and adding new features as time permits. If you have any ideas, please e-mail them to me at the e-mail listed in the readme.txt file.

Enjoy!
Artex
So like... where's the file? :P
Hexi
QUOTE (Artex @ Aug 8 2009, 10:09 PM) *
So like... where's the file? tongue.gif


Oops! That post was full of fail. The download is HERE!

Sorry for the confusion. I was being rushed at the time of the OP to go get some liquor.
Hexi
I am currently working on an update to DBA. Still having some problems with making it remove keys from an INI file as Windows Vista does not like to use the standard API calls that were available in XP, so I have to get a working work-around to handle this. Look for it either late tonight or tommarow evening.
Hexi
Build 1.0.17 is now available.
Joanatha
I tried to download to see what this program was, and after I extract the file, it's telling me one or more files are missing or invalid.
Hexi
QUOTE (Joanatha @ Aug 12 2009, 04:50 AM) *
I tried to download to see what this program was, and after I extract the file, it's telling me one or more files are missing or invalid.


This might be due to the ocx files not being properly registered or you may need the vb6 runtime files.
Hexi
QUOTE (Hexi @ Aug 12 2009, 06:27 AM) *
This might be due to the ocx files not being properly registered or you may need the vb6 runtime files.


Upon further investigation I have determined that this I am at fault for this bug. I had started out to use a specific control, but then by the time the release was made, I had decided against it, and forgot to delete the control from the window it was on. I released a small update to make this work for you.
Hexi
Somehow ended up with a double post....so this post is been replaced with this text.
Joanatha
xD Okay, I'll download it and repost what I think later. smile.gif

Edit:
Component 'MSWinSck.ocx' or one of its dependencies not correctly registered: a file is missing or invalid
Hexi
QUOTE (Joanatha @ Aug 12 2009, 03:04 PM) *
xD Okay, I'll download it and repost what I think later. smile.gif

Edit:
Component 'MSWinSck.ocx' or one of its dependencies not correctly registered: a file is missing or invalid


MSWinSck.ocx is included in the zip file. You might try placing it in C:\Windows\System32 directory and then try rebooting. This might fix the problem...if not I would suggest installing the vb6 runtime files which can be found on MicroSoft's site.
Dream Dancer
I did a specific installer just for this situation for furbot and uploaded it to my website. Putting it in the system folder might not do the trick, the module has to be registered with windows.
http://furbot.dreammakersguild.com/compone...,fileinfo/id,5/
Hexi
QUOTE (Dream Dancer @ Aug 12 2009, 06:47 PM) *
I did a specific installer just for this situation for furbot and uploaded it to my website. Putting it in the system folder might not do the trick, the module has to be registered with windows.
http://furbot.dreammakersguild.com/compone...,fileinfo/id,5/


Thanks for the info DD. Site seems to be down at present however.
Hexi
Seems to be up now. As a side note, would you care if I stuck this on my site as a secondary download location in case someone else runs into this problem and your site is down again?
Kylix
I made a quick script set for registering the WinSock and Internet Transfer controls: http://www.theresnostoppingus.com/dump/Dre...ibs_Install.zip

Extract it anywhere, then run "Register Libraries" -- just double click it (you must be logged in as an administrator). As long as you get a message like "DllRegisterServer in C:\Windows\System32\[MODULENAME].ocx succeeded" both times, you should be set and can delete the extracted archive. All it does is copy the two OCX files to your System32 directory and runs the RegSvr32 against them to "install" them on your computer. All the ATTRIB commands in the script are to abstract away some of the finer details from the end user. RegSvr32 was originally run silently, but it is more meaningful to have the registration results.

If you encounter an issue, please let me know.
Hexi
QUOTE (Kylix @ Aug 12 2009, 10:13 PM) *
I made a quick script set for registering the WinSock and Internet Transfer controls: http://www.theresnostoppingus.com/dump/Dre...ibs_Install.zip

Extract it anywhere, then run "Register Libraries" -- just double click it (you must be logged in as an administrator). As long as you get a message like "DllRegisterServer in C:\Windows\System32\[MODULENAME].ocx succeeded" both times, you should be set and can delete the extracted archive. All it does is copy the two OCX files to your System32 directory and runs the RegSvr32 against them to "install" them on your computer. All the ATTRIB commands in the script are to abstract away some of the finer details from the end user. RegSvr32 was originally run silently, but it is more meaningful to have the registration results.

If you encounter an issue, please let me know.


Thanks a ton. I have uploaded this to the official DreamBot site.
Squizzle
You could always try a NSIS installer. Theres plenty of scripts floating around for it. Its a windows only installer though.
Hexi
I had planned on putting out a new update over the last 24 hours, but ended up having some fun time instead. I'll try to get one out late wednesday night.

If anyone has any suggestions, let me know.
Hexi
my website appears to currently be down and not sure why....it is almost like port 80 is being blocked. I am working on fixing this as fast as possible.
Hexi
In the meantime download can be found at: http://64.16.210.28/~leet37/
Hexi
Site is fully functional again and can be found at: http://13leet37.com once again.
Hexi
I need to know if the install package worked for those that downloaded it, and what they think I could do different to make it better.
Michael the wolf
[bug]

After program run and selecting "connect" from the menu, I got following error:

Runtime error '76'

Path not found

[/bug]

I suggest to make that is allowed to select from multiple partition and not only from this on with is the bot installed...
Hexi
QUOTE (Michael the wolf @ Aug 21 2009, 02:58 PM) *
[bug]

After program run and selecting "connect" from the menu, I got following error:

Runtime error '76'

Path not found

[/bug]

I suggest to make that is allowed to select from multiple partition and not only from this on with is the bot installed...


What version are you using?
Hexi
I'm putting together a small update to fix a couple of things. One of the things being fixed is the duplicate names showing up in the list box when the bot is online for a while. Also making the send text box in the program itself act just like the furcadia clients send box so you can type: /furre blah, :does whatever, etc...just like you would with the client. These are just minor changes but I feel are quite necessary. Also will be adding an auto-update feature to it, so that you are sure to have the most up-to-date version at your disposal.

Thinking about dropping the setup file for DBA though. Atleast until after the main alpha is done. Any thoughts on this?

Edit:
I decided to go ahead and keep the installer program, but have changed installer programs to Setup Factory as it offers everything I need and does so with much less work on my end to get dependencies properly taken care of.
Michael the wolf
QUOTE (Hexi @ Aug 22 2009, 02:28 AM) *
What version are you using?


1.0.21

I can select multiple patches, but still can't connect, because I get mentioned Runtime error and the program crashes...
Hexi
I need to know if anyone else is having this issue. I have unsuccessfully been able to recreate this problem.
Michael the wolf
Possible yes, because all are using the same version
Capt. Campion
I use InnoSetup. It worked well for VB6, and I have yet to try it for .NET. It's a free program, but is script based; however, there is a script maker that costs some money, but is well worth it, in my opinion.
Hexi
I am sorry that updates have been a little slow as of late, but I am now fully situated with windows 7 and have put out some new updates. Newest features include two lists, for Owners and Staff, with built in whispers to banish and eject furres based on the list you are on. All banishes and ejects are logged. Comming soon is Timers.

http://13leet37.com/ for anyone who doesn't already have a copy.
Ioka
QUOTE (Michael the wolf @ Aug 21 2009, 02:58 PM) *
[bug]

After program run and selecting "connect" from the menu, I got following error:

Runtime error '76'

Path not found

[/bug]

I suggest to make that is allowed to select from multiple partition and not only from this on with is the bot installed...


Hexi -- Looks like you just need to do some error checking when the user hits connect. For example, I just installed your program to test, selected a random folder that doesn't even have furcadia.exe in it, hit connect and it gives me a file not found error. I'm sure wolf has a folder selected somewhere that does not exist or doesn't have access to. So just make a function to check if a file or folder exists and run your ini, furcadia.exe, etc off that function and if the file/folder doesn't exist display a MsgBox to notify the user and exit from the sub or function so your program doesn't crash.

Other Bugs:

* Going to options, settings, and the staff tab gives me a subscript out of range error and crashes. I just deleted the bot's settings' INIs ran it again, it lets me go to the staff tab now, but clicking add gives that error as well
* You can type in the main textbox on the main form? That should be readonly right?
* clicking any of the controls buttons when not connected crashes
* typing text in the input box and pressing enter crashes when not connected

Also, a few recommendations as a fellow coder IMO:

* Make your DreamBot main form startup position CenterScreen so it doesn't appear randomly on the screen every time its opened, and remove the maximize box (just shows grey space when clicking it)
* Remove the maximize box from model forms as well and make them appear CenterOwner and set BorderStyle to 3 - FixedDialog. Ex add whisper, settings, about, etc
* Move your visitor listbox inside the group box frame, right now the left side and right side of the box are overlapping the frame.
* The basic control frame is too far to the left, and the left border is cut off, move it over a little. Or in VB6 it should have dots you can align it with so just move it one dot over to the right
* Frame in settings is too far to the left too
* Also make main form BorderStyle fixed single and add MinButton if you want
* And if you're not going to use a custom icon on the settings form, change the border style to FixedDialog, then click icon and press the delete key to remove the boring VB6 default icon

http://imgur.com/55CXK.png
http://imgur.com/IGcM0.png

Other than that, the only other thing I'd suggest is looking into newer/more supported/better looking language such as VB.NET or C# (: -- I know Kylix (#SO) and some other people on here made proxy examples in .NET to get you along your way if you're interested.

I used to code in VB6 for years and still occasionally do, if you're going to stick with it you could at least add XP themed controls to your app! Example: http://imgur.com/eCtrP.png
Hexi
QUOTE (Ioka @ Oct 11 2009, 05:16 PM) *
Hexi -- Looks like you just need to do some error checking when the user hits connect. For example, I just installed your program to test, selected a random folder that doesn't even have furcadia.exe in it, hit connect and it gives me a file not found error. I'm sure wolf has a folder selected somewhere that does not exist or doesn't have access to. So just make a function to check if a file or folder exists and run your ini, furcadia.exe, etc off that function and if the file/folder doesn't exist display a MsgBox to notify the user and exit from the sub or function so your program doesn't crash.

I admit, I tend to slack on error checking, but functionality is what I am working towards first. Though I will look into fixing this major issue in the next couple of updates.

QUOTE (Ioka @ Oct 11 2009, 05:16 PM) *
Other Bugs:

* Going to options, settings, and the staff tab gives me a subscript out of range error and crashes. I just deleted the bot's settings' INIs ran it again, it lets me go to the staff tab now, but clicking add gives that error as well
* You can type in the main textbox on the main form? That should be readonly right?
* clicking any of the controls buttons when not connected crashes
* typing text in the input box and pressing enter crashes when not connected

I am aware of the Staff tab issue, and it will be fixed in the next update.
Just haven't gotten around to making the main textbox read only yet. Next update.
Control buttons causing crashes, will be fixed in the next update. As well as typing text when not connected.

QUOTE (Ioka @ Oct 11 2009, 05:16 PM) *
Also, a few recommendations as a fellow coder IMO:

* Make your DreamBot main form startup position CenterScreen so it doesn't appear randomly on the screen every time its opened, and remove the maximize box (just shows grey space when clicking it)


Noted. Admitedly my design is a bit crude.

QUOTE (Ioka @ Oct 11 2009, 05:16 PM) *
* Remove the maximize box from model forms as well and make them appear CenterOwner and set BorderStyle to 3 - FixedDialog. Ex add whisper, settings, about, etc


Been meaning to do this for a while.

QUOTE (Ioka @ Oct 11 2009, 05:16 PM) *
* Move your visitor listbox inside the group box frame, right now the left side and right side of the box are overlapping the frame.
* The basic control frame is too far to the left, and the left border is cut off, move it over a little. Or in VB6 it should have dots you can align it with so just move it one dot over to the right
* Frame in settings is too far to the left too
* Also make main form BorderStyle fixed single and add MinButton if you want
* And if you're not going to use a custom icon on the settings form, change the border style to FixedDialog, then click icon and press the delete key to remove the boring VB6 default icon

All noted.

QUOTE (Ioka @ Oct 11 2009, 05:16 PM) *
Other than that, the only other thing I'd suggest is looking into newer/more supported/better looking language such as VB.NET or C# (: -- I know Kylix (#SO) and some other people on here made proxy examples in .NET to get you along your way if you're interested.

I used to code in VB6 for years and still occasionally do, if you're going to stick with it you could at least add XP themed controls to your app! Example: http://imgur.com/eCtrP.png


I will keep using VB6 as long as I can get it to work with windows. I'm more of an old school type of person in that aspect. As for XP themed controls, I will look into that.

Thanks for your input, and the long list of things for me to add to my next update...by far one of the most productive posts in this thread to date.
Ioka
QUOTE (Hexi @ Oct 11 2009, 11:02 PM) *
I admit, I tend to slack on error checking, but functionality is what I am working towards first. Though I will look into fixing this major issue in the next couple of updates.


I am aware of the Staff tab issue, and it will be fixed in the next update.
Just haven't gotten around to making the main textbox read only yet. Next update.
Control buttons causing crashes, will be fixed in the next update. As well as typing text when not connected.



Noted. Admitedly my design is a bit crude.



Been meaning to do this for a while.


All noted.



I will keep using VB6 as long as I can get it to work with windows. I'm more of an old school type of person in that aspect. As for XP themed controls, I will look into that.

Thanks for your input, and the long list of things for me to add to my next update...by far one of the most productive posts in this thread to date.

Hoped you enjoyed my input/criticism and didn't take it in any negative way. Keep up the work dude. (:
Squizzle
Hexi I second the .net solution you can use the vb express ide to upgrade your vb6 code to vb.net and also instead of using the vbc (vbnet compiler) you could use mono or dotGnu for portability to unix and mac. Course you'd need to be familiar with those systems but not as much as a pure c/c++ port or alternatively you could make it open source and let people compile it themselves or make a build system for them to compile it with ease.

Other then that great job. Seems to me like the only bug people gripe about are the visual ones (maximize/min buttons, borders) but thats because of Vista more then likely.

Oh mentioning other proxy examples yes Kylix made one but its a lil out of date but with tweaking it works perfectly. Dream Dancer has proxy 104 (vb proxy) out there but I'm unsure if its still downloadable because I went browsing and I can't find a downloadable version. I have a working proxy wrapper on my computer that I've been procastinating its release but its for dotnet so its of no use to you.
Hexi
Ok I think I fixed all the visual bugs, but let me know if I missed any. Also fixed the control buttons and text box to not crash if not connected. Still looking into XP themes
Ioka
QUOTE (Hexi @ Oct 14 2009, 12:48 AM) *
Ok I think I fixed all the visual bugs, but let me know if I missed any. Also fixed the control buttons and text box to not crash if not connected.

Word, I'll check it out.

QUOTE (Hexi @ Oct 14 2009, 12:48 AM) *
Still looking into XP themes

Oh, my bad here you go. Can't remember for the life of me where I got the XP Manifest .res resource file, probably from that cool guy Kylix. #SK
http://stashbox.org/663973/VB6%20XP%20Themed%20Form.zip

Also I noticed you have it check for a new version and if there is one just launch the download for it in default web browser, then you have to go through the installer again. If you want I can help you make an seamless automatic updater for your app that just uses the Winsock control, which I think you're already using anyway, so nothing extra is needed.

Also did you change anything with the them already or is it something weird on my end, because it looks like this now? http://imgur.com/RRAXp.png Used to have regular buttons, now it has unthemed command prompt like buttons. Was just curious... and I just ran it, it was asking me where furcadia and my characters were or something, I hit x on both, then file connect, got path not found error and crashed (i mean yeah b/c I didn't provide it with any of my settings, but it could have let me know gracefully).

Hit me up though about helping with an update for you I'd love to help.... oh and PS your about page still says version 1.0.19, if I were you I'd make the version static in one place, so you only have to change it there. For example if you have a module you can stick this in there:

Public Const szVersion As String = "1.0.24"

then on your main form on load do like
frmMain.Caption = "DreamBot Version: " & szVersion & "[]"

and on your about form on load make it add the szVersion too.. just a recommendation. smile.gif
Dream Dancer
CODE
Public VersionInfo As String
Sub Initialize
...
VersionInfo = "FurBot WX " & Format$(App.Major) & "." & Format$(App.Minor) & "." & Format$(App.Revision)
...
End Sub
Ioka
QUOTE (Dream Dancer @ Oct 17 2009, 08:13 AM) *
CODE
Public VersionInfo As String
Sub Initialize
...
VersionInfo = "FurBot WX " & Format$(App.Major) & "." & Format$(App.Minor) & "." & Format$(App.Revision)
...
End Sub


Even better. smile.gif
Hexi
got it and also made the credits be more dynamic to the point where there is no longer a credits.dat file, this way it loads from my server and then I merely have to change them as needed in one place without remembering to do so. I used app.major, app.minor, etc... in place of the line in the credits.dat that had the versioning. XP Themes are a go. Thanks Ioka. I had tried a couple of other ways, but they seemed to fail, but the site you cited worked excellent. Gonna finish working on some changes to the whisper and timer windows and then will be putting out an update. This update will still use the brower to download, but will only download the necessary DreamBot.exe in zip format as oppose to the setup file.
Ioka
QUOTE (Hexi @ Oct 17 2009, 07:13 PM) *
got it and also made the credits be more dynamic to the point where there is no longer a credits.dat file, this way it loads from my server and then I merely have to change them as needed in one place without remembering to do so. I used app.major, app.minor, etc... in place of the line in the credits.dat that had the versioning. XP Themes are a go. Thanks Ioka. I had tried a couple of other ways, but they seemed to fail, but the site you cited worked excellent. Gonna finish working on some changes to the whisper and timer windows and then will be putting out an update. This update will still use the brower to download, but will only download the necessary DreamBot.exe in zip format as oppose to the setup file.

Still say you should have your program automatically update, since you're having it check for a new version anyway! but to each his own #SK .. and like I said if you need any help
Dream Dancer
I got to thinking about that myself, and am looking into creating a means by which I can download the update via:
http://www.php.net/manual/en/function.file-get-contents.php

By using a specially crafted request string which would contain the version of the program I want to update to, and the length of the file I already have on disk, to which the server side script would verify that is still the correct update, and then send back a chunk of the update, prefixed with the version so the program can verify that it's still the same update it's downloading. That would be a very unboggy and un-cpu intensive means of acquiring the update.
Hexi
QUOTE (Ioka @ Oct 17 2009, 08:21 PM) *
Still say you should have your program automatically update, since you're having it check for a new version anyway! but to each his own #SK .. and like I said if you need any help


first thing is first...trying to make the timers work a little bit better and easier. I like the idea of an auto-update, but at this time I feel that the core functionality is key.


QUOTE (Dream Dancer @ Oct 17 2009, 09:51 PM) *
I got to thinking about that myself, and am looking into creating a means by which I can download the update via:
http://www.php.net/manual/en/function.file-get-contents.php

By using a specially crafted request string which would contain the version of the program I want to update to, and the length of the file I already have on disk, to which the server side script would verify that is still the correct update, and then send back a chunk of the update, prefixed with the version so the program can verify that it's still the same update it's downloading. That would be a very unboggy and un-cpu intensive means of acquiring the update.

that might be a good way to go.
Hexi
CODE
Dim tdata As String
If Option1.Value = 1 Then
tdata = Text1.Text & "," & Text3.Text & ";" & Chr(34) & Text2.Text
ElseIf Option2.Value = 1 Then
tdata = Text1.Text & "," & Text3.Text & ";" & Chr(34) & "emit " & Text2.Text
ElseIf Option3.Value = 1 Then
tdata = Text1.Text & "," & Text3.Text & ";:" & Text2.Text
ElseIf Option4.Value = 1 Then
tdata = Text1.Text & "," & Text3.Text & ";-" & Text2.Text
End If
Debug.Print "[" & tdata & "]"


Any ideas why the above is not writting the data to tdata? When ran in the IDE Debug.Print just outputs []
Squizzle
Whats the default value of Option#? Might be the reason its not writing to tdata at all.
Hexi
QUOTE (Squizzle @ Oct 17 2009, 11:32 PM) *
Whats the default value of Option#? Might be the reason its not writing to tdata at all.


Default was 0...but dawned on me that Option#.value is either true or false.
Dream Dancer
Option Checkbox's are usually either 1 or 0, found that out when attempting to directly set a boolean value to a checkbox, had to use an IIf statement:
CloseDisconnect.Value = IIf(CTRL.Item(cfgCloseDisconnect), 1, 0)

Likewise when retrieving the value back into the boolean value:
CTRL.Item(cfgCloseDisconnect) = IIf(CloseDisconnect.Value = 0, False, True)
Squizzle
Har works like this in c# (VB.Net also has that pesky IIF...)

object o = (Condition = Condition ? TrueValue : FalseValue);
//You can also lose the braces but it helps if you use it in a function with a parameter that takes a boolean value. Also easier on the EYES.
Disconnect((CloseDisconnect.Value = 0 ? false : true), "Another parameter..");
Hexi
Ok, I know i said I was just gonna do upgrades on the .exe file alone, but keep in mind that the update comming out later this evening is gonna be the last one where you will have to run the install file. This will be critical as I have made several changes to the ini files, which you will be needed.
Hexi
QUOTE (Ioka @ Oct 17 2009, 08:21 PM) *
Still say you should have your program automatically update, since you're having it check for a new version anyway! but to each his own #SK .. and like I said if you need any help


And yes, comming soon an auto-updater, because everyone's voice should be heard. With main functionality done, I am now able to devote some time to making an auto-updater that works seemlessly with DreamBot. But Bear in mind it will require 1 last update using the installer.
Ioka
QUOTE (Hexi @ Oct 18 2009, 11:20 PM) *
And yes, comming soon an auto-updater, because everyone's voice should be heard. With main functionality done, I am now able to devote some time to making an auto-updater that works seemlessly with DreamBot. But Bear in mind it will require 1 last update using the installer.


Think I mainly kept bugging you because I wanted to help you code the updater. lol
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2010 Invision Power Services, Inc.