New Halflife update killed redirection - counteractions
the problem:
the latest update for halflife blocks executing the "connect" command. this renders xREDIRECT useless as that command is neccessary to do the actual redirection of a player, be it automatic or manual. who should participate? this thread is mostly for people with some knowledge in AMXX plugin developement. of course others are welcome to post ideas as well but be warned that many ideas that sound good are probably doomed to failure by technical limitations. also we will need some admins that are willing to use the CS beta and try debug/beta versions of xREDIRECT and maybe other plugins on their servers). so, please post your ideas here how we possibly could either implement a hack or at least how a workaround could look like. then we discuss that here. EDIT 11/08/02: revived this old thread as the problem returns with a new update from valve that is already available as beta. this was reported here. you'll find the mailing list contents with this information here. |
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
make them download .cfg files. in the files it has connect 0.0.0.0:27015 and when they choose the server exec blahredirect.cfg let server operators name them however they likes so they can be unique.
another way instead of connect you could try. messagemode "connect 0.0.0.0:27015" then ask the player to push enter to continue or esc to cancel.. dunno if those will work. but its worth a shot if a better idea can't be found i guess. |
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
here is some brainstorming for us to start with.
1. alias executed by server my first try would be to create an "alias" command on the player for the connect command and execute that one. pros: - player wouldn't notice any changes to earlier versions of xREDIRECT - the change in xREDIRECT would need minimal effort (which doesn't even matter, i will do what's neccessary, no matter what effort is needed) cons: - none operability: will only work when creating aliases on a player is possible. i never needed this and this is brainstorming, i didn't do any investigation yet, so i don't know. and even if, we still don't know whether hl1 will be fooled by it or not. 2. alias executed by player if that doesn't work because hl still detects that the connect command is run in the context of a server command execution, maybe we could at least tell the user (in chat area and console) that he has to type "y" in console when he really wants to redirect himself. before we create the alias "y" with our connect command. this way the command is executed by the player. pros: - change in operation of xREDIRECT not too big cons: - changes for the player, he has to execute a command himself - many players don't know how to work with the console very well operability: will only work when creating aliases on a player from server-side is possible. i never needed this so far and as this is brainstorming i didn't do any investigation yet, so i don't know. 3. bind executed by player bind the connect command to a player's key. it is highly abusive, as there won't be a key that isn't used by some players which will be annoyed then. we should try to restore the binding before actually redirecting, that would at least change this fix from "highly abusive" to "dirty" :| pros: - change in operation of xREDIRECT not too big cons: - changes for the player, he has to press one more key - annoyance: it might use keys that the player usually uses for other things and he doesn't like xREDIRECT altering it operability: will only work when creating aliases on a player from server-side is possible. will only work when changing binds on a player from server-side is possible. 4. menu hack probably a solution only suitable for xREDIRECT, because it is using a menu. it also depends on the server being able to alter client aliases and bindings. e.g. if in the menu "1" is the menu entry "Connect" the key binding for "1" is changed and restored after the user left the menu page. so bind "1" "slot1" is being changed to bind "1" "slot1; xredirconnect". the alias xredirconnect has been set before to restore the binding (bind "1" "slot1") and execute the connect command for the currently connected server. pros: - no change in operation of xREDIRECT for the player - only alters the key while it is reserved for the menu anyway cons: - some small risk stays that the key binding is not reset (e.g. the player gets a connection problem when he has the menu open) which would lead to the key executing the connect command once at a later time when the user probably would not want that anymore operability: will only work when creating aliases on a player from server-side is possible. will only work when changing binds on a player from server-side is possible. 5. client application not a good idea, just listing it for the sake of completeness. a simple client program that sits in the tray. xREDIRECT directly sends a connect command to that application. then it executes a steam:// link or otherwise hacks into hl to execute a command there, if that is possible. pros: - no change in operation of xREDIRECT itself for the player (ofc he has to install the client) cons: - extra program installation needed - high risk of security issues for the user (an application that can execute commands when you tell them to via network? can easily be abused by other programs as well) - because of the above the application has to be secured very good which will need very much time and testing operability: noone will want to install a program only to be able to redirect himself between special servers. this is where the idea dies already before it's born... 6. player enters command manually the worst solution, but at least the only solution that will always be possible, even when aliases and binds can't be changed on the player: tell the player the command (in chat or console) that he has to execute in the console. "please type <connect ip:port> in console now." it sucks big time, sort out 50/100 players that don't know what a console is or how they could open it. sort out 10/50 players that know how to open the console but don't get the command to execute because they mess something up with quotation marks or the colon or other characters (opening the console in german CS always writes a "^" character to the line, that has to be deleted first before executing a command). sort out 35/40 players that would know but are too lazy because they ask themselves "what comfort does that give me over managing my own favourites list instead?" pros: - independant from technical limiations (aliases, bindings) cons: - many players won't understand what they should do - many players won't want to do that, as they are lazy operability: - great, it will work but we are left with 5/100 players actually using that |
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
Quote:
|
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
maybe the steam://connect/ url can be run from an embedded flash file on the motd?
|
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
All this handles players allready on the server, what about those that join your server/s when they are allready full and join the reserverd slot? You'd have to kick them after some time or they will simply stay on that slot.
|
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
I'm obviously using the CS beta and will try out whatever you throw at me :D
However, anything related to binding or executing is an even worse form of abuse and could be blocked aswell. But maybe it will do for an appropiate time-limited solution. I'll try your 1. solution and the messagemode stuff as possible ways to deal with it, I'll be back with results this evening I hope. |
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
Quote:
but it seems they arent doing anything about the "steam://" part it would probably be possible to put a link in an MOTD saying "click me to redirect to your chosen server" apart from that, i doubt theres a way around it =[ |
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
Continuing on with the MOTD steam://.
You could just change the way that the '/servers' command works and make it pull up a server list in a MOTD where you can click the server which you want to join. It doesn't change that much from the way that it currently works and you can show more servers and not have to go to next page or so. Is there anybody that have tried if this method works, by the way? It's probably best to find out if it works before we continue on with it. |
Re: New (CS, maybe later also others mods?) beta kills xREDIRECT - counteractions
Quote:
many necessary changes won't need too much coding, maybe someone else can help out until then. Quote:
Quote:
Quote:
Quote:
Quote:
seeing all you people willing to help and coming up with valuable thoughts i still have some hope we will find a way in the end. thanks for that. |
All times are GMT -4. The time now is 22:37. |
Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.