Thread

vbsdk com wrapper (Sdk)

vbsdk com wrapper // Sdk

1  |  

the derek

Sep 10, 2002, 11:11pm
ummm how do use it?
i assume by using "delcare function" in a module or whatever like u do with
the windowsAPI but im not sure.

will the help files ever be updated?

robbie

Sep 11, 2002, 4:57am
New Project > Project > Components > AwSdkOcx4 (or whatever version you
downloaded) > OK

Now click the new AW button on the tool bar on hte left and drag it onto
your form. Rename it to somthing easier to type in code like SDK.

They way it works if you do sdk.xxxxxx(xxxx,xxxx,xx) or whatever in the
code. For example to do a quick login:

sdk.awinit
sdk.quicklogin 315021, youwish, aw, fredthebot, bot, 10000, 0, 50000, 5
sdk.say "I like fish."
sdk.awterm

somthing like that anyway - its been a while and it is 7:30AM :)

Thats the old way of doing too, the way you would do it on version 4 or
lower (which i prefer).

-Robbie

[View Quote]

kah

Sep 11, 2002, 4:09pm
"robbie" <thetruth at awteen.org> wrote in
news:3d7ee94b at server1.Activeworlds.com:

> sdk.awinit
> sdk.quicklogin 315021, youwish, aw, fredthebot, bot, 10000, 0, 50000, 5
> sdk.say "I like fish."
> sdk.awterm

The COM wrapper uses the same names (pretty much) as in the standard C/C++
SDK, so it's

sdk.aw_init (AW_BUILD)
[login code, and I mean full login, it should always be prefered over
QuickLogin]
sdk.aw_say "I like fish. Yeah, I know, I'm weird."
sdk.aw_term

KAH

strike rapier

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

strike rapier

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

1  |  
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