brant // User Search

brant // User Search

1  2  3  4  5  6  ...  17  |  

what the hell is with the new sdk?

Feb 10, 2001, 10:55pm
There seems to be a problem with the Quickstart routine of the VB SDK. For
example, when I use QuickStart, IP querying a person returns 0.0.0.0 every
time. However, when I log in the bot the traditional way, the AwAddress
function works fine.

My suggestion: avoid the QuickStart and QuickStop functions and log in the
bot using AW's functions - maybe it will fix the problem.

[View Quote]

New World owner needs help

Apr 17, 2001, 10:49pm
Andras also just created an informative page about running the AW browser
and server behind firewalls and networks - I believe the URL is posted in
the worldbuilders newsgroup.

[View Quote]

VB installations using a 3rd party installer-tool

Apr 18, 2001, 6:15pm
My suggstion would be to just use the package and deployment wizard - while
it looks ugly, I used it for a year without problems as it's the least
time-consuming way of distributing your programs. If, like me, however, the
AW SDK doesn't register in the installation package, look for Visual Studio
Installer on Microsoft's site (MrGrimm told me the URL I think, but I forgot
its exact location). It looks nicer, and can determine all the dependencies
of your application simply by scanning the VB source code. Just modify the
installation directories, and you're set to go.

Help needed.

Apr 25, 2001, 8:21pm
Most likely, your problem is a result of MrGrimm's file naming practices.

Whereas previous builds of the VB SDK were named sequentially (Build 15 was
awsdkocx.ocx, and build 17 was awsdkocx2.ocx), both builds 19 and 20 are
AWSDKOCX3.OCX, and have the same internal name. Therefore, if you have both
versions on your system, weird problems can result.

To correct the problem, delete all instances of build 19, and install one
version of build 20 to your system folder. Then make sure that the correct
build is selected in the Components dialog. Hopefully this will fix your
problem

AwSdkOcx3 registration problems!!!

Apr 29, 2001, 12:02am
Most likely, you're using Windows 95. You can fix the problem by
downloading the Winsock 2 fix at members.home.com/grimmcna or whatever
the URL of the site is now.

VB: Chat Logging

May 11, 2001, 11:36pm
There's another way to do what you're asking besides using the "Open",
"Close", etc. commands. If you look in the MSDN library that comes
with VB, there's an object called the FileSystemObject, which, when
created and associated with a file, makes editing files easier. For
example, if you declared object a as one of these objects, then you
could simply say:

f$ = a.readall()

to read all of the text in a file into a string. The statements
a.read(), a.write(), etc. would also work.

I would cut and paste the documentation here, but it's on the other
computer, which someone else is currently using.

Free source code and classes

May 14, 2001, 5:51pm
For those of you who have been asking about session lists and keeping track
of avatars, I was finally able to get around to releasing a few of the
classes that I commonly use. They allow a programmer to:

-Keep a session list with three lines of code
-Retrieve integer coordinates from a string such as "45n 45e 0a 45"
-Look up error codes with intelligent error messages
-Generate a coordinate string out of SDK coordinates

The classes open up interesting possibilities. Since the default property
is the session, you could whisper to a citizen by name (instead of by
session):

aw.AwWhisper Avatars( "Magine" ), "Message"

or locate a specific property by name:

Avatars( "Andras" ).X

You can download this code at http://www.shoemakervillage.org/programs.html

Free source code and classes

May 15, 2001, 4:40pm
Take a look at the help files for the program - they're located on the same
page - it explains everything you need to know.

VB: Storing Values in INI Files

May 18, 2001, 6:34pm
A good ini file editor is included with all of my programs (ini tools.ocx).
It's simple to use - just add it to your project. You can download any of
the programs at www.shoemakervillage.org/programs.html

Magsbot classes in exchange for script help?

Sep 29, 2001, 6:14pm
Unlike those who are flaming you for posting in HTML, I would be
interested in taking one of these classes - how detailed would they
be?

[View Quote]

Magsbot classes in exchange for script help?

Oct 1, 2001, 10:30pm
Monday nights would be best for me - I don't have to go in until 9:30 on
Tuesdays, so if you're asking my opinion, that's when I'd say :)

[View Quote]

Magsbot classes in exchange for script help?

Oct 1, 2001, 10:31pm
I should add that Saturday mornings (10am to 12am VRT) would also be a good
time, as I'd be able to find some time when I won't be disturbed.

[View Quote]

SDK for PocketPC

Dec 14, 2001, 11:55am
While you're at it, develop one for the Palm too, lol. I don't have a
pocketPC, but a palm SDK would at least be interesting :)

[View Quote]

Log Bot v1.0

Dec 16, 2001, 4:05pm
Hey Gamer,

This bot doesn't append logs - you opened the file for "output" instead of
for "append." When you open a file for output, it deletes all the
information previously in the log. Unfortunately, when you run this bot, it
would delete all the previous logs each time you log in.

-Brant

[View Quote]

Log Bot v1.0

Dec 16, 2001, 6:36pm
Still, you could eliminate all that code by simply using the "append" mode -
problem solved :)

[View Quote]

Log Bot v1.0

Dec 16, 2001, 9:26pm
Use the Kupex INI Tools ocx that I use in all my programs. I'll find it and
send it to you. It makes writing INI files quick and easy :)

[View Quote]

Activeworlds Utility 1.10 with dynamic IP ejection

Jan 3, 2002, 3:56pm
I'd like to announce the release of the brand new Activeworlds Utility 1.10,
an update to the previously released Activeworlds Utility 1.03. New users
can download the entire program at
http://www.shoemakervillage.org/programs.html, while existing users can
simply run their existing versions and upgrade. If your upgrade utility
stops functioning for 10 minutes or more, then simply download the full
updated version.

Most of this update is related to stability. Disconnection handling is now
enabled so that the bots will automatically reconnect unless the
disconnection is the result of a privilege password change. There are some
speed increases and GUI improvements. Users of a Locator Bot can now
"visit" other avatars using 3.2's teleportation capabilities. Finally, and
most importantly, this version offers something that was never before
available: ejection by citizen number, regardless of IP address. Citizens
with eject in worlds can now set up a continuous patrol that will keep
problematic citizens out of your world until you allow them to reenter.

However, I also spent 10-15 hours programming several new features that deal
with tourist property, all of which are now obsolete and I had to spend more
time removing from the program before I released it. This time could have
been much better spent on a variety of other activities instead of
programming software that is now useless. In light of these recent events,
I've decided to take a "watch and wait" stance, meaning that I've suspended
all development of all of my software until the current situation
stabilizes. Obviously, AW is in a grave situation right now to raise prices
so high, and whether people will still be around to use bots or whether
these bots will even be useful at all if AW folds in a year remains to be
seen. This doesn't mean that I'm going to stop all my activities FOREVER
and leave AW immediately like a lot of the overreacting citizens are
preaching now; it just means that I want to be sure that my programs will be
useful in the future before improving them further. I'm still going to help
out with the other organizations in which I'm involved, so I'm not
disappearing any time soon.

I've also written some new help files at
http://www.shoemakervillage.org/help that are long overdue and should help
with most if not all of the questions I'm receiving regarding the program.
Comments about the Utility are welcome.

WARNING: IMPORTANT

Mar 31, 2002, 4:01pm
Quite frankly, Mod, I don't believe you. Until I personally see this list
of passwords, I'm not taking action in any of my worlds, nor would I suggest
that anyone else waste their time either.

Second, if you actually have, as some claim, downloaded and de-encrypted
files to your hard drive that do not belong to you, then you are in
violation of international copyright law. All it would take would be for
one owner of any of these 53 worlds to file a lawsuit, and you (or your
parents, depending on your age) could be out thousands of dollars, not to
mention spending some time in jail.

I seriously doubt the legitimacy of this claim. Until I see proof, I'm not
going to panic.

[View Quote]

WARNING: IMPORTANT

Mar 31, 2002, 4:02pm
Why can't you reveal who's on the list? That, coupled with the capital
letters all over your message and subject lines, spells "HOAX" to me.

[View Quote]

Brant's paintball bot is full of errors

May 4, 2002, 6:29pm
You obviously downloaded the beta version of the bot. As you can see at
shoemakervillage.org/programs.html and in the message that appears in the
upgrade notification, the latest version 3.0 is a beta version and may
contain errors - thus, in other words, download at your own risk if you like
to search out bugs. If you're dissatisfied with the current version, you
can retrograde to version 2.24, which is still available - just press "skip"
to reject the upgrade.

Next time, please read the webpages clearly or E-mail me with your question
before making a hasty decision to post messages like these.

-Brant

[View Quote]

Brant's paintball bot is full of errors

May 4, 2002, 10:54pm
There is no code anywhere in the paintball bot that deletes score files, so
I don't know how your files would have disappeared. I also don't know how
the program would have upgraded unless you specifically pressed the
"upgrade" button - that same code is used in every program I've published
and nobody has complained of anything of the sort in some 50,000 program
runs in over two years, and I did investigate a lot of complaints about the
upgrade process.

But anyway, the more important question is don't you have any backups? The
first rule of computers is that you make backups of EVERYTHING - I myself
have three copies of my magazines, novel, and source code even though they
take up five CD's.

[View Quote]

Brant's paintball bot is full of errors

May 6, 2002, 11:02am
I welcome all comments and suggestions for improvement :)

But isn't there already a function to do that? When you start version 2.24
now, it should display a message saying that there is an upgrade available.
The bottom part of the form displays what's new in the upgrade, or in other
words simply downloads and displays

http://www.shoemakervillage.org/pbwhatsnew.txt

when an upgrade is available. As you can see in that file, it says that the
upgrade is a beta version. Since the upgrade isn't mandatory, you should be
able to simply press "skip" and continue using the program as normal if you
so choose. Isn't the "skip" button what you were referring to, in a way?

[View Quote]

Making a bot move in a circle.

May 20, 2002, 10:27am
To do this, you'd need to think of the movement as a math equation. The
parametric (or one variable) system of equations for a two-dimensional
circle are:

x = R*cos(t)
y = R*sin(t),
where t is in radians between 0 and 2 times pi, and R is the radius of the
circle.

Since AW uses the Z-axis instead of Y for depth, replace Z for Y in these
equations. The speed at which the bot moves around the circle can be
changed according to how fast the parameter (t) changes - so to make the bot
move faster, use a for loop (in C++) or a timer (in VB) to increment the
value t from zero to 2 times pi faster or slower depending on the speed you
want. Replace R with the radius of the circle, and you should be all set.

I would explain it more specifically, but I don't know which language you're
using.

Hope this helps,

-Brant

[View Quote]

Unusual behavior of AW SDK in classes

May 20, 2002, 1:22pm
This morning, I continued working on a "sekrit project" that I announced a
few days ago. [Remember that phrase? :)] Before anyone asks what it's
about, I will give one hint - that it will revolutionize the environment in
AWTeen and perhaps affect the rest of the universe as well. That's all the
info I'm divulging until it's released in two weeks.

Now that that's over with, I was trying to create a "Bot" class this morning
to unify all the other classes I've been using. Basically, this class would
simplify the use of the SDK by automating things like session tables and
object querying. For example, someone could use:

Bots(1).Add
Bots(1).Login(.....)
Bots(1).Move("900n 30e")
Bots(1).Disappear
Bots(1).Whisper "Brant", "Hi"
Bots(1).ConsoleMessageToAllUsers "Test message"
var1 = Bots(1).AvatarList("Brant").session
Bots(1).query("800n 50e")

and so on. But as I was trying to do this, I tried to include an AWSdkOcx4
object in the class and have been receiving "Object with block or variable
not set" errors.

At first, I used these lines:

Private AW as AWSdkOcx4 'as a class property
Set AW = new AWSdkOcx4 'at first access

but that fails with an "invalid use of New keyword." I tried making the
object AW public, but there was no change. Even if you try to use the SDK
as a simple variable (not as an object), it fails as well with a similar
error. When I looked up the help on this issue in the MSDN library, it
says:

----------------------

You tried to instantiate an Automation object, but it was not a creatable
object. For example, you tried to create a new instance of a list box by
specifying ListBox in a statement like the following:
' Valid syntax to create the variable.
Dim MyListBox As ListBox
Dim MyFormInst As Form
' Invalid syntax to instantiate the object.
Set MyFormInst = New Form
Set MyListBox = New ListBox

ListBox and Form are class names, not specific object names. You can use
them to specify that avariable will be a reference to a certainobject type,
as with the valid Dim statements above. But you can't use them to
instantiate the objects themselves in a Set statement. You must specify a
specific object, rather than the generic class name, in the Set statement:

' Valid syntax to create new instance of a form or list box.
Set MyFormInst = New Form1
Set MyListBox = New List1

---------------

I don't see why you'd have to use a different name when instantiating these
objects. Anyone have any ideas on why this might be or how to solve the
problem?

-Brant

Unusual behavior of AW SDK in classes

May 20, 2002, 6:10pm
Weatherbot? That's already been done, albeit in a much sloppier manner. I
thought I'd finally get a class like this together to save me a lot of work
in the future, especially since I'm programming the classes and certain
3.2/non-AW functions now, and waiting until MrGrimm has put together the new
VB SDK and AW 3.3 is out of the beta test phase before finishing up with the
3.3 only functions.

[View Quote]

Unusual behavior of AW SDK in classes

May 21, 2002, 12:16am
Thanks a lot, grims! Everything works perfectly now. Thanks again.

[View Quote]

Unusual behavior of AW SDK in classes

May 30, 2002, 10:58am
I hadn't planned on making a reply, lol. Thor (and Thor 2) are programmed
such that they will only work in AWTeen. Massive changes would be necessary
to make it work in another world, not to mention another backdrop or skybox
series would be needed since Beardo and NoMad own the rights to the current
projects. I wish I could help :(

[View Quote]

Re: bot classes

May 21, 2002, 11:21am
Well, in reply to your question, I was originally going to write this secret
project in C++. I decided against doing so for two reasons.

1. I have hundreds of pages of code already written to do just about
anything with the SDK that could be easily changed to do what this
particular bot is designed for. In C++, I would have to rewrite all that
code from scratch.

2. While I've written a lot of programs using console functions in C++, I
have no knowledge of how to use the Windows API to create nice looking
forms. I should probably learn how to use it, but doing so would push the
completion of the project back beyond next week, AFTER 3.3 is released.

Plus, VB offers a lot of ease in debugging that will allow me to get a
project that doesn't necessarily rely on speed off the ground quickly. The
only problem with VB is that inheritance is not supported (I believe VB.net
supports it though), meaning that the only way I can add
application-specific reactions to SDK events is to create a "generic module"
which has a set of subroutines that are called after the class processes
events. In the AvatarAdd event, for example, the class first manages the
list of avatars (used in all applications), and then passes a reference of
the "Bot" object to a global Sub for actions taken by this specific
application. It's somewhat sloppy to have to create a "dummy module" with
just the prototypes and no implementation and then make a copy to modify
each time you want to write a bot - but it's the best VB offers, unless
someone else has a better idea how this could be implemented.

By the way, in case anyone is wondering, I plan to release all of these
classes to the public in the hopes of spurring on interesting bot
development. The code won't be compiled into a DLL - it will be released as
the original source so everyone can take a look - stay tuned :)

[View Quote]

Very Puzzling Function

May 24, 2002, 2:08pm
As part of the "sekrit project," I've been putting together hard-to-write
functions while I wait for MrGrimm (a.k.a. 9 9 9) to finish the VB version
of the new SDK. One of the most difficult parts of the project is being
able to determine whether there are any objects in a cell that encroach into
the cell. To explain this better, imagine that there is a single
walk001h.rwx filling an entire cell that needs to be built. This function
is supposed to determine whether there are any other objects either in the
cell or overlapping into the cell that would cause the walk001h.rwx to be in
a state of encroachment.

While other parts of the project have been relatively simple, I've been
working on this part for four days straight and have yet to find an
acceptable solution. Yesterday night, I finally got the function to work
correctly, but unfortunately, it can take up to two seconds(!) for each
call. If 30 people are in AWTeen at a time and if just 8 of them perform
the action that requires this function to be called two times per minute,
the bot will be grinding away computing encroachment values for half the
time! The problem is that it has to search through all of the AWObjects in
a large collection that contains a 5X5 query result. I can reduce the load
to deal with 3X3 queries only, but the wait is still ridiculously long.
Someone suggested to me to implement a binary search, but doing so wouldn't
help because it would be impossible to sort the objects in such a manner as
to eliminate some of them, because some are obviously larger than others and
some can be very large (i.e. that blue wall section that takes up five
cells). The nested For loops are killing the processor, but I can't see any
ways to eliminate them.

The function is below. Any help anyone could provide in improving the speed
on this one would be much appreciated.

--------------
'CitNum is the number of the owner of the objects that should be ignored
(i.e. the builder)
Public Function CheckCellForEncroachment(ByRef AWObjectsCol As AWObjects,
CellX As Long, CellZ As Long, CitNum As Long)
Dim TempX As Long, TempZ As Long, XCounter As Long, ZCounter As Long
Dim XCheck As Boolean
Dim ZCheck As Boolean
'AWObj is an object representing an AW object - X here is the X
coordinate, Z is the Z coordinate
For Each AWObj In AWObjectsCol
If AWObj.Owner <> CitNum Then
'This part takes care of the case when the object is actually in
the cell
If AWObj.X >= CellX And AWObj.X <= CellX + 1000 And AWObj.Z >=
CellZ And AWObj.Z <= CellZ + 1000 Then
CheckCellForEncroachment = True
Exit Function
End If
TempX = mCol(AWObj.Model).X
TempZ = mCol(AWObj.Model).Z
XCheck = False
ZCheck = False
'for loops are necessary in the case that an object fills more
than two cells
'in this case, an object could acutally encroach by having both
ends out of the cell
'in question, while the middle is in the building
For XCounter = TempX To 0 Step -1000
For ZCounter = TempZ To 0 Step -1000
'coordinates of objects in negative numbered cells are
LOWER than the cell coordinate,
'while the coordinates of objects in positive numbered
cells are HIGHER than the coordinate
'this, either the slow abs() function must be used, or
an if else clause is needed
If AWObj.X > 0 Then
If (AWObj.X - TempX > CellX And AWObj.X - TempX <=
CellX + 1000) Or (AWObj.X + TempX > CellX And AWObj.X + TempX <= CellX +
1000) Then
XCheck = True
End If
Else
If (AWObj.X - TempX < CellX And AWObj.X - TempX >=
CellX - 1000) Or (AWObj.X + TempX < CellX And AWObj.X + TempX >= CellX -
1000) Then
XCheck = True
End If
End If
If AWObj.Z > 0 Then
If (AWObj.Z - TempZ > CellZ And AWObj.Z - TempZ <=
CellZ + 1000) Or (AWObj.Z + TempZ > CellZ And AWObj.Z + TempZ <= CellZ +
1000) Then
ZCheck = True
End If
Else
If (AWObj.Z - TempZ < CellZ And AWObj.Z - TempZ >=
CellZ + 1000) Or (AWObj.Z + TempZ < CellZ And AWObj.Z + TempZ >= CellZ -
1000) Then
ZCheck = True
End If
End If
If XCheck And ZCheck Then
CheckCellForEncroachment = True
Exit Function
End If
Next
Next
End If
Next
CheckCellForEncroachment = False
'if no object is found that encroaches, exit
End Function

Very Puzzling Function

May 24, 2002, 5:53pm
I appreciate the tips here, but I asked for help on the function, not the
language. As I said before, I had originally planned to write this program
in C++, but because I already have a lot of classes for various purposes
written in VB, I decided to use VB.

To tell you the truth, I don't think that any language will be able to
handle what this function is supposed to do perfectly, since it's just a
work-around for the same function in the world server. Just getting it to
work took four days - it'll take many more to get it optimized, and there
are time constraints (i.e. the release of version 3.3) to deal with here.
It would be interesting to see how Roland implemented this function in the
world server.

[View Quote]

1  2  3  4  5  6  ...  17  |  
Awportals.com is a privately held community resource website dedicated to Active Worlds.
Copyright (c) Mark Randall 2006 - 2024. All Rights Reserved.
Awportals.com   ·   ProLibraries Live   ·   Twitter   ·   LinkedIn