[hlcoders] Player info being sent
I am curious as to how the server sends information for players. If I have a number of lives for a player, say 10, and each time the player dies they lose 1. That means say every 1 1/2 minutes the variable would change. However I have a HUD element that shows the players lives. This accesses the local players inforation to get the lives every OnThink(). If these lives are sent over in the players DataTable will they be transmitted everytime something in the players DataTable is changed or just when that particular variable is changed? -Thanks Andrew ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Speed hack detection, was new SDK version is live
Jeff Fearn wrote: I can see how exploiting lag compensation could allow you to speed up by a factor or two, but the hacks I have seen have been measured in magnitudes. I don't believe lag compensation has any visual (rendering) component to it. It's solely used on the server to determine if my bullets hit anyone at the time I said I fired my gun on my client. There's nothing in lag compensation that would effect where a player appears to be (rendered) on a client. The only thing that would effect where a player appears to be on the client would be client side prediction. Speed hacks aren't exploiting lag compensation or client side prediction. Speed hacks are telling the server that my client is moving at a faster rate than the client side movement code would normally allow (because my client's clock is running faster than the servers). If distance is calculated using velocity * time, and I increase either the velocity or the time, the distance I have moved will increase. This distance is passed as the forwardspeed or sidespeed floats in the UserCmd packet between the client and the server. I think maybe you are trying to over-analyze this a little too much. Perhaps you should download a speedhack, start up a LAN dedicated server with a mod built using the SDK and log the received UserCmd data to a text file. Also log the amount of time elapsed between each tick on the server. -- Jeffrey botman Broome ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Player info being sent
Ok, thanks, so that would mean that the best way would really be just a usermessage? ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Player info being sent
Trial and error As i said, check that your update packet is not going to bottel neck, and use that if its going to be easy to maintain, and code I am going through alot of the SDK and messing up all sorts of stuff, but have not had the time to setup a remote server/client for my message q's --- Andrew (British_Bomber) [EMAIL PROTECTED] wrote: Ok, thanks, so that would mean that the best way would really be just a usermessage? ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders http://ammahls.com __ Discover Yahoo! Stay in touch with email, IM, photo sharing and more. Check it out! http://discover.yahoo.com/stayintouch.html ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Player info being sent
Andrew (British_Bomber) wrote: Ok, thanks, so that would mean that the best way would really be just a usermessage? Yes. If you have something that changes only once in a while, just create a new network message for that specific item. Then send that network message when that item is changed. -- Jeffrey botman Broome ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] [OT] Sega Animanium Express
Sega Animanium, a 3D character animation software that has been used by a number of prominent animation studios and videogame developers in Japan, is now available in both a full version and a newly released lite version. https://secure.usaindexweb.com/animanium/php/download.php XSI 3.5 (Mod tool is supported- so i hear) http://animanium.com/download/WWXSI1.01.01.zip Demo Vid http://www.animanium.com/php/images/animanium_sample.wmv http://ammahls.com __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Valve - Thank you for the CMapOverview update!!
This is a multi-part message in MIME format. -- [ Picked text/plain from multipart/alternative ] Just want to commend the person at Valve who fixed it up :) cheers! This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error you are on notice of its status. Please notify us immediately by return email if you are not the intended recipient and delete this message. Please note that any views or opinions presented in this email are solely those of the author and do not necessarily represent those of FusionPeople Ltd. FusionPeople Ltd may monitor outgoing and incoming emails and other telecommunications on its email and telecommunication systems. === This message has been checked for all known viruses by MessageLabs, The service does not scan any password protected or encrypted attachments. FusionPeople Ltd accepts no liability for any damage caused by any virus transmitted by this email. -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Speed hack detection, was new SDK version is live
On 6/10/05, Jeffrey botman Broome [EMAIL PROTECTED] wrote: Jeff Fearn wrote: I can see how exploiting lag compensation could allow you to speed up by a factor or two, but the hacks I have seen have been measured in magnitudes. I don't believe lag compensation has any visual (rendering) component to it. It's solely used on the server to determine if my bullets hit anyone at the time I said I fired my gun on my client. There's nothing in lag compensation that would effect where a player appears to be (rendered) on a client. The only thing that would effect where a player appears to be on the client would be client side prediction. Speed hacks aren't exploiting lag compensation or client side prediction. Speed hacks are telling the server that my client is moving at a faster rate than the client side movement code would normally allow (because my client's clock is running faster than the servers). If distance is calculated using velocity * time, and I increase either the velocity or the time, the distance I have moved will increase. This distance is passed as the forwardspeed or sidespeed floats in the UserCmd packet between the client and the server. I think maybe you are trying to over-analyze this a little too much. lol have you been talking to my boss? ;) Perhaps you should download a speedhack, start up a LAN dedicated server with a mod built using the SDK and log the received UserCmd data to a text file. Also log the amount of time elapsed between each tick on the server. I wish I had some spare time, I'd definately do this ...I will do it, might have to wait a few weeks to get the time though :( Jeff ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Interface method request: engine-ServerInsertCommand()
Alfred, when you get a moment, can you let me know how this discussion is going? Even if your team could provide a different interface (rather than IEngine), it would solve the crying of many a poor admin. Changing the engine interface is not necessary, that's just the most logical place for it, as I suspect you'd agree. In my forums for EventScripts I have admins clamoring for this support. I've had over 4000 downloads of my plugin (Linux and Windows combined). Yet, without Valve support and exposure of this function, EventScripts will remain a shadow of its true potential. On some platforms, EventScripts is severely crippled and there's really nothing I can do. Without ServerInsertCommand(), I just can't provide my users the functionality they need. Anything you can do to help would be intensely appreciated, Alfred. I'm going to follow-up this email with some examples of the sorts of things that are impossible for plugin authors without this. I know you guys must use it a great deal internally or you couldn't provide 'alias' or 'exec', so I'm hoping you can see the clear value of this to us. Please open it for plugin writers so we can help you extend your console commands. Thanks, as always, for your help, -Mattie - Original Message - From: Alfred Reynolds [EMAIL PROTECTED] To: hlcoders@list.valvesoftware.com Sent: Monday, April 11, 2005 11:59 PM Subject: RE: [hlcoders] Interface method request: engine-ServerInsertCommand() I can suggest it to the team but as its such a base interface we hadn't planned on altering it any time soon. - Alfred -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mattie Casper Sent: Monday, April 11, 2005 8:37 PM To: hlcoders@list.valvesoftware.com Subject: Re: [hlcoders] Interface method request: engine-ServerInsertCommand() Thanks, Alfred, for responding. No-- I'm looking for something different. IVEngineServer::ServerCommand() places the command at the _end_ of of the command buffer. I need the same function that the 'exec' command would use to place a command at the _beginning_ of the command buffer. Without an InsertAtFront or something similar, in-line variable expansion is not possible (without lots of command ordering issues). Thanks a lot for considering my request-- it's quite important to the community using the EventScripts plugin, and will likely come in handy for mods down the road. Thanks again, -Mattie - Original Message - From: Alfred Reynolds [EMAIL PROTECTED] To: hlcoders@list.valvesoftware.com Sent: Monday, April 11, 2005 5:58 PM Subject: RE: [hlcoders] Interface method request: engine-ServerInsertCommand() Are you looking for IVEngineServer::ServerCommand() which will run a command on the server? - Alfred -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mattie Casper Sent: Sunday, April 10, 2005 7:59 PM To: hlcoders@list.valvesoftware.com Subject: [hlcoders] Interface method request: engine-ServerInsertCommand() This is a multi-part message in MIME format. -- [ Picked text/plain from multipart/alternative ] Valve reps, Is there any way you can extend the IVEngineServer interface to provide ServerInsertCommand() (or some other relevant name)? It would work a lot like the old Quake engine's command buffer function (Cbuf_InsertText) that allows a console command to be inserted at the front of the buffer. I assume a similar function exists in the HL2 engine, because, as far as I know, exec would need something like that to work correctly. If you could expose this function, it would allow my server plugin to cleanly support in-line variable expansion for my concommands. Thanks so much for your help, -Mattie -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Examples of uses for IEngine-ServerInsertCommand()
As promised, this email contains examples of the sorts of things that plugin authors cannot manage in Source without some method to insert commands at the beginning of the server command queue. This ability is vital for any plugin wishing to create meta console commands. I.e. commands like alias, exec, incrementvar, etc. Variable expansion -- EventScripts makes extensive use of variable expansion for its console commands, and it's crippled without InsertCommand(). There's no way to arrange for expanded commands to execute right away before the rest of a config file. For example, let's say I added the following lines to a .cfg file (e.g. server.cfg): // server.cfg // let's say 'mypluginvar' is a variable exposed by my plugin mypluginvar ClanMatch expandvars echo *** mypluginvar equals %mypluginvar% echo *** The above line should say mypluginvar equals ClanMatch echo *** server.cfg is completely done. should see nothing else. // end server.cfg So, if my plugin's 'expandvars' command expanded variables in the string provided to it and then passed it back to the server, the only mechanism it can use is ServerCommand(). This will place it AFTER everything else in the queue. As such, the output would be: *** The above line should say mypluginvar equals ClanMatch *** server.cfg is completely done. should see nothing else. *** mypluginvar equals ClanMatch This is definitely not what someone writing a .cfg file would be expecting. They expect the commands to go in order of writing. EventScripts supports a great deal of variable expansion, but there's no support for intuitive ordering. This example is trivial compared to the complicated scripts people are creating. It really weakens the plugin when admins can't trust that your variables will be expanded properly in relation to other commands in the cfg file. - Conditional expressions -- - EventScripts supports conditional expressions. These are also hindered without InsertCommand(). The order of execution again gets all out of phase. For example, let's say I added the following lines to a .cfg file (e.g. server.cfg): // server.cfg // let's say my plugin exposes an exec_if command exec_if sv_gravity 800 then reset_grav.cfg echo *** sv_gravity was set back to 800 by increase_grav.cfg exec_if sv_gravity 800 then something_wrong.cfg // end of server.cfg In this case, the plugin command exec_if would test the condition sv_gravity 800 and then use, sadly, ServerCommand() to place exec reset_grav.cfg in the queue where it could reset the gravity back to 800. Unfortunately, this goes to the very end of the queue, so the rest of the server.cfg executes first. This means the second conditional will STILL see sv_gravity incorrectly because it goes through the server command queue like this: 1. exec_if 2. echo 3. exec_if 4. exec reset_grav.cfg 5. exec something_wrong.cfg #5 should never happen-- and #4 should happen before the 'echo' does. Yet we can't do this because InsertCommand() isn't yet available to plugin writers. - Loops -- -- EventScripts does not yet support loops, but these would also be possible if Valve provided a way to insert commands at the beginning of the queue. Without it, you cannot be certain that the loop lines will execute before the next line in a script. -- Enhanced versions of alias, exec, etc - EventScripts doesn't do this yet, but if I wanted to create an enhanced version of these Valve commands, the new commands will always be deficient without InsertCommand(). For example, if we wanted to write an optimized exec command that cached the .cfg file in memory on the first execution and then always ran it from memory whenever called (to avoid refetches from disk): // server.cfg memexec only_changes_on_reboot.cfg exec load_plugins.cfg // end of server.cfg In this case, simulating exec is impossible if I wish to maintain the order of a .cfg file. I.e., we can't cycle through the lines of the file and have them inserted at the beginning of the command queue like Valve does. This means that anytime we try to add the lines, they'll always fall *after* every other line in the .cfg file. Order is important at times for plugins and the like, and without that we just can't improve upon the console commands very well. - Anyway, I'm going to stop now because this is getting so long that I'm sure no one will read it. ;) Rest assured that all of these things and more would be possible if Valve enhanced the Source SDK to include a mechanism for adding commands to the beginning of the queue. Anyone curious about using EventScripts, you can find my forums here: http://www.sourcemod.net/forums/viewforum.php?f=20 Thanks for reading this far. Maybe it will give other coders some ideas, too, -Mattie