paroxysm July 25, 2012 Author Share paroxysm Member July 25, 2012 If Jackie implements this, I will most definitely become a member. Link to comment Share on other sites More sharing options...
Biggs July 26, 2012 Share Biggs GC Alumni July 26, 2012 (edited) Eh--having a menu that people are using constantly is just one more thing that can screw up map voting, kick voting, etc. I wouldn't mind changing it to MWUP and MWDOWN cycling through, but that seems like a marginal improvement which may not be worth forcing all players to get used to the change. *edit* spelling Edited July 26, 2012 by Biggs Link to comment Share on other sites More sharing options...
Sky July 26, 2012 Share Sky Member July 26, 2012 Oh, you can add new keys they can press without removing the old ones, letting people use the classic or the new method - without adding menus. Heck, you could even add !hunter !smoker !boomer etc., or just !class hunter !class smoker , etc., for instant swaps. gets rid of the pesky menus. Link to comment Share on other sites More sharing options...
paroxysm July 28, 2012 Author Share paroxysm Member July 28, 2012 The point is the class selection needs to be a whole lot faster, do that for me and I'm sold. Biggs you can easily add code logic that prevents the class selection menu from taking precedence over vote menus Link to comment Share on other sites More sharing options...
Sky July 28, 2012 Share Sky Member July 28, 2012 (edited) Well, no, it's not easy to add that kind of logic, because they're separate plugins. To do it between multiple plugins, he'd have to create natives that can be called by any plugin, and a native for each plugin that contains a menu that could possibly override the other, and then he'd have to give them a priority either in convars or directly in code; not easy at all, unless you are extremely experienced at what you're doing, and it's far beyond the abilities of most scripters. There's no real reason to have a menu pop up for class selection, imho. Mousewheel up and down would be ample speed to let players cycle between special infected, and you just use a database to allow players to set the speed at which they want cycling to occur, so that each player has a speed that is comfortable to them. That would be the best way. Edit: Should jackie want to implement a rotation like this, I'll write and send him the source, but there's just really no need to have menus built in. Again, though, if they're using a plugin that skips SI if a certain limit is reached, I'd need to know, so I can track it in my code. Edited July 28, 2012 by Sky Link to comment Share on other sites More sharing options...
paroxysm July 28, 2012 Author Share paroxysm Member July 28, 2012 Sky, that problem just sounds like a name problem which is easily overcome with name spacing your method names. Your approach also sounds favorable and since it has already been done and you have access to it, it's just a matter of loading it. I would like to see it happen. Link to comment Share on other sites More sharing options...
Biggs July 29, 2012 Share Biggs GC Alumni July 29, 2012 In an attempt to address this, without adding anything new for the noobies to figure out, the class switch delay is now reduced to .2 seconds. You should be able to cycle through faster. Also, you can now use your melee key to go in reverse. Link to comment Share on other sites More sharing options...
paroxysm July 29, 2012 Author Share paroxysm Member July 29, 2012 hrm, doesn't sound as natural as sky's mouse wheel scrolling, I'll test it out when I get online. Link to comment Share on other sites More sharing options...
Sky July 30, 2012 Share Sky Member July 30, 2012 @paro: scripting is a bit different... Not as black and white as lower level languages such as C++. I sat back and tried really hard to consider when it would actually make sense to have a menu for players to select an SI from. A menu that isn't forced on players, and is optional to open. I found a reason, an exceptionally good reason to have a menu. And, generally, speaking, it's for the players who want to pre-select the SI they become when they enter ghost mode. Players will be able to select from ANY of the six standard special infected, when selecting after death, and prior to entering ghost mode, even if the SI they are trying to select currently is at its maximum player limit. This is because a player may die, freeing up a spot using that SI, so I would want players to be able to queue for it. However, when a player enters ghost mode, if the SI they queued for is not available, they'll be bounced to the start of the rotation and be notified with a message that the SI they were attempting to spawn as was not available. Some things to know: 1.) The menu will show the number of players as an SI, and that class' limit, whether viewing it in ghost mode or not. 2.) Players can queue for what SI they want next, even if they're currently alive* *Queue simply means it will attempt to assign you to that special infected the next time you enter ghost mode. Also, if a player is running around in ghost mode as a hunter, that player is taking up a hunter spot. I know a lot of SI limit plugins don't count players until they spawn, and just shift any player that is currently that class to something else, thus fubaring players who hit their attack key late, and are spawned as a class they don't want. My goal here, honestly, is to prevent this. If a player changes class in ghost it will reflect that change on the class restriction menu. However, if you're in ghost mode and want to use the menu to select your special infected, you can do that as well, or you can simply use the following commands/buttons: mWheelUp - Cycles forwards through the special infected list. It will skip any special infected that has reached its limit. mWheelDown - Cycles backwards through the special infected list. "..." !class <classname> - Attempt to change your class to the specified class. This is for users who want to bind their favourite classes, or all of them, if you prefer to hit a bind to select your class. !crm - Opens the class menu, for queueing or class switching. Ex: !class hunter So, again, this plugin won't force a menu up on players, to prevent problems with other plugins, such as active votes, and also allows players to use a simple command to change their special infected. But, it also supports the classic methods of scrolling manually through the available special infected. When it's done, I'll post it on alliedmods and add a link to this post. Again, I don't arrive back to the dorm until tomorrow evening, so you should expect to see the plugin tomorrow night or the following day. I hope this will make everyone happy Link to comment Share on other sites More sharing options...
paroxysm July 31, 2012 Author Share paroxysm Member July 31, 2012 Sky, I think you're over thinking why I was request this revamp. It's not because I want to preselect a class that I want to ghost as, it's actually the opposite, I want to be able to change the class I am on a whim very quickly. If I know there's a situation where that I'm a charger, and something changes such that a jocky would be more beneficial to spawn as, I want to be able to switch to a jockey as fast as possible. If I can just press one key to become a jockey( ofc it'll depend on how many jockeys are currently spawned but that's why there are si limit increases), I think, in general, that is tremendously faster than scrolling across each class. Because, naturally, when I'm scrolling, I have to monitor which class I am to make sure I don't jump over it. This becomes a bigger problem when you're having slight lagg where it takes like, say half a sec for the server to switch to the next class you scrolled to. I won't know what class I have scrolled to until that timespan is over. However, if I know what class I need and what I need to press to get it, it's just simply a matter of pressing a button and waiting server to update, but since I already know I am going to switch to a jockey, I don't have to repeat this process for every class I scroll to that's not the one I wanted. It may sound strange to ask for such a feature, but when the server has those competitive rounds, there a ton of those situations where you think you need this class, but something changes and you need another class quickly to seize the opportunity. Link to comment Share on other sites More sharing options...
JackieChan July 31, 2012 Share JackieChan GC Alumni July 31, 2012 That's why I made the option to scroll in reverse by pressing your melee button as well as speeding up the cycle process. Link to comment Share on other sites More sharing options...
paroxysm July 31, 2012 Author Share paroxysm Member July 31, 2012 (edited) Yeah, in theory it sounds good, but once I got online and tested it and rclicking is not natural, it's very very odd to incorporate it, but atleast better than nothing lol. Honestly, if you'd try it in game you'll see what I mean, ultimately pressing a key for it is much faster. I wish I could bind buttons to accomplish this, but you can't add logic to unbind those keys when you're playing a survivor. As a workaround the menu writing jackie, but how you implement bindable commands for each standard SI class, then make it so that when you invoke that command as a survivor it does nothing( and doesn't notify you), that way I can bind append those commands to my standard 1-6 keys. They retain their survivor functionality and work as intended in SI, but w/o that menu feeding you si count stats, you'll pretty much have to guess whether the class you want is available or not; you could make those commands spammable that way you can just spam it until you get the class. EDIT: Regarding your loathing towards writing menus, I'm sure there's a plugin out there that implements the algorithm, just import, test, profit?? Edited July 31, 2012 by paroxysm Link to comment Share on other sites More sharing options...
Sky July 31, 2012 Share Sky Member July 31, 2012 you are not understsnding... we cant make commands thw will perform a custom function as infected while also performing the stsndard function as survivor and plugins cannot unbind keys. if you want a key to perform different functions as si or srvivor, you need to creste separate config filee and execute them each round and that is localized. if you dont know how to do that jst ask and someone will probably assist you. the rotation is always the same. 123456 and is listed above. if you know a class is at its limit, you also know which one will be next in the rotation and there really are no surprises. im not sure why you are using programming terms thst you dont understsnd, either. it makes our ability to help harder. you need to create separate config files for bindings if you want to use the same keys to perform different functions for each team or simply bind a different set of keys. this isnt something s plugin will do for you and honestly isnt trivial. the plugin ve proposed is the closest youll come but honestly what jackie is alresdy using sounds optimal. if he used a panel, it would have to be optional to prevent overlaying active vote menus. though my propos provides everything that would provide coversge for your grievsnces with the current system, but since you oddly feel it is not what you are looking for, imagine using the current system or writing your own will be best. Link to comment Share on other sites More sharing options...
Masgnoh July 31, 2012 Share Masgnoh Member July 31, 2012 It may sound strange to ask for such a feature, but when the server has those competitive rounds, there a ton of those situations where you think you need this class, but something changes and you need another class quickly to seize the opportunity. as long as you're going into competitive rounds and required a specific class, what about positioning? sometimes i feel like i need to be a hunter up top somewhere but by the time i ghost jump somewhere... too late, everyone's gone. positioning is just as important as selecting the correct class quickly, but i consider both of those delays as part of the competitive process. slight delays and missed opportunities, yes, but it's not like the SI are under-powered and unable to handle the survivors. Link to comment Share on other sites More sharing options...
samurai nightling July 31, 2012 Share samurai nightling Member July 31, 2012 Yeah, giving the opportunity to be placed in a specific spot immediately to have the advantage kinda takes away from the whole "trying" aspect of the game. We already make it ten times easier with the ghost pounce, but you need those windows of missed opportunities to keep the survivors still able to win. Could you imagine this server without ghost pounce? Climbing ladders? UGH Link to comment Share on other sites More sharing options...
Sky July 31, 2012 Share Sky Member July 31, 2012 oh, gawd... ghost pounce. just use fly in ghost mode. ten times easier ) I, personally, don't see anything wrong with giving the special infected a greater advantage over the survivors. Remember, the Infected are supposed to have an advantage over the survivor team. I feel that the thought going through the survivors mind should be "We're going to die, but when?" it's a lot more exciting than the thought of "Yeah, we're going to make it every time, bleh." Actually, though, I like the idea of letting you save that wicked spot that you've found, if, say, you're playing around and find a spot, so that you can teleport there in ghost mode - a one time deal, though. But, that's because I enjoy (as a survivor) having to fight for my life, and that way, even if one team is stacked, the infected usually stand a chance with those advantages. I think the trick behind teleporting to a spot lays in the initial ability to get to that spot in the first place, without interrupting the regular game. Obviously, a player who spends time trying to figure out how to get to a spot on the map, instead of helping his/her team attack the survivors is going to get kicked pretty fast (unless it's a contributing member, I guess) but I still don't think it's necessarily a bad idea. I say this because, often times you can get placed in a really terrible spot, where ghost fly or ghost jump won't really benefit you. Now, granted, it's just icing on the cake, but if Infected players were able to get to pounce locations and other positions faster, I think there would be even more tense moments for the survivors, a lot more action, and hopefully, a lot more fun. That, and the survivors wouldn't be able to breeze on through. It would give new players the ability to do a lot of good early on, while giving experienced players the ability to highly excel. Everyone wins. Then again, though, there is that possibility that, in the case of an infected team extremely stacked, and the survivor team not so much, that they'd get crushed, but that's why you use something like manager to ensure that teams are always as balanced as possible. I hate this macbook pro. pz Link to comment Share on other sites More sharing options...
paroxysm August 1, 2012 Author Share paroxysm Member August 1, 2012 For the love of god, you completely misunderstood what I meant with bindable command and claim that I don't understand. For example, implement a command say, sm_jockey that, IF you're an SI ghost, will transform you to a ghost jockey provided the jockey class limit isn't reached. The command will also have logic such that IF you invoke it as a SURVIVOR, it does nothing( ie. no op). That way I can bind say, key 6 on my key to perform both slot6 and sm_jockey( ie. bind "6" "slot6;sm_jockey" ) that will both retain it's survivor functionality since slot6 does nothing as SI and will transform me into a jockey when i'm a ghost. Then implement such a method for each standard SI class. You avoid writing a menu and the most important benefit of the algorithm is satisfied, win win. Understand? Link to comment Share on other sites More sharing options...
Sky August 1, 2012 Share Sky Member August 1, 2012 (edited) !class <classname> - Attempt to change your class to the specified class [/Quote] Edited August 1, 2012 by Sky Link to comment Share on other sites More sharing options...
paroxysm August 1, 2012 Author Share paroxysm Member August 1, 2012 (edited) Now that makes sense, just one command that's robust, even better, now it needs to be in the form of 'sm_class' such that it's not typed to the chat everytime you use it and won't trigger the spam guard. It also needs to ignore any invocations as a survivor to make it even more robust, Jackie, I can settle for this. Edited August 1, 2012 by paroxysm Link to comment Share on other sites More sharing options...
Sky August 1, 2012 Share Sky Member August 1, 2012 bind 6 "impulse 6;class jockey" --> isn't advertised to chat. In sourcemod, using the / command in chat will suppress the message from chat as well, so if in chat i type, /class jockey , no one will see it. There's no need to use sm_ in front of commands. on the command arg, you simply check if (GetClientTeam(client) != 3) { return; } Link to comment Share on other sites More sharing options...
paroxysm August 1, 2012 Author Share paroxysm Member August 1, 2012 (edited) I maybe mistaking the '/class jockey' form with the '!class jockey' but don't both of them trigger spam protection? I know you can spam the 'sm_' form unless a spam protection logic is placed server side. EDIT: This approach is about the closest you can to switching to a specific SI w/ a key bind without writing a menu to do it, sounds reasonable Jackie? OFC, leave the old algorithm of class selection in place to make it backwards compatible, that way players who prefer this new method can use it while others can remain using the old form. Edited August 1, 2012 by paroxysm Link to comment Share on other sites More sharing options...
Sky August 1, 2012 Share Sky Member August 1, 2012 The way source works, if you leave the source config as default, which GC most likely has is... IN CHAT: ! trigger commands are displayed publicly. / trigger commands are not displayed. command in console is not displayed. there's no reason to use sm_ as it doesn't do anything different. But, again, I played with the script he's using yesterday and it felt fine to me. Link to comment Share on other sites More sharing options...
DihydrogenMonoxide August 2, 2012 Share DihydrogenMonoxide Member August 2, 2012 Paro - That can certainly be done! In fact, I'm 95% sure it's already implemented into the source code of the plugin. The HUD just has to be enabled in the CVARs. And it looks almost exactly like what jerkoff posted. I use this plugin on my server too. 1. Spitter (2/5) Link to comment Share on other sites More sharing options...
paroxysm August 2, 2012 Author Share paroxysm Member August 2, 2012 (edited) The current hud only shows the current class limit and maximum class limit achievable, not current class count( ie current players running around as a hunter or a jockey) EDIT: Sky, I've played on this server for a very long time, I wouldn't be requesting this feature if I didn't feel it necessary to augment SI playing capabilities, I don't know, maybe I'm just too strategic when it comes to choosing an SI class instead of spawning as whatever I ghost as, some people actually do the latter. Edited August 3, 2012 by paroxysm Link to comment Share on other sites More sharing options...
paroxysm August 10, 2012 Author Share paroxysm Member August 10, 2012 bump Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now