strike rapier // User Search

strike rapier // User Search

1  ...  2  3  4  5  6  7  ...  141  |  

world List

Aug 21, 2002, 11:46pm
I had that problem 2 at first :)


[View Quote]

world List

Aug 22, 2002, 12:07am
call the update, you will only receieve the worlds that have changed, hence you must keep track of all worlds and alter them only if they have changed...

Type AwWorld
Name as string
Users as integerer
end type

global worlds(1500) as AwWvbBlack
Display "Total Found: " & ocount, vbBlack
End If
'Do stuff here
End Sub

For each updated object.... you do this..

for i = 0 to 1500
if worlds(i).name = AwWorldName then
worlds(i).users = awworldusers
end if
next i
[View Quote]

AW_Create

Aug 23, 2002, 11:29pm
Howdy peoples,
Could someone please tell me what port and host to use in aw_create for AW? 0,0 dosent work anymore for me.

- Mark

AW_Create

Aug 24, 2002, 12:11am
Thanks, ive got it sorted.. but now its saying my PPW is invalid, ive even hardcoded it to the right 1 with no luck. All my other bots login fine, anyone know if there is a problem seen before like this?

- Mar
[View Quote]

AW_Create

Aug 24, 2002, 12:34pm
I fixed it, I use functions to set some globals, however AW_LOGIN_PASSWORD was being set instead of AW_LOGIN_PRIVILEGE_PASSWORD :) Thanks for baron for pointing out my stupidity and helping me getting it working. :)

Now my only prob is its not recieving events even with all the events set and the features installed.

- Mark
[View Quote]

AW_Create

Aug 24, 2002, 12:59pm
Public Sub Login_Bot(Citnum As Long, PPW As String, BotName As String, Avatar As Integer, World As String, X As Long, Y As Long, Z As Long, YAW As Long, GlobalMode As Boolean, Invisible As Boolean, Universal As Boolean)
Dim RC As Long, LoginTime As Long, vbDoubleTab As String
vbDoubleTab = vbTab & vbTab
LoginTime = Timer
With FrmMain.sdk
'Create instance
RC = .aw_create("auth.activeworlds.com", 5670)
If RC Then
Display Time & vbTab & "Could not create instance in Active Worlds - Reason: " & ARC_Lookup(RC), vbRed
Status "Could not create instance in Active Worlds - Reason: " & ARC_Lookup(RC), vbRed
Exit Sub
Else
Display Time & vbTab & "Successfully created instance in Active Worlds", vbBlue
Status "Successfully created instance in Active Worlds - Time Taken: " & (Timer - logintimer), vbBlue
End If
.aw_int_set AW_LOGIN_OWNER, Citnum
.aw_string_set AW_LOGIN_PRIVILEGE_PASSWORD, PPW
.aw_string_set AW_LOGIN_NAME, "saykuamon"
.aw_string_set AW_LOGIN_APPLICATION, "Saykuamon"
RC = .aw_login
If RC Then
Display "Could not login - Reason: " & ARC_Lookup(RC), vbRed
Status "Could not login - Reason: " & ARC_Lookup(RC), vbRed
Exit Sub
Else
Display Time & vbTab & BotName & " sucessfully logged into Universe Active Worlds - Level 3", vbBlue
Status BotName & " sucessfully logged into Universe Active Worlds - Time Taken: " & (Timer - logintimer), vbBlue
End If
If Universal = True Then
Status "Holding at universal level (3) - Total login time: " & (Timer - logintimer), vbBlue
FrmLogin.Visible = False
Exit Sub
End If
If GlobalMode = True Then
.aw_bool_set AW_ENTER_GLOBAL, True
Else
.aw_bool_set AW_ENTER_GLOBAL, False
End If
RC = .aw_enter(World)
If RC Then
Display Time & vbTab & BotName & " could not enter '" & World & "' - Reason: " & ARC_Lookup(RC), vbRed
Status BotName & " could not enter '" & World & "' - Reason: " & ARC_Lookup(RC), vbRed
Exit Sub
Else
Display Time & vbTab & BotName & " enters the world '" & World & "'", vbBlue
Status BotName & " enters the world '" & World & "'", vbBlue
FrmMain.Caption = "Seykuamon - " & World
End If

If Invisible = True Then
Status "Holding at world level (2) - Total login time: " & (Timer - logintimer), vbBlue
FrmLogin.Visible = False
Exit Sub
End If
.aw_int_set AW_MY_X, X
.aw_int_set AW_MY_Y, Y
.aw_int_set AW_MY_Z, -2750000
.aw_int_set AW_MY_YAW, YAW
.aw_int_set AW_MY_TYPE, 1
Status "Setting SDK coordinate values - X: " & X & " Y: " & Y & " Z: " & Z & " YAW: " & YAW, vbBlue
Status "Evaluating SDK coordinates - Target Set: " & StringCoords(X, Y, Z, YAW), vbBlue
.aw_event_set EventAvatarAdd
.aw_event_set EventAvatarChange
.aw_event_set EventAvatarDelete
.aw_event_set EventChat
RC = .aw_state_change
If RC Then
Display Time & vbTab & BotName & " could not state change - Reason: " & ARC_Lookup(RC), vbRed
Status BotName & " could not state change - Reason: " & ARC_Lookup(RC), vbRed
Exit Sub
Else
Display Time & vbTab & BotName & " enters the world '" & World & "' at the physical level", vbBlue
Status BotName & " enters the world '" & World & "' at the physical level", vbBlue
End If
.aw_event_set EventAvatarAdd
.aw_event_set EventAvatarChange
.aw_event_set EventAvatarDelete
.aw_event_set EventChat
.aw_event_set EventWorldInfo
Status "Holding at Physical level (1) - Total login time: " & (Timer - logintimer), vbBlue
FrmLogin.Visible = False
End With
End Sub

Is what im using.. But it still does not recieve any events appart from avatar add

AW_Create

Aug 24, 2002, 1:55pm
Yep, it always recieved Avatar_Add nomatter what, even without a handler installed at all.
*adds Option explicit*

- Mark
[View Quote]

AW_Create

Aug 25, 2002, 12:10am
I only reinstalled VS again last week and I had yet to enable it.

- Mark
[View Quote]

[Event] The Great AWTeen Show Info

Aug 29, 2002, 9:23pm
Hello Everyone,
First of all sorry for the long read but I had to put allot into this post to get all the information across. Id like to inform you all about the upcoming Great AWTeen Show. For those of you who are interested in similar things in real life it is based on the Great Yorkshire Show, which is held in Yorkshire, England every year. Its a festival where everyone from all over the country gets together and exchange ideas, show their abilities, demonstraight technology or items and to sell products etc. The Great AWTeen show is highly similar to this event as it is in real life.

For 1 weekend myself and the show organisation team would like to invite everyone in Active Worlds to come together and share an experience. We would like to give everyone the chance to display their achievements, organisations, communities and towns to the whole Active Worlds community in 1 large area that's well presented and laid out and allows easy traversal between the different areas. To do this we will be utilising a large area in AWTeen to stage this event, the world AWTeen was chosen because of its thousands of specialist objects and a good possibility of all world features and the world immigration officer.

We are creating several areas for people to display their achievements etc, these categories are:
- Towns: Things such as SWCity, Horizon and smaller towns from around the Universe.
- Communities: World communities such as AWTeen, AWSome, AW etc
- Organisations: Peacekeepers, Gatekeepers and such
- Standalone Builds: Any builds you are proud of, if you think its suitable, and its G rated display it!
- Worlds: Any worlds that you wish to display information / teleports from.
- Programming & SDK: New bot technology for example FireStorm Fireworks, Demeter, Peacebot, Xelagot etc.
If you have any other categories you think are suitable please e-mail me at strike at rapiercom.freeserve.co.uk and explain them, if they are indeed suitable I will add them if there are sufficient users in that category.

Display Areas:
---------------
People who wish to have a display area will be given a 4x4 area within the main show site in which to build their display area. You are free to use a reasonable amount of media in your displays (see below) however out of respect for viewers, and other display holders we must ask that you keep your total media usage to below 2mb. You can design your area however you feel as long as it does not break the rules set out below, for example picture displays on poles or walk in areas are all fine, AWTeen has a very large collection of custom and advanced objects that can be used to great effect, you have several weeks in which to get your builds done so take your time with them and make them good.

Rules for display areas are as below:
1. All areas will be given a 4x4 area of walk029.rwx objects in which to create their displays. This is only increasable on request to myself and with a true need (for example requiring objects spread out in which to create a bot generated effect).
2. All content is to remain strictly G-Rated. Any content not within the G rating is subject to deletion by the vandalism teams in AWTeen. Also, for this reason I have taken the decision to refuse all requests for displays for Gor related items. I have done this to prevent the worrying of some of the younger users who will be attending, also due to the 18 / 21+ only nature of the Gor worlds it would not be suitable for display in an teen based world. If any Gorean user was considering a display for this event I apologise completely but feel it is for the best.
3. There is to be no vandalisement of property at the event, this includes posting offensive signs and pictures, or use of move encroachment etc.
4. By requesting and receiving a display area you automatically agree to rules 1, 2, 3 and 5 and agree that if you break any of these rules then you put yourself up for action including ejection and your build being deleted by vandalism teams.
5. The maximum amount of media usage per area is 2mb, this is none extendable without special request to the event organisers, the absolute maximum limit is 4 Mb in total. This is to make the experience more enjoyable for everyone.

If you wish to apply for an area please copy, paste and fill in the following section of this e-mail and e-mail it to strike at rapiercom.freeserve.co.uk with the subject line 'Great AWTeen Show Display Application'

-----------------------------Begin E-Mail----------------------------------
MsgRule{great_awteen_show|display_app}
Citizen Name:
Citizen Number:
Citizen E-Mail:

Category:
Registered Owner: (This is the owner of the organisation if you are e-mailing on behalf of 1 or a town citizenship etc)

Description: (Add a short description of what you will be wanting to display)
-----------------------------End E-Mail-----------------------------------

Onto More Fun:
-----------------
In addition to the display areas we will also be holding a first ever event in AWTeen. The event organisers would like to take the opportunity to let the community entertain itself. We will therefore be holding a event on the second evening of the event where you the community take control.

In groups of up to 10 people the task is to create a themed show similar to a staged show like Keenan and Kel where the audience watches the show being performed as well as it being recorded. Your shows can be about anything G / PG rated, but nothing more higher level than that. For this we will be using the large outdoor floodlit dome and stage for groups to stage their shows. Shows should last between 5 and 10 minutes each and should be within the following limitations.
- A maximum of 10 main people can be in a group, you can use up to 10 extras or bring people up from the crowd if you forewarn the event organisers.
- No part of the show should exceed the PG rating, however we will not tolerate swearing with the intent to cause offence etc.

The stage area is 3 x 5, this means you will be allowed to build sets which will then be transferred to the stage before or during your act.

Because of the entertainment this is going to be I would ask that every major organisation in AW considered putting a show together as it would be a great opportunity to show more than what the organisation in. As well as several others, I aim this at the Gatekeepers, Peacekeepers, AWSchool, AW Inc, AWHS, AWEC etc.

If you would like to participate in this section of the event please e-mail me at strike at rapiercom.freeserve.co.uk and copy, paste and fill in the following to me.

-----------------------------Begin E-Mail----------------------------------
MsgRule{great_awteen_show|showtime_app}
Citizen Name:
Citizen Number:
Citizen E-Mail:

Members: (All the members of your group who will be acting)

Description: (Add a short description of what you will be wanting to do a show about)

Comments: (Self explanatory)
-----------------------------End E-Mail-----------------------------------

You can also e-mail me any questions about any of the above at strike at rapiercom.freeserve.co.uk

Games Time:
-------------
To keep you all happy we will also be providing other events such as NTT, Paintball and other activities over the weekend of the event. Hopefully we can ask the AWTeen Minor / Major Events Committee (Well, those who are not already involved in the project) to provide some other entertainment throughout as well.

Time and Date:
---------------
At this time we have no time or date set, this is because I wish to consult with every applicant to find which time is better for them and create a time and date that is best for all. Probability is that the event will be in November as advised by OneSummer, however chances are the event will be allot sooner than that dependant on what other events are taking place, build completion etc. I've deliberately left at least a month of building time so the display makers and show actors can have time to create their builds and create and practice their scripts.

I need not say we hope this will bring the community together in 1 place for the best fun and community spirit Active Worlds has ever had and hope that we get at least half of the entire regular visitors to either actively participate or look around the area and if possible get over 1 to 2 hundred + builders which I think is a realistic target with the strength of the community as it is now.

In Closing (For Now):
----------------------
So I ask you, if you think you could do something for the event, be it put up a display, or do a show it will all be appreciated by the team and the community alike. Don't hold back, give me a e-mail if you have any questions. We want to make this great, and bring about a real-time boost in AW. Once again my e-mail is strike at Rapiercom.freeserve.co.uk and id be happy to answer any questions or queries about the event. Id like to see everyone at this event, past and present, AWTeen is open to tourists courtesy of E N Z O.

I will allocate areas as soon as humanly possible after I receive e-mail applications and accept them. This will let you all get on with your projects and create the best you possibly can.

I must also state for the record that this event is not part of the AWTeen Major Events Committee or AWTeen Minor Events Committee. Any members of these committees taking part in the organisation of this event is though personal choice.

My apologies for cross posting this thread, I have only posted it to those of which it concerns. But am not posting it to WorldBuilders by direct request. Also, this is included in SDK as it is included in the technology display section.

- Mark (Strike Rapier #334303)
- Event Coordinator
- Strike at Rapiercom.freeserve.co.uk

[Event] The Great AWTeen Show Info

Sep 1, 2002, 6:00pm
How does october 5th sound for you all?

- Mark
[View Quote]

[Event] The Great AWTeen Show Info

Sep 3, 2002, 3:39pm
in that case scrap that idea :) The show is flexible, the CY's come first

- Mark

[View Quote]

[VC++] Enum + Other things

Aug 31, 2002, 4:03pm
Hi Everyone,
I was wondering if anyoen could explain to me how the heck to get VC++ 6 to display the enum of the aw.h file? Ive used #include "aw.h" and also have the header file loaded into it.

I also painstaiking spent ages creating about 40 lines of text then...

#include <iostream>
#include <iomanip>
#include "windows.h"

#define AW_STATIC
#include "aw.h"
using namespace std;

void func_aw_avatar_add(void);
void func_aw_avatar_delete(void);

int main(void)
{
long rc = 0, citnum = 0;
char ppw[15], strcitnum[15];
void* bot;
cout << "Welcome to the 'Who the hell is here' program." << endl << "By Mark Randall" << endl << endl;
rc = (aw_init(AW_BUILD));
if(rc != 0)
{
cout << "Cannot initiate API - Reason: " << rc << endl;
exit(1);
}
else
{
cout << "API initiated sucessfully with build number: " << AW_BUILD << endl;
}
rc = 0;
aw_event_set(AW_EVENT_AVATAR_ADD,func_aw_avatar_add);
aw_event_set(AW_EVENT_AVATAR_DELETE,func_aw_avatar_delete);

/*create bot instance*/
rc = aw_create(0,0,&bot);
if(rc)
{
printf("Unable to create instance (reason:%d)\n",rc);
}
else
{
printf("Successfully created instance\n");
}
return 0;
}

THIS!!! GAHHHHH!!

Linking...
aw.h : fatal error LNK1136: invalid or corrupt file
Error executing link.exe.

Could someone tell me what that means and how I can nuke the error and get on with my programming? C++ is stressfull enough even when things DO work.

- Mark

[VC++] Enum + Other things

Aug 31, 2002, 5:26pm
aw.h is in ../microsoft visual studio/vc98/include/ and the proggy folder

[View Quote]

[VC++] Enum + Other things

Aug 31, 2002, 10:05pm
I tried both, no joy
[View Quote]

[VC++] Enum + Other things

Sep 3, 2002, 3:34pm
So how does VB do it then, as its handled the same I presume?


[View Quote]

Protocol Specs

Sep 16, 2002, 5:11pm
Ask AW's resident cracker extrodinare ;)

- Mark
[View Quote]

vbsdk com wrapper

Sep 19, 2002, 3:25pm
sdk.QuickLongStart + Other Rubbish

Global Xcoord As Long 'X coordinate for Coords statement
Global Ycoord As Long 'Y coordinate for Coords statement
Global Zcoord As Long 'Z coordinate for Coords statement
Global YAWcoord As Long
Global BolCoordsSet as boolean

'--------------------------------------------------------------------
Public Sub Login_Bot(Citnum As Long, PPW As String, BotName As String, Avatar As Integer, World As String, X As Long, Y As Long, Z As Long, YAW As Long, GlobalMode As Boolean, Invisible As Boolean, Universal As Boolean)
Dim rc As Long, LoginTime As Long, vbDoubleTab As String
vbDoubleTab = vbTab & vbTab
LoginTime = Timer
With FrmMain.sdk
'Create instance
rc = .aw_create("auth.activeworlds.com", 5670)
If rc Then
Display Time & vbTab & "Could not create instance in Active Worlds - Reason: " & ARC_Lookup(rc), vbRed
Status "Could not create instance in Active Worlds - Reason: " & ARC_Lookup(rc), vbRed
Exit Sub
Else
Display Time & vbTab & "Successfully created instance in Active Worlds", vbBlue
Status "Successfully created instance in Active Worlds - Time Taken: " & (Timer - logintimer), vbBlue
End If
.aw_int_set AW_LOGIN_OWNER, 334303
.aw_string_set AW_LOGIN_PRIVILEGE_PASSWORD, PPW
.aw_string_set AW_LOGIN_NAME, BotName
.aw_string_set AW_LOGIN_APPLICATION, "Your_App_Here"
rc = .aw_login
If rc Then
Display "Could not login - Reason: " & ARC_Lookup(rc), vbRed
Status "Could not login - Reason: " & ARC_Lookup(rc), vbRed
Exit Sub
Else
Display Time & vbTab & BotName & " sucessfully logged into Universe Active Worlds - Level 3", vbBlue
Status BotName & " sucessfully logged into Universe Active Worlds - Time Taken: " & (Timer - logintimer), vbBlue
Display Time & vbTab & "Universe Immigration Officer: " & FrmMain.sdk.aw_string(AW_UNIVERSE_WELCOME_MESSAGE), vbDarkGreen
Status "Recieved Universal Immigration Officer: " & FrmMain.sdk.aw_string(AW_UNIVERSE_WELCOME_MESSAGE), vbDarkGreen
End If
If Universal = True Then
Status "Holding at universal level (3) - Total login time: " & (Timer - logintimer), vbBlue
FrmLogin.Visible = False
Exit Sub
End If
If GlobalMode = True Then
.aw_bool_set AW_ENTER_GLOBAL, True
Else
.aw_bool_set AW_ENTER_GLOBAL, False
End If
rc = .aw_enter(World)
If rc Then
Display Time & vbTab & BotName & " could not enter '" & World & "' - Reason: " & ARC_Lookup(rc), vbRed
Status BotName & " could not enter '" & World & "' - Reason: " & ARC_Lookup(rc), vbRed
Exit Sub
Else
Display Time & vbTab & BotName & " enters the world '" & World & "'", vbBlue
Status BotName & " enters the world '" & World & "'", vbBlue
Display Time & vbTab & "World Immigration Officer: " & FrmMain.sdk.aw_string(AW_WORLD_WELCOME_MESSAGE), vbDarkGreen
Status "Recieved World Immigration Officer: " & FrmMain.sdk.aw_string(AW_WORLD_WELCOME_MESSAGE), vbDarkGreen
End If

If Invisible = True Then
Status "Holding at world level (2) - Total login time: " & (Timer - logintimer), vbBlue
FrmLogin.Visible = False
Exit Sub
End If
'67N 2750E
.aw_int_set AW_MY_X, X
.aw_int_set AW_MY_Y, Y
.aw_int_set AW_MY_Z, Z
.aw_int_set AW_MY_YAW, YAW
.aw_int_set AW_MY_TYPE, Avatar
Status "Setting SDK coordinate values - X: " & X & " Y: " & Y & " Z: " & Z & " YAW: " & YAW, vbBlue
Status "Evaluating SDK coordinates - Target Set: " & StringCoords(X, Y, Z, YAW), vbBlue
rc = .aw_state_change
If rc Then
Display Time & vbTab & BotName & " could not state change - Reason: " & ARC_Lookup(rc), vbRed
Status BotName & " could not state change - Reason: " & ARC_Lookup(rc), vbRed
Exit Sub
Else
Display Time & vbTab & BotName & " enters the world '" & World & "' at the physical level", vbBlue
Status BotName & " enters the world '" & World & "' at the physical level", vbBlue
End If
Status "Holding at Physical level (1) - Total login time: " & (Timer - logintimer), vbBlue
End With
End Sub

'--------------------------------------------------------------------

Function RC_Lookup(rc As Long) As String
Select Case rc
Case 0
RC_Lookup = "Success"
Case 1
RC_Lookup = "Citizenship Expired"
Case 3
RC_Lookup = "No Such Citizen"
Case 4
RC_Lookup = "Message Length Bad"
Case 5
RC_Lookup = "License Password Contains Space"
Case 6
RC_Lookup = "License Password Too Long"
Case 7
RC_Lookup = "License Password Too Short"
Case 8
RC_Lookup = "License Range Too Large"
Case 9
RC_Lookup = "License Range Too Small"
Case 10
RC_Lookup = "License Users Too Large"
Case 11
RC_Lookup = "License Users Too Small"
Case 12
RC_Lookup = "License World Contains Space"
Case 13
RC_Lookup = "Invalid Password"
Case 14
RC_Lookup = "Unable To Mail Back Number"
Case 15
RC_Lookup = "License World Too Short"
Case 16
RC_Lookup = "License World Too Long"
Case 17
RC_Lookup = "Server Out Of Memory"
Case 27
RC_Lookup = "No Such World"
Case 31
RC_Lookup = "Not Logged In"
Case 32
RC_Lookup = "Unauthorized"
Case 33
RC_Lookup = "World Already Exists"
Case 34
RC_Lookup = "No Such License"
Case 39
RC_Lookup = "Identity Already In Use"
Case 40
RC_Lookup = "Unable To Report Location"
Case 41
RC_Lookup = "Invalid Email"
Case 42
RC_Lookup = "No Such Acting Citizen"
Case 43
RC_Lookup = "Acting Password Invalid"
Case 58
RC_Lookup = "Must Upgrade"
Case 59
RC_Lookup = "Bot Limit Exceeded"
Case 64
RC_Lookup = "License Starts With Number"
Case 66
RC_Lookup = "No Such Ejection"
Case 67
RC_Lookup = "No Such Session"
Case 69
RC_Lookup = "Ejection Expired"
Case 70
RC_Lookup = "Acting Citizen Expired"
Case 71
RC_Lookup = "Already Started"
Case 72
RC_Lookup = "World Running"
Case 73
RC_Lookup = "World Not Set"
Case 74
RC_Lookup = "No Such Cell"
Case 75
RC_Lookup = "No Registry"
Case 76
RC_Lookup = "Cant Open Registry"
Case 77
RC_Lookup = "Citizen Disabled"
Case 78
RC_Lookup = "World Disabled"
Case 100
RC_Lookup = "Email Contains Invalid Char"
Case 101
RC_Lookup = "Email Ends With Blank"
Case 102
RC_Lookup = "Email Missing Dot"
Case 103
RC_Lookup = "Email Missing At"
Case 104
RC_Lookup = "Email Starts With Blank"
Case 105
RC_Lookup = "Email Too Long"
Case 106
RC_Lookup = "Email Too Short"
Case 107
RC_Lookup = "Name Already Used"
Case 108
RC_Lookup = "Name Contains Invalid Char"
Case 109
RC_Lookup = "Name Contains Invalid Blank"
Case 110
RC_Lookup = "Name Doesnt Exist"
Case 111
RC_Lookup = "Name Ends With Blank"
Case 112
RC_Lookup = "Name Too Long"
Case 113
RC_Lookup = "Name Too Short"
Case 114
RC_Lookup = "Name Unused"
Case 115
RC_Lookup = "Password Too Long"
Case 116
RC_Lookup = "Password Too Short"
Case 117
RC_Lookup = "Password Is Wrong"
Case 119
RC_Lookup = "Unable To Delete Name"
Case 120
RC_Lookup = "Unable To Get Citizen"
Case 121
RC_Lookup = "Unable To Insert Citizen"
Case 122
RC_Lookup = "Unable To Insert Name"
Case 123
RC_Lookup = "Unable To Put Citizen Count"
Case 124
RC_Lookup = "Unable To Delete Citizen"
Case 126
RC_Lookup = "Number Already Used"
Case 127
RC_Lookup = "Number Out Of Range"
Case 128
RC_Lookup = "Privilege Password Is Too Short"
Case 129
RC_Lookup = "Privilege Password Is Too Long"
Case 130
RC_Lookup = "Old Database"
Case 131
RC_Lookup = "Start Transact Failed"
Case 203
RC_Lookup = "Not Change Owner"
Case 204
RC_Lookup = "Cant Find Old Element"
Case 211
RC_Lookup = "Cant Change Owner"
Case 216
RC_Lookup = "Cant Build Here"
Case 232
RC_Lookup = "Not Allowed"
Case 300
RC_Lookup = "Encroaches"
Case 301
RC_Lookup = "No Such Object"
Case 302
RC_Lookup = "Not Delete Owner"
Case 303
RC_Lookup = "Too Many Bytes"
Case 306
RC_Lookup = "Unregistered Object"
Case 308
RC_Lookup = "Element Already Exists"
Case 309
RC_Lookup = "Restricted Command"
Case 310
RC_Lookup = "No Build Rights"
Case 311
RC_Lookup = "Out Of Bounds"
Case 313
RC_Lookup = "Restricted Object"
Case 314
RC_Lookup = "Restricted Area"
Case 400
RC_Lookup = "Out Of Memory"
Case 401
RC_Lookup = "Not Yet"
Case 402
RC_Lookup = "Timeout"
Case 403
RC_Lookup = "Null Pointer"
Case 404
RC_Lookup = "Unable To Contact Universe"
Case 405
RC_Lookup = "Unable To Contact World"
Case 406
RC_Lookup = "Invalid World Name"
Case 415
RC_Lookup = "Send Failed"
Case 416
RC_Lookup = "Receive Failed"
Case 421
RC_Lookup = "Stream Empty"
Case 422
RC_Lookup = "Stream Message Too Long"
Case 423
RC_Lookup = "World Name Too Long"
Case 426
RC_Lookup = "Message Too Long"
Case 429
RC_Lookup = "Unable To Connect"
Case 439
RC_Lookup = "No Connection"
Case 442
RC_Lookup = "Unable To Initialize Network"
Case 443
RC_Lookup = "Incorrect Message Length"
Case 444
RC_Lookup = "Not Initialized"
Case 445
RC_Lookup = "No Instance"
Case 446
RC_Lookup = "Out Buffer Full"
Case 447
RC_Lookup = "Invalid Callback"
Case 448
RC_Lookup = "Invalid Attribute"
Case 449
RC_Lookup = "Type Mismatch"
Case 450
RC_Lookup = "String Too Long"
Case 451
RC_Lookup = "Read Only"
Case 453
RC_Lookup = "Invalid Instance"
Case 454
RC_Lookup = "Version Mismatch"
Case 461
RC_Lookup = "In Buffer Full"
Case 463
RC_Lookup = "Protocol Error"
Case 464
RC_Lookup = "Query In Progress"
Case 466
RC_Lookup = "Ejected"
Case 467
RC_Lookup = "Not Welcome"
Case 471
RC_Lookup = "Connection Lost"
Case 474
RC_Lookup = "Not Available"
Case 488
RC_Lookup = "Old World"
Case 489
RC_Lookup = "World Not Running"
Case 666
RC_Lookup = "Welcome to the apocolypse"
Case Else
RC_Lookup = "Unknown"
End Select
End Function

'--------------------------------------------------------------------

Function ARC_Lookup(rc As Long) As String
ARC_Lookup = RC_Lookup(rc) & " (Errorcode: " & rc & ")"
End Function

'--------------------------------------------------------------------

Sub Display(Text As String, Color As String, Optional Italic As Boolean, Optional Bold As Boolean)
'To be placed in a module with a Rich Text Box on FrmMain called RTBConsole
'Thanks to Baron for this piece of code I love so much I married.
With FrmMain.RTBConsole
.SelStart = Len(.Text)
.SelLength = Len(Text)
.SelColor = Color
.SelBold = Bold
.SelItalic = Italic
.SelText = Text & vbCrLf
.SelStart = Len(.Text)
End With
End Sub

'--------------------------------------------------------------------

Sub Status(Text As String, Color As String, Optional Italic As Boolean, Optional Bold As Boolean)
'Like the above, My bot just supports 2 methods to make it easier to read.
With FrmMain.RTBStatus
.SelStart = Len(.Text)
.SelLength = Len(Text)
.SelColor = Color
.SelBold = Bold
.SelItalic = Italic
.SelText = Time & vbTab & Text & vbCrLf
.SelStart = Len(.Text)
End With
End Sub

'--------------------------------------------------------------------

Sub Coordinates(Coords As String)
Dim StrSplit As Variant, i As Integer, IntLength As Integer, StrSection As String, StrLeft As String
Dim StrCoordsX As String, StrCoordsY As String, StrCoordsZ As String, StrCoordsYAW As Long
Dim LngCoordsX As Long, LngCoordsY As Long, LngCoordsZ As Long, LngCoordsYAW As Long
If CBool(InStr(1, Coords, " ")) = True Then
Xcoord = 0
Ycoord = 0
Zcoord = 0
YAWcoord = 0
StrSplit = Split(Coords, " ")
For i = 0 To UBound(StrSplit)
StrSection = CStr(LCase(StrSplit(i)))
StrRight = Right$(StrSection, 1)
If StrRight = "" Or StrRight = "n" Or StrRight = "s" Or StrRight = "e" Or StrRight = "w" Or StrRight = "a" _
Or StrRight = "0" Or StrRight = "1" Or StrRight = "2" Or StrRight = "3" Or StrRight = "4" Or StrRight = "5" _
Or StrRight = "6" Or StrRight = "7" Or StrRight = "8" Or StrRight = "9" Then
If StrRight = "e" Or StrRight = "w" Then
If StrRight = "e" Then
IntLength = Len(StrSection) - 1
StrCoordsX = Left$(StrSection, IntLength)
LngCoordsX = CLng(Val(StrCoordsX))
LngCoordsX = 0 - (LngCoordsX * 1000)
ElseIf StrRight = "w" Then
IntLength = Len(StrSection) - 1
StrCoordsX = Left$(StrSection, IntLength)
LngCoordsX = CLng(Val(StrCoordsX))
LngCoordsX = LngCoordsX * 1000
End If
ElseIf StrRight = "n" Or StrRight = "s" Then
If StrRight = "s" Then
IntLength = Len(StrSection) - 1
StrCoordsZ = Left$(StrSection, IntLength)
LngCoordsZ = CLng(Val(StrCoordsZ))
LngCoordsZ = 0 - (LngCoordsZ * 1000)
ElseIf StrRight = "n" Then
IntLength = Len(StrSection) - 1
StrCoordsZ = Left$(StrSection, IntLength)
LngCoordsZ = CLng(Val(StrCoordsZ))
LngCoordsZ = LngCoordsZ * 1000
End If
ElseIf StrRight = "a" Then
IntLength = Len(StrSection) - 1
LngCoordsY = CLng(Val(Left$(StrSection, IntLength)))
LngCoordsY = LngCoordsY * 100
Ycoord = LngCoordsY
ElseIf StrRight = "0" Or StrRight = "1" Or StrRight = "2" Or StrRight = "3" Or StrRight = "4" Or StrRight = "5" Or StrRight = "6" Or StrRight = "7" Or StrRight = "8" Or StrRight = "9" Then
YAWcoord = CLng(Val(StrSection)) * 10
If YAWcoord >= 0 And YAWcoord <= 3600 Then
YAWcoord = YAWcoord
Else
YAWcoord = 0
End If
End If
BolCoordSet = True
End If
Next i
Else
BolCoordSet = False
Xcoord = 0
Ycoord = 0
Zcoord = 0
YAWcoord = 0
End If
End Sub

vbsdk com wrapper

Sep 19, 2002, 3:52pm
of course replace my citnum, 334303 with Citnum

Help, AW Query .. . Sdk.AwCellNext (AwSdkOcx5), Mark? Anyone?

Sep 13, 2002, 3:35pm
If your using Barons code I seem to have a problem with it setting AW_QUERY_COMPLETE, but when you use the code
[View Quote]

Help, AW Query .. . Sdk.AwCellNext (AwSdkOcx5), Mark? Anyone?

Sep 13, 2002, 3:36pm
Forget I said that, I pressed the wrong buttons

- Mark

[View Quote]

Help, AW Query .. . Sdk.AwCellNext (AwSdkOcx5), Mark? Anyone?

Sep 13, 2002, 5:45pm
You will recieve the AW_EVENT_OBJECT_ADD event
[View Quote]

Help, AW Query .. . Sdk.AwCellNext (AwSdkOcx5), Mark? Anyone?

Sep 14, 2002, 6:07am
And if you use the full logon AW_EVENT_SET AW_EVENT_OBJECT_ADD, func_aw_object_add


[View Quote]

Damned LiveUpdate / Callback Query Crashes

Sep 19, 2002, 3:25pm
Howdy Everyone,
Im currently experiencing a little technical difficult when it comes to query and live update. Ive just created a bot for the CY Awards that is a GUI controled lighting / object controler for controling stage lights, doors etc. I programmed it straight though without testing it going on what I know works, however for some whappy reason it dosent. Whenever I do a query and set live update after its finished on either 3x3 or 5x5 the program calls aw_event_cell_begin at no point until I change an object, however once I do change an object (source included) it all goes to pot and it recieves about 10 aw_event_cell_begin calls, the objects start returing back that they could not find the origional (when I know its there by using another bot and have confirmed its X, Z and Number) bit then after 1 or 2 it just crashes, sometimes it builds about 20 objects. And during the CY's this is not preferable. LOL...

I wonder if anyone can help, sorry about HTML.

Option Explicit
Dim FiveXFive As Boolean
Dim sect_x As Long
Dim sect_z As Long
Dim cell_x As Long
Dim cell_z As Long
Dim ObCount As Long

Private Sub sdk_EventObjectAdd()
Dim ObX As Long, ObZ As Long, ObSes As Long, ObMod As String, ObOwner As Long, rc As Long, ObNum As Long
Dim ObY As Long, ObYAW As Long, obmodel As String, ObAction As String, ObDescription, ObTilt As Long, ObRoll As Long
ObOwner = sdk.aw_int(AW_OBJECT_OWNER)
ObNum = sdk.aw_int(AW_OBJECT_NUMBER)
ObX = sdk.aw_int(AW_OBJECT_X)
ObZ = sdk.aw_int(AW_OBJECT_Z)
ObY = sdk.aw_int(AW_OBJECT_Y)
ObTilt = sdk.aw_int(AW_OBJECT_TILT)
ObRoll = sdk.aw_int(AW_OBJECT_ROLL)
ObYAW = sdk.aw_int(AW_OBJECT_YAW)
ObSes = sdk.aw_int(AW_OBJECT_SESSION)
ObNum = sdk.aw_int(AW_OBJECT_NUMBER)
obmodel = sdk.aw_string(AW_OBJECT_MODEL)
ObDescription = sdk.aw_string(AW_OBJECT_DESCRIPTION)
ObAction = sdk.aw_string(AW_OBJECT_ACTION)
ObCount = ObCount + 1
Me.Caption = "Starbeam Nova - " & ObCount
PrgBuffer.Value = (100 / 5000) * ObCount
Dim i As Long
'Handle Objects here
For i = 0 To 5000
If Obj(i).Number = 0 Then
Obj(i).Number = ObNum
Obj(i).Owner = ObOwner
Obj(i).Model = obmodel
Obj(i).Description = ObDescription
Obj(i).Action = ObAction
Obj(i).X = ObX
Obj(i).Y = ObY
Obj(i).Z = ObZ
Obj(i).YAW = ObYAW
Obj(i).Tilt = ObTilt
Obj(i).Roll = ObRoll
Exit Sub
End If
Next i
End Sub


Private Sub sdk_EventObjectDelete()
Dim i As Long, ObNum As Long
ObNum = sdk.aw_int(AW_OBJECT_NUMBER)
ObCount = ObCount - 1
Me.Caption = "Starbeam Nova - " & ObCount
PrgBuffer.Value = (100 / 5000) * ObCount
For i = 0 To 5000
If Obj(i).Number = ObNum Then
Obj(i).Number = 0
Obj(i).Owner = 0
Obj(i).Model = ""
Obj(i).Description = ""
Obj(i).Action = ""
Obj(i).X = 0
Obj(i).Y = 0
Obj(i).Z = 0
Obj(i).YAW = 0
Obj(i).Tilt = 0
Obj(i).Roll = 0
Exit Sub
End If
Next i
End Sub

Public Sub QueryNow(X As Long, Z As Long)
cell_z = Z 'or whatever
cell_x = X 'or whatever
' Set the sector to query
sect_z = sdk.aw_sector_from_cell(cell_z)
sect_x = sdk.aw_sector_from_cell(cell_x)
' Perform the query
Display "Begining query at " & cell_x & " by " & cell_z, vbBlack
If FiveXFive = False Then
sdk.aw_query sect_x, sect_z
Else
sdk.aw_query_5x5 sect_x, sect_z
End If
End Sub
Private Sub sdk_CallbackQuery(ByVal rc As Long)
' Continue the query until it is complete
If Not sdk.aw_bool(AW_QUERY_COMPLETE) Then
If FiveXFive = False Then
sdk.aw_query sect_x, sect_z
Else
sdk.aw_query_5x5 sect_x, sect_z
End If
Exit Sub
Else
Display "Query Complete", vbBlack
End If
'Do stuff here
End Sub
Private Sub sdk_EventCellBegin()
Dim X As Long
Dim Z As Long
If FiveXFive = False Then
' Get the current cell
cell_x = sdk.aw_int(AW_CELL_X)
cell_z = sdk.aw_int(AW_CELL_Z)

' Calculate the sector the cell is in
X = sdk.aw_sector_from_cell(cell_x) - sect_x
Z = sdk.aw_sector_from_cell(cell_z) - sect_z
'
' Sanity Check, X and Z may be either -1, 0, or 1
If (X < -1 Or X > 1 Or Z < -1 Or Z > 1) Then
Exit Sub
End If

' Update the Sequence variable for the current sector
'You can use this syntax too sdk.aw_seq_3x3(z + 1, x + 1) = sdk.aw_int(AW_CELL_SEQUENCE)
sdk.aw_sequence_set AW_SEQUENCE_3X3, (Z + 1), (X + 1), sdk.aw_int(AW_CELL_SEQUENCE)
Else
' Get the current cell
cell_x = sdk.aw_int(AW_CELL_X)
cell_z = sdk.aw_int(AW_CELL_Z)

' Calculate the sector the cell is in
X = sdk.aw_sector_from_cell(cell_x) - sect_x
Z = sdk.aw_sector_from_cell(cell_z) - sect_z
'
' Sanity Check, X and Z may be either -2, -1, 0, 1, 2
If (X < -2 Or X > 2 Or Z < -2 Or Z > 2) Then
Exit Sub
End If

' Update the Sequence variable for the current sector
'You can use this syntax too sdk.aw_seq_5x5(z + 2, x + 2) = sdk.aw_int(AW_CELL_SEQUENCE)
sdk.aw_sequence_set AW_SEQUENCE_5X5, (Z + 2), (X + 2), sdk.aw_int(AW_CELL_SEQUENCE)
End If
End Sub
Private Sub sdk_EventCellObject()
Dim ObX As Long, ObZ As Long, ObSes As Long, ObMod As String, ObOwner As Long, rc As Long, ObNum As Long
Dim ObY As Long, ObYAW As Long, obmodel As String, ObAction As String, ObDescription, ObTilt As Long, ObRoll As Long
ObOwner = sdk.aw_int(AW_OBJECT_OWNER)
ObNum = sdk.aw_int(AW_OBJECT_NUMBER)
ObX = sdk.aw_int(AW_OBJECT_X)
ObZ = sdk.aw_int(AW_OBJECT_Z)
ObY = sdk.aw_int(AW_OBJECT_Y)
ObTilt = sdk.aw_int(AW_OBJECT_TILT)
ObRoll = sdk.aw_int(AW_OBJECT_ROLL)
ObYAW = sdk.aw_int(AW_OBJECT_YAW)
ObSes = sdk.aw_int(AW_OBJECT_SESSION)
ObNum = sdk.aw_int(AW_OBJECT_NUMBER)
obmodel = sdk.aw_string(AW_OBJECT_MODEL)
ObDescription = sdk.aw_string(AW_OBJECT_DESCRIPTION)
ObAction = sdk.aw_string(AW_OBJECT_ACTION)
ObCount = ObCount + 1
Me.Caption = "Starbeam Nova - " & ObCount
PrgBuffer.Value = (100 / 5000) * ObCount
Dim i As Long
'Handle Objects here
For i = 0 To 5000
If Obj(i).Number = 0 Then
Obj(i).Number = ObNum
Obj(i).Owner = ObOwner
Obj(i).Model = obmodel
Obj(i).Description = ObDescription
Obj(i).Action = ObAction
Obj(i).X = ObX
Obj(i).Y = ObY
Obj(i).Z = ObZ
Obj(i).YAW = ObYAW
Obj(i).Tilt = ObTilt
Obj(i).Roll = ObRoll
Exit Sub
End If
Next i
End Sub

Function ChangeObject(Key As String, SetID As Integer, LocalID As Integer)
Dim i As Long, rc As Long, tCount As Long, StrAction As String
If data(SetID).DataPot(LocalID) = "void" Then
StrAction = "%key"
Else
StrAction = data(SetID).DataPot(LocalID)
End If
StrAction = Replace(StrAction, "%key", "<" & data(SetID).Key & ">")
For i = 0 To 5000
If Obj(i).Number <> 0 Then
If CBool(InStr(1, LCase(Obj(i).Action), "<" & LCase(data(SetID).Key) & ">")) = True Then
sdk.aw_int_set AW_OBJECT_OLD_NUMBER, Obj(i).Number
sdk.aw_int_set AW_OBJECT_OLD_X, Obj(i).X
sdk.aw_int_set AW_OBJECT_OLD_Z, Obj(i).Z
sdk.aw_string_set AW_OBJECT_MODEL, Obj(i).Model
sdk.aw_string_set AW_OBJECT_DESCRIPTION, Obj(i).Model
sdk.aw_string_set AW_OBJECT_ACTION, StrAction
sdk.aw_int_set AW_OBJECT_X, Obj(i).X
sdk.aw_int_set AW_OBJECT_Y, Obj(i).Y
sdk.aw_int_set AW_OBJECT_Z, Obj(i).Z
sdk.aw_int_set AW_OBJECT_YAW, Obj(i).YAW
sdk.aw_int_set AW_OBJECT_TILT, Obj(i).Tilt
sdk.aw_int_set AW_OBJECT_ROLL, Obj(i).Roll
sdk.aw_int_set AW_OBJECT_OWNER, Obj(i).Owner
rc = sdk.aw_object_change
If rc Then
Display "Could not set object '" & Key & "' with " & LocalID & " of " & SetID & " - Reason: " & RC_Lookup(rc), vbRed
Else
tCount = tCount + 1
End If
End If
End If
Next i
If tCount = 0 Then
Display "Could not set object '" & Key & " with " & LocalID & " of " & SetID & " - Reason: None Found", vbRed
Else
Display "Set object(s) '" & Key & "' with " & LocalID & " of " & SetID & " on " & tCount & " items", vbBlack
End If
End Function

Data(x) is a global variable of a data type...

Type DataSet
Name As String
Key As String
Count As Integer
DataPot(30) As String
DataName(30) As String
End Type

And AW_WAIT is called every 500 / 1000 ms for 0ms

It just seems to be goig nuts, it recieves the command to do a loop of all the objects in it, but then after its built the objects it goes kablammo. If I pause the bot mid crash it will show me that the objects have been built, so maybe its a callback or something?

If anyone does know any reason why this is happening please tell me as my bots currently as effective after the first click as putting...

While (0 = 0)
'This acomplishes stuff all except making the program freeze and not send the windows API its V_REDRAW / H_REDRAW data for 'Hwind
do events
loop

Damned LiveUpdate / Callback Query Crashes

Sep 21, 2002, 7:51am
*Bows down to Baron*

Thanks a tonne! Ive just changed it on all the projects I used it in, it works perfectly now :D

- Mark
[View Quote]

How to determine AW_OBJECT_NUMBER without aw_query?

Sep 29, 2002, 10:44am
Not that I know of, ive asked for this feature before on the NG though

- Mark
[View Quote]

Build Inspector-like application

Sep 29, 2002, 5:17pm
Use the AwObject type you should collect when the object is queried, find its number and you can get the X,. Y, Z from that.

- Mark
[View Quote]

Brants Avatar Collection Object

Oct 4, 2002, 7:20pm
If I am wrong in this I apologise but every single test I do indicates that it is correct.

Brants SDK collection classes for tracking avatars are highly vunerable to being changed when you dont want it. As you may have seen the .getdata object function sets all of the collection objects variables, including...

AW_AVATAR_CITIZEN
AW_AVATAR_PRIVILEGE

These properties are NOT set on avatar change, and hence they will be set to that of the last avatar that has entered or been looked up from a citizen name or set with aw_string_set.

I have rewritten the classes to prevent this vunerability, as well as being session based so they will not crash if you have 2 bots with the same name, for example.

- Mark


begin 666 AwAvatar.cls
M5D524TE/3B Q+C at 0TQ!4U,-"D)%1TE.#0H at ($UU;'1I57-E(#T at +3$ at ("=4
M<G5E#0H at (%!E<G-I<W1A8FQE(#T at ," at )TYO=%!E<G-I<W1A8FQE#0H at ($1A
M=&%":6YD:6YG0F5H879I;W( at /2 P(" G=F).;VYE#0H at ($1A=&%3;W5R8V5"
M96AA=FEO<B at /2 P(" G=F).;VYE#0H at ($U44U1R86YS86-T:6]N36]D92 at
M/2 P(" G3F]T06Y-5%-/8FIE8W0-"D5.1 T*071T<FEB=71E(%9"7TYA;64 at
M/2 B07=!=F%T87(B#0I!='1R:6)U=&4 at 5D)?1VQO8F%L3F%M95-P86-E(#T at
M1F%L<V4-"D%T=')I8G5T92!60E]#<F5A=&%B;&4 at /2!4<G5E#0I!='1R:6)U
M=&4 at 5D)?4')E9&5C;&%R961)9" ]($9A;'-E#0I!='1R:6)U=&4 at 5D)?17AP
M;W-E9" ]($9A;'-E#0HG;&]C86P at =F%R:6%B;&4H<RD at =&\ at :&]L9"!P<F]P
M97)T>2!V86QU92AS*0T*4')I=F%T92!M=F%R6"!!<R!,;VYG("=L;V-A;"!C
M;W!Y#0I0<FEV871E(&UV87)9($%S($QO;F< at )VQO8V%L(&-O<'D-"E!R:79A
M=&4 at ;79A<EH at 07, at 3&]N9R G;&]C86P at 8V]P>0T*4')I=F%T92!M=F%R66%W
M($%S($EN=&5G97( at )VQO8V%L(&-O<'D-"E!R:79A=&4 at ;79A<F%V3F%M92!!
M<R!3=')I;F< at )VQO8V%L(&-O<'D-"E!R:79A=&4 at ;79A<E-E<W-I;VX at 07, at
M3&]N9R G;&]C86P at 8V]P>0T*4')I=F%T92!M=F%R8794>7!E($%S($)Y=&4 at
M)VQO8V%L(&-O<'D-"E!R:79A=&4 at ;79A<D-I=&EZ96X at 07, at 3&]N9R G;&]C
M86P at 8V]P>0T*4')I=F%T92!M=F%R4')I=FEL96=E($%S($QO;F< at )VQO8V%L
M(&-O<'D-"E!R:79A=&4 at ;79A<E9E<G-I;VX at 07, at 26YT96=E<B G;&]C86P at
M8V]P>0T*4')I=F%T92!M=F%R1V5S='5R92!!<R!">71E("=L;V-A;"!C;W!Y
M#0I0=6)L:6, at 4')O<&5R='D at 3&5T($=E<W1U<F4H0GE686P at =D1A=&$ at 07, at
M0GET92D-"B at ("!M=F%R1V5S='5R92 ]('9$871A#0I%;F0 at 4')O<&5R='D-
M" at T*4'5B;&EC(%!R;W!E<G1Y($=E="!'97-T=7)E*"D at 07, at 0GET90T*(" at
M($=E<W1U<F4 at /2!M=F%R1V5S='5R90T*16YD(%!R;W!E<G1Y#0H-"E!U8FQI
M8R!0<F]P97)T>2!,970 at 5F5R<VEO;BA">59A;"!V1&%T82!!<R!);G1E9V5R
M*0T*(" at (&UV87)697)S:6]N(#T at =D1A=&$-"D5N9"!0<F]P97)T>0T*#0I0
M=6)L:6, at 4')O<&5R='D at 1V5T(%9E<G-I;VXH*2!!<R!);G1E9V5R#0H at (" at
M5F5R<VEO;B ](&UV87)697)S:6]N#0I%;F0 at 4')O<&5R='D-" at T*4'5B;&EC
M(%!R;W!E<G1Y($QE="!0<FEV:6QE9V4H0GE686P at =D1A=&$ at 07, at 3&]N9RD-
M"B at ("!M=F%R4')I=FEL96=E(#T at =D1A=&$-"D5N9"!0<F]P97)T>0T*#0I0
M=6)L:6, at 4')O<&5R='D at 1V5T(%!R:79I;&5G92 at I($%S($QO;F<-"B at ("!0
M<FEV:6QE9V4 at /2!M=F%R4')I=FEL96=E#0I%;F0 at 4')O<&5R='D-" at T*4'5B
M;&EC(%!R;W!E<G1Y($QE="!#:71I>F5N*$)Y5F%L('9$871A($%S($QO;F<I
M#0H at (" at ;79A<D-I=&EZ96X at /2!V1&%T80T*16YD(%!R;W!E<G1Y#0H-"E!U
M8FQI8R!0<F]P97)T>2!'970 at 0VET:7IE;B at I($%S($QO;F<-"B at ("!#:71I
M>F5N(#T at ;79A<D-I=&EZ96X-"D5N9"!0<F]P97)T>0T*#0I0=6)L:6, at 4')O
M<&5R='D at 3&5T(&%V5'EP92A">59A;"!V1&%T82!!<R!">71E*0T*(" at (&UV
M87)A=E1Y<&4 at /2!V1&%T80T*16YD(%!R;W!E<G1Y#0H-"E!U8FQI8R!0<F]P
M97)T>2!'970 at 8794>7!E*"D at 07, at 0GET90T*(" at (&%V5'EP92 ](&UV87)A
M=E1Y<&4-"D5N9"!0<F]P97)T>0T*#0I0=6)L:6, at 4')O<&5R='D at 3&5T(%-E
M<W-I;VXH0GE686P at =D1A=&$ at 07, at 3&]N9RD-"B at ("!M=F%R4V5S<VEO;B ]
M('9$871A#0I%;F0 at 4')O<&5R='D-" at T*4'5B;&EC(%!R;W!E<G1Y($=E="!3
M97-S:6]N*"D at 07, at 3&]N9PT*(" at (%-E<W-I;VX at /2!M=F%R4V5S<VEO; at T*
M16YD(%!R;W!E<G1Y#0H-"E!U8FQI8R!0<F]P97)T>2!,970 at 079.86UE*$)Y
M5F%L('9$871A($%S(%-T<FEN9RD-"B at ("!M=F%R879.86UE(#T at =D1A=&$-
M"D5N9"!0<F]P97)T>0T*#0I0=6)L:6, at 4')O<&5R='D at 1V5T($%V3F%M92 at I
M($%S(%-T<FEN9PT*(" at ($%V3F%M92 ](&UV87)A=DYA;64-"D5N9"!0<F]P
M97)T>0T*#0I0=6)L:6, at 4')O<&5R='D at 3&5T(%E!5RA">59A;"!V1&%T82!!
M<R!);G1E9V5R*0T*(" at (&UV87)987< at /2!V1&%T80T*16YD(%!R;W!E<G1Y
M#0H-"E!U8FQI8R!0<F]P97)T>2!'970 at 64%7*"D at 07, at 26YT96=E< at T*(" at
M(%E!5R ](&UV87)987<-"D5N9"!0<F]P97)T>0T*#0I0=6)L:6, at 4')O<&5R
M='D at 3&5T(%HH0GE686P at =D1A=&$ at 07, at 3&]N9RD-"B at ("!M=F%R6B ]('9$
M871A#0I%;F0 at 4')O<&5R='D-" at T*4'5B;&EC(%!R;W!E<G1Y($=E="!:*"D at
M07, at 3&]N9PT*(" at (%H at /2!M=F%R6 at T*16YD(%!R;W!E<G1Y#0H-"E!U8FQI
M8R!0<F]P97)T>2!,970 at 62A">59A;"!V1&%T82!!<R!,;VYG*0T*(" at (&UV
M87)9(#T at =D1A=&$-"D5N9"!0<F]P97)T>0T*#0I0=6)L:6, at 4')O<&5R='D at
M1V5T(%DH*2!!<R!,;VYG#0H at (" at 62 ](&UV87)9#0I%;F0 at 4')O<&5R='D-
M" at T*4'5B;&EC(%!R;W!E<G1Y($QE="!8*$)Y5F%L('9$871A($%S($QO;F<I
M#0H at (" at ;79A<E at at /2!V1&%T80T*16YD(%!R;W!E<G1Y#0H-"E!U8FQI8R!0
M<F]P97)T>2!'970 at 6" at I($%S($QO;F<-"B at ("!8(#T at ;79A<E at -"D5N9"!0
M<F]P97)T>0T*#0I0=6)L:6, at 4W5B($=E=$1A=&$H3V)J($%S($]B:F5C="D-
M"E at at /2!/8FHN87=?:6YT*$%77T%6051!4E]8*0T*62 ]($]B:BYA=U]I;G0H
M05=?059!5$%27UDI#0I:(#T at 3V)J+F%W7VEN="A!5U]!5D%405)?6BD-"EE!
M5R ]($]B:BYA=U]I;G0H05=?059!5$%27UE!5RD-"F%W5'EP92 ]($]B:BYA
M=U]I;G0H05=?059!5$%27U194$4I#0I397-S:6]N(#T at 3V)J+F%W7VEN="A!
M5U]!5D%405)?4T534TE/3BD-"D%V3F%M92 ]($]B:BYA=U]S=')I;F<H05=?
;059!5$%27TY!344I#0I%;F0 at 4W5B#0H-" at T*
`
end

begin 666 AwAvatars.cls
M5D524TE/3B Q+C at 0TQ!4U,-"D)%1TE.#0H at ($UU;'1I57-E(#T at +3$ at ("=4
M<G5E#0H at (%!E<G-I<W1A8FQE(#T at ," at )TYO=%!E<G-I<W1A8FQE#0H at ($1A
M=&%":6YD:6YG0F5H879I;W( at /2 P(" G=F).;VYE#0H at ($1A=&%3;W5R8V5"
M96AA=FEO<B at /2 P(" G=F).;VYE#0H at ($U44U1R86YS86-T:6]N36]D92 at
M/2 P(" G3F]T06Y-5%-/8FIE8W0-"D5.1 T*071T<FEB=71E(%9"7TYA;64 at
M/2 B07=!=F%T87)S( at T*071T<FEB=71E(%9"7T=L;V)A;$YA;653<&%C92 ]
M($9A;'-E#0I!='1R:6)U=&4 at 5D)?0W)E871A8FQE(#T at 5')U90T*071T<FEB
M=71E(%9"7U!R961E8VQA<F5D260 at /2!&86QS90T*071T<FEB=71E(%9"7T5X
M<&]S960 at /2!&86QS90T*)VQO8V%L('9A<FEA8FQE('1O(&AO;&0 at 8V]L;&5C
M=&EO; at T*4')I=F%T92!M0V]L($%S($-O;&QE8W1I;VX-" at T*4'5B;&EC($9U
M;F-T:6]N($%D9"A/8FH at 07, at 3V)J96-T*2!!<R!!=T%V871A< at T*(" at ("=C
M<F5A=&4 at 82!N97< at ;V)J96-T#0H at (" at 1&EM(&]B:DYE=TUE;6)E<B!!<R!!
M=T%V871A< at T*(" at (%-E="!O8FI.97=-96UB97( at /2!.97< at 07=!=F%T87(-
M"B at (" G<V5T('1H92!P<F]P97)T:65S('!A<W-E9"!I;G1O('1H92!M971H
M;V0-"B at ("!O8FI.97=-96UB97(N1V5T1&%T82!/8FH-"B at ("!O8FI.97=-
M96UB97(N0VET:7IE;B ]($]B:BYA=U]I;G0H05=?059!5$%27T-)5$E:14XI
M#0H at (" at ;V)J3F5W365M8F5R+E!R:79I;&5G92 ]($]B:BYA=U]I;G0H05=?
M059!5$%27U!2259)3$5'12D-"B at ("!O8FI.97=-96UB97(N079.86UE(#T at
M3V)J+F%W7W-T<FEN9RA!5U]!5D%405)?3D%-12D-"B at ("!M0V]L+D%D9"!O
M8FI.97=-96UB97(L($-3='(H;V)J3F5W365M8F5R+E-E<W-I;VXI#0H at (" at
M("=R971U<FX at =&AE(&]B:F5C="!C<F5A=&5D#0H at (" at 4V5T($%D9" ](&]B
M:DYE=TUE;6)E< at T*(" at (%-E="!O8FI.97=-96UB97( at /2!.;W1H:6YG#0I%
M;F0 at 1G5N8W1I;VX-" at T*4'5B;&EC(%!R;W!E<G1Y($=E="!)=&5M*'9N=$EN
M9&5X2V5Y($%S(%9A<FEA;G0I($%S($%W079A=&%R#0I/;B!%<G)O<B!297-U
M;64 at 3F5X= T*(" at ("=U<V5D('=H96X at <F5F97)E;F-I;F< at 86X at 96QE;65N
M="!I;B!T:&4 at 8V]L;&5C=&EO; at T*(" at ("=V;G1);F1E>$ME>2!C;VYT86EN
M<R!E:71H97( at =&AE($EN9&5X(&]R($ME>2!T;R!T:&4 at 8V]L;&5C=&EO;BP-
M"B at (" G=&AI<R!I<R!W:'D at :70 at :7, at 9&5C;&%R960 at 87, at 82!687)I86YT
M#0H at (" at )U-Y;G1A>#H at 4V5T(&9O;R ](' at N271E;2AX>7HI(&]R(%-E="!F
M;V\ at /2!X+DET96TH-2D-"B at 4V5T($ET96T at /2!M0V]L*'9N=$EN9&5X2V5Y
M*0T*16YD(%!R;W!E<G1Y#0H-"E!U8FQI8R!&=6YC=&EO;B!396%R8VA">5-E
M<W-I;VXH4V5S<VEO;B!!<R!,;VYG*0T*1&EM(&H at 07, at 26YT96=E< at T*1F]R
M($5A8V at at 878 at 26X at ;4-O; T*(" at (&H at /2!J("L at ,0T*(" at ($EF(%-E<W-I
M;VX at /2!M0V]L*&HI+E-E<W-I;VX at 5&AE; at T*(" at (" at ("!396%R8VA">5-E
M<W-I;VX at /2!J#0H at (" at (" at ($5X:70 at 1G5N8W1I;VX-"B at ("!%;F0 at 268-
M"DYE>'0-"E-E87)C:$)Y4V5S<VEO;B ]("TQ#0I%;F0 at 1G5N8W1I;VX-" at T*
M4'5B;&EC(%!R;W!E<G1Y($=E="!#;W5N=" at I($%S($QO;F<-"B at (" G=7-E
M9"!W:&5N(')E=')I979I;F< at =&AE(&YU;6)E<B!O9B!E;&5M96YT<R!I;B!T
M:&4-"B at (" G8V]L;&5C=&EO;BX at 4WEN=&%X.B!$96)U9RY0<FEN="!X+D-O
M=6YT#0H at (" at 0V]U;G0 at /2!M0V]L+D-O=6YT#0I%;F0 at 4')O<&5R='D-" at T*
M4'5B;&EC(%-U8B!296UO=F4H079397-S:6]N($%S($QO;F<I#0IM0V]L+E)E
M;6]V92!#4W1R*$%V4V5S<VEO;BD-"D5N9"!3=6(-" at T*4'5B;&EC($9U;F-T
M:6]N(%-E87)C:$)Y3F%M92A!=DYA;64 at 07, at 4W1R:6YG*0T*1&EM(&H at 07, at
M26YT96=E< at T*1F]R($5A8V at at 878 at 26X at ;4-O; T*(" at (&H at /2!J("L at ,0T*
M(" at ($EF(&%V+D%V3F%M92 ]($%V3F%M92!4:&5N#0H at (" at (" at (%-E87)C
M:$)Y3F%M92 ](&H-"B at (" at (" at 17AI="!&=6YC=&EO; at T*(" at ($5N9"!)
M9 at T*3F5X= T*4V5A<F-H0GE.86UE(#T at +3$-"D5N9"!&=6YC=&EO; at T*#0I0
M=6)L:6, at 4')O<&5R='D at 1V5T($YE=T5N=6TH*2!!<R!)56YK;F]W; at T*(" at
M("=T:&ES('!R;W!E<G1Y(&%L;&]W<R!Y;W4 at =&\ at 96YU;65R871E#0H at (" at
M)W1H:7, at 8V]L;&5C=&EO;B!W:71H('1H92!&;W(N+BY%86-H('-Y;G1A> T*
M(" at (%-E="!.97=%;G5M(#T at ;4-O;"Y;7TYE=T5N=6U=#0I%;F0 at 4')O<&5R
M='D-" at T*4')I=F%T92!3=6( at 0VQA<W-?26YI=&EA;&EZ92 at I#0H at (" at )V-R
M96%T97, at =&AE(&-O;&QE8W1I;VX at =VAE;B!T:&ES(&-L87-S(&ES(&-R96%T
M960-"B at ("!3970 at ;4-O;" ]($YE=R!#;VQL96-T:6]N#0I%;F0 at 4W5B#0H-
M"E!R:79A=&4 at 4W5B($-L87-S7U1E<FUI;F%T92 at I#0H at (" at )V1E<W1R;WES
M(&-O;&QE8W1I;VX at =VAE;B!T:&ES(&-L87-S(&ES('1E<FUI;F%T960-"B at
C("!3970 at ;4-O;" ]($YO=&AI;F<-"D5N9"!3=6(-" at T*#0H`
`
end

AW SDK Ints with meanings.

Oct 7, 2002, 3:32pm
Welcome back to the newsgroup grimble!

- Mark

[View Quote]

AW_EVENT_WORLD_DISCONNECT

Oct 13, 2002, 1:35pm
The way I do it is to create a function with the dedicated login commands in, if its dissconected and its lost connection to uniserver I initiate a timer and try to relogin until a time RC returns 0 on the login code.

- Mark
[View Quote]

Free source code

Oct 14, 2002, 3:43pm
Very nice work Brant, im sure allot of people will enjoy using em. A note to the latest programmers though, you will need to port the code to the new SDK :)

- Mark
[View Quote]

1  ...  2  3  4  5  6  7  ...  141  |  
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