Board ArchivesSite FeaturesActiveworlds SupportHistoric Archives |
edward sumerfield // User Search
edward sumerfield // User SearchGesture problemsDec 15, 1998, 9:55am
This is a multi-part message in MIME format.
--------------93595C1ECE15049462C600F0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Here is my solution for the gesture reset issue. There is an OO pattern for a timer that involves two classes static class Timer static array of objects. int start(int ticks, TimerIF *); stop(int timer_id); check(); pure virtual TimerIF void popped(); So you can write a program like this. class A : public TimerIF { void popped() { // reset the gesture back to 0. } } void avatar_chat() { //set gesture to 5. Timer::start(5, new A()); } main() { aw_event_set(AW_MY_GESTURE, avatar_chat); while (aw_wait(1000)) { Timer::check(); } } So when the program starts it installs the chat event handler. The main loop contains the checking of the timer but as there are no timer started at this point this does nothing. Once a chat is seen then a gesture is started and a 5 tick timer is started. No wach time the main loop checks the timer a tick is decremented from this timer. Once it reaches zero the popped method on object A is called which reset the gesture. The use of ticks instead of seconds makes timing much simpler if not as accurate. The main loop cycling around every seconds allows us to count approximate seconds the inaccuracy comes in depending on how long the loop takes to run. So to total tick time is actually 1 second plus the loop cycle time. this inaccuracy is of no consequence for this program. The beauty of this approach is that once you have started a timer you don't have to worry about it any more. You can of coarse have multiple timers running in parallel each started with a different number of ticks. My next release of AWCPP will have the official version of the Timer class but I have attached it here if there are any C++ developers interested. Thanks for your help everyone, I will have my deer grazing and bucking any day now. Edward Sumerfield [View Quote] > Doing AW_MY_GESTURE apparently involves requesting the special gesture and then > requesting the default gesture, with a pause of a few seconds between them. In a > multibot program it may be easier to post a flag in the CHAT event handler, and to do > both the special gesture and the default gesture in the main program loop (with the > few second pause between them). The order in which the bot instances are notified of > the CHAT event is somewhat unpredictable. Putting everything in the main loop > simplifies your interpretation of the timer signals. (I tried out this arrangement, > and it seems to work well; it also gives you more control over your bot's action > sequence.) Admittedly, with one bot, it may be simpler to request the special gesture > in the CHAT event handler, and request the default gesture, after a timed pause, in > the main program loop. But I notice you are also interested in the general case. > [View Quote] --------------93595C1ECE15049462C600F0 Content-Type: application/x-unknown-content-type-hpp_auto_file; name="TimerStore.hpp" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="TimerStore.hpp" I2lmbmRlZiBUSU1FUlNUT1JFX0hQUA0KI2RlZmluZSBUSU1FUlNUT1JFX0hQUA0KDQovKiEg XGNsYXNzIFRpbWVyU3RvcmUNCiAqICBcYXV0aG9yIEVkd2FyZCBTdW1lcmZpZWxkDQogKiAg XHZlcnNpb24gMC4zDQogKiAgXGRhdGUgMTEvNS85OA0KICoNCiAqICBcYnJpZWYgU3RvcmFn ZSBtZWNoYW5pc20gZm9yIHRoZSBUaW1lciBjbGFzcy4NCiAqDQogKiAgVGhpcyBjbGFzcyBh bGxvd3MgdGhlIFRpbWVyIGNsYXNzIHRvIHNpbXBseSBhZGQsIGRlbGV0ZSwgaW50ZXJhdGUN CiAqICB0aHJvdWdoIGFsbCB0aGUgcnVubmluZyB0aW1lcnMuDQogKg0KICogIFxjb2RlDQog KiAgbWFpbigpIHsNCiAqICAgIFRpbWVyU3RvcmUgdGltZXJfc3RvcmU7DQogKiAgICBUaW1l ckluZm8gKnRpbWVyID0gbmV3IFRpbWVySW5mbyh0aW1lcmlmLCBjbGlja3MpDQogKg0KICog ICAgVGltZXJTdG9yYWdlOjppdGVyYXRvciB0aW1lcl9pZCA9IHRpbWVyX3N0b3JlLmFkZCh0 aW1lcik7DQogKg0KICogICAgdGltZXIgPSB0aW1lcl9zdG9yZS5maXJzdCgpOw0KICogICAg d2hpbGUgKHRpbWVyKSB7DQogKiAgICAgIHRpbWVyLT5jbGlja3MtLTsNCiAqICAgICAgaWYg KCF0aW1lci0+Y2xpY2tzKSB7DQogKiAgICAgICAgdGltZXItPnRpbWVyaWYtPnBvcHBlZCgp Ow0KICogICAgICAgIHRpbWVyX3N0b3JlLmRlbGV0ZSh0aW1lcik7DQogKiAgICAgIH0NCiAq ICAgICAgdGltZXIgPSB0aW1lci5uZXh0KCk7DQogKiAgICB9DQogKiAgICB0aW1lci0+ZGVs ZXRlKHRpbWVyX2lkKTsgICAvLyBXaWxsIGZhaWwgaWYgdGltZXIgaGFzIGFscmVhZHkgcG9w cGVkDQogKiAgfQ0KICogIFxlbmRjb2RlICANCiAqLw0KDQojaW5jbHVkZSA8bGlzdD4NCiNp bmNsdWRlIDxhbGdvcml0aG0+DQoNCi8qISBcYnJpZWYgU3RydWN0dXJlIHVzZWQgdG8gc3Rv cmUgdGhlIFRpbWVySUYgaW1wbGVtZW50b3IgYW5kIHRoZSBudW1iZXINCiAqICBvZiBjbGlj a3MgcmVtYWluaW5nIGJlZm9yZSB0aGUgdGltZXIgcG9wcy4NCiAqLw0KdHlwZWRlZiBzdHJ1 Y3Qgew0KDQogIGludCB0aW1lcl9pZDsNCiAgVGltZXJJRiAqdGltZXJpZjsNCiAgaW50IGNs aWNrczsNCn0gVGltZXJJbmZvOw0KDQpvc3RyZWFtJiBvcGVyYXRvcjw8KG9zdHJlYW0mIG9z LCBUaW1lckluZm8mIHRpbWVyaW5mbyk7DQoNCi8qISBcYnJpZWYgVmVjdG9yIHR5cGUgdXNl cyB0byBzdG9yZSB0aGUgVGltZXJJbmZvIHN0cnVjdHVyZXMuDQogKi8NCnR5cGVkZWYgbGlz dCA8VGltZXJJbmZvICo+IFRpbWVyU3RvcmFnZTsNCg0KY2xhc3MgVGltZXJTdG9yZSB7DQoN CnByaXZhdGU6DQoNCiAgLyohIFxicmllZiBUaGUgbGFzdCB0aW1lciBpZCB0aGF0IHdhcyBh Y2Nlc3NlZCBpbiB0aGUgdmVjdG9yLg0KICAgKi8NCiAgVGltZXJTdG9yYWdlOjppdGVyYXRv ciBjdXJyZW50X3RpbWVyX2lkOw0KDQogIC8qISBcYnJpZWYgTnVtYmVyIHVzZWQgdG8gaWRl bnRpZnkgdGhlIHRpbWVyLg0KICAgKi8NCiAgaW50IHRpbWVyX2lkOw0KDQpwdWJsaWM6DQoN CiAgLyohIFxicmllZiBWZWN0b3IgdXNlZCB0byBzdG9yZSBhbGwgdGhlIFRpbWVySW5mbyBz dHJ1Y3R1cmVzLg0KICAgKi8NCiAgVGltZXJTdG9yYWdlIHRpbWVyX3N0b3JhZ2U7DQoNCiAg LyohIFxicmllZiBDb25zdHJ1Y3RvciBmb3IgdGhpcyBjbGFzcy4NCiAgICovDQogIFRpbWVy U3RvcmUoKTsNCg0KICAvKiEgXGJyaWVmIEdldCB0aGUgc2l6ZSBvZiB0aGUgdGltZXIgc3Rv cmUuDQogICAqLw0KICBpbnQgc2l6ZSgpOw0KDQogIC8qISBcYnJpZWYgQWRkIGEgVGltZXJJ bmZvIHN0cnVjdHVyZSB0byB0aGUgbGlzdC4NCiAgICogIFxwYXJhbSB0aW1lcl9pbmZvIGlz IHRoZSBzdHJ1Y3R1cmUgdGhhdCBjb250YWlucyBhbGwgcmVsZXZhbnQgDQogICAqICBpbmZv cm1hdGlvbiBhYm91dCB0aGUgdGltZXIgYmVpbmcgYWRkZWQuDQogICAqICBccmV0dXJuIHRp bWVyIGlkIHVzZWQgZm9yIGlkZW50aWZ5aW4gdGhpcyB0aW1lciBmb3IgdGhlIHN0b3AgZnVu Y3Rpb24NCiAgICovDQogIGludCBhZGQoVGltZXJJbmZvICp0aW1lcl9pbmZvKTsNCg0KICAv KiEgXGJyaWVmIEVyYXNlIHRoZSBjdXJyZW50IFRpbWVySW5mbyBzdHJ1Y3R1cmUgZnJvbSB0 aGUgbGlzdC4NCiAgICogIFxwYXJhbSB0aW1lcl9pZCBpZGVudGlmaWVzIHRoZSB0aW1lciB0 byBiZSBkZWxldGVkLg0KICAgKi8NCiAgdm9pZCBlcmFzZShUaW1lclN0b3JhZ2U6Oml0ZXJh dG9yIHRpbWVyX2lkKTsNCg0KICAvKiEgXG92ZXJsb2FkDQogICAqLw0KICB2b2lkIGVyYXNl KGludCB0aW1lcl9pZCk7DQoNCiAgLyohIFxvdmVybG9hZA0KICAgKi8NCiAgdm9pZCBlcmFz ZSgpOw0KDQogIC8qISBcYnJpZWYgR2V0IHRoZSBmaXJzdCBUaW1lckluZm8gc3RydWN0dXJl IGluIHRoZSBWZWN0b3IuDQogICAqICBccmV0dXJuIHRoZSBmaXJzdCBUaW1lckluZm8gc3Ry dWN0dXJlIHN0b3JlZCBvciB6ZXJvIGlmIGl0IGlzIGVtcHR5Lg0KICAgKi8NCiAgVGltZXJJ bmZvKiBmaXJzdCgpOw0KDQogIC8qISBcYnJpZWYgR2V0IHRoZSBuZXh0IFRpbWVySW5mbyBz dHJ1Y3Z0dXJlIGluIHRoZSBWZWN0b3IuDQogICAqICBccmV0dXJuIHRoZSBuZXh0IFRpbWVy SW5mbyBzdHJ1Y3R1cmUgc3RvcmVkIG9yIHplcm8gaWYgdGhlcmUgYXJlIG5vIG1vcmUuDQog ICAqLw0KICBUaW1lckluZm8qIG5leHQoKTsNCg0KICBmcmllbmQgb3N0cmVhbSYgb3BlcmF0 b3I8PChvc3RyZWFtJiBvcywgVGltZXJTdG9yZSYgc3RvcmUpOw0KfTsNCg0KI2VuZGlmIFRJ TUVSU1RPUkVfSFBQDQo= --------------93595C1ECE15049462C600F0 Content-Type: application/x-unknown-content-type-hpp_auto_file; name="Timer.hpp" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="Timer.hpp" I2lmbmRlZiBUSU1FUl9IUFANCiNkZWZpbmUgVElNRVJfSFBQDQoNCi8qISBcY2xhc3MgVGlt ZXINCiAqICBcYXV0aG9yIEVkd2FyZCBTdW1lcmZpZWxkDQogKiAgXHZlcnNpb24gMC4zDQog KiAgXGRhdGUgMTEvNS85OA0KICoNCiAqICBcYnJpZWYgQSBiYXNpYyAiY2xpY2siIHRpbWVy IHRvIHRyYWNrIGFzeW5jaHJvbm91cyB3YWl0IHRpbWVzLg0KICoNCiAqICBUaGUgVGltZXIg Y2xhc3MgYWxsb3dzIHlvdSB0byBzdGFydCBhIHRpbWVyIGJhc2VkIG9uIGEgbnVtYmVyIG9m DQogKiAgImNsaWNrcyIuIEEgY2xpY2sgcmVwcmVzZW50cyBhbiBpbnRlcmF0aW9uIG9mIHlv dXIgcHJvZ3JhbS4gSWYgeW91DQogKiAgY2FsbCB0aGUgVGltZXIuY2hlY2sgbWV0aG9kIG9u Y2UgZXZlcnkgc2Vjb25kIHRoZW4gYSBjbGljayBpcw0KICogIGVxdWl2aWxlbnQgdG8gYSBz ZWNvbmQuDQogKg0KICogIFdoZW4geW91IGNyZWF0ZSBhIHRpbWVyIHlvdSBtdXN0IHN1cHBs eSBhbiBvYmplY3QgdGhhdCBpbXBsZW1lbnRzDQogKiAgdGhlIFRpbWVySUYgaW50ZXJmYWNl LiBUaGlzIGFsbG93cyB0aGUgVGltZXIgY2xhc3MgdG8gY2FsbCB5b3VyDQogKiAgcG9wcGVk IG1ldGhvZCB3aGVuIHRoZSB0aW1lciBleHBpcmVzLg0KICoNCiAqICBcZXhhbXBsZSBUaW1l ckV4LkMNCiAqLw0KDQojaW5jbHVkZSA8VGltZXJJRi5ocHA+DQojaW5jbHVkZSA8VGltZXJT dG9yZS5ocHA+DQoNCmNsYXNzIFRpbWVyIHsNCg0KcHJpdmF0ZToNCg0KICAvKiEgXGJyaWVm IHRpbWVyX3N0b3JlIGlzIGEgdmVjdG9yIHRoYXQgaXMgdXNlZCB0byBzdG9yZSBhbGwgdGhl DQogICAqICBUaW1lcklGIGltcGxlbWVudG9yIG9iamVjdHMuDQogICAqLw0KICBzdGF0aWMg VGltZXJTdG9yZSAqdGltZXJfc3RvcmU7DQoNCnB1YmxpYzoNCg0KICAvKiogXGJyaWVmIElu aXRpYWxpemUgdGhlIHRpbWVyIGNsYXNzLg0KICAgKiAgQXMgdGhpcyBjbGFzcyBpcyBzdGF0 aWMgYW5kIGhhcyBhIG51bWJlciBvZiBzdGF0aWMgdmFyaWFibGVzDQogICAqICBpdCBpcyBu ZWNlc3NhcnkgdG8gaW5pdGlhbGl6ZSBiZWZvcmUgdGhlIGNsYXNzIGNhbiBiZSB1c2VkLg0K ICAgKi8NCiAgc3RhdGljIHZvaWQgaW5pdCgpOw0KDQogIC8qISBcYnJpZWYgU3RhcnQgYSBu ZXcgdGltZXIuDQogICAqICBccGFyYW0gdGltZXJpZiBpcyBhbiBvYmplY3QgdGhhdCBpbXBs ZW1lbnRzIHRoZSBUaW1lcklGIGludGVyZmFjZS4NCiAgICogIFxwYXJhbSBjbGlja3MgaXMg YSBudW1iZXIgb2YgaW50ZXJhdGlvbnMgdGhyb3VnaCB0aW1lciBjaGVjay4NCiAgICogIFxy ZXR1cm4gdGltZXIgaWQgdXNlZCB0byBpZGVudGlmeSB0aGUgdGltZXIgdGhhdCBpcyBzdGFy dGVkLg0KICAgKi8NCiAgc3RhdGljIHZvaWQgKnN0YXJ0KFRpbWVySUYgKnRpbWVyaWYsIGlu dCBjbGlja3MpOw0KDQogIC8qISBcYnJpZWYgU3RvcCBhIHRpbWVyLg0KICAgKiAgXHBhcmFt IHRpbWVyX2lkIGlzIHRoZSBudW1iZXIgdGhhdCBpZGVudGlmaWVzIHRoZSB0aW1lciB0aGF0 IHNob3VsZA0KICAgKiAgYmUgc3RvcHBlZC4gSXQgd2FzIHJldHVybmVkIGJ5IHRoZSBzdGFy dCBtZXRob2QuDQogICAqLw0KICBzdGF0aWMgdm9pZCBzdG9wKHZvaWQgKiB0aW1lcl9pZCk7 DQoNCiAgLyohIFxicmllZiBDaGVjayBmb3IgZXhwaXJlZCB0aW1lcnMuDQogICAqDQogICAq ICBUaGlzIG1ldGhvZCBpdGVyYXRlcyB0aHJvdWdoIGFsbCB0aGUgcnVubmluZyB0aW1lcnMs IGRlY3JlbWVudHMNCiAgICogIHRoZSBudW1iZXIgb2YgY2xpY2tzIGJ5IG9uZSBhbmQgY2hl Y2tzIHRvIHNlZSBpZiB0aGV5IGhhdmUgDQogICAqICBleHBpcmVkLiBJZiBleHBpcmVkIHRo ZW4gdGhlIHBvcHBlZCBtZXRob2Qgb2YgdGhlIFRpbWVySUYgaXMNCiAgICogIGNhbGxlZC4N CiAgICovDQogIHN0YXRpYyB2b2lkIGNoZWNrKCk7DQoNCiAgLyohIFxicmllZiBHZXQgdGhl IG51bWJlciBvZiB0aW1lcnMgdGhhdCBhcmUgY3VycmVudGx5IHJ1bm5pbmcuDQogICAqICBc cmV0dXJuIG51bWJlciBvZiB0aW1lcnMuDQogICAqLw0KICBzdGF0aWMgaW50IHNpemUoKTsN Cg0KICAvKiogXGJyaWVmIERlYWxsb2NhdGUgYWxsIHN0YXRpYyBzdG9yYWdlIGFzaWduZWQg YnkgdGhpcyBjbGFzcy4NCiAgICovDQogIHN0YXRpYyB2b2lkIGRlc3Ryb3koKTsNCn07DQoN CiNlbmRpZiBUSU1FUl9IUFANCg0K --------------93595C1ECE15049462C600F0 Content-Type: application/x-unknown-content-type-hpp_auto_file; name="TimerIF.hpp" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="TimerIF.hpp" I2lmbmRlZiBUSU1FUklGX0hQUA0KI2RlZmluZSBUSU1FUklGX0hQUA0KDQovKiEgXGNsYXNz IFRpbWVySUYNCiAqICBcYXV0aG9yIEVkd2FyZCBTdW1lcmZpZWxkDQogKiAgXHZlcnNpb24g MC4zDQogKiAgXGRhdGUgMTEvNS85OA0KICoNCiAqICBcYnJpZWYgVGhpcyBpbnRlcmZhY2Ug aXMgdXNlZCBieSB0aGUgVGltZXIgY2xhc3MuDQogKi8NCg0KY2xhc3MgVGltZXJJRiB7DQoN CnB1YmxpYzoNCg0KICAvKiEgXGJyaWVmIENhbGxlZCBieSB0aGUgVGltZXIgY2xhc3Mgd2hl biB0aGUgdGltZXIgaGFzIGV4cGlyZWQuDQogICAqDQogICAqICBUaGUgdGltZXIgc3RhcnRz IHdpdGggYSBudW1iZXIgb2YgImNsaWNrcyIuIEVhY2ggdGltZSB0aGUgVGltZXIuY2hlY2sN CiAgICogIG1ldGhvZCBpcyBjYWxsZWQgdGhlc2UgY2xpY2tzIGFyZSBkZWNyZW1lbnRlZCBi eSBvbmUuIFdoZW4gdGhlIG51bWJlcg0KICAgKiAgb2YgY2xpY2tzIHJlYWNoZXMgemVybyB0 aGUgdGltZXIgaXMgc2FpZCB0byBoYXZlIHBvcHBlZCBhbmQgdGhpcyANCiAgICogIG1ldGhv ZCBpcyBjYWxsZWQuDQogICAqLw0KICB2aXJ0dWFsIHZvaWQgcG9wcGVkKCkgPSAwOw0KfTsN Cg0KI2VuZGlmIFRJTUVSSUZfSFBQDQoNCg0K --------------93595C1ECE15049462C600F0 Content-Type: application/x-unknown-content-type-c_auto_file; name="TimerStore.C" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="TimerStore.C" LyohIFxmaWxlIFRpbWVyU3RvcmUuQw0KICoNCiAqICBUaGUgVGltZXJTdG9yZSBjbGFzcyBt YW5hZ2VzIFRpbWVySW5mbyBzdHJ1Y3R1cmVzLg0KICovDQoNCiNpbmNsdWRlIDxpb3N0cmVh bS5oPg0KI2luY2x1ZGUgPERlYnVnLmhwcD4NCg0KI2luY2x1ZGUgPFRpbWVySUYuaHBwPg0K I2luY2x1ZGUgPFRpbWVyU3RvcmUuaHBwPg0KDQpUaW1lclN0b3JlOjpUaW1lclN0b3JlKCkg ew0KDQogIEVOVEVSKCJUaW1lclN0b3JlOjpUaW1lclN0b3JlIik7DQoNCiAgY3VycmVudF90 aW1lcl9pZCA9IChUaW1lclN0b3JhZ2U6Oml0ZXJhdG9yKTA7DQogIHRpbWVyX2lkID0gMDsN Cn0NCg0KaW50DQpUaW1lclN0b3JlOjpzaXplKCkgew0KDQogIHJldHVybiB0aW1lcl9zdG9y YWdlLnNpemUoKTsNCn0NCg0KaW50DQpUaW1lclN0b3JlOjphZGQoVGltZXJJbmZvICp0aW1l cl9pbmZvKSB7DQoNCiAgRU5URVIoIlRpbWVyU3RvcmU6OmFkZCIpOw0KDQogIC8vIFN0b3Jl IHRoZSBsYXRlc3QgdGltZXIgaWQgaW50byB0aGUgc3RydWN0dXJlIGFuZCBpbmNyZW1lbnQg dGhlIA0KICAvLyB0aW1lciBpZCByZWFkeSBmb3IgdGhlIG5leHQgYWRkLg0KDQogIERFQlVH KCJBZGRpbmcgdGltZXIgIiA8PCB0aW1lcl9pZCk7DQoNCiAgdGltZXJfaW5mby0+dGltZXJf aWQgPSB0aW1lcl9pZCsrOw0KDQogIHRpbWVyX3N0b3JhZ2UucHVzaF9iYWNrKHRpbWVyX2lu Zm8pOw0KICByZXR1cm4gdGltZXJfaW5mby0+dGltZXJfaWQ7DQp9DQoNCnZvaWQNClRpbWVy U3RvcmU6OmVyYXNlKCkgew0KDQogIEVOVEVSKCJUaW1lclN0b3JlOjplcmFzZSIpOw0KDQog IGN1cnJlbnRfdGltZXJfaWQgPSB0aW1lcl9zdG9yYWdlLmVyYXNlKGN1cnJlbnRfdGltZXJf aWQpOw0KfQ0KDQp2b2lkDQpUaW1lclN0b3JlOjplcmFzZShpbnQgdGltZXJfaWQpIHsNCg0K ICBFTlRFUigiVGltZXJTdG9yZTo6ZXJhc2UgKCIgPDwgZGVjIDw8IHRpbWVyX2lkIDw8ICIp Iik7DQoNCiAgYm9vbCBmb3VuZCA9IDA7DQogIFRpbWVyU3RvcmFnZTo6aXRlcmF0b3IgaTsN CiAgZm9yIChpID0gdGltZXJfc3RvcmFnZS5iZWdpbigpOyBpICE9IHRpbWVyX3N0b3JhZ2Uu ZW5kKCk7IGkrKykgew0KDQogICAgaWYgKCgqaSktPnRpbWVyX2lkID09IHRpbWVyX2lkKSB7 DQoNCiAgICAgIGZvdW5kID0gMTsNCiAgICAgIGJyZWFrOw0KICAgIH0NCiAgfQ0KICBpZiAo Zm91bmQpIHsNCg0KICAgIGVyYXNlKGkpOw0KICB9DQp9DQoNCnZvaWQNClRpbWVyU3RvcmU6 OmVyYXNlKFRpbWVyU3RvcmFnZTo6aXRlcmF0b3IgdGltZXJfaWQpIHsNCg0KICBFTlRFUigi VGltZXJTdG9yZTo6ZXJhc2UgKCIgPDwgaGV4IDw8ICZ0aW1lcl9pZCA8PCAiKSIpOw0KDQog IC8qIElmIHRoZSB0aW1lciB0byBiZSBkZWxldGVkIGlzIHBvaW50ZWQgdG8gYnkgdGhlIGN1 cnJlbnQgcG9pbnRlcg0KICAgKiB0aGVuIHdlIG11c3Qgc3dpdGNoIHRoZSBjdXJyZW50IHBv aW50ZXIgdG8gYSB2YWxpZCBlbnRyeS4gVGhpcw0KICAgKiBhdm9pZHMgdGhlIHBvc3NpYmls aXR5IG9mIHNvbWVvbmUgaW5hZHZlcnRlbnRseSByZS11c2luZyBhbiBpbnZhbGlkDQogICAq IHBvaW50ZXIuDQogICAqLw0KICBpZiAoY3VycmVudF90aW1lcl9pZCA9PSB0aW1lcl9pZCkg ew0KDQogICAgZXJhc2UoKTsNCiAgfQ0KICBlbHNlIHsNCg0KICAgICB0aW1lcl9zdG9yYWdl LmVyYXNlKHRpbWVyX2lkKTsNCiAgfQ0KDQogIHJldHVybjsNCn0NCg0KVGltZXJJbmZvICoN ClRpbWVyU3RvcmU6OmZpcnN0KCkgew0KDQogIFRpbWVySW5mbyAqdGltZXJfaW5mbyA9IChU aW1lckluZm8gKikwOw0KDQogIEVOVEVSKCJUaW1lclN0b3JlOjpmaXJzdCIpOw0KDQogIGlm ICghdGltZXJfc3RvcmFnZS5lbXB0eSgpKSB7DQoNCiAgICBjdXJyZW50X3RpbWVyX2lkID0g dGltZXJfc3RvcmFnZS5iZWdpbigpOw0KICAgIHRpbWVyX2luZm8gPSAqY3VycmVudF90aW1l cl9pZDsNCiAgfQ0KDQogIHJldHVybiB0aW1lcl9pbmZvOw0KfQ0KDQpUaW1lckluZm8gKg0K VGltZXJTdG9yZTo6bmV4dCgpIHsNCg0KICBUaW1lckluZm8gKnRpbWVyX2luZm8gPSAoVGlt ZXJJbmZvICopMDsNCg0KICBFTlRFUigiVGltZXJTdG9yZTo6bmV4dCIpOw0KDQogIGN1cnJl bnRfdGltZXJfaWQrKzsNCg0KICAvLyBDaGVjayBmb3IgdGhlIGVuZCBvZiB0aGUgbGlzdC4N Cg0KICBpZiAoY3VycmVudF90aW1lcl9pZCAhPSB0aW1lcl9zdG9yYWdlLmVuZCgpKSB7DQoN CiAgICB0aW1lcl9pbmZvID0gKmN1cnJlbnRfdGltZXJfaWQ7DQogIH0NCg0KICByZXR1cm4g dGltZXJfaW5mbzsNCn0NCg0Kb3N0cmVhbSYgb3BlcmF0b3I8PChvc3RyZWFtJiBvcywgVGlt ZXJTdG9yZSYgc3RvcmUpIHsNCg0KICBvcyA8PCAiVGltZVN0b3JlICIgPDwgc3RvcmUuc2l6 ZSgpOw0KfQ0KDQpvc3RyZWFtJiBvcGVyYXRvcjw8KG9zdHJlYW0mIG9zLCBUaW1lckluZm8m IHRpbWVyaW5mbykgew0KDQogIG9zIDw8ICJUaW1lSW5mbyAiIDw8IGRlYyA8PCB0aW1lcmlu Zm8udGltZXJfaWQNCiAgICAgPDwgIiBoYXMgIiA8PCB0aW1lcmluZm8uY2xpY2tzIDw8ICIg cmVtYWluaW5nLiI7DQp9DQoNCg== --------------93595C1ECE15049462C600F0 Content-Type: application/x-unknown-content-type-c_auto_file; name="Timer.C" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="Timer.C" LyohIFxmaWxlIFRpbWVyLkMNCiAqDQogKiAgVGltZXIgY2xhc3MgbWFuYWdlcyBhIHNldCBv ZiBzaW1wbGUgY2xpY2sgdGltZXJzLg0KICovDQoNCiNpbmNsdWRlIDxpb3N0cmVhbS5oPg0K I2luY2x1ZGUgPERlYnVnLmhwcD4NCg0KI2luY2x1ZGUgPFRpbWVySUYuaHBwPg0KI2luY2x1 ZGUgPFRpbWVyLmhwcD4NCiNpbmNsdWRlIDxUaW1lclN0b3JlLmhwcD4NCg0KVGltZXJTdG9y ZSAqVGltZXI6OnRpbWVyX3N0b3JlOw0KDQp2b2lkDQpUaW1lcjo6aW5pdCgpIHsNCg0KICBF TlRFUigiVGltZXI6OmluaXQiKTsNCg0KICB0aW1lcl9zdG9yZSA9IG5ldyBUaW1lclN0b3Jl KCk7DQp9DQoNCnZvaWQgKg0KVGltZXI6OnN0YXJ0KFRpbWVySUYgKnRpbWVyaWYsIGludCBj bGlja3MpIHsNCg0KICBFTlRFUigiVGltZXI6OnN0YXJ0Iik7DQoNCiAgLy8gQ2FzZSB0aGUg dmVjdG9ycyBpdGVyYXRvciB0byBhbiBpbnQgc28gdGhhdCB0aGUgY2FsbGVycyBkbw0KICAv LyBub3QgaGF2ZSB0byB3b3JyeSBhYm91dCB0aGUgdGltZXJfaWQgdHlwZS4NCg0KICBUaW1l ckluZm8gKnRpbWVyOw0KICBpbnQgdGltZXJfaWQ7DQoNCiAgdGltZXIgPSBuZXcgVGltZXJJ bmZvKCk7DQogIHRpbWVyLT50aW1lcmlmID0gdGltZXJpZjsNCiAgdGltZXItPmNsaWNrcyA9 IGNsaWNrczsNCg0KICB0aW1lcl9pZCA9IHRpbWVyX3N0b3JlLT5hZGQodGltZXIpOw0KDQog IHJldHVybiAodm9pZCAqKXRpbWVyX2lkOw0KfQ0KDQp2b2lkDQpUaW1lcjo6c3RvcCh2b2lk ICp0aW1lcl9pZCkgew0KDQogIEVOVEVSKCJUaW1lcjo6c3RvcCAoIiA8PCBkZWMgPDwgKGlu dCl0aW1lcl9pZCA8PCAiKSIpOw0KDQogIHRpbWVyX3N0b3JlLT5lcmFzZSgoaW50KXRpbWVy X2lkKTsNCn0NCg0Kdm9pZA0KVGltZXI6OmNoZWNrKCkgew0KDQogIEVOVEVSKCJUaW1lcjo6 Y2hlY2siKTsNCg0KICAvKiBTZWFyY2ggYWxsIFRpbWVySW5mbyBtZW1iZXJzIG9mIHRoZSB2 ZWN0b3IgYW5kIGNhbGwgdGhlIHBvcHBlZA0KICAgKiBmdW5jdGlvbnMgaWYgdGhlIG51bWJl ciBvZiBjbGlja3MgaGF2ZSByZWFjaGVkIHplcm8uDQogICAqDQogICAqIE5vdGU6IERvIG5v dCBlcmFzZSB0aGUgdmVjdG9yIG1lbWJlcnMgb24gdGhpcyBmaXJzdCBwYXNzIGJlY2F1c2UN CiAgICogICAgICAgdGhhdCB3aWxsIGludmFsaWRhdGUgdGhlIGl0ZXJhdG9yLg0KICAgKi8N Cg0KICBUaW1lckluZm8gKnRpbWVyID0gdGltZXJfc3RvcmUtPmZpcnN0KCk7DQogIHdoaWxl ICh0aW1lcikgew0KDQogICAgdGltZXItPmNsaWNrcy0tOw0KDQogICAgaWYgKHRpbWVyLT5j bGlja3MgPT0gMCkgew0KDQogICAgICB0aW1lci0+dGltZXJpZi0+cG9wcGVkKCk7DQogICAg ICB0aW1lcl9zdG9yZS0+ZXJhc2UoKTsNCiAgICB9DQoNCiAgICBERUJVRygqdGltZXIpOw0K DQogICAgdGltZXIgPSB0aW1lcl9zdG9yZS0+bmV4dCgpOw0KICB9DQp9DQoNCmludA0KVGlt ZXI6OnNpemUoKSB7DQoNCiAgcmV0dXJuIHRpbWVyX3N0b3JlLT5zaXplKCk7DQp9DQoNCnZv aWQNClRpbWVyOjpkZXN0cm95KCkgew0KDQogIEVOVEVSKCJUaW1lcjo6ZGVzdHJveSIpOw0K DQogIGRlbGV0ZSB0aW1lcl9zdG9yZTsNCn0NCg== --------------93595C1ECE15049462C600F0 Content-Type: application/x-unknown-content-type-c_auto_file; name="TimerTest.C" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="TimerTest.C" I2luY2x1ZGUgPGlvc3RyZWFtLmg+DQojaW5jbHVkZSA8QVdDUFAuaHBwPg0KDQpjbGFzcyBU aW1lclRlc3QgOiBwdWJsaWMgVGltZXJJRiB7DQoNCnByaXZhdGU6DQoNCiAgY2hhciB0ZXh0 WzMyXTsNCg0KcHVibGljOg0KDQogIFRpbWVyVGVzdCgpIHsNCiAgfQ0KDQogIFRpbWVyVGVz dChjaGFyICphX3RleHQpIHsNCiAgICBzdHJjcHkodGV4dCwgYV90ZXh0KTsNCiAgfQ0KDQog IHZvaWQgcG9wcGVkKCkgew0KDQogICAgY291dCA8PCAiVGltZXIgcG9wcGVkICIgPDwgdGV4 dCA8PCBlbmRsOw0KICB9DQp9Ow0KDQptYWluKCkgew0KDQogIHZvaWQgKnRpbWVyX2lkOw0K ICBUaW1lclRlc3QgdDEoInRpbWVyIDEiKTsNCiAgVGltZXJUZXN0IHQyKCJ0aW1lciAyIik7 DQogIFRpbWVyVGVzdCB0MygidGltZXIgMyIpOw0KICBUaW1lclRlc3QgdDQoInRpbWVyIDQi KTsNCiAgdm9pZCAqdGltZXJfaWQxID0gKHZvaWQgKikwOw0KICB2b2lkICp0aW1lcl9pZDIg PSAodm9pZCAqKTA7DQogIHZvaWQgKnRpbWVyX2lkMyA9ICh2b2lkICopMDsNCiAgdm9pZCAq dGltZXJfaWQ0ID0gKHZvaWQgKikwOw0KDQogIFRpbWVyOjppbml0KCk7DQoNCiAgdGltZXJf aWQxID0gVGltZXI6OnN0YXJ0KCZ0MSwgNSk7DQogIHRpbWVyX2lkMiA9IFRpbWVyOjpzdGFy dCgmdDIsIDIpOw0KICB0aW1lcl9pZDMgPSBUaW1lcjo6c3RhcnQoJnQzLCA4KTsNCiAgdGlt ZXJfaWQ0ID0gVGltZXI6OnN0YXJ0KCZ0NCwgMTAwKTsNCg0KICBmb3IgKGludCBjb3VudCA9 IDEwOyBjb3VudCA+IDA7IGNvdW50LS0pIHsNCg0KICAgIGNvdXQgPDwgIkNoZWNraW5nICIg PDwgY291bnQgPDwgZW5kbDsNCiAgICBUaW1lcjo6Y2hlY2soKTsNCiAgfQ0KDQogIGNvdXQg PDwgIkRlbGV0ZSB0aW1lciA0IiA8PCBlbmRsOw0KDQogIFRpbWVyOjpzdG9wKHRpbWVyX2lk NCk7DQoNCiAgY291dCA8PCAiU3RhcnQgYW5kIHN0b3AgbG90cyBvZiB0aW1lcnMuIiA8PCBl bmRsOw0KDQogICNkZWZpbmUgTlVNX1RJTUVSUyAyMA0KICB2b2lkICp0aW1lcl9pZHNbTlVN X1RJTUVSU107DQogIGZvciAoaW50IGkgPSAwOyBpIDwgTlVNX1RJTUVSUzsgaSsrKSB7DQoN CiAgICB0aW1lcl9pZHNbaV0gPSBUaW1lcjo6c3RhcnQobmV3IFRpbWVyVGVzdCgpLCAxMDAw KTsNCiAgfQ0KDQogIFRpbWVyOjpjaGVjaygpOw0KDQogIGZvciAoaW50IGkgPSAwOyBpIDwg TlVNX1RJTUVSUzsgaSsrKSB7DQoNCiAgICBUaW1lcjo6c3RvcCh0aW1lcl9pZHNbaV0pOw0K ICB9ICAgIA0KDQogIGNvdXQgPDwgIkZpbmFsIHNpemUgb2YgdGhlIHRpbWVyIHN0b3JlIGlz ICIgPDwgVGltZXI6OnNpemUoKSA8PCBlbmRsOw0KDQogIFRpbWVyOjpkZXN0cm95KCk7DQp9 DQo= --------------93595C1ECE15049462C600F0-- Gesture problemsDec 15, 1998, 3:47pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> In this example I would put it in class A. Assuming A is your Avatar class then it already has the instance and gesture in it. So implementing the TimerIF interface to create the popped() method is not an issue. <p>The draw back I thought of with this is an Avatar requirement to run multiple timers. With a single Avatar object has one popped method so there would be no way of knowing for which timer it is being called. <p>class A : public TimerIF { <br> void popped() { <br> // ?????? what do I do <br> } <br>} <br>main() { <br> A a; <br> Timer::start(&a, 5); // Gesture rest maybe <br> Timer::start(&a, 2); // Say something randomly maybe. <br> while (1) { Timer::check() } <br>} <p>The next version of Timer will solve this by adding a void * to the start() method and changing callback to popped(void *). This way you can start a timer and specify some arbitrary number that is passed back to your popped method when a timer pops. <p>class A : public TimerIF { <br> void popped(void *number) { <br> if ((int)number == 1) { <br> // Reset gesture <br> } else { <br> // Say something <br> } <br> } <br>} <br>main() { <br> A a; <br> Timer::start(&a, 5, 1); // Action 1 identifies Gesture reset. <br> Timer::start(&a, 2, 2); // Action 2 identifies say something. <br> while (1) { <br> Timer::check(); <br> } <br>} <p>It is hard to know what the ideal OO pattern is to model this problem. Another solution is to use a set of callback classes for each occurrence. <p>class A { <br> Avatar *a; <br> A(Avatar *a_a) { <br> a = a_a; <br> } <br> void popped() { <br> a.doA(); <br> } <br>} <br>class B { <br> Avatar *a; <br> A(Avatar *a_a) { <br> a = a_a; <br> } <br> void popped() { <br> a->doB(); <br> } <br>} <br>class Avatar { <br> void doA() { <br> // Reset gesture <br> } <br> void doB() { <br> // Say something <br> } <br>} <br>main() { <br> Avatar a; <br> Timer::start(new A(&a)); <br> Timer::start(new B(&a)); <br> while (1) { Timer::check() } <br>} <p>This creates a number of event type classes? I am not sure if this just confuses the design or makes things easier. <p>Any thoughts welcome. <p>Edward Sumerfield, struggling OO programmer. [View Quote] Gesture problemsDec 15, 1998, 5:49pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> <body bgcolor="#FFFFFF"> Just one more question for you Roland. <p>The browser is deciding on the gesture to initiate if the number from the world server is different from the gesture it just performed? <p>We have said that we need to reset the gesture to zero 5 seconds after the initial gesture is sent. Could that rule be rephrased as "to initiate a sequence of gestures, each successive gesture must be DIFFERENT from the last." <p>The difference between these statements is of coarse that instead of zero we could set gesture 4, then 5 seconds later, set gesture 3, then 5 seconds later back to gesture 4 again. Would this sequence cause the browser to correctly initiate each sequence? [View Quote] </body> </html> Gesture problemsDec 15, 1998, 8:14pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> <body bgcolor="#FFFFFF"> You De Man Andras. <p>So this is a documentation point to Roland then to clarify that that it is not the change to zero but the CHANGE of the gesture that is important. [View Quote] </body> </html> Gesture problemsDec 16, 1998, 12:59pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> <body bgcolor="#FFFFFF"> Because Edward writes very inefficient code? <p>Which of my bots were you running? <p>Most of them have one second poll (aw_wait(1000)) so that I can use timers that are accurate to one second. I have not looked at how much CPU this takes up. [View Quote] </body> </html> Gesture problemsDec 16, 1998, 8:48pm
--------------D731329ED8566A02A56FEFD7
Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Are you running 9 programs like this or using a single program to manage 9 bots. I would imagine that a single program would be more efficient because there would be only one 1 second loop as opposed to 9 of them. How are you getting 9 bots at the same time? I thought there was a limit of 3. Wow this is some really old code. since then we have migrated to (aw_wait) syntax, then to the AWSDK::aw_wait and now finally to the simplest form aw_wait using the awsdk.lib wrapper of the dll. But whatever works. [View Quote] > The same you posted some times ago and here. aw_wait(1000) is there and > nothing really else. > The loop is here: > for (int i=0;i<36000;i++) // 10 hours lifetime > { > (AWWait)(1000); // 1 sec only > if (reset_gesture && reset_gesture < GetTickCount ()) > { > /* time to set our gesture back to 0 again */ > (AWIntSet) (AW_MY_GESTURE, 0); > (AWStateChange) (); > reset_gesture = 0; > } > } > > [View Quote] --------------D731329ED8566A02A56FEFD7 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <body bgcolor="#FFFFFF"> Are you running 9 programs like this or using a single program to manage 9 bots. I would imagine that a single program would be more efficient because there would be only one 1 second loop as opposed to 9 of them. <p>How are you getting 9 bots at the same time? I thought there was a limit of 3. <p>Wow this is some really old code. since then we have migrated to (aw_wait) syntax, then to the AWSDK::aw_wait and now finally to the simplest form aw_wait using the awsdk.lib wrapper of the dll. But whatever works. [View Quote] </body> </html> --------------D731329ED8566A02A56FEFD7-- Gesture problemsDec 16, 1998, 8:52pm
Don't be hard on the guy Roland. He is only trying to help with specific
phrasing of your pending documentation. He doesn't deserve to be reprimanded. As we work through this "work in progress" we have all had to deal with the, expected, inaccuracies. This is not a problem except that we are all interested in improving things for the future. [View Quote] > So, ummm, what exactly is your point, Canopus? That the documentation is > incomplete? Thanks, but I already knew that. Like the SDK itself, and Active > Worlds in general, the documentation is a work in progress, and it will > improve with time > > -Roland > [View Quote] Gesture problemsDec 17, 1998, 11:34am
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> <body bgcolor="#FFFFFF"> [View Quote] <blockquote TYPE=CITE> [View Quote] </body> </html> Gesture problemsDec 17, 1998, 12:06pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> You are doing a great job Roland. Keep it up. [View Quote] Help Needed: Bot can't login?Dec 15, 1998, 4:11pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> What you are doing sounds right. Can you post your code? [View Quote] Help Needed: Bot can't login?Dec 15, 1998, 4:40pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> <body bgcolor="#FFFFFF"> All my stuff is C++ as well so that is cool, though I disagree with your professor. OO code generally has far less duplication. <p>Did you do an aw_init(AW_BUILD) before your aw_create? <br>I don't see your declarations, I assume login_owner is an int? <br>Did you check the bool result from Robot::Create? What was that error code? <br><font color="#000000"><font size=-1>AW_LOGIN_PASSWORD should be AW_LOGIN_PRIVILEGE_PASSWORD. <<< This looks like the big one.</font></font> <br>Use endl instead of "\n" as in cout << "Hello world" << endl; <br>Suggest using Argv, argc for number and password and passing as parameters to the bot. <br> [View Quote] </body> </html> aw_int_set(AW_MY_Y, 0)?Dec 18, 1998, 11:31am
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> Lets see the code Josh. [View Quote] aw_int_set(AW_MY_Y, 0)?Dec 19, 1998, 2:14am
Not a lot of code there bud. Anyway, let me ask some questions.
How do you know that the strstr is working and it is actually executing the aw_int_set? Have you added a printf or something inside the if statement. Check the return codes of both calls. The doc doesn't actually say that it returns a error code. It just says that it returns an int which maybe an error code. [View Quote] > if (strstr (aw_string (AW_CHAT_MESSAGE), "bot-ground")) { > aw_int_set (AW_MY_Y, 0); > aw_state_change (); > } > [View Quote] aw_int_set(AW_MY_Y, 0)?Dec 21, 1998, 1:32pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> There is not much I can do then. <p>One approach is to start to remove code until your program ends up very simple. Once simple it becomes easy to debug. [View Quote] aw_int_set(AW_MY_Y, 0)?Dec 21, 1998, 5:21pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> Are you saying that can right a simple program and get the aw_int_set... not to work? <p>We are all moving our bots around AW using the same mechanisms so I doubt that it is the sdk. <p>So write a little bot program that initially puts your avatar at 10n 10w, then aw_wait a while and try your two lines of code aw_int_set and aw_state_change. If you can prove that this code does not work then we will have something to look at. [View Quote] aw_int_set(AW_MY_Y, 0)?Dec 22, 1998, 2:26pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> According to Roland, every aw_state_change sends all information to the server whether the bot set it or not. So if you only set the AW_MY_Y and to a state change then the bot will move to X=0, Z=0, Y=what you set it to. <p>I use AW_MY_Y in AWCPP when you change the avatars pitch and move forward it angles the direction up into the sky. Works just fine. <p>Josh, did you write the little program yet? [View Quote] Object bounding boxes (attachment originally 43K).Dec 18, 1998, 6:34pm
This is a multi-part message in MIME format.
--------------8399B8B51F31A3940D0B0EBD Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> Per Rolans idea of capturing the object boundaries prior to running the bot, let me offer the attached file. <p>This represents the complete contents of <A HREF="http://objects.activeworlds.com/aw/models">http://objects.activeworlds.com/aw/models</A> downloaded using a cool offline browser tool called WebZip. I used a script to convert them all to .rwx files and, per Eeps advise and excellent web page, used the rwxtract utility created by Andras, to list the name, width, depth and height of each object. <p>So the format of each line is <p> RWXfilename width depth height <p>Best of luck with collision detection. <p>Edward Sumerfield. <br> <br> <br> </html> --------------8399B8B51F31A3940D0B0EBD Content-Type: text/plain; charset=us-ascii; name="RWXObjectConfig.cfg" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="RWXObjectConfig.cfg" anim10x2.rwx 10.00 0.00 4.00 anim3x6.rwx 6.00 0.00 3.00 anim4x2.rwx 4.00 0.00 4.00 anim5x2.rwx 5.00 0.00 4.00 anim8x2.rwx 8.00 0.00 4.00 animate1.rwx 1.00 0.00 1.00 animate2.rwx 2.00 0.00 2.00 animate4.rwx 4.00 0.00 4.00 animate5.rwx 5.00 0.00 4.00 animate8.rwx 8.00 0.00 8.00 animfcr.rwx 0.60 0.00 1.50 animfcr2.rwx 1.00 0.00 1.70 animfcr3.rwx 2.00 0.00 2.00 animfcr4.rwx 2.00 0.00 1.00 anmate10.rwx 10.00 0.00 8.00 arch01.rwx 4.00 2.00 4.00 arch01l.rwx 8.00 4.00 8.00 arch01m.rwx 8.00 4.00 4.00 arch02.rwx 4.00 2.00 4.00 arch02l.rwx 8.00 4.00 8.00 arch02m.rwx 8.00 4.00 4.00 arch03.rwx 4.00 2.00 4.00 arch03l.rwx 8.00 4.00 8.00 arch03m.rwx 8.00 4.00 4.00 arch04.rwx 4.00 2.00 4.00 arch04l.rwx 8.00 4.00 8.00 arch04m.rwx 8.00 4.00 4.00 arch05.rwx 4.00 2.00 4.00 arch05l.rwx 8.00 4.00 8.00 arch05m.rwx 8.00 4.00 4.00 arch06.rwx 4.00 2.00 4.00 arch06l.rwx 8.00 4.00 8.00 arch06m.rwx 8.00 4.00 4.00 arch07.rwx 4.00 2.00 4.00 arch07l.rwx 8.00 4.00 8.00 arch07m.rwx 8.00 4.00 4.00 arch08.rwx 4.00 2.00 4.00 arch08l.rwx 8.00 4.00 8.00 arch08m.rwx 8.00 4.00 4.00 arch09.rwx 4.00 2.00 4.00 arch09l.rwx 8.00 4.00 8.00 arch09m.rwx 8.00 4.00 4.00 arch10.rwx 4.00 2.00 4.00 arch10l.rwx 8.00 4.00 8.00 arch10m.rwx 8.00 4.00 4.00 arch11.rwx 4.00 2.00 4.00 arch11l.rwx 8.00 4.00 8.00 arch11m.rwx 8.00 4.00 4.00 arch12.rwx 4.00 2.00 4.00 arch12l.rwx 8.00 4.00 8.00 arch12m.rwx 8.00 4.00 4.00 arch13.rwx 4.00 2.00 4.00 arch13l.rwx 8.00 4.00 8.00 arch13m.rwx 8.00 4.00 4.00 arch14.rwx 4.00 2.00 4.00 arch14l.rwx 8.00 4.00 8.00 arch14m.rwx 8.00 4.00 4.00 arch15.rwx 4.00 2.00 4.00 arch15l.rwx 8.00 4.00 8.00 arch15m.rwx 8.00 4.00 4.00 arch21.rwx 4.00 2.00 4.00 arch22.rwx 4.00 2.00 4.00 arch23.rwx 4.00 2.00 4.00 arch24.rwx 4.00 2.00 4.00 awn31.rwx 2.00 3.00 1.00 awn32.rwx 2.00 3.00 1.00 awn33.rwx 2.00 3.00 1.00 awn34.rwx 2.00 3.00 1.00 awn41.rwx 2.50 3.00 1.00 awn42.rwx 2.50 3.00 1.00 awn43.rwx 2.50 3.00 1.00 awn44.rwx 2.50 3.00 1.00 awnt00.rwx 2.50 3.00 1.00 bcgrn54.rwx 10000.00 13238.69 9818.49 bed01.rwx 2.02 2.30 1.33 bishopb.rwx 0.77 0.77 1.60 bishopw.rwx 0.77 0.77 1.60 booth.rwx 1.20 1.20 3.00 bridge.rwx 10.00 10.00 2.62 button.rwx 0.30 0.00 0.10 button_b.rwx 0.30 0.00 0.10 button_g.rwx 0.30 0.00 0.10 button_p.rwx 0.30 0.00 0.10 button_r.rwx 0.30 0.00 0.10 c116x160.rwx 1.60 0.00 1.16 c180x122.rwx 1.22 0.00 1.80 c220x82.rwx 0.82 0.00 2.20 cactus01.rwx 0.72 0.30 3.37 cactus02.rwx 0.98 0.42 4.63 cactus03.rwx 1.11 0.47 7.24 cg04_1.rwx 8.00 8.00 0.00 cg04_2.rwx 8.00 8.00 0.00 cg04h_1.rwx 10.00 10.00 0.00 cg04h_2.rwx 10.00 10.00 0.00 cg05_1.rwx 8.00 8.00 0.00 cg05_2.rwx 8.00 8.00 0.00 cg05h_1.rwx 10.00 10.00 0.00 cg05h_2.rwx 10.00 10.00 0.00 cg22_1.rwx 8.00 8.00 0.00 cg22_2.rwx 8.00 8.00 0.00 cg22h_1.rwx 10.00 10.00 0.00 cg22h_2.rwx 10.00 10.00 0.00 chair02.rwx 0.70 1.00 1.05 char2t00.rwx 1.02 0.87 1.00 char3t00.rwx 0.50 0.50 1.00 char4t00.rwx 0.60 0.52 0.90 charat01.rwx 1.05 1.00 1.05 chessb1.rwx 8.00 8.00 0.00 col10m02.rwx 3.75 3.75 10.00 col10m50.rwx 3.75 3.75 10.00 col4m024.rwx 1.50 1.50 4.00 col4m050.rwx 1.50 1.50 4.00 col8m024.rwx 3.00 3.00 8.00 col8m050.rwx 3.00 3.00 8.00 colm4m01.rwx 1.50 1.50 4.00 colm4m02.rwx 1.50 1.50 4.00 colm8m01.rwx 3.00 3.00 8.00 colm8m02.rwx 3.00 3.00 8.00 comp1.rwx 0.57 0.60 0.50 couch02.rwx 2.00 1.00 1.00 couh2t00.rwx 2.02 0.87 1.00 couhat01.rwx 2.34 1.00 1.05 desk01.rwx 1.50 1.00 0.80 dreser01.rwx 2.00 0.60 1.00 drink01.rwx 0.20 0.15 0.23 drink02.rwx 0.20 0.15 0.23 drinkf1.rwx 0.89 0.78 1.20 fall_gd.rwx 900.00 900.00 0.00 fall_gd2.rwx 900.00 900.00 0.00 fall_gn.rwx 900.00 900.00 0.00 fall_gn2.rwx 900.00 900.00 0.00 fence1.rwx 4.00 0.04 2.00 fence2.rwx 4.00 0.04 2.00 firehy1.rwx 0.72 0.53 1.00 flame1.rwx 1.00 0.00 1.50 floor01.rwx 4.00 4.00 0.00 floor01h.rwx 5.00 5.00 0.00 floor02.rwx 4.00 4.00 0.00 floor02h.rwx 5.00 5.00 0.00 floor03.rwx 4.00 4.00 0.00 floor031.rwx 4.00 4.00 0.00 floor032.rwx 4.00 4.00 0.00 floor03h.rwx 5.00 5.00 0.00 floor04.rwx 4.00 4.00 0.00 floor04h.rwx 5.00 5.00 0.00 floor05.rwx 4.00 4.00 0.00 floor05h.rwx 5.00 5.00 0.00 floor06.rwx 4.00 4.00 0.00 floor06h.rwx 5.00 5.00 0.00 floor07.rwx 4.00 4.00 0.00 floor07h.rwx 5.00 5.00 0.00 floor08.rwx 4.00 4.00 0.00 floor08h.rwx 5.00 5.00 0.00 floor09.rwx 4.00 4.00 0.00 floor09h.rwx 5.00 5.00 0.00 floor10.rwx 4.00 4.00 0.00 floor10h.rwx 5.00 5.00 0.00 floor11.rwx 4.00 4.00 0.00 floor11h.rwx 5.00 5.00 0.00 floor12.rwx 4.00 4.00 0.00 floor12h.rwx 5.00 5.00 0.00 floor12l.rwx 4.00 4.00 0.00 floor13.rwx 4.00 4.00 0.00 floor13h.rwx 5.00 5.00 0.00 floor14.rwx 4.00 4.00 0.00 floor14h.rwx 5.00 5.00 0.00 floor15.rwx 4.00 4.00 0.00 floor15h.rwx 5.00 5.00 0.00 floor18.rwx 4.00 4.00 0.00 floor18h.rwx 5.00 5.00 0.00 floor19.rwx 4.00 4.00 0.00 floor19h.rwx 5.00 5.00 0.00 floor20.rwx 4.00 4.00 0.00 floor20h.rwx 5.00 5.00 0.00 floor21.rwx 4.00 4.00 0.00 floor21h.rwx 5.00 5.00 0.00 floor22.rwx 4.00 4.00 0.00 floor22h.rwx 5.00 5.00 0.00 floor23.rwx 4.00 4.00 0.00 floor23h.rwx 5.00 5.00 0.00 floor24.rwx 4.00 4.00 0.00 floor24h.rwx 5.00 5.00 0.00 floor25.rwx 4.00 4.00 0.00 floor25h.rwx 5.00 5.00 0.00 floor26.rwx 4.00 4.00 0.00 floor26h.rwx 5.00 5.00 0.00 floor27.rwx 4.00 4.00 0.00 floor27h.rwx 5.00 5.00 0.00 floor28h.rwx 5.00 5.00 0.00 floor28n.rwx 4.00 4.00 0.00 floor29h.rwx 5.00 5.00 0.00 floor29n.rwx 4.00 4.00 0.00 floor30h.rwx 5.00 5.00 0.00 floor31.rwx 3.00 3.00 0.00 floor31h.rwx 5.00 5.00 0.00 floor31n.rwx 4.00 4.00 0.00 floor32.rwx 3.00 3.00 0.00 floor32h.rwx 5.00 5.00 0.00 floor32n.rwx 4.00 4.00 0.00 floor33.rwx 3.00 3.00 0.00 floor34.rwx 3.00 3.00 0.00 floor35.rwx 3.00 3.00 0.00 floor36.rwx 3.00 3.00 0.00 floor37.rwx 3.00 3.00 0.00 floor38.rwx 3.00 3.00 0.00 floor41.rwx 4.00 4.00 0.00 floor42.rwx 4.00 4.00 0.00 floor43.rwx 4.00 4.00 0.00 floor44.rwx 4.00 4.00 0.00 floor45.rwx 4.00 4.00 0.00 floor46.rwx 4.00 4.00 0.00 floor47.rwx 4.00 4.00 0.00 floor48.rwx 4.00 4.00 0.00 floor50.rwx 4.00 4.00 0.00 floor50h.rwx 5.00 5.00 0.00 flor12lh.rwx 5.00 5.00 0.00 flow11.rwx 1.00 0.00 1.00 flow12.rwx 1.00 0.00 1.00 flow13.rwx 1.00 0.00 1.00 flow14.rwx 1.00 0.00 1.00 flow15.rwx 1.00 0.00 1.00 flow16.rwx 1.00 0.00 2.00 flow17.rwx 1.00 0.00 0.75 flow18.rwx 1.00 0.00 0.75 flow19.rwx 1.00 0.00 0.75 flower1.rwx 1.00 0.00 0.75 flower2.rwx 1.00 0.00 1.00 flower3.rwx 1.00 0.00 1.00 flower4.rwx 1.00 0.00 1.00 flower5.rwx 1.00 0.00 0.50 flower6.rwx 1.00 0.00 1.00 flower7.rwx 1.00 0.00 1.00 flower8.rwx 1.00 0.00 1.00 flower9.rwx 1.00 0.00 2.00 frame1x1.rwx 1.00 0.05 1.00 frgrd-d.rwx 900.00 900.00 0.00 frgrd-n.rwx 900.00 900.00 0.00 gfc01.rwx 0.50 0.35 2.30 ground.rwx 900.00 900.00 0.00 ground2.rwx 900.00 900.00 0.00 groundw.rwx 900.00 900.00 0.00 highlght.rwx 10.00 10.00 10.00 hill01.rwx 10.00 10.00 1.50 hill02.rwx 10.00 10.00 1.50 hill03.rwx 10.00 10.00 1.50 hill04.rwx 10.00 10.00 1.50 hill05.rwx 10.00 10.00 1.50 hill1t01.rwx 10.00 10.00 1.50 hill2t01.rwx 10.00 10.00 1.50 hill3t01.rwx 10.00 10.00 1.50 hill4t01.rwx 10.00 10.00 1.50 hill5t01.rwx 10.00 10.00 1.50 kingb.rwx 0.76 0.76 2.00 kingw.rwx 0.76 0.76 2.00 knightb.rwx 0.66 0.93 1.60 knightw.rwx 0.66 0.93 1.60 lamp01.rwx 0.70 0.70 0.75 landa.rwx 10.00 10.00 0.00 landb.rwx 10.00 10.00 5.00 landc.rwx 10.00 10.00 5.00 landd.rwx 10.00 10.00 5.00 lande.rwx 10.00 10.00 10.00 landf.rwx 10.00 10.00 10.00 landg.rwx 10.00 10.00 10.00 mailbox1.rwx 0.58 0.80 1.68 manhole1.rwx 1.25 1.25 0.00 midispk.rwx 0.75 0.38 0.75 news1.rwx 0.75 0.75 1.88 nuke.rwx 100.00 100.00 86.94 oldshop1.rwx 4.00 4.00 3.00 oldshop2.rwx 4.00 4.00 3.00 oldtree1.rwx 3.00 0.00 5.00 p1101x2.rwx 8.00 0.00 4.00 p1102x2.rwx 8.00 0.00 4.00 p1103x2.rwx 8.00 0.00 4.00 p1104x2.rwx 8.00 0.00 4.00 p1105x2.rwx 8.00 0.00 4.00 p1106x2.rwx 8.00 0.00 4.00 p1107x2.rwx 8.00 0.00 4.00 p1301x2.rwx 8.00 0.00 4.00 p1302x2.rwx 8.00 0.00 4.00 p1303x2.rwx 8.00 0.00 4.00 p1304x2.rwx 8.00 0.00 4.00 p1305x2.rwx 8.00 0.00 4.00 p1306x2.rwx 8.00 0.00 4.00 p1307gx2.rwx 8.00 0.00 4.00 p1307x2.rwx 8.00 0.00 4.00 p45s01.rwx 4.00 0.00 4.00 p45s02.rwx 4.00 0.00 4.00 p45s03.rwx 4.00 0.00 4.00 p45s04.rwx 4.00 0.00 4.00 p45s05.rwx 4.00 0.00 4.00 p45s06.rwx 4.00 0.00 4.00 p45s07.rwx 4.00 0.00 4.00 p45s08.rwx 4.00 0.00 4.00 p45s09.rwx 4.00 0.00 4.00 p45s10.rwx 4.00 0.00 4.00 p45s11.rwx 4.00 0.00 4.00 p45s12.rwx 4.00 0.00 4.00 p45s13.rwx 4.00 0.00 4.00 p45s14.rwx 4.00 0.00 4.00 p45s15.rwx 4.00 0.00 4.00 p45s18.rwx 4.00 0.00 4.00 p45s19.rwx 4.00 0.00 4.00 p45s20.rwx 4.00 0.00 4.00 p45s21.rwx 4.00 0.00 4.00 p45s22.rwx 4.00 0.00 4.00 p45s23.rwx 4.00 0.00 4.00 p45s24.rwx 4.00 0.00 4.00 p45s25.rwx 4.00 0.00 4.00 p45s26.rwx 4.00 0.00 4.00 p45s27.rwx 4.00 0.00 4.00 p45s28.rwx 4.00 0.00 4.00 p45s29.rwx 4.00 0.00 4.00 p45s30.rwx 4.00 0.00 4.00 p45s31.rwx 4.00 0.00 4.00 p45s32.rwx 4.00 0.00 4.00 pan1101.rwx 4.00 0.00 4.00 pan1102.rwx 4.00 0.00 4.00 pan1103.rwx 4.00 0.00 4.00 pan1104.rwx 4.00 0.00 4.00 pan1105.rwx 4.00 0.00 4.00 pan1106.rwx 4.00 0.00 4.00 pan1107.rwx 4.00 0.00 4.00 pan1201.rwx 4.00 0.00 4.00 pan1202.rwx 4.00 0.00 4.00 pan1203.rwx 4.00 0.00 4.00 pan1204.rwx 4.00 0.00 4.00 pan1205.rwx 4.00 0.00 4.00 pan1206.rwx 4.00 0.00 4.00 pan1207.rwx 4.00 0.00 4.00 pan1301.rwx 4.00 0.00 4.00 pan1302.rwx 4.00 0.00 4.00 pan1303.rwx 4.00 0.00 4.00 pan1304.rwx 4.00 0.00 4.00 pan1305.rwx 4.00 0.00 4.00 pan1306.rwx 4.00 0.00 4.00 pan1307.rwx 4.00 0.00 4.00 pan1307g.rwx 4.00 0.00 4.00 pan1404.rwx 4.00 0.00 4.00 pan1405.rwx 4.00 0.00 4.00 pan1406.rwx 4.00 0.00 4.00 pan1407.rwx 4.00 0.00 4.00 pan1408.rwx 4.00 0.00 4.00 pan1409.rwx 4.00 0.00 4.00 pan2101.rwx 3.00 0.22 3.00 pan2102.rwx 3.00 0.22 3.00 pan2103.rwx 3.00 0.22 3.00 pan2104.rwx 3.00 0.22 3.00 pan2105.rwx 3.00 0.22 3.00 pan2201.rwx 3.00 0.00 3.00 pan2202.rwx 3.00 0.00 3.00 pan2203.rwx 3.00 0.00 3.00 pan2204.rwx 3.00 0.00 3.00 pan2205.rwx 3.00 0.00 3.00 pan2301.rwx 3.00 0.00 3.00 pan2302.rwx 3.00 0.00 3.00 pan2303.rwx 3.00 0.00 3.00 pan2304.rwx 3.00 0.00 3.00 pan2305.rwx 3.00 0.00 3.00 pan3101.rwx 3.00 0.22 3.00 pan3102.rwx 3.00 0.22 3.00 pan3103.rwx 3.00 0.22 3.00 pan3104.rwx 3.00 0.22 3.00 pan3201.rwx 3.00 0.00 3.00 pan3202.rwx 3.00 0.00 3.00 pan3203.rwx 3.00 0.15 3.00 pan3204.rwx 3.00 0.15 3.00 pan3301.rwx 3.00 0.00 3.00 pan3302.rwx 3.00 0.00 3.00 pan3302g.rwx 3.00 0.00 3.00 pan3303.rwx 3.00 0.00 3.00 pan3304.rwx 3.00 0.00 3.00 parch01.rwx 4.00 0.00 4.00 parch02.rwx 4.00 0.00 4.00 parch03.rwx 4.00 0.00 4.00 parch04.rwx 4.00 0.00 4.00 parch05.rwx 4.00 0.00 4.00 parch06.rwx 4.00 0.00 4.00 parch07.rwx 4.00 0.00 4.00 parch08.rwx 4.00 0.00 4.00 parch09.rwx 4.00 0.00 4.00 parch10.rwx 4.00 0.00 4.00 parch11.rwx 4.00 0.00 4.00 parch12.rwx 4.00 0.00 4.00 parch13.rwx 4.00 0.00 4.00 parch14.rwx 4.00 0.00 4.00 parch15.rwx 4.00 0.00 4.00 parch18.rwx 4.00 0.00 4.00 parch19.rwx 4.00 0.00 4.00 parch20.rwx 4.00 0.00 4.00 parch21.rwx 4.00 0.00 4.00 parch22.rwx 4.00 0.00 4.00 parch23.rwx 4.00 0.00 4.00 parch24.rwx 4.00 0.00 4.00 parch25.rwx 4.00 0.00 4.00 parch26.rwx 4.00 0.00 4.00 parch27.rwx 4.00 0.00 4.00 parch28.rwx 4.00 0.00 4.00 parch29.rwx 4.00 0.00 4.00 parch30.rwx 4.00 0.00 4.00 parch31.rwx 4.00 0.00 4.00 parch32.rwx 4.00 0.00 4.00 pawnb.rwx 0.53 0.53 1.00 pawnw.rwx 0.53 0.53 1.00 pcmag1.rwx 2.00 0.00 3.00 pd01.rwx 4.00 0.00 4.00 pd02.rwx 4.00 0.00 4.00 pd03.rwx 4.00 0.00 4.00 pd04.rwx 4.00 0.00 4.00 pd05.rwx 4.00 0.00 4.00 pd06.rwx 4.00 0.00 4.00 pd07.rwx 4.00 0.00 4.00 pd08.rwx 4.00 0.00 4.00 pd09.rwx 4.00 0.00 4.00 pd10.rwx 4.00 0.00 4.00 pd11.rwx 4.00 0.00 4.00 pd12.rwx 4.00 0.00 4.00 pd13.rwx 4.00 0.00 4.00 pd14.rwx 4.00 0.00 4.00 pd15.rwx 4.00 0.00 4.00 pd18.rwx 4.00 0.00 4.00 pd19.rwx 4.00 0.00 4.00 pd20.rwx 4.00 0.00 4.00 pd21.rwx 4.00 0.00 4.00 pd22.rwx 4.00 0.00 4.00 pd23.rwx 4.00 0.00 4.00 pd24.rwx 4.00 0.00 4.00 pd25.rwx 4.00 0.00 4.00 pd26.rwx 4.00 0.00 4.00 pd27.rwx 4.00 0.00 4.00 pd28.rwx 4.00 0.00 4.00 pd29.rwx 4.00 0.00 4.00 pd30.rwx 4.00 0.00 4.00 pd31.rwx 4.00 0.00 4.00 pd32.rwx 4.00 0.00 4.00 pianot00.rwx 1.50 0.65 1.32 pibnt00.rwx 1.00 0.50 0.50 pict1.rwx 3.00 0.10 2.25 pict2.rwx 2.25 0.10 2.25 pict3.rwx 2.25 0.10 3.00 pict4.rwx 1.50 0.05 1.12 pict5.rwx 1.12 0.05 1.12 pict6.rwx 1.12 0.05 1.50 pole1m.rwx 0.25 0.22 1.00 pole1m02.rwx 0.25 0.25 1.00 pole1m03.rwx 1.00 0.25 0.25 pole2m.rwx 0.25 0.22 2.00 pole2m02.rwx 0.25 0.25 2.00 pole2m03.rwx 2.00 0.25 0.25 pole4m.rwx 0.25 0.22 4.00 pole4m02.rwx 0.25 0.25 4.00 pole4m03.rwx 4.00 0.25 0.25 pot1.rwx 1.00 1.00 0.70 pot3.rwx 1.00 1.00 0.70 pot6.rwx 0.68 0.68 0.75 pp01.rwx 4.00 0.00 4.00 pp01_h.rwx 5.00 0.00 4.00 pp01l.rwx 8.00 0.00 8.00 pp01l_h.rwx 10.00 0.00 8.00 pp01m.rwx 8.00 0.00 4.00 pp01m_h.rwx 10.00 0.00 4.00 pp02.rwx 4.00 0.00 4.00 pp02_h.rwx 5.00 0.00 4.00 pp02l.rwx 8.00 0.00 8.00 pp02l_h.rwx 10.00 0.00 8.00 pp02m.rwx 8.00 0.00 4.00 pp02m_h.rwx 10.00 0.00 4.00 pp03.rwx 4.00 0.00 4.00 pp03_h.rwx 5.00 0.00 4.00 pp03l.rwx 8.00 0.00 8.00 pp03l_h.rwx 10.00 0.00 8.00 pp03m.rwx 8.00 0.00 4.00 pp03m_h.rwx 10.00 0.00 4.00 pp04.rwx 4.00 0.00 4.00 pp04_h.rwx 5.00 0.00 4.00 pp04l.rwx 8.00 0.00 8.00 pp04l_h.rwx 10.00 0.00 8.00 pp04m.rwx 8.00 0.00 4.00 pp04m_h.rwx 10.00 0.00 4.00 pp05.rwx 4.00 0.00 4.00 pp05_h.rwx 5.00 0.00 4.00 pp05l.rwx 8.00 0.00 8.00 pp05l_h.rwx 10.00 0.00 8.00 pp05m.rwx 8.00 0.00 4.00 pp05m_h.rwx 10.00 0.00 4.00 pp06.rwx 4.00 0.00 4.00 pp06_h.rwx 5.00 0.00 4.00 pp06l.rwx 8.00 0.00 8.00 pp06l_h.rwx 10.00 0.00 8.00 pp06m.rwx 8.00 0.00 4.00 pp06m_h.rwx 10.00 0.00 4.00 pp07.rwx 4.00 0.00 4.00 pp07_h.rwx 5.00 0.00 4.00 pp07l.rwx 8.00 0.00 8.00 pp07l_h.rwx 10.00 0.00 8.00 pp07m.rwx 8.00 0.00 4.00 pp07m_h.rwx 10.00 0.00 4.00 pp08.rwx 4.00 0.00 4.00 pp08_h.rwx 5.00 0.00 4.00 pp08l.rwx 8.00 0.00 8.00 pp08l_h.rwx 10.00 0.00 8.00 pp08m.rwx 8.00 0.00 4.00 pp08m_h.rwx 10.00 0.00 4.00 pp09.rwx 4.00 0.00 4.00 pp09_h.rwx 5.00 0.00 4.00 pp09l.rwx 8.00 0.00 8.00 pp09l_h.rwx 10.00 0.00 8.00 pp09m.rwx 8.00 0.00 4.00 pp09m_h.rwx 10.00 0.00 4.00 pp10.rwx 4.00 0.00 4.00 pp10_h.rwx 5.00 0.00 4.00 pp10l.rwx 8.00 0.00 8.00 pp10l_h.rwx 10.00 0.00 8.00 pp10m.rwx 8.00 0.00 4.00 pp10m_h.rwx 10.00 0.00 4.00 pp11.rwx 4.00 0.00 4.00 pp11_h.rwx 5.00 0.00 4.00 pp11l.rwx 8.00 0.00 8.00 pp11l_h.rwx 10.00 0.00 8.00 pp11m.rwx 8.00 0.00 4.00 pp11m_h.rwx 10.00 0.00 4.00 pp12.rwx 4.00 0.00 4.00 pp12_h.rwx 5.00 0.00 4.00 pp12l.rwx 8.00 0.00 8.00 pp12l_h.rwx 10.00 0.00 8.00 pp12m.rwx 8.00 0.00 4.00 pp12m_h.rwx 10.00 0.00 4.00 pp13.rwx 4.00 0.00 4.00 pp13_h.rwx 5.00 0.00 4.00 pp13l.rwx 8.00 0.00 8.00 pp13l_h.rwx 10.00 0.00 8.00 pp13m.rwx 8.00 0.00 4.00 pp13m_h.rwx 10.00 0.00 4.00 pp14.rwx 4.00 0.00 4.00 pp14_h.rwx 5.00 0.00 4.00 pp14l.rwx 8.00 0.00 8.00 pp14l_h.rwx 10.00 0.00 8.00 pp14m.rwx 8.00 0.00 4.00 pp14m_h.rwx 10.00 0.00 4.00 pp15.rwx 4.00 0.00 4.00 pp15_h.rwx 5.00 0.00 4.00 pp15l.rwx 8.00 0.00 8.00 pp15l_h.rwx 10.00 0.00 8.00 pp15m.rwx 8.00 0.00 4.00 pp15m_h.rwx 10.00 0.00 4.00 pp16.rwx 4.00 0.00 4.00 pp16_h.rwx 5.00 0.00 4.00 pp16l.rwx 8.00 0.00 8.00 pp16l_h.rwx 10.00 0.00 8.00 pp16m.rwx 8.00 0.00 4.00 pp16m_h.rwx 10.00 0.00 4.00 pp17.rwx 4.00 0.00 4.00 pp17_h.rwx 5.00 0.00 4.00 pp17l.rwx 8.00 0.00 8.00 pp17l_h.rwx 10.00 0.00 8.00 pp17m.rwx 8.00 0.00 4.00 pp17m_h.rwx 10.00 0.00 4.00 pp18.rwx 4.00 0.00 4.00 pp18_h.rwx 5.00 0.00 4.00 pp18l.rwx 8.00 0.00 8.00 pp18l_h.rwx 10.00 0.00 8.00 pp18m.rwx 8.00 0.00 4.00 pp18m_h.rwx 10.00 0.00 4.00 pp19.rwx 4.00 0.00 4.00 pp19_h.rwx 5.00 0.00 4.00 pp19l.rwx 8.00 0.00 8.00 pp19l_h.rwx 10.00 0.00 8.00 pp19m.rwx 8.00 0.00 4.00 pp19m_h.rwx 10.00 0.00 4.00 pp20.rwx 4.00 0.00 4.00 pp20_h.rwx 5.00 0.00 4.00 pp20l.rwx 8.00 0.00 8.00 pp20l_h.rwx 10.00 0.00 8.00 pp20m.rwx 8.00 0.00 4.00 pp20m_h.rwx 10.00 0.00 4.00 pp21.rwx 4.00 0.00 4.00 pp21_h.rwx 5.00 0.00 4.00 pp21l.rwx 8.00 0.00 8.00 pp21l_h.rwx 10.00 0.00 8.00 pp21m.rwx 8.00 0.00 4.00 pp21m_h.rwx 10.00 0.00 4.00 pp22.rwx 4.00 0.00 4.00 pp22_h.rwx 5.00 0.00 4.00 pp22l.rwx 8.00 0.00 8.00 pp22l_h.rwx 10.00 0.00 8.00 pp22m.rwx 8.00 0.00 4.00 pp22m_h.rwx 10.00 0.00 4.00 pp23.rwx 4.00 0.00 4.00 pp23_h.rwx 5.00 0.00 4.00 pp23l.rwx 8.00 0.00 8.00 pp23l_h.rwx 10.00 0.00 8.00 pp23m.rwx 8.00 0.00 4.00 pp23m_h.rwx 10.00 0.00 4.00 pp24.rwx 4.00 0.00 4.00 pp24_h.rwx 5.00 0.00 4.00 pp24l.rwx 8.00 0.00 8.00 pp24l_h.rwx 10.00 0.00 8.00 pp24m.rwx 8.00 0.00 4.00 pp24m_h.rwx 10.00 0.00 4.00 pp25.rwx 4.00 0.00 4.00 pp25_h.rwx 5.00 0.00 4.00 pp25l.rwx 8.00 0.00 8.00 pp25l_h.rwx 10.00 0.00 8.00 pp25m.rwx 8.00 0.00 4.00 pp25m_h.rwx 10.00 0.00 4.00 pp26.rwx 4.00 0.00 4.00 pp26_h.rwx 5.00 0.00 4.00 pp26l.rwx 8.00 0.00 8.00 pp26l_h.rwx 10.00 0.00 8.00 pp26m.rwx 8.00 0.00 4.00 pp26m_h.rwx 10.00 0.00 4.00 pp27.rwx 4.00 0.00 4.00 pp27_h.rwx 5.00 0.00 4.00 pp27l.rwx 8.00 0.00 8.00 pp27l_h.rwx 10.00 0.00 8.00 pp27m.rwx 8.00 0.00 4.00 pp27m_h.rwx 10.00 0.00 4.00 pp28.rwx 4.00 0.00 4.00 pp28_h.rwx 5.00 0.00 4.00 pp28l.rwx 8.00 0.00 8.00 pp28l_h.rwx 10.00 0.00 8.00 pp28m.rwx 8.00 0.00 4.00 pp28m_h.rwx 10.00 0.00 4.00 pp29.rwx 4.00 0.00 4.00 pp29_h.rwx 5.00 0.00 4.00 pp29l.rwx 8.00 0.00 8.00 pp29l_h.rwx 10.00 0.00 8.00 pp29m.rwx 8.00 0.00 4.00 pp29m_h.rwx 10.00 0.00 4.00 pp30.rwx 4.00 0.00 4.00 pp30_h.rwx 5.00 0.00 4.00 pp30l.rwx 8.00 0.00 8.00 pp30l_h.rwx 10.00 0.00 8.00 pp30m.rwx 8.00 0.00 4.00 pp30m_h.rwx 10.00 0.00 4.00 pp31.rwx 4.00 0.00 4.00 pp31_h.rwx 5.00 0.00 4.00 pp31l.rwx 8.00 0.00 8.00 pp31l_h.rwx 10.00 0.00 8.00 pp31m.rwx 8.00 0.00 4.00 pp31m_h.rwx 10.00 0.00 4.00 pp32.rwx 4.00 0.00 4.00 pp32_h.rwx 5.00 0.00 4.00 pp32l.rwx 8.00 0.00 8.00 pp32l_h.rwx 10.00 0.00 8.00 pp32m.rwx 8.00 0.00 4.00 pp32m_h.rwx 10.00 0.00 4.00 pp50.rwx 4.00 0.00 4.00 pp50_h.rwx 5.00 0.00 4.00 pp50l.rwx 8.00 0.00 8.00 pp50l_h.rwx 10.00 0.00 8.00 pp50m.rwx 8.00 0.00 4.00 pp50m_h.rwx 10.00 0.00 4.00 ppstn08.rwx 8.00 0.00 8.00 ppstn10.rwx 10.00 0.00 8.00 psign1.rwx 1.50 0.20 2.00 psign3.rwx 2.00 1.00 1.00 ptv1.rwx 2.00 2.00 2.00 ptv1t00.rwx 0.65 0.42 0.55 ptv2bs.rwx 4.00 0.75 4.00 ptv2t00.rwx 1.35 0.70 1.60 pw01.rwx 4.00 0.00 4.00 pw02.rwx 4.00 0.00 4.00 pw03.rwx 4.00 0.00 4.00 pw04.rwx 4.00 0.00 4.00 pw05.rwx 4.00 0.00 4.00 pw06.rwx 4.00 0.00 4.00 pw07.rwx 4.00 0.00 4.00 pw08.rwx 4.00 0.00 4.00 pw09.rwx 4.00 0.00 4.00 pw10.rwx 4.00 0.00 4.00 pw11.rwx 4.00 0.00 4.00 pw12.rwx 4.00 0.00 4.00 pw13.rwx 4.00 0.00 4.00 pw14.rwx 4.00 0.00 4.00 pw15.rwx 4.00 0.00 4.00 pw18.rwx 4.00 0.00 4.00 pw19.rwx 4.00 0.00 4.00 pw20.rwx 4.00 0.00 4.00 pw21.rwx 4.00 0.00 4.00 pw22.rwx 4.00 0.00 4.00 pw23.rwx 4.00 0.00 4.00 pw24.rwx 4.00 0.00 4.00 pw25.rwx 4.00 0.00 4.00 pw26.rwx 4.00 0.00 4.00 pw27.rwx 4.00 0.00 4.00 pw28.rwx 4.00 0.00 4.00 pw29.rwx 4.00 0.00 4.00 pw30.rwx 4.00 0.00 4.00 pw31.rwx 4.00 0.00 4.00 pw32.rwx 4.00 0.00 4.00 queenb.rwx 0.74 0.74 1.80 queenw.rwx 0.74 0.74 1.80 rail1.rwx 4.00 0.00 1.00 rail1t00.rwx 4.00 0.10 1.00 rail2.rwx 4.00 0.00 1.50 rail2t00.rwx 4.00 0.10 1.00 rcube.rwx 1.75 1.75 1.75 rf4504hl.rwx 3.00 6.00 3.00 rf4504hr.rwx 3.00 6.00 3.00 rf4505hl.rwx 3.00 6.00 3.00 rf4505hr.rwx 3.00 6.00 3.00 rf4506hl.rwx 3.00 6.00 3.00 rf4506hr.rwx 3.00 6.00 3.00 rf4507hl.rwx 3.00 6.00 3.00 rf4507hr.rwx 3.00 6.00 3.00 rf4508hl.rwx 3.00 6.00 3.00 rf4508hr.rwx 3.00 6.00 3.00 rock1.rwx 1.00 1.62 0.30 rock10.rwx 7.78 6.41 7.32 rock11.rwx 5.31 8.61 1.56 rock12.rwx 1.89 8.58 5.30 rock2.rwx 1.37 1.07 0.99 rock3.rwx 1.11 1.11 1.11 rock4.rwx 1.17 1.08 1.10 rock5.rwx 3.63 3.72 1.74 rock6.rwx 1.90 3.57 3.41 rock7.rwx 5.71 6.49 5.62 rock8.rwx 5.04 5.11 5.11 rock9.rwx 7.67 8.48 6.63 rofhc04h.rwx 10.00 10.00 5.00 rofhc05h.rwx 10.00 10.00 5.00 rofhc07h.rwx 8.00 8.00 4.00 rofhc08h.rwx 10.00 10.00 5.00 rofhc10h.rwx 10.00 10.00 5.00 rofhc21h.rwx 10.00 10.00 5.00 rofhc30h.rwx 10.00 10.00 5.00 rofhc32h.rwx 10.00 10.00 5.00 rofhc35h.rwx 10.00 10.00 5.00 roof04.rwx 4.00 4.00 4.00 roof04h.rwx 5.00 5.00 5.00 roof04m.rwx 4.00 8.00 4.00 roof04mh.rwx 5.00 10.00 5.00 roof05.rwx 4.00 4.00 4.00 roof05h.rwx 5.00 5.00 5.00 roof05m.rwx 4.00 8.00 4.00 roof05mh.rwx 5.00 10.00 5.00 roof07.rwx 4.00 8.00 4.00 roof07eb.rwx 4.00 0.00 4.00 roof07et.rwx 4.00 0.00 4.00 roof07h.rwx 5.00 10.00 5.00 roof07s.rwx 4.00 4.00 4.00 roof07sh.rwx 5.00 5.00 5.00 roof08.rwx 4.00 4.00 4.00 roof08h.rwx 5.00 5.00 5.00 roof08m.rwx 4.00 8.00 4.00 roof08mh.rwx 5.00 10.00 5.00 roof10.rwx 4.00 4.00 4.00 roof10h.rwx 5.00 5.00 5.00 roof10m.rwx 4.00 8.00 4.00 roof10mh.rwx 5.00 10.00 5.00 roof2001.rwx 3.00 3.00 0.00 roof2002.rwx 3.00 3.00 0.00 roof2003.rwx 3.00 3.00 0.00 roof21.rwx 4.00 4.00 4.00 roof2101.rwx 3.00 0.00 3.00 roof2102.rwx 3.00 0.00 3.00 roof21h.rwx 5.00 5.00 5.00 roof21m.rwx 4.00 8.00 4.00 roof21mh.rwx 5.00 10.00 5.00 roof2202.rwx 3.00 0.00 3.00 roof2601.rwx 3.00 0.00 3.00 roof2602.rwx 3.00 0.00 3.00 roof2603.rwx 3.00 0.00 3.00 roof2604.rwx 3.00 0.00 3.00 roof2605.rwx 3.00 0.00 3.00 roof2701.rwx 3.00 0.00 3.00 roof2702.rwx 3.00 0.00 3.00 roof2703.rwx 3.00 0.00 3.00 roof2704.rwx 3.00 0.00 3.00 roof2705.rwx 3.00 0.00 3.00 roof30.rwx 4.00 4.00 4.00 roof30h.rwx 5.00 5.00 5.00 roof30m.rwx 4.00 8.00 4.00 roof30mh.rwx 5.00 10.00 5.00 roof3101.rwx 3.00 0.00 3.00 roof3102.rwx 3.00 0.00 3.00 roof3103.rwx 3.00 0.00 3.00 roof3104.rwx 3.00 0.00 3.00 roof32.rwx 4.00 4.00 4.00 roof32h.rwx 5.00 5.00 5.00 roof32m.rwx 4.00 8.00 4.00 roof32mh.rwx 5.00 10.00 5.00 roof35.rwx 4.00 4.00 4.00 roof35h.rwx 5.00 5.00 5.00 roof35m.rwx 4.00 8.00 4.00 roof35mh.rwx 5.00 10.00 5.00 roof41.rwx 4.00 4.00 0.00 roof42.rwx 4.00 4.00 0.00 roof43.rwx 4.00 4.00 0.00 roof4501.rwx 4.00 3.00 4.00 roof4502.rwx 4.00 3.00 4.00 roof4503.rwx 4.00 3.00 4.00 roof4504.rwx 3.00 3.00 3.00 roof4505.rwx 3.00 3.00 3.00 roof4506.rwx 3.00 3.00 3.00 roof4507.rwx 3.00 3.00 3.00 roof4508.rwx 3.00 3.00 3.00 roofc04.rwx 4.00 4.00 4.00 roofc04h.rwx 5.00 5.00 5.00 roofc05.rwx 4.00 4.00 4.00 roofc05h.rwx 5.00 5.00 5.00 roofc07.rwx 4.00 4.00 4.00 roofc07h.rwx 5.00 5.00 5.00 roofc08.rwx 4.00 4.00 4.00 roofc08h.rwx 5.00 5.00 5.00 roofc10.rwx 4.00 4.00 4.00 roofc10h.rwx 5.00 5.00 5.00 roofc21.rwx 4.00 4.00 4.00 roofc21h.rwx 5.00 5.00 5.00 roofc30.rwx 4.00 4.00 4.00 roofc30h.rwx 5.00 5.00 5.00 roofc32.rwx 4.00 4.00 4.00 roofc32h.rwx 5.00 5.00 5.00 roofc35.rwx 4.00 4.00 4.00 roofc35h.rwx 5.00 5.00 5.00 roofel04.rwx 4.00 4.00 4.00 roofel07.rwx 4.00 4.00 4.00 roofel08.rwx 4.00 4.00 4.00 roofel10.rwx 4.00 4.00 4.00 roofel21.rwx 4.00 4.00 4.00 roofel30.rwx 4.00 4.00 4.00 roofel32.rwx 4.00 4.00 4.00 roofel35.rwx 4.00 4.00 4.00 roofer04.rwx 4.00 4.00 4.00 roofer07.rwx 4.00 4.00 4.00 roofer08.rwx 4.00 4.00 4.00 roofer10.rwx 4.00 4.00 4.00 roofer21.rwx 4.00 4.00 4.00 roofer30.rwx 4.00 4.00 4.00 roofer32.rwx 4.00 4.00 4.00 roofer35.rwx 4.00 4.00 4.00 roofhc04.rwx 8.00 8.00 4.00 roofhc05.rwx 8.00 8.00 4.00 roofhc07.rwx 8.00 8.00 4.00 roofhc08.rwx 8.00 8.00 4.00 roofhc10.rwx 8.00 8.00 4.00 roofhc21.rwx 8.00 8.00 4.00 roofhc30.rwx 8.00 8.00 4.00 roofhc32.rwx 8.00 8.00 4.00 roofhc35.rwx 8.00 8.00 4.00 roofhl04.rwx 4.00 8.00 4.00 roofhl07.rwx 4.00 8.00 4.00 roofhl08.rwx 4.00 8.00 4.00 roofhl10.rwx 4.00 8.00 4.00 roofhl21.rwx 4.00 8.00 4.00 roofhl30.rwx 4.00 8.00 4.00 roofhl32.rwx 4.00 8.00 4.00 roofhl35.rwx 4.00 8.00 4.00 roofhr04.rwx 4.00 8.00 4.00 roofhr07.rwx 4.00 8.00 4.00 roofhr08.rwx 4.00 8.00 4.00 roofhr10.rwx 4.00 8.00 4.00 roofhr21.rwx 4.00 8.00 4.00 roofhr30.rwx 4.00 8.00 4.00 roofhr32.rwx 4.00 8.00 4.00 roofhr35.rwx 4.00 8.00 4.00 rookb.rwx 0.72 0.72 1.40 rookw.rwx 0.72 0.72 1.40 rusgrd-d.rwx 900.00 900.00 0.00 rusgrd-n.rwx 900.00 900.00 0.00 sawhorse.rwx 1.00 0.73 0.96 shrub01.rwx 2.00 0.00 2.00 shrub02.rwx 1.00 0.00 1.50 shrub03.rwx 1.00 0.00 1.00 shrub11.rwx 1.00 0.00 2.50 shrub12.rwx 1.00 0.00 1.00 sign1.rwx 1.50 0.20 2.00 sign2.rwx 1.00 0.10 2.45 sign3.rwx 2.00 1.00 1.00 snack01.rwx 0.40 0.00 0.40 snow1.rwx 8.00 8.00 0.50 stair01.rwx 2.00 2.00 2.00 stair01l.rwx 4.00 4.00 4.00 stair01m.rwx 4.00 2.00 2.00 stair02.rwx 2.00 2.00 2.00 stair02l.rwx 4.00 4.00 4.00 stair02m.rwx 4.00 2.00 2.00 stair03.rwx 2.00 2.00 2.00 stair03l.rwx 4.00 4.00 4.00 stair03m.rwx 4.00 2.00 2.00 stair04.rwx 2.00 2.00 2.00 stair04l.rwx 4.00 4.00 4.00 stair04m.rwx 4.00 2.00 2.00 stair05.rwx 2.00 2.00 2.00 stair05l.rwx 4.00 4.00 4.00 stair05m.rwx 4.00 2.00 2.00 stair06.rwx 2.00 2.00 2.00 stair06l.rwx 4.00 4.00 4.00 stair06m.rwx 4.00 2.00 2.00 stair24.rwx 2.00 2.00 2.00 stair24h.rwx 5.00 5.00 4.00 stair24l.rwx 4.00 4.00 4.00 stair24m.rwx 4.00 2.00 2.00 stair24p.rwx 5.00 2.00 2.00 statue1.rwx 3.00 0.00 10.00 statue2.rwx 2.00 1.00 2.00 stlamp1.rwx 0.50 0.50 3.00 stlamp2.rwx 1.60 0.00 3.00 stlmpt00.rwx 0.60 0.60 3.30 stool01.rwx 0.70 0.60 0.40 stool02.rwx 0.70 0.60 0.40 street1.rwx 10.00 10.00 0.10 street2.rwx 10.00 10.00 0.10 street3.rwx 10.00 10.00 1.10 table02.rwx 3.00 1.50 0.70 table1.rwx 2.00 1.00 0.54 tblct00.rwx 1.30 0.53 0.40 tbldt00.rwx 1.80 1.10 0.72 tblet00.rwx 0.70 0.53 0.52 toilet.rwx 0.50 0.70 0.75 torch1.rwx 1.00 0.00 1.50 tport.rwx 3.00 3.00 8.00 trash1.rwx 0.75 0.65 1.00 trash2.rwx 0.97 0.86 1.10 trash3.rwx 0.97 0.86 1.10 trash4.rwx 0.97 0.86 1.10 tree01.rwx 3.88 3.88 5.00 tree02.rwx 3.88 3.88 7.31 tree03.rwx 5.22 5.22 14.07 tree10m.rwx 6.00 0.00 6.00 tree11m.rwx 4.00 0.00 6.00 tree1m.rwx 4.00 0.00 8.00 tree2s.rwx 2.00 0.00 3.00 tree3m.rwx 4.00 0.00 8.00 tree4m.rwx 6.00 0.00 8.00 tree5m.rwx 4.00 0.00 8.00 tree6m.rwx 4.00 0.00 10.00 tree7m.rwx 6.00 0.00 8.00 tree8m.rwx 4.00 0.00 8.00 tree9m.rwx 4.00 0.00 8.00 tv1.rwx 0.65 0.42 0.55 tv1t00.rwx 0.65 0.42 0.55 tv2bs.rwx 2.49 0.10 1.88 tv2t00.rwx 1.35 0.70 1.60 tv3bs.rwx 1.35 0.70 1.60 tvstnd.rwx 1.00 1.00 2.00 umbra01.rwx 5.40 5.40 4.00 unknown.rwx 0.40 0.00 0.20 vase3.rwx 0.59 0.56 0.96 walk001.rwx 8.00 8.00 0.00 walk001h.rwx 10.00 10.00 0.00 walk002.rwx 8.00 8.00 0.00 walk002h.rwx 10.00 10.00 0.00 walk003.rwx 8.00 8.00 0.00 walk003h.rwx 10.00 10.00 0.00 walk004.rwx 8.00 8.00 0.00 walk004h.rwx 10.00 10.00 0.00 walk005.rwx 8.00 8.00 0.00 walk005h.rwx 10.00 10.00 0.00 walk006.rwx 8.00 8.00 0.00 walk006h.rwx 10.00 10.00 0.00 walk007.rwx 8.00 8.00 0.00 walk007h.rwx 10.00 10.00 0.00 walk008.rwx 8.00 8.00 0.00 walk008h.rwx 10.00 10.00 0.00 walk009.rwx 8.00 8.00 0.00 walk009h.rwx 10.00 10.00 0.00 walk010.rwx 8.00 8.00 0.00 walk010h.rwx 10.00 10.00 0.00 walk011.rwx 8.00 8.00 0.00 walk011h.rwx 10.00 10.00 0.00 walk012.rwx 8.00 8.00 0.00 walk012h.rwx 10.00 10.00 0.00 walk013.rwx 8.00 8.00 0.00 walk013h.rwx 10.00 10.00 0.00 walk014.rwx 8.00 8.00 0.00 walk014h.rwx 10.00 10.00 0.00 walk015.rwx 8.00 8.00 0.00 walk015h.rwx 10.00 10.00 0.00 walk018.rwx 8.00 8.00 0.00 walk018h.rwx 10.00 10.00 0.00 walk019.rwx 8.00 8.00 0.00 walk019h.rwx 10.00 10.00 0.00 walk01h.rwx 10.00 10.00 0.00 walk020.rwx 8.00 8.00 0.00 walk020h.rwx 10.00 10.00 0.00 walk021.rwx 8.00 8.00 0.00 walk021h.rwx 10.00 10.00 0.00 walk022.rwx 8.00 8.00 0.00 walk022h.rwx 10.00 10.00 0.00 walk023.rwx 8.00 8.00 0.00 walk023h.rwx 10.00 10.00 0.00 walk024.rwx 8.00 8.00 0.00 walk024h.rwx 10.00 10.00 0.00 walk025.rwx 8.00 8.00 0.00 walk025h.rwx 10.00 10.00 0.00 walk026.rwx 8.00 8.00 0.00 walk026h.rwx 10.00 10.00 0.00 walk027.rwx 8.00 8.00 0.00 walk027h.rwx 10.00 10.00 0.00 walk028.rwx 8.00 8.00 0.00 walk028h.rwx 10.00 10.00 0.00 walk029.rwx 8.00 8.00 0.00 walk029h.rwx 10.00 10.00 0.00 walk031.rwx 8.00 8.00 0.00 walk031h.rwx 10.00 10.00 0.00 walk032.rwx 8.00 8.00 0.00 walk032h.rwx 10.00 10.00 0.00 walk050.rwx 8.00 8.00 0.00 walk050h.rwx 10.00 10.00 0.00 walk06h.rwx 10.00 10.00 0.00 walk07h.rwx 10.00 10.00 0.00 walk1.rwx 8.00 8.00 0.00 walk10.rwx 8.00 8.00 0.00 walk11.rwx 8.00 8.00 0.00 walk12.rwx 8.00 8.00 0.00 walk12h.rwx 10.00 10.00 0.00 walk2.rwx 8.00 8.00 0.00 walk23h.rwx 10.00 10.00 0.00 walk26.rwx 8.00 8.00 0.00 walk3.rwx 8.00 8.00 0.00 walk4.rwx 8.00 8.00 0.00 walk5.rwx 8.00 8.00 0.00 walk6.rwx 8.00 8.00 0.00 walk7.rwx 8.00 8.00 0.00 walk8.rwx 8.00 8.00 0.00 walk9.rwx 8.00 8.00 0.00 wall001.rwx 4.00 0.20 1.00 wall001h.rwx 10.00 0.20 5.00 wall001l.rwx 8.00 0.20 2.00 wall002.rwx 4.00 0.20 1.00 wall002h.rwx 10.00 0.20 5.00 wall002l.rwx 8.00 0.20 2.00 wall003.rwx 4.00 0.20 1.00 wall003h.rwx 10.00 0.20 5.00 wall003l.rwx 8.00 0.20 2.00 wall004.rwx 4.00 0.20 1.00 wall004h.rwx 10.00 0.20 5.00 wall004l.rwx 8.00 0.20 2.00 wall005.rwx 4.00 0.20 1.00 wall005h.rwx 10.00 0.20 5.00 wall005l.rwx 8.00 0.20 2.00 wall006.rwx 4.00 0.20 1.00 wall006h.rwx 10.00 0.20 5.00 wall006l.rwx 8.00 0.20 2.00 wall007.rwx 4.00 0.20 1.00 wall007h.rwx 10.00 0.20 5.00 wall007l.rwx 8.00 0.20 2.00 wall008.rwx 4.00 0.20 1.00 wall008h.rwx 10.00 0.20 5.00 wall008l.rwx 8.00 0.20 2.00 wall009.rwx 4.00 0.20 1.00 wall009h.rwx 10.00 0.20 5.00 wall009l.rwx 8.00 0.20 2.00 wall010.rwx 4.00 0.20 1.00 wall010h.rwx 10.00 0.20 5.00 wall010l.rwx 8.00 0.20 2.00 wall011.rwx 4.00 0.20 1.00 wall011h.rwx 10.00 0.20 5.00 wall011l.rwx 8.00 0.20 2.00 wall012.rwx 4.00 0.20 1.00 wall012h.rwx 10.00 0.20 5.00 wall012l.rwx 8.00 0.20 2.00 wall013.rwx 4.00 0.20 1.00 wall013h.rwx 10.00 0.20 5.00 wall013l.rwx 8.00 0.20 2.00 wall014.rwx 4.00 0.20 1.00 wall014h.rwx 10.00 0.20 5.00 wall014l.rwx 8.00 0.20 2.00 wall015.rwx 4.00 0.20 1.00 wall015h.rwx 10.00 0.20 5.00 wall015l.rwx 8.00 0.20 2.00 wall018.rwx 4.00 0.20 1.00 wall018h.rwx 10.00 0.20 5.00 wall018l.rwx 8.00 0.20 2.00 wall019.rwx 4.00 0.20 1.00 wall019h.rwx 10.00 0.20 5.00 wall019l.rwx 8.00 0.20 2.00 wall020.rwx 4.00 0.20 1.00 wall020h.rwx 10.00 0.20 5.00 wall020l.rwx 8.00 0.20 2.00 wall021.rwx 4.00 0.20 1.00 wall021h.rwx 10.00 0.20 5.00 wall021l.rwx 8.00 0.20 2.00 wall022.rwx 4.00 0.20 1.00 wall022h.rwx 10.00 0.20 5.00 wall022l.rwx 8.00 0.20 2.00 wall023.rwx 4.00 0.20 1.00 wall023h.rwx 10.00 0.20 5.00 wall023l.rwx 8.00 0.20 2.00 wall024.rwx 4.00 0.20 1.00 wall024h.rwx 10.00 0.20 5.00 wall024l.rwx 8.00 0.20 2.00 wall025.rwx 4.00 0.20 1.00 wall025h.rwx 10.00 0.20 5.00 wall025l.rwx 8.00 0.20 2.00 wall026.rwx 4.00 0.20 1.00 wall026h.rwx 10.00 0.20 5.00 wall026l.rwx 8.00 0.20 2.00 wall027.rwx 4.00 0.20 1.00 wall027h.rwx 10.00 0.20 5.00 wall027l.rwx 8.00 0.20 2.00 wall028.rwx 4.00 0.20 1.00 wall028h.rwx 10.00 0.20 5.00 wall028l.rwx 8.00 0.20 2.00 wall029.rwx 4.00 0.20 1.00 wall029h.rwx 10.00 0.20 5.00 wall029l.rwx 8.00 0.20 2.00 wall030.rwx 4.00 0.20 1.00 wall030h.rwx 10.00 0.20 5.00 wall030l.rwx 8.00 0.20 2.00 wall031.rwx 4.00 0.20 1.00 wall031h.rwx 10.00 0.20 5.00 wall031l.rwx 8.00 0.20 2.00 wall032.rwx 4.00 0.20 1.00 wall032h.rwx 10.00 0.20 5.00 wall032l.rwx 8.00 0.20 2.00 wall033.rwx 4.00 0.20 1.00 wall033h.rwx 10.00 0.20 5.00 wall033l.rwx 8.00 0.20 2.00 wall049.rwx 4.00 0.20 1.00 wall049h.rwx 10.00 0.20 4.00 wall049l.rwx 8.00 0.20 2.00 wall050.rwx 4.00 0.20 1.00 wall050h.rwx 10.00 0.20 4.00 wall050l.rwx 8.00 0.20 2.00 wall1.rwx 4.00 0.20 1.00 wall10.rwx 4.00 0.20 1.00 wall101.rwx 4.00 0.20 1.00 wall102.rwx 4.00 0.20 1.00 wall11.rwx 2.00 0.20 1.00 wall12.rwx 2.00 0.20 1.00 wall16.rwx 2.00 0.50 1.00 wall17.rwx 2.00 0.20 1.00 wall18.rwx 2.00 0.20 1.00 wall19.rwx 2.00 0.20 1.00 wall2.rwx 4.00 0.20 1.00 wall21.rwx 4.00 0.50 2.00 wall22.rwx 4.00 0.50 2.00 wall26.rwx 4.00 0.50 2.00 wall27.rwx 4.00 0.50 2.00 wall28.rwx 4.00 0.50 2.00 wall29.rwx 4.00 0.50 2.00 wall3.rwx 4.00 0.20 1.00 wall4.rwx 4.00 0.20 1.00 wall5.rwx 4.00 0.20 1.00 wall6.rwx 4.00 0.20 1.00 wall7.rwx 4.00 0.20 1.00 wallh01.rwx 5.00 0.20 1.00 wallh01l.rwx 10.00 0.20 2.00 wallh02.rwx 5.00 0.20 1.00 wallh02l.rwx 10.00 0.20 2.00 wallh03.rwx 5.00 0.20 1.00 wallh03l.rwx 10.00 0.20 2.00 wallh04.rwx 5.00 0.20 1.00 wallh04l.rwx 10.00 0.20 2.00 wallh05.rwx 5.00 0.20 1.00 wallh05l.rwx 10.00 0.20 2.00 wallh06.rwx 5.00 0.20 1.00 wallh06l.rwx 10.00 0.20 2.00 wallh07.rwx 5.00 0.20 1.00 wallh07l.rwx 10.00 0.20 2.00 wallh08.rwx 5.00 0.20 1.00 wallh08l.rwx 10.00 0.20 2.00 wallh09.rwx 5.00 0.20 1.00 wallh09l.rwx 10.00 0.20 2.00 wallh10.rwx 5.00 0.20 1.00 wallh10l.rwx 10.00 0.20 2.00 wallh11.rwx 5.00 0.20 1.00 wallh11l.rwx 10.00 0.20 2.00 wallh12.rwx 5.00 0.20 1.00 wallh12l.rwx 10.00 0.20 2.00 wallh13.rwx 5.00 0.20 1.00 wallh13l.rwx 10.00 0.20 2.00 wallh14.rwx 5.00 0.20 1.00 wallh14l.rwx 10.00 0.20 2.00 wallh15.rwx 5.00 0.20 1.00 wallh15l.rwx 10.00 0.20 2.00 wallh18.rwx 5.00 0.20 1.00 wallh18l.rwx 10.00 0.20 2.00 wallh19.rwx 5.00 0.20 1.00 wallh19l.rwx 10.00 0.20 2.00 wallh20.rwx 5.00 0.20 1.00 wallh20l.rwx 10.00 0.20 2.00 wallh21.rwx 5.00 0.20 1.00 wallh21l.rwx 10.00 0.20 2.00 wallh22.rwx 5.00 0.20 1.00 wallh22l.rwx 10.00 0.20 2.00 wallh23.rwx 5.00 0.20 1.00 wallh23l.rwx 10.00 0.20 2.00 wallh24.rwx 5.00 0.20 1.00 wallh24l.rwx 10.00 0.20 2.00 wallh25.rwx 5.00 0.20 1.00 wallh25l.rwx 10.00 0.20 2.00 wallh26.rwx 5.00 0.20 1.00 wallh26l.rwx 10.00 0.20 2.00 wallh27.rwx 5.00 0.20 1.00 wallh27l.rwx 10.00 0.20 2.00 wallh28.rwx 5.00 0.20 1.00 wallh28l.rwx 10.00 0.20 2.00 wallh29.rwx 5.00 0.20 1.00 wallh29l.rwx 10.00 0.20 2.00 wallh30.rwx 5.00 0.20 1.00 wallh30l.rwx 10.00 0.20 2.00 wallh31.rwx 5.00 0.20 1.00 wallh31l.rwx 10.00 0.20 2.00 wallh32.rwx 5.00 0.20 1.00 wallh32l.rwx 10.00 0.20 2.00 wallh33.rwx 5.00 0.20 1.00 wallh33l.rwx 10.00 0.20 2.00 wallh49.rwx 5.00 0.20 1.00 wallh49l.rwx 10.00 0.20 2.00 wallh50.rwx 5.00 0.20 1.00 wallh50l.rwx 10.00 0.20 2.00 wat01h.rwx 10.00 10.00 0.09 wat5at00.rwx 10.00 10.00 0.09 water2s.rwx 2.00 2.00 0.09 water2tr.rwx 2.00 2.00 0.09 water4s.rwx 4.00 4.00 0.09 water4tr.rwx 4.00 4.00 0.09 water8s.rwx 8.00 8.00 0.09 water8tl.rwx 8.00 8.00 0.09 water8tr.rwx 8.00 8.00 0.09 waterf1.rwx 1.50 0.20 1.09 waterf2.rwx 1.50 0.35 2.09 wavspk.rwx 0.50 0.25 0.50 wfalls1.rwx 8.00 0.00 4.00 wfalls2.rwx 10.00 0.00 4.00 wfalls2l.rwx 10.00 0.00 8.00 xground.rwx 900.00 900.00 0.00 zabb1.rwx 10.00 0.84 8.22 zalsign.rwx 9.07 0.24 4.70 zaw1.rwx 0.80 0.07 2.50 zaw12.rwx 6.00 0.10 4.51 zaw2.rwx 6.00 0.10 4.51 zaw4.rwx 0.60 0.60 2.60 zaw5.rwx 4.00 0.92 3.28 zaw6.rwx 0.80 2.96 2.96 zaw7.rwx 3.00 0.05 2.25 zbeam1.rwx 0.90 0.00 6.90 zca_add1.rwx 7.96 3.08 6.00 zcart.rwx 3.00 0.00 1.50 zcomp1.rwx 5.00 5.00 0.00 zdaap01.rwx 7.25 4.78 8.00 zdeck1.rwx 3.00 9.75 0.00 zdesk1.rwx 5.00 1.50 0.84 zdgdesk.rwx 2.00 1.00 0.80 zdgoff.rwx 8.00 8.00 8.00 zdome1.rwx 6.90 6.90 3.45 zearth1.rwx 1.00 0.00 1.00 zetac.rwx 1.50 0.00 1.50 zfw16x12.rwx 16.00 0.00 12.00 zfw32x24.rwx 32.00 0.00 24.00 zgate1.rwx 16.00 6.00 12.00 zglobe1.rwx 4.00 0.00 5.00 zgzcent1.rwx 5.00 5.00 0.00 zgzcent2.rwx 14.50 14.50 0.00 zhall1.rwx 8.00 8.00 8.00 zics.rwx 1.00 0.00 1.80 ziggy4.rwx 30.00 30.00 11.25 ziin.rwx 0.80 0.00 1.60 ziksk.rwx 0.84 4.00 2.05 zilawn.rwx 40.00 40.00 1.00 zim1.rwx 0.75 22.20 1.75 zin0.rwx 2.00 0.00 4.00 zin1.rwx 2.00 0.00 4.00 zin2.rwx 2.00 0.00 4.00 zin3.rwx 2.00 0.00 4.00 zin4.rwx 2.00 0.00 4.00 zin5.rwx 2.00 0.00 4.00 zinn.rwx 22.40 7.20 14.40 zins.rwx 22.40 0.00 14.53 zips.rwx 1.00 0.00 1.80 zisi.rwx 0.77 5.00 1.04 zisp0.rwx 1.00 0.00 1.00 zisp1.rwx 1.00 0.00 1.00 zisp2.rwx 1.00 0.00 1.00 zisp3.rwx 1.00 0.00 1.00 zisp4.rwx 1.00 0.00 1.00 zisp5.rwx 1.00 0.00 1.00 zisp6.rwx 1.00 0.00 1.00 zisp7.rwx 1.00 0.00 1.00 zisp8.rwx 1.00 0.00 1.00 zisp9.rwx 1.00 0.00 1.00 zispa.rwx 1.00 0.00 1.00 zispb.rwx 1.00 0.00 1.00 zitd.rwx 2.00 0.00 3.05 zite.rwx 2.00 2.00 6.80 zitu.rwx 2.00 0.00 3.05 ziwn.rwx 0.80 0.00 1.60 zjbase1.rwx 16.00 32.00 4.00 zjbase2.rwx 16.00 32.00 4.00 zjbasec.rwx 4.00 12.00 4.00 zjbasee.rwx 4.00 12.00 4.00 zjbasep.rwx 1.00 1.00 3.00 zjbceil.rwx 12.00 12.00 0.00 zjbflor.rwx 12.00 12.00 0.00 zjbord11.rwx 4.00 4.00 0.00 zjbord12.rwx 4.00 4.00 0.00 zjbord13.rwx 4.00 4.00 0.00 zjbord14.rwx 4.00 4.00 0.00 zjbord15.rwx 4.00 4.00 0.00 zjbord21.rwx 4.00 4.00 0.00 zjbord22.rwx 4.00 4.00 0.00 zjbord23.rwx 4.00 4.00 0.00 zjbord24.rwx 4.00 4.00 0.00 zjbord25.rwx 4.00 4.00 0.00 zjbord31.rwx 4.00 4.00 0.00 zjbord32.rwx 4.00 4.00 0.00 zjbord33.rwx 4.00 4.00 0.00 zjbord34.rwx 4.00 4.00 0.00 zjbord35.rwx 4.00 4.00 0.00 zjbord41.rwx 4.00 4.00 0.00 zjbord42.rwx 4.00 4.00 0.00 zjbord43.rwx 4.00 4.00 0.00 zjbord44.rwx 4.00 4.00 0.00 zjbord45.rwx 4.00 4.00 0.00 zjbord51.rwx 4.00 4.00 0.00 zjbord52.rwx 4.00 4.00 0.00 zjbord53.rwx 4.00 4.00 0.00 zjbord54.rwx 4.00 4.00 0.00 zjbord55.rwx 4.00 4.00 0.00 zjcard1.rwx 0.90 0.02 1.60 zjcceil.rwx 20.00 20.00 0.00 zjcolum.rwx 0.50 0.00 7.75 zjcolum2.rwx 0.24 0.00 4.00 zjdoor01.rwx 4.00 0.20 4.00 zjdoor02.rwx 4.00 0.20 4.00 zjhceil.rwx 20.00 6.00 0.00 zjhflor.rwx 20.00 6.00 0.00 zjhfront.rwx 5.10 4.50 8.15 zjpanl01.rwx 4.00 0.20 4.00 zjpanl02.rwx 4.00 0.20 8.00 zjpanl03.rwx 4.00 0.20 4.00 zjpanl04.rwx 4.00 0.20 6.00 zjpanl05.rwx 8.10 0.20 4.00 zjpanl06.rwx 8.10 0.20 4.00 zjpanl07.rwx 4.00 0.20 8.00 zjpanl08.rwx 12.00 0.20 8.00 zjpanl09.rwx 8.10 0.20 8.00 zjpanl10.rwx 8.10 0.20 8.00 zjpict01.rwx 3.47 0.00 2.81 zjpict02.rwx 3.47 0.00 2.81 zjpict03.rwx 3.47 0.00 2.81 zjpict04.rwx 3.47 0.00 2.81 zjpict05.rwx 3.47 0.00 2.81 zjroof01.rwx 4.50 4.00 4.50 zjroof02.rwx 4.50 4.00 4.50 zjroof03.rwx 4.50 12.00 4.50 zjroofoc.rwx 4.50 4.50 4.50 zjrooft.rwx 12.00 16.00 0.10 zjsign.rwx 2.25 0.00 1.50 zjsign2.rwx 1.50 0.00 1.50 zjtran01.rwx 4.00 0.20 2.00 zjuke.rwx 2.08 1.54 2.82 zjwndw.rwx 2.40 0.20 2.40 zjwndw2.rwx 2.40 0.20 2.40 zjwndw3.rwx 2.40 0.20 1.80 zlawn.rwx 40.00 40.00 0.00 zlobby1.rwx 8.00 8.00 10.00 zlobby2.rwx 8.00 8.00 10.00 zlogo.rwx 4.00 0.00 4.00 zml1sign.rwx 9.00 0.00 6.00 zn2440.rwx 1.00 0.00 1.00 zover.rwx 15.00 16.50 9.75 zpcmag1.rwx 2.00 0.00 3.00 zpict1.rwx 6.00 0.20 4.50 zpict2.rwx 4.50 0.20 4.50 zpict3.rwx 4.50 0.20 6.00 zplotcom.rwx 10.00 10.00 0.00 zplotres.rwx 10.00 10.00 0.00 zsat.rwx 6.00 6.00 5.00 zsign.rwx 6.00 0.10 4.00 zsign1.rwx 5.00 0.20 3.50 zsign2.rwx 6.00 0.15 4.00 zsun.rwx 4.00 0.00 4.00 ztelgate.rwx 3.00 0.00 3.00 ztop.rwx 12.00 12.00 15.00 zvctr01.rwx 10.00 10.00 7.50 zviw01.rwx 10.00 10.00 10.00 zviw02.rwx 10.00 10.00 10.00 zviw03.rwx 10.00 9.98 14.57 zvst01.rwx 10.00 10.00 0.20 zvst02.rwx 10.00 10.00 0.20 zvst03.rwx 10.00 10.00 0.20 zvwat01.rwx 10.00 10.00 2.50 zvwat02.rwx 10.00 10.00 2.50 zwall09.rwx 10.00 10.00 15.00 zwall1.rwx 16.00 3.00 8.50 zwat01h.rwx 10.00 10.00 0.00 zwat02h.rwx 10.00 10.00 0.00 zwed1.rwx 3.21 3.21 2.76 zwed2.rwx 0.68 1.24 2.00 zwed3.rwx 0.57 0.37 2.00 zwo01.rwx 10.00 10.00 14.25 zwo02.rwx 10.00 10.00 11.25 zwrpgate.rwx 3.00 0.00 3.00 zyssign.rwx 6.00 0.05 4.00 --------------8399B8B51F31A3940D0B0EBD-- AWTech needs you!Dec 23, 1998, 12:30pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> You sound distraught. (sing) "There's always tomorrow." [View Quote] avatar_delete problemJan 4, 1999, 2:22pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> Why do you need the name at this point? <p>I use the session number to track which avatar has "changed" or "deleted" and index into my list with that. I retrieve the name in the "add" event handler and store it in the list with the rest of the information about the avatar. Names don't change so there is no point re-getting them from the SDK. <p>Edward Sumerfield. [View Quote] avatar_delete problemJan 4, 1999, 5:13pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> <body bgcolor="#B8B8B8"> The downside, of coarse, is session recovery because the session ID changes with each line bounce. When the WORLD_DISCONNECT event arrives one can delete all the entries in the list and start again but this removes all possibility of retaining avatar context across line crashes. <p>Say I want to maintain my robots conversation with someone across a line crash. From their point of view my robot might disappear for a few seconds but when the line is back up and the robot returns I would like to be able to pick up the conversation from where I left off with something like, "I seem to be having problems with my line but let me answer your last question.". <p>So, the upshot of all this is that using session number only to identify an avatar is not enough. I would envision having a WORLD_DISCONNECT event handler that just set a line_down flag. Then when the robot receives a delete event it can get the session number (which will have changed) and check the flag. If set it must be able to retrieve the name to do an extra check of ownership before deleting. <p>The delete event is easy because it just means that the avatar info gets removed from the list but if a change event comes in I would like to change the old session number for the new one so that when the next change event arrives I can correctly id the avatar info. [View Quote] </body> </html> wsf and avatar_delete/add, another problemJan 4, 1999, 2:32pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> Or unplug the wire if it is an internal. [View Quote] Getting Started with SDKJan 11, 1999, 2:43am
I am not sure how much you know so let me give you some background.
The development process. .c + .h = .o or .obj .o + .o = .lib .o + .o = .dll .o +.o + .lib + .lib = .exe .exe + .dll + dll = runing program. So, if that makes any sense, you have a greeter.c and an aw.h and a couple of other include files that, when compiled produce a .obj file. Then you take your .obj file and combine it with the aw.lib file provided by AW and you get an exe files that you can run. Note that you do not need the aw.lib and the aw.dll. You can use one of the other and because you are using VC++ you can use the aw.lib file without any problems. You mentioned that you added aw.lib to you project. The wording of this statement could mean a few things but let me make some statements that may clarify it for you: 1. Do not add the aw.lib as a file to the project. 2. Add the aw.lib into the project options dialogue box under linker options. Forgive me for not adding all the details but Walter is the VC++ expert. He can tell you the exact name of the tab and so forth, but look under project options somewhere. Your project should only include the greeter.c file, you shouldn't even add the aw.h file to it. that will be included at compile time using the include paths you will set up. Again, look in project options, under compile and add the path. Hope this helps. Edward Sumerfield, 28021232 (my new ICQ address). [View Quote] > Hmm, perhaps I should post some more details too: > > Info :Building... > Info :Compiling D:\bots\funbot.cpp > Warn : funbot.cpp(19,11):Possibly incorrect assignment > Warn : funbot.cpp(28,11):Possibly incorrect assignment > Warn : funbot.cpp(38,11):Possibly incorrect assignment > Warn : funbot.cpp(44,11):Possibly incorrect assignment > Warn : funbot.cpp(53,11):Possibly incorrect assignment > Info :Linking D:\bots\second.exe > Error: Error: Unresolved external '_aw_init' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_event_set' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_create' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_string_set' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_login' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_enter' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_int_set' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_state_change' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_wait' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_destroy' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_term' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_say' referenced from > D:\BOTS\FUNBOT.OBJ > Error: Error: Unresolved external '_aw_string' referenced from > D:\BOTS\FUNBOT.OBJ > > of source: > > #include "aw.h" > #include <stdio.h> > #include <stdlib.h> > > void handle_avatar_add (void); > > main (int argc, char *argv[]) > { > > int rc; > > /* check command line */ > if (argc < 3) { > printf ("Usage: %s number password\n", argv[0]); > exit (1); > } > > /* initialize Active Worlds API */ > if (rc = aw_init (AW_BUILD)) { > printf ("Unable to initialize API (reason %d)\n", rc); > exit (1); > } > > /* install handler for avatar_add event */ > aw_event_set (AW_EVENT_AVATAR_ADD, handle_avatar_add); > > /* create bot instance */ > if (rc = aw_create (0, 0, 0)) { > printf ("Unable to create bot instance (reason %d)\n", rc); > exit (1); > } > > /* log bot into the universe */ > aw_int_set (AW_LOGIN_OWNER, atoi (argv[1])); > aw_string_set (AW_LOGIN_PRIVILEGE_PASSWORD, argv[2]); > aw_string_set (AW_LOGIN_APPLICATION, "SDK Sample Application #1"); > aw_string_set (AW_LOGIN_NAME, "GreeterBot"); > if (rc = aw_login ()) { > printf ("Unable to login (reason %d)\n", rc); > exit (1); > } > > /* log bot into the world called "beta" */ > if (rc = aw_enter ("Beta", 0)) { > printf ("Unable to enter world (reason %d)\n", rc); > exit (1); > } > > /* announce our position in the world */ > aw_int_set (AW_MY_X, 1000); /* 1W */ > aw_int_set (AW_MY_Z, 1000); /* 1N */ > aw_int_set (AW_MY_YAW, 2250); /* face towards GZ */ > if (rc = aw_state_change ()) { > printf ("Unable to change state (reason %d)\n", rc); > exit (1); > } > > /* main event loop */ > while (!aw_wait (-1)) > ; > > /* close everything down */ > aw_destroy (); > aw_term (); > return 0; > > } > > void handle_avatar_add (void) > { > > char message[100]; > > sprintf (message, "Hello %s", aw_string (AW_AVATAR_NAME)); > aw_say (message); > /* log the event to the console */ > printf ("avatar_add: %s\n", aw_string (AW_AVATAR_NAME)); > > } > [View Quote] Getting Started with SDKJan 11, 1999, 8:02pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> Fungus, so now you understand that you can not use the aw.lib file supplied by COF because they use VC++. Instead have to use the aw.dll file file they release which any linker can use. Walter is referring to a tool supplied with the Borland compiler that generates a .lib file that you can link into your bot that will automatically load the aw.dll file. <p> aw.dll + impdef = Funguses.lib <br> Funguses.lib + bot.o = bot.exe <br> bot.exe + aw.dll = running robot. /* The aw.dll will have to be in your PATH for it to run */ <p>There are a lot of posts in the past abount using Borland C++ with the aw.dll. I think someone actually released the new borland aw.lib file for the latest sdk. Can't remember the author. Take a look at the history. [View Quote] Getting Started with SDKJan 12, 1999, 12:10pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> I searched the borland site ( <A HREF="http://forumsearch.inprise.com:88/">http://forumsearch.inprise.com:88/</A> ) for implib and found this. <p><A HREF="http://forumsearch.inprise.com:88/search?NS-search-page=document&NS-rel-doc-name=/public/cppbuilder/commandlinetools/860&amp;NS-query=implib&amp;NS-search-type=NS-boolean-query&amp;NS-file-key=/var/spool/news/spool/borland/public/cppbuilder/commandlinetools/860&amp;NS-collection=cppbuildernews&amp;NS-docs-matched=20&amp;NS-doc-number=4">http://forumsearch.inprise.com:88/search?NS-search-page=document&NS-rel-doc-name=/public/cppbuilder/commandlinetools/860&amp;NS-query=implib&amp;NS-search-type=NS-boolean-query&amp;NS-file-key=/var/spool/news/spool/borland/public/cppbuilder/commandlinetools/860&amp;NS-collection=cppbuildernews&amp;NS-docs-matched=20&amp;NS-doc-number=4</A> <p>This is the relevant text. Seems the answer is a combination of impdef and create a def file and implib to create the lib from the def and the dll. <p>One word of caution. When I did this for the GNU compiler I ended up putting the full path name of the dll into the new lib file. This is not a good thing from a portability perspective. So when you do the implib make sure that the aw.dll is in the PATH or the current dir so that you don't have to use a full path name. <p>=================================================== <br>>Run impdef on the dll, like so: <br>> <br>> IMPDEF foo.def foo.dll <br>> <br>>This creates a file called foo.def. Now look at that file. Since you've <br>>already told me that it is a MSVC DLL, I can tell you what you will see. <br>>You will see some EXPORTS entries which look like: <br>> <br>> _Foo at 4 =_Foo at 2 <br>> Bar at 1 <br>> <br>>For all functions that look like Foo, they have __stdcall calling <br>>convention, and all functions which look like Bar have __cdecl calling <br>>convention. You can verify this with the headers, if you want... <br>> <br>>Now, to create a BCB import library, you will need to change these lines to <br>>look like:> Foo=_Foo at 4> _Bar=Bar <br>> <br>>Once you've edited the .DEF file, now run IMPLIB like so: <br>> <br>> IMPLIB foo.lib foo.def <br>> <br>>This will create a BCB import library. Now simply add the import library <br>>to your project, and away you go. Don't forget to put the DLL in the <br>>current directory or somewhere your system will look for DLLs. <br>============================================================== [View Quote] Getting Started with SDKJan 13, 1999, 1:08am
This is a multi-part message in MIME format.
--------------43184778E956B82384D4E271 Content-Type: multipart/alternative; boundary="------------089D27851D2F9B66F0924C82" --------------089D27851D2F9B66F0924C82 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit I can't believe we can't get this working. With the Cygnus stuff I use a program called impdef that creates the attached file but you will notice that it does not have any ordinal or = stuff after it. Then there is another program that takes this .def and the .dll and creates a .lib file for me. Maybe you can try your impdef with the attached awsdk.def file that I created from aw.dll version 12. [View Quote] > It puzzles me that the aw.dll appears to the impdef tool as if it didn't > have any exports other then that debughookblah one... But you cannot just > invent entries... entries go by name OR by ordinal number (that odd number > behind the at sign), and it seems that names are not sufficient. your ordinal > numbers are invalid in the best case (resulting to the error you had) or are > valid, but wrong function (resulting in a crash). There were people here > having success using impdef, so i don't know what might have rendered that > method invalid again... Roland, did you upgrade from VC5.0 to VC6.0 in the > meantime ? that MIGHT explain things... Walter ps: as for your situation, > you might want to try either that cygnus free c compiler (refer to Edward > for that), or get VC6.0 for $100. It seems the AW sdk becomes a Visual C++ > promoter :) > > Fungus schrieb in Nachricht <369BC1A2.7FFCD003 at hotmail.com>...lol, > perhaps I should wait a while before posting (still looking for > that *unpost* button) > > anyway - I can get rid of all the error messages and get the > program to compile if I add in fungus.def lines like > > EXPORTS > _aw_init at 1 > _aw_blah_blah at 1 > > so this must be kinda right? however I think get a " the bot.exe > file is linked to missing export AW>DLL:_aw_init. " error when > starting the program. I guess I'm still not impdef'ing properly to > link in the _aw_init and related events. > --------------089D27851D2F9B66F0924C82 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <body text="#000000" bgcolor="#C0C0C0" link="#993366" vlink="#CC66CC" alink="#990000"> I can't believe we can't get this working. <p>With the Cygnus stuff I use a program called impdef that creates the attached file but you will notice that it does not have any ordinal or = stuff after it. Then there is another program that takes this .def and the .dll and creates a .lib file for me. <p>Maybe you can try your impdef with the attached awsdk.def file that I created from aw.dll version 12. [View Quote] </body> </html> --------------089D27851D2F9B66F0924C82-- --------------43184778E956B82384D4E271 Content-Type: text/plain; charset=us-ascii; name="awsdk.def" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="awsdk.def" EXPORTS aw_init aw_term aw_create aw_destroy aw_login aw_wait aw_int aw_int_set aw_string aw_string_set aw_event aw_event_set aw_callback aw_callback_set aw_instance aw_instance_set aw_enter aw_state_change aw_say aw_whisper aw_object_add aw_object_change aw_object_delete aw_query aw_random aw_license_attributes aw_license_add aw_license_change aw_license_delete aw_license_next aw_license_previous aw_bool aw_bool_set aw_citizen_attributes_by_name aw_citizen_attributes_by_number aw_citizen_add aw_citizen_change aw_citizen_delete aw_citizen_next aw_citizen_previous aw_session aw_world_list aw_create_resolved aw_world_attributes_change aw_universe_attributes_change aw_world_eject aw_exit aw_universe_ejection_add aw_sector_from_cell --------------43184778E956B82384D4E271-- Getting Started with SDKJan 13, 1999, 3:35am
This is a multi-part message in MIME format.
--------------7EA5FBDA384DA363D6944B6A Content-Type: multipart/alternative; boundary="------------D334AC9533566F3ED5F28734" --------------D334AC9533566F3ED5F28734 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Well I am glad it worked for you. I attached the .cpp and .exe for my impdef so that you can recreate the .def file each time. It only runs under DOS and prints the output to the screen so you have to redirect the output to a file. impdef aw.dll > awsdk.def My apologies to the original author. I can't remember where I got it from. Somewhere under the free downloads at ww.cygnus.com. Good luck. [View Quote] > Well, sadly enough, Impdef causes the same Access Violation error message. > Perhaps my programs are just too old to handle the newest form of VC++ DLL. > (I am using Borland C++ 4.52) Most likely the problem. > > Although there is better news! Using the aw.def file from you in the form: > > EXPORTS > aw_init > aw_term > aw_create > aw_destroy > etc... > > I modified it to have the following redefinition's: > > EXPORTS > _aw_init=aw_init > _aw_term=aw_term > _aw_create=aw_create > _aw_destroy=aw_destroy > etc... > > I took this aw.def and implib'd it to aw.lib. Adding this lib to my project > allowed a successful compile and a program that runs! The only bad thing > is, I'm sure this will change with every revision of the sdk! :( > > Perhaps (if Roland is reading this post) a copy of the aw.def be included in > any future releases of the SDK? purdy-please? > > But, Edward, thanks very much for your help! It is much appreciated! > -Ædificator > > (by the way - the link you included doesn't work for me...did this have any > mention of the Access Violation error? - I did find, however, a reference of > someone getting sent newer copies of implib and impdef. I think I'll be > sending an e-mail to Borland...) > [View Quote] --------------D334AC9533566F3ED5F28734 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> Well I am glad it worked for you. <p>I attached the .cpp and .exe for my impdef so that you can recreate the .def file each time. It only runs under DOS and prints the output to the screen so you have to redirect the output to a file. <p> impdef aw.dll > awsdk.def <p>My apologies to the original author. I can't remember where I got it from. Somewhere under the free downloads at ww.cygnus.com. <p>Good luck. [View Quote] --------------D334AC9533566F3ED5F28734-- --------------7EA5FBDA384DA363D6944B6A Content-Type: application/x-unknown-content-type-WinZip; name="impdef.zip" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="impdef.zip" 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 eGVQSwUGAAAAAAIAAgBwAAAA/hoAAAAA --------------7EA5FBDA384DA363D6944B6A-- Getting Started with SDKJan 27, 1999, 3:35pm
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> I would have to disagree with you, Tony, about the maintenance problem you are facing compared to using the def method. <p>Using the def method you get complete automation of the DLL stub library creation whereas with your method you have to manually create the stub library and will have to check/change your code every time a new release is delivered. <p>I work with the GNU G++ compiler and, in the beginning, I used the manual stub method that you are proposing. It did work but was a continual problem to keep up to date and check after each release. Once I worked out how to automate the stub creation for the GNU compiler life became much easier. I now just type make and a stub library is created for me. <p>Edward Sumerfield. <br><A HREF="http://members.xoom.com/esumerfd/ActiveWorlds/AWCPP.htm">http://members.xoom.com/esumerfd/ActiveWorlds/AWCPP.htm</A> [View Quote] Re: Free Bots?Jan 11, 1999, 2:46am
--------------3E4E3FB954ED504141087E5B
Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit No payment involved until after the beta. We just get to play the test this thingy until then. Certainly, the concept of try before you buy is a good one. I spend a lot of time trying and re-trying software. [View Quote] > I was wondering:Is Anyone willing to start something where you offer free > SDK Compiled Scripts and charge like a Fee for OTHER Bots after a user gets > a taste of what your C Programing can do?That'd be cool.Yet....N/m.Reply if > ya like dat Idea:) > > FW2 Protector Of The Innocent --------------3E4E3FB954ED504141087E5B Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> No payment involved until after the beta. We just get to play the test this thingy until then. <p>Certainly, the concept of try before you buy is a good one. I spend a lot of time trying and re-trying software. [View Quote] --------------3E4E3FB954ED504141087E5B-- SDK Question...Jan 12, 1999, 11:48am
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> From where to where? <p>Someone was asking about how to implement this in the past. I believe we decided that you would have to build your own logic which would depend on from where and to where you were transferring. [View Quote] SDK Question...Jan 12, 1999, 11:08pm
Well excuse me Mr BitsPerSecondHiker but I think the question is excellent
phrased, succinct and necessary. Sorry it didn't do anything for you. [View Quote] > From where to where?????? That is the most stupid question I have ever seen > in any post. From one place to another one would assume. > [View Quote] |