Board ArchivesSite FeaturesActiveworlds SupportHistoric Archives |
walter knupe // User Search
walter knupe // User SearchAWCPP - C++ release v0.2Oct 24, 1998, 7:57pm
Why did you write all this after i needed it ? i had to get out my math book
to find how to translate polar and carthesian coordinates :) and moving in cirlces seems to be everyones dream (besides deer, that is) since i did it similar :) Walter Edward Sumerfield schrieb in Nachricht <36317e55.0 at homer>... >This is version 0.2 of the C++ wrapper for the Active Worlds SDK. > >The coolest change is the movement classes. I have removed the need to use >x,y and z coordinates and in their place you can rotate left, rigth, up and >down and then move forward. > >With the up and down it is even supporting pitch so you can set the robot >position as 0 x coord, 0 z coord, 0 altitude, 0 yaw and 45 pitch. Now if you >call the forward method the avatar will ascend into the sky at a 45 degree >angle for the distance specified. > >It makes it very easy to do things like move the robot round in circles: > > for (int a = 0; a < 24;a++) { > > rotate_left(15); // 15 degrees > forward(1); // 1 meter > } > >I standardized all the units to degrees and meters so there are no ugle >translations anywhere. > >Here is the web page where you can download it from: > >http://members.xoom.com/esumerfd/ActiveWorlds/AWSDK.htm > >I have split the source and binaries up since the total download was getting >a little large. > >The next steps are: > >1. Add guesture support to the movement class. >2. Add more functionality to the avatar_add callback so you get more >informtation about the avatar added. >3. Look at building a Movement derivitive that works in conjunction with >avatar_add and allows a robot to see someone and run away. > >Every day, in every way, I get closer to my field of deer. Though I guess I >am going to be limited to 3 to begin with. Doh. Maybe thats a herdette of >deer. > >Edward Sumerfield. > > > > Bot positioning...Oct 25, 1998, 10:40pm
Jw schrieb in Nachricht <3633AAFA.4005158D at mediaone.net>...
>Its E++ :) > [View Quote] yep, E++ ... right LOL anyway.. yourself i don't know if it makes much sense to calculate an altitude angle... in order to face somebody, just use the same altitude... (which is the Y factor) Walter Collision detection.Oct 29, 1998, 5:56pm
As you pointed out, a moving object can't be seen. and a avatar is made for
"moving" :) but for collision detection, its implemented in the browser for avatars, not into the server or SDK for bots. or am i wrong at this point ? my bot daniel passes through everything without problems :) if you don't use the gesture for ball treatment, but the move instead, you could have distance and strengt.. if you run against your ball, it has much strength, it you just walk against it, it will run off more slow... which would mean you have to monitor the last few movements and time indices, as the browser does for interpolating the avatar paths, which, unfortunately means any network traffic jam would influence your ball response. just my 2 cents... Walter Edward Sumerfield schrieb in Nachricht <36385854.F7C34D1D at poboxes.com>... >AW is already doing collision detection between bots and objects but it is not >between avatars or between avatars and building objects that are moving. > >I am thinking about a game of catch. > >Would the ball be an object or a small round avatar? Object that are being >moved can not be seen. > >Do I have to build collusion detection into my ball? After all it will have to >stop infront of avatars to simulate catching and bounce of objects. > >Gravity doesn't exist for bots. The movement of the ball would have to >simulate this. > >Throwing would be a new gesture sequence but distance and strength of throw >would be hard to implement. > >Your thoughts? > >Edward Sumerfield > > Collision detection.Oct 30, 1998, 3:25pm
Edward Sumerfield schrieb in Nachricht <36391029.9C628A93 at poboxes.com>...
[View Quote] The server side ? why that ? the bot program (which, from the client/server-point of view is the client side) would do all the checking. Walter Collision detection.Oct 31, 1998, 4:20pm
Edward Sumerfield schrieb in Nachricht <363A0A29.B978C9D5 at poboxes.com>...
> > Robot (client) -> World (Server) < - AW browser (client) > >If you, as the browser, enter a chat message "throw ball" then you are sending >a message from the client to the world server that it could pass onto the robot >program so the robot is in effect a server or your browser. > Ah, i see.. you are right, that perspective put the bot into the server position :) its just that a bot as a ball is just another participant in the communication between different clients to the aw-server, and therefore i found it confusing. Walter Simple error converter(13.8K): win32 app that asks for reason # and outputs the reason.Nov 6, 1998, 3:56pm
Don't post the mfc debug dll here...
either compile in release mode (you should do that anyway for a "release" ) ) or switch to static linkage of MFC if your programm is really that simple.. Walter Jw schrieb in Nachricht <364254C7.40142812 at mediaone.net>... sh*t. thought i worked that out. [View Quote] > how about the "Not too simple MCF40D.DLL" which is missing from your upload? > [View Quote] Preston ProblemJul 30, 1999, 9:53pm
I hope that the email reply i gave you helps you in this point :)
it basically recommended to upgrade preston since i fixed that bug in the last build.. Walter aka Faber Jack Fowler <jack at fowler.org> schrieb in im Newsbeitrag: 37a22414.0 at homer... > I have a spicific Preston problem..... If I leav a world, leaving Preston > behind, or log off AW leaving Preston running, when I return it carshes. > Has anyone else had this problem or is it unique to something I'm doing? > Below is the error message... > > PRESTON caused an invalid page fault in > module PRESTON.EXE at 0167:00412170. > Registers: > EAX=00000000 CS=0167 EIP=00412170 EFLGS=00010202 > EBX=00dcfb10 SS=016f ESP=0068eb00 EBP=004494b8 > ECX=00ed0580 DS=016f ESI=004495d0 FS=5637 > EDX=00ed057c ES=016f EDI=00000001 GS=0000 > Bytes at CS:EIP: > 8b 40 44 50 e8 eb 2c 00 00 83 c4 08 85 c0 74 d8 > Stack dump: > 00dcfb10 10004ab0 0044955c 00008166 0040ca57 00dcfb10 009c0cb7 0068eb83 > 0068ed50 009c0590 009c0cb7 00008166 0068ed50 009c0590 0068ecd0 00433b68 > > -- Jack Fowler (JackFromVa) > --------------------- > jack at fowler.org > ICQ # 15260753 > > 2 questions.Nov 10, 1998, 3:05pm
Xelag,
XelaG schrieb in Nachricht <36484701.31444845 at news.activeworlds.com>... > I use vb6.0 and have managed to login 3 bots at a time, roughly >following the greeter bot script (no greetings i'm afraid). I have 2 >questions at the moment. Can anyone help explaining these matter?. > >1. >Whether i log in 1 or more bots, they disappear from the world (Beta >GZ) after some time, about a minute. Their instance number is still >valid (selectable) but they are gone. I found my bots to dissappear if i don't call aw_wait anymore.... It happens in my C++ programm when i am debugging it and keeping it on hold on a breakpoint. so make sure you have some kind of mainloop that calls aw_init().... i do this using a WM_TIMER and calling aw_wait(10); in there, about once a second. >2. >I cant seem toget char* aw_string (AW_ATTRIBUTE a) working in VB6. The >code I use >Public Declare Function aw_string Lib "aw.dll" (ByVal awAttribute As >AW_ATTRIBUTE) As String >is useless, although a similar syntax for aw_int() works ok. I think >it is because this is the only function retuning a string. Is there >any workaround? <wishfull thinking> Maybe having a function with no >return value that accepts a fixed length string as parameter, as in >Kernel's GetPrivateProfileString. i have no clue there since I am not into VB. but char * is a common expressions for API functions as well i think. For example, lstrcpy is a WIN32 function (exported from kernel32.dll) and it returns a string pointer like that. So see if you can find a declaration for that one and use it to create your proper aw_string prototype. Walter 2 questions.Nov 12, 1998, 3:17pm
I am glad to help, but its Faber, not Facter...
Why to people confuse my nick all the time ? *grin* Walter aka Faber on AW XelaG schrieb in Nachricht <364b06f8.29019427 at news.activeworlds.com>... >Facter, thanks for your posting and the online help this afternoon. >Its stable now with 2 SDK bots, the 3rd one crashes the syten. (and I >had my 2 other Hambots there at the same time, I thought the limit was >3). Got the forward/ back/ sidewards/ up/ down and turning around >movements ready, sorted out the trigonometry this evening. Next: >climbing at an angle, random-walking and figure-skating! I can also >have him say through keyboard input, I'm working on the teleport >option now and trimming the GUI. Pity he can't interact. 2 questions.Nov 12, 1998, 3:22pm
XelaG schrieb in Nachricht <364a7fb3.663103 at news.activeworlds.com>...
>Sorry for the confusion, both Walter and Facter, I haven't slept for >48 hours because of my deafbot. Walter (I forgot your aw- nickname), >you and your bot [Daniel] were very helpful to me yesterday, many >thanks. My nick name is Faber, (to add to the confusion :) ) > >On Wed, 11 Nov 1998 13:49:40 +0800, facter <facterinvurt at hotmail.com> [View Quote] in fact(er) *grin* > >P.S. he is called [Daniel] your bot, Walter, or am I again mistaken? Yes, the first instance my bot is allways called [Daniel] in honor of R. Daniel Oliwav, the famous Robot of Isaac Asimovs Robot Stories. Walter aka Faber Loosing focusNov 12, 1998, 3:25pm
Well, to solve that problem of focus loosing you can either ..
do as i do an talk to your bot inside of AW mostly... and second, you might want to use the FindWindow() API call and ShowWindow() to bring the AW browser to the front from your bot programm, but i don't really think thats a bright idea. but its better than having the browser render while beeing inactive... it would use way to much CPU time. Walter aka Faber jeanphi schrieb in Nachricht <364aae12.0 at homer>... >Salut, > >I guess that we can handle this problem with usingthe WIN32 API. >Here is my call to all the SDK Programmers ! > >You guys know that when you press Alt-Tab, it changes the application you >are using, so maybe we could use the win32 APIs to do so and get the focus >back to AW Browser. > >What do you guys think ? > >Et toi XetaG ? > >jeanphi > > > >button >leads > > aw_enter hangs in hostile worldsNov 12, 1998, 3:26pm
It happens to the C community as well that your bot hangs if you try to
enter worlds which do not allow bot on your behalf. they have restricted that right to important people only. Walter aka Faber XelaG schrieb in Nachricht <364b94f3.1970052 at news.activeworlds.com>... >Is it VisualBasic or does it also happen in the C community that >aw_enter() hangs and doesn't return rc when attempting to enter >certain worlds? Shouldn't it time out and return an error code? This >happens e.g. in Atlantis - that doesn't allow SDK bots, but also in >Amigos, which I think has no policy against bots. If there is a >workaround, I'd like to know. XelaG. agrigny at xs4all.nl > aw now closed for bots ?Nov 12, 1998, 3:55pm
Is it true, that the main world AW is now closed for bots as well ?
its bad that aw_enter does not return giving an error code, and its even MORE bad that beta seems the only bot open place now.... bots are not that interesting if you run them in an empty world only... Walter aka Faber aw now closed for bots ?Nov 18, 1998, 6:31pm
You are correct, an invisible bot does not have a current position,
therefore its located nowhere. for that matter, nobody can see or hear it, and it does not see or hear anybody. which means its only useful to query property, to add / change / delete objects or to change world parameters, because those actions are not related to a current bot position. and it looks like the only thing you are not allowed to do is confuse and annoy users with your bot hanging around on GZ. so if it has no current position or one outside of GZ, you can do everything, even querying property on GZ. Walter XelaG schrieb in Nachricht <3651ea84.36446757 at news.activeworlds.com>... >As I understand it, an invisible bot is one that entered a world with >aw_enter() but has not called aw_state_change(). If so, how can it be >located in gz or anywhere else. Maybe Roland or someone else could >expand on the subject of invisible bots, or post a url where I could >get more details bout what they can/not do: i.e. can they speak? >Thanks. > > >On Tue, 17 Nov 1998 12:08:20 -0800, "Roland Vilett" <roland at lmi.net> [View Quote] Oops - Build 9 now availableNov 14, 1998, 12:15am
454 is RC_VERSION_MISMATCH
you have the wrong aw.dll in your path when you start your executable. Build 9 compiles and runs fine here, it event detects now properly if you're allowed in a world or not... Walter aka Faber Donald P. Dahlman schrieb in Nachricht <364C6F29.F5D64CC at eoe-magical.org>... >rc := aw_init(AW_BUILD); > if (rc <> 0) then begin > Memo1.Lines.Add('Unable to initialize API, reason ' + InttoStr(rc)); > exit; > end else > Memo1.Lines.Add('Initialized'); > >reason value is 454 > >this fails in 9? >is ok in 7 >Delphi 3.0 > > > STATUS_ACCESS_VIOLATIONNov 15, 1998, 9:49am
Veleno,
Veleno schrieb in Nachricht <364E8395.132FCDD1 at hiwaay.net>... >whenever I run a AWbot program where I do some string managing, my bot >is killed and I get > Exception: STATUS_ACCESS_VIOLATION > Dumping stack trace to bot.exe.core > >what is really returning this error? > What do you mean by "what is really returning this error?" When you encounter an STATUS_ACCESS_VIOLATION while doing string manipulations I guess its the system preventing your program from running away. So it would help alot if you'd post what string manipulations you do. Walter STATUS_ACCESS_VIOLATIONNov 16, 1998, 8:26pm
A Stack backtrace like that is meaningless without a debuggee with symboled
attached to it (or otherwise available to the program popping up the stack backstrace... the only common number here is c0000005 wich is share violation.... same thing as in this thread before. so the same things apply... try to post code fragments, but if the crash appears to be appearing by random, there's not much what we can do here from remote... Walter Dalthan schrieb in Nachricht <3650A272.A0FC27E6 at hiwaay.net>... >Something else about this problem. I've been running my bot pretty much >all afternoon, but every once >and a while, the bot will kill itself dumping to core, even when nothing >has changed in his surroundings... the core dump reads: > >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) Exception trapped! >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) exception C0000005 at 10047A35 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) exception: ax 339CF958 bx 339CF958 >cx 339CF958 dx 53 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) exception: si 253F898 di 15 bp >253F6AC sp 253F6A8 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) exception is: >STATUS_ACCESS_VIOLATION >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) Stack trace: >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 0: sp = 0x253F3B8, pc = >0x1000A26C >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 1: sp = 0x253F4DC, pc = >0xBFF76780 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 2: sp = 0x253F500, pc = >0xBFF858F3 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 3: sp = 0x253F598, pc = >0xFFECBAD7 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 4: sp = 0x253F6AC, pc = >0x1004A918 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 5: sp = 0x253F8E4, pc = >0x10049FC0 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 6: sp = 0x253F8FC, pc = >0x10046D5C >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 7: sp = 0x253F968, pc = >0x402225 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 8: sp = 0x253FB14, pc = >0x40207E >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 9: sp = 0x253FB28, pc = >0x10006B59 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 10: sp = 0x253FE0C, pc = >0x10006B6C >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 11: sp = 0x253FE18, pc = >0x4037A2 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 12: sp = 0x253FE28, pc = >0x40103A >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 13: sp = 0x253FE38, pc = >0xBFF88E93 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 14: sp = 0x253FF78, pc = >0xBFF88D41 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) frame 15: sp = 0x253FFF4, pc = >0xBFF87759 >(E:\ACTIVE WORLDS\SDK\DINGO.EXE 1000) End of stack trace (more stack >frames may be present) > >Now... the meaning of this, to me, is absolutely nothing.... >Can you guys tell me anything? Mass bot failuresAug 7, 1999, 7:27am
It would help if you stated one or two of the errors you got, and the types
of the bots you run. You are correct in your assumption that a corrupted aw.dll would prevent any bot from running. Walter aka Faber Wing <wing_aw at hotmail.com> schrieb in im Newsbeitrag: 37abba28.0 at homer... > Erm.... I'm running various bts off of one aw.dll (thats the onnly thing > that has changed in awhile, I moved them all to one folder with 1 aw.dll) > For about 2 days my bots ran fine, and now, the only bot that will even > start is ima's birdbot. HELP. I'm getting different errors from different > bots apps. I'm thinking that my aw.dll is corrupt but why would birdbot run? > > movement etc...Nov 15, 1998, 11:08pm
Hey Xelag,
XelaG schrieb in Nachricht <364f700e.6446890 at news.activeworlds.com>... >I'd like to give my bot some autonomous movement (like the hambot's >random movement), but don't quite know where to start. I recently >migrated from windows 3.11 (shame on me) so know nothing about >threads, except that they exist. What are the options? > >I could create a timer object for each bot (would that be = to >creating a new thread?). I already have one timer object for >aw_wait(). Can anybody give a hint? I use vb, its bad enough having a >deaf bot, I don't want him to look paralized as well! a WM_TIMER is not at all the same as a seperate thread, but since the SDK is not thread safe anyway and since it doesn't make sense to move more than once a second, a WM_TIMER does the job. so set up a second timer, and add a routine to it which does the following (pseudo code following) OnMoveTimer () { get_old_position(); my_current_x := my_current_x + random_value_between(-100, 100); my_current_z := my_current_x + random_value_between(-100, 100); my_current_yaw := my_current_x + random_value_between(-100, 100); my_current_yaw := my_current_yaw MODULO 3600; int success = aw_change_state(); if (success) { save_current_position(); } } well, i think i got 3 languages in the above code, but the point should be clear :) hope that help a little, Walter aka Faber movement etc...Nov 16, 1998, 8:28pm
Since a bot programm has a 3 bots limit, i guess you don't need active
objects for it. the programm responds quite well to 3 bots from a single thread. even lengthy build operations do not stop other bots from responding, since the sdk functions call your callbacks while waiting for server results. just my 2 cents.. Walter Thierry Nabeth schrieb in Nachricht <364FEB68.1C6F396B at insead.fr>... >Hello, > >I would just like to mention some theoretical work (well, let's say >academic work, since prototypes are built) related to the concurent >object models. >Practically, it consist in introducing concurency by associated a thread >of execution to objects. >Those objects are called "active objects". > Mass bot failuresAug 7, 1999, 8:15pm
which means you should keep the aw.dll you get with a bot along with the bot
executable to prevent that problem.. Walter aka Faber Andon M. Coleman <gizmo98 at earthlink.net> schrieb in im Newsbeitrag: 37ac7438.0 at homer... > Can't initialize aw sdk version 13 reason 454 . . . > > Problem --- Birdbot used V. 13 of the AW.DLL, whereas the rest of the apps > use V. 14 --- > > RC_VERSION_MISMATCH 454 === TOO OLD A VERSION. > > -Andon Coleman > [View Quote] Using the Borland CompilerNov 18, 1998, 6:56pm
The Borland should have tools to create an import library from a dll. try
to locate a tool called "implib.exe" or try to find it the documentation. this is how previous MS C++ handled that. you called the aforementioned tool like that: "implib aw.dll" and it should create the dll. i don't know if borland supplies a tool like that, but it's worth a try. Walter aka Faber David Burke schrieb in Nachricht <365253F7.7CACDF02 at visualfuture.com>... >Hello all, > I'm wondering if anyone has been able to use the Borland compiler >with the SDK? I read the previous Borland thread. I've got Borland >5.02 >on there now, and also have Builder3 available. I would like to know >how to correctly include the "aw.lib" file in the project, without using > >the "LoadLibrary" and "GetProcAddress" mess. If anyone knows >how to do this, your help would be greatly appreciated. > > Thanks, > Dave > Cygwin32Nov 20, 1998, 8:53pm
Edward,
implib programms are compiler specific nowadays. they collect the neccessary information for dynamic linking, but don't really create a standard libary with actual code in it anymore, so that the compiler can use the collected information to create dynamic linking code on the fly as needed. so that kind of library would have to be coded manually, using c only, released in source, and compiled by the one going to use it. On the other hand it's hard to believe that the Cygwin32 DLL support is that poor. a windows development is NOTHING with at least plain DLL import library support, so i wonder if CygWin32 does have an implib.exe equivalent which we do not know and which would have prevented a lot of work and thought. Walter Edward Sumerfield schrieb in Nachricht <36555A27.5CCCA932 at poboxes.com>... ANYONE: HEY, COULD SOME NICE PERSON WITH AN IMPLIB COMMAND CREATE JOSH A DLL WRAPPER FILE? Cygwin32Nov 21, 1998, 2:42pm
Excelent research and work !!!!
Walter Edward Sumerfield schrieb in Nachricht <36563C1F.1981B3D1 at poboxes.com>... >Attached files: > >awsdk.def > >Output from the impdef command on the aw.dll > >awsdk.lib > >Output from the dlltool from the awsdk.def and aw.dll. > >bot.C > >Sample program to see if the awsdk.lib would link. > >Makefile > >Makefile used to create the bot.exe program. Note that the impdef command is not >included because that must be run from DOS. > >Edward Sumerfield. > Preston 20 is outAug 12, 1999, 7:48pm
Preston 20 was released today..
Build 20 - Preston can now have more than one owner. Seperate the names with "," in the bot owner field. For example: Faber,Ima Genius - A bug was fixed which would cause Preston to crash when Preston's internal userlist had only one entry, and that user would leave and come back. This bug has been around for quite some time now, and reported by many people. - A bug was fixed with the follow mode. "me" is now properly recognized as the follow target again We have disabled all previous builds except for 19 and 20. Walter aka Faber Sick of VB6 !Nov 20, 1998, 10:33pm
maybe its the right time to look into c++ ?
just if you wonder, its possible to write a GUI bot using c++ in VC5.0, so 6.0 should work too.. this is what [Daniel] is. Walter XelaG schrieb in Nachricht <36560038.28775246 at news.activeworlds.com>... >Just to say I'll have to find another programming language that has >GUI support. VB6 can't read aw_string and crashes, sometimes >unexpectedly crashes on aw_int, in both cases with an ACCESS VIOLATION >in aw.dll... Can't spend more efforts on this rubbish language. And my >bot was getting so nice: walking, dancing, flying, travelling by foot >to new destinations... I could cry. > >I tried compiling the 1st SDK example in C with VC++6, within 15 >minutes I had the Speaker bot running and HEARING, a new experience >for me. But GUI support is lacking there, and I really want that too. > >Help! Canopus, how's Delphi? I havent programmed in Pascal since >Turbo times under DOS, that's years ago. Does object Pascal support >dlls in C? I have now Delphi 2, it's been given away for free. > >Desperately seeking.... > >XelaG Moving the botsNov 21, 1998, 2:50pm
Edward
Edward Sumerfield schrieb in Nachricht <3656D39C.9D01AB at poboxes.com>... >Robots don't have session number they have instance numbers. >Likewise other avatars wandering around only have session numbers. > >So for you two robot problem you would need an array on session numbers for >each instance number. Really ? I never needed the session numbers. In every event callback i have the instance, and then pass all the event information the the c++ bot object responsible for that bot instance. doing it this way a bot object does only get the information related to him. If an avatar comes close to more than one bot at a time, i get the event twice, once for each bot instance, so that approach works just fine. i still have no idea for what the session number is needed outside the aw.dll. Walter > >Edward Sumerfield. > [View Quote] Moving the botsNov 21, 1998, 2:51pm
It never rejected a positon change for me, and i errorneously had tests
running with 100 changes a second. i guess it discards them or does not propagate them to other people, but it does not reject them. Walter XelaG schrieb in Nachricht <3658c338.2969219 at news.activeworlds.com>... >Remember that the world server may reject your request to update the >position of the bot, if two requests reach the server within one >second, so that you must keep track of that and re-send a request >after a second. > Moving the botsNov 21, 1998, 2:52pm
This is a multi-part message in MIME format.
------=_NextPart_000_006E_01BE1577.B951F440 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable What is G++ compared to C++ ?=20 :)=20 Walter Edward Sumerfield schrieb in Nachricht = <3656D683.B846DB09 at poboxes.com>... Xelag said it.=20 AWCPP is implemented entirely in GNU G++. The version implemented by = Cygnus at http://www.cygnus.com=20 ------=_NextPart_000_006E_01BE1577.B951F440 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML//EN"> <HTML> <HEAD> <META content=3Dtext/html;charset=3Diso-8859-1 = http-equiv=3DContent-Type><!doctype html public "-//w3c//dtd html 4.0 = transitional//en"> <META content=3D'"MSHTML 4.72.3509.100"' name=3DGENERATOR> </HEAD> <BODY bgColor=3D#ffffff> <DIV><FONT color=3D#000000 face=3DArial size=3D2>What is G++ compared to = C++ ?=20 </FONT></DIV> <DIV><FONT color=3D#000000 face=3DArial size=3D2></FONT> </DIV> <DIV><FONT face=3DArial size=3D2>:) </FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT> </DIV> <DIV><FONT face=3DArial size=3D2>Walter</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT> </DIV> <BLOCKQUOTE=20 style=3D"BORDER-LEFT: #000000 solid 2px; MARGIN-LEFT: 5px; PADDING-LEFT: = 5px"> <DIV>Edward Sumerfield<ESUMERFD at POBOXES.COM> schrieb in Nachricht = <<A=20 = href=3D"mailto:3656D683.B846DB09 at poboxes.com">3656D683.B846DB09 at poboxes.c= om</A>>...</DIV>Xelag=20 said it.=20 <P>AWCPP is implemented entirely in GNU G++. The version implemented = by=20 Cygnus at <A = href=3D"http://www.cygnus.com">http://www.cygnus.com</A>=20 <P> </P></BLOCKQUOTE></BODY></HTML> ------=_NextPart_000_006E_01BE1577.B951F440-- Moving the botsNov 22, 1998, 9:33am
Interesting...
i was building the bot from a AWBrowser-User point of view. You see if more than one person approaches you in AW and talks to you, you get all statements mixed in the chat window. this is, of course, just what happens to my bot if more than one guy is talking to it. For now that does not matter, because the conversations to my bot consist of simple give-a-command and get-a-direct-response. No conversation context. But if i wanted to establish chat context, there's still no need for a session id. for every conversation you have a bot's instance and an avavatar's name. So as soon as my c++ bot objects are able to keep conversation context, they would of course remember to whom, and there you are. so my AWBrowser-User point of view would work here. The user does not have "session ids" and therefore the bot does not need them either. Walter Edward Sumerfield schrieb in Nachricht <36572A8A.A28DE3A4 at poboxes.com>... >You are correct. You are using the instance to id the bot that received the >event. However, you didn't describe in your model what happens when two or more >avatars approach your bot at the same time. Each avatar that approaches will >have a separate session number (AW_AVATAR_SESSION). > >For example, I use the session number to identify an object that keeps track of >conversation information with a specific avatar. You can track the same >conversation with different approaching avatars at the same time. Of coarse the >chat window looks a little crazy. > >[bot] Hello A >A: What's up >[bot] A, do you want something? >[bot] Hello B >A: What is the time? >B: Robot dude. What's happenin. >[bot] B, do you want something? >[bot] A, it is 10 am. >B: No go away. >[bot] B, see ya. > >And so it goes on, and so on. > >If you look at my AvatarTrackerIF class if defines the callback as receiving >AvatarThem* and void* as parameters. The AvatarThem represents the avatar that >is chatting/moving and the void* represents a context object that I created and >stored with the avatar information when the the avatar was added. The Nervous >sample program implements this. > >Edward Sumerfield. > [View Quote] |