Thanks very much for that analysis Ben. I read over your suggestions, and tried to weigh out what made the most sense to me. One constraint I do have is time, unfortunately. This is my last summer at RIT, and its coming to an end soon. Having a modified SL client definitely sounds like the more complete ( and cooler! ) way to solve this, but as you said, it will be a while before the client actually looks like the real game. Being able to see the animations will be important, and I currently only have access to one machine with SL ( my own ). However. You guys already have the logging stuff done, and the ability to transfer money and such in game... I wonder if adding code to simply perform the animations wouldn't really be a big stretch. It all comes down to firing the right packet at the right time, yeah? Perhaps simpler than going in and modifying the .exe, or even modifying snowcrash( both of which frankly terrify me ). Plus, if I actually added animation packet firing into the repository, you might find a use for it later, as opposed to an ultra-specific mod. I'd have to find a way to get on another machine capable of running SL to see my motions, but I think I could figure that out.
So I'm leaning towards libsecondlife. This sound realistic? ________________________________ From: [EMAIL PROTECTED] on behalf of Ben Byer Sent: Tue 7/18/2006 9:24 PM To: Development list for libsecondlife Subject: Re: [libsecondlife-dev] Hello folks! (libSL questions) On Jul 18, 2006, at 9:18 AM, Michael Kron wrote: I am new to the Second Life library, and to reverse engineering in general( is that what this is? ). I am familiar with both C++ and C# though, which it sounds like libsecondlife is being developed in. John mentioned that animations are fired with an AgentAnimation packet, which sounds like exactly what I want to do. But I assume that there is a whole lot of setup that comes first, such as logging in to their servers, and perhaps some handshaking? I noticed that there are a couple sample apps in the repository, but I am unfamilar with the proccess that they go through. Would anyone mind giving me an overview of the event flow, or just point me towards a good section to read over? [...] Sorry for being so long-winded, I've just been running all over trying to find someone who knew about all this. I'm really happy to find you guys =) Thanks very much for help you can offer, I would surely appreciate it. And let me know if you need any more information from me. Welcome! I, for one, am always happy to talk to someone who has an interesting project and is willing to put the "learning time" necessary into making it happen. I don't know too much about animations, specifically, but I think you'll find people here more than happy to help you if you've got the time to talk this all through. (We can't really point you at something to read over, because we're making it all up as we go along!) (For a general discussion of Reverse Engineering as a discipline, see the Wikipedia entry at http://en.wikipedia.org/wiki/Reverse_engineering) I see a couple of different ways to approach this problem, and you'll have to make a choice about which sounds more appropriate, based on your project goals: 1. Use the official SecondLife client, with some modifications. (This could either be done by actually patching the SecondLife .exe file, or by modifying Snowcrash, our debugging tool, to do much the same thing. I don't know how happy Linden would be about either of those -- the same such techniques have been used to create programs that harassed other people or scammed Linden out of L$. However, they have publicly stated that they have no problem with people tinkering for the purpose of adding new interfaces -- and your idea is cool enough that they'd be idiots to object.) 2. Use the libsecondlife library to write a new "simplified client", as you put it -- that's exactly what libsecondlife does. Pros and cons of each: 1. Modified SecondLife client -- this would be the most visually appealing way to do it. I think it would be possible to embed the equivalent of marionette strings into the client that would allow you to write some software to trigger "canned" animations in response to your movement, and other than that, your interaction with the SecondLife world would be identical to anyone else using a keyboard or a mouse. This may be the easier approach -- all of the login and handshaking stuff is taken care of for you -- but is less flexible. /DIV> 2. Using libSL -- Unfortunately, libSL is a very long way from having anything that looks like a normal SecondLife experience. Right now, we have a few things that look more like a chat window, or tools for transferring money, managing inventory, etc. You wouldn't be able to see what you were doing -- unless you signed on with a second character with the real client and stood nearby, watching yourself. The big advantage here is that you have considerable more flexibility, limited only by your imagination and our collective ability to figure out how SecondLife works. But as far as I understand, there is no automated way to do the upload, so the second best solution is to "approximate" a gesture, What a perfe t example! If you use libSL, that restriction might go away. It may be the case that there's just too much data to upload animations in real-time, or that there's too much server lag, such that it would take 10 seconds between when you moved your arm and when it registered in the game. But this is the kind of thing that custom clients are made to do. (Nobody's yet tried such a thing...) You may well end up having to try both approaches to see which one you're more happy with. You said that someone else is going to handle the approximation part of your project -- this is an example from a completely different problem space, but quite entertaining nonetheless and may give your group some inspiration -- http://www.popmodernism.org/scrambledhackz/?c=4 Please keep us posted on your progress! Ben
<<winmail.dat>>
_______________________________________________ libsecondlife-dev mailing list libsecondlife-dev@gna.org https://mail.gna.org/listinfo/libsecondlife-dev