Board ArchivesSite FeaturesActiveworlds SupportHistoric Archives |
strike rapier // User Search
strike rapier // User Search<no subject>Aug 31, 2003, 8:17pm
object changing helpSep 12, 2003, 3:33pm
Are you basing it off a query? Only ever deal with 'live' data, thats data
that you know exists.... While the code Andras posted its correct, you have to be absolutly sure that you have the live data for the objects X and Z coordinate, as well as its number... then use this... aw_int_set(AW_OBJECT_OLD_NUMBER, lngObjectNumber); aw_int_set(AW_OBJECT_OLD_X, lngObjectX); aw_int_set(AW_OBJECT_OLD_Z, lngObjectZ); That will fully reference what you are after... coordinate X and Z are needed for the database to find the object in a relitivly quick time... can you imagine trying to query 10,000,000 database records every single time you change an object? There is always a user-based local store but thats getting too much to elaborate on here. - Mark [View Quote] Any chance for C# wrapper? or anyone willing to work on it with me?Sep 17, 2003, 3:15pm
Appart from the joint runtime... C# really isnt a language that will be of
any particular use.. its kinda RDP but its mixing of styles makes you 'not too good at one thing, not too good at another' whereas if you focused your energies into a specific language (I would advise C++).. the benefits will pay you back 100 times more than any other language. - Mark [View Quote] Any chance for C# wrapper? or anyone willing to work on it with me?Sep 18, 2003, 3:16pm
Quite possibly true... there are a lots of hated languages by a lot of
different people on here... but the arguments Joe has put foward is valid. - Mark [View Quote] Any chance for C# wrapper? or anyone willing to work on it with me?Sep 18, 2003, 3:57pm
Speaks someone who has to use personal insults instead of presenting an
opposing argument. - Mark [View Quote] StatesNov 2, 2003, 9:57am
Then.... you would know that the posts from both Starfleet and Joe were
correct and Starfleets were correct. A number value given by Starfleet is actually more towards what you asked for... Even if Joe's was the technically correct answer... - Mark R [View Quote] AW_EVENT_OBJECT_BUMPFeb 27, 2004, 9:50pm
A AW_EVENT_AVATAR_CHANGE occurs every [x] ms. Bump events happen every
single loop (so thats currently 40 times a second) - Mark R [View Quote] [VB SDK] - Bot seeds...Dec 7, 2003, 12:36pm
[View Quote]
www.activeworlds.com/sdk/ add sdk. infront of everything...
> You can build objects anywhere within the building limits of the world. If > you can teach your bot how to do things, then you're one damn good AI > programmer ;-) Either that or you do a nice loop that tries setting every attribute in every combination with every value and you slap the bot when it does it wrong so it dosent do it again :O > As for terrain sensing that's a bit more complex since AWI never bothered > to properly document terrain. I'm sure someone here can help you with it. > > KAH [VB SDK] - Bot seeds...Dec 13, 2003, 10:03am
What language has more functions ?Dec 7, 2003, 12:36pm
Erm... they all have the same...
I suppose VB has things like Long2IP and such... but then again C++ has the proper stuff. - MR [View Quote] What language has more functions ?Dec 7, 2003, 1:58pm
All in all, if your going to be making little bots that do things like seed,
or respond to simple commands then you are looking at something like VB / Java as your best choise. However, if you are developing massive 2 or 3MB bots using complex API, winsock for things like reverse DNS etc, C++ is your best bet, the others can do em, but you run around the houses, and you don't get the ub3r benefit of pointers. - MR [View Quote] What language has more functions ?Dec 8, 2003, 5:49pm
[View Quote]
True, however considering your writing it anyway... you might as well use
the C DLL.. > I don't know if there actually is anything extra in any of the wrappers > available, but it's certainly possible for there to be. Yes, mostly some conversion stuff... > Using a third party wrapper though means that you will probably have to > wait until some time after a new release from AWI before the new features > become available in the particular wrapper you've chosen. True, remember the fiasco with people demanding a VB DLL and they were waiting months... > Given that AWI's beta's or alpha's or whatever are by invitation only, > I would be leery using anyones wrapper since there is no guarantee > they will be able to keep it up to date with whatever AWI is doing > with the core SDK. SDK gets updated very rarley... However, I think 80% of the Alpha / Beta team must be coders anyhow... > Stick with the official AWI SDK, or risk everything you do breaking > on you one day with no warning. The other thing is, the question of support. With the C DLL you can get an (almost) unlimitted amount of help with anything you want as C++ is the most popular language among high-power developers in here, also being what AW is made in it offers the best options for compatability. Examples are things like Byte Union's to set terrain textures, MThreading on multiple bots (using correct locking - Cheers Miles). Personally, after trying (in quantity) with using the C and the VB SDK's, it seems to me that the C wrapper has greater flexibility to operate, granted multiple instances may be more difficult, but when it comes to things such as setting which function names etc that conform to your existing code for things like events / callbacks, C++ is the clear winner because of its pointer capability. Also, if you start using Visual Basic with complex GUI's, you may find your tools racking up substantial external OCX controls that you would need to also distribute which does not always have the same capability as DLL Import. This means more probs client side when others try to use your tools with VB. There is also the problem of cross-platform compatability, with VB it near enough dosent exist, although Linux can interprit if, albit slowly. Personally, I would say that you should never decide on functions at all, I remember a nice argument with Shamus (or was it Grimm?) in NewAW when we were arguing about a data system that one of them uses, they use 3rd party code, I wrote my own dynamic XML-Style tag handling. Now while whichever one of em it was had the point that they didnt need to write the code themselves, and it was quicker, I would be pretty interested to know if they could do it themselves with ease. If your coding, you might as well learn from it and not use 'invisible code' so to speak. Hell I know a lot of the SDK coders look even beyond the AWAPI into the actual protocol. Consider this situation: You want to make a bot that looks up users IP's and saves them to a log when a person enters the world. You toodle along with the VB SDK and make it with ease... it works fine... Until... One of your users asks you to add a reverse DNS to this. You do, using advanced Visual Basic API. This lil beasty. struct hostent FAR * PASCAL FAR gethostbyaddr(IN const char FAR * addr, IN int len, IN int type); So ok, you use the API to put it into VB... Works fine, you trundle along... your DNS server screws up on one IP and your bot freezes for 10 seconds waiting for an event; then it explodes. Answer: Multithreading, VB capabilities of (any realistic levels of) Multithreading: Zero. You end up having to recode the entire ruddy thing into C++ anyway just to put in a function you could have (almost) done straight off if you chose the right language to start with. Scenario 1: You are just going to make a seedbot, maybe a tiny bit of complex maths to define the range with which a random number can be in. Whalla, its a seedbot, thats what it is, never going to be anything more, VB's ability to make GUI's kicks ass and VB is the perfect system to make it in... Scenario 2: Your going to be making a system handling winsock connections, huge databases, thousands upon thousands of lines of code, 5+ bots (Andras's Hunt bot must be capable of supporting at least 36,000 of em?). You start with VB... you make it... by the *counts* 11,000th line mark... Everythings screwed because your having to use rediculously shite code (hell look at collections in VB... vs the C++ equivilent). Everything dies, open up C++ and get on with it again when you should have used C++ in the first place. Its a matter of chosing what, nothing wrong with developing in multiple languages if you know them. - MR For Brant : Seeding AnywhereDec 7, 2003, 3:55pm
sdk.aw_int_set(AW_OBJECT_X, lngX)
sdk.aw_int_set(AW_OBJECT_Y, 10) sdk.aw_int_set(AW_OBJECT_Z, lngZ) sdk.aw_int_set(AW_OBJECT_YAW, 0) sdk.aw_int_set(AW_OBJECT_YAW, 0) sdk.aw_int_set(AW_OBJECT_YAW, 0) sdk.aw_string_set(AW_OBJECT_MODEL, "walk001.rwx") sdk.aw_string_set(AW_OBJECT_ACTION, "") sdk.aw_string_set(AW_OBJECT_DESCRIPTION, "My first seed object - Good Isnt it?") sdk.aw_object_add [View Quote] For Brant : Seeding AnywhereDec 8, 2003, 5:53pm
New Files Listed by JacobDec 8, 2003, 5:58pm
New Files Listed by JacobDec 11, 2003, 5:25pm
Erm... well he may know... but unless there is some strange attribute none
of the alpha, beta or main team have spotted he must be sneaking into Ricks draw. - MR [View Quote] Microsoft and Borland Join Forces to Protect CompilersDec 8, 2003, 5:49pm
In a recent joint operation, Microsoft and Borland have announced their
knowledge of a virus designed to target source code. The virus, known as acpp.die works across many platforms including Windows, Linux, OS/2 and Unix and has been responsible for hundreds of thousands of hours of work lost. Described by a representative of Borland as 'A virus that is extremely destructive in that it deletes all binary { and }'s from all dot c / dot cpp files on the computer' but stated 'we are taking action to work together to stop this virus from spreading and disrupting your coding'. In a later statement, the anti-virus project manager at Microsoft made the following statement: 'We are working extremely hard to combat this virus, but the full force of this virus is still completely out of scope'... :) - MR YOU'RE INVITED TO A DANCE PARTY!!Jan 15, 2004, 4:39pm
You are invited to use SDK for its purpose. :)
- MR Keywords of a world?Jan 17, 2004, 8:06pm
error 212Jan 21, 2004, 6:24pm
Imposter = Anti-Clone Hash Failed to Identify Correctly or Hash not Correct
Error 446 - Building too quicklyJan 21, 2004, 5:24pm
You have to supply the winsock data though a buffer, so when its full you
cant add any more commands. Its why sending huge strings though winsock at once wont work. - Mark R [View Quote] Error 446 - Building too quicklyJan 26, 2004, 7:17pm
Nah, because the SDK has to queue the messages so that it can send it with
the individual packets. - MR [View Quote] Picture RotateingJan 21, 2004, 6:25pm
Are you wanting to:
a) Program an SDK bot to do it b) Use another bot to do it c) Make me thing every post you post is me. [View Quote] Picture RotateingJan 21, 2004, 7:38pm
Would help if you told us what programming language you know / what
compilers... If the answer to any of these is 'i dont ' [know/have] 'any'... then you will get slapped. - Mark R [View Quote] |