Cutstuff Forum
Mega Man 8-bit Deathmatch => Projects & Creative => DECORATE and ACS Modifications => Topic started by: Mr. Wint on June 22, 2013, 01:57:37 AM
-
You're not alone. I, too, am sick of people playing the same classes over and over again. So I decided to do something about that. They said it couldn't be done. They said you would all throw me right out of the door. They said nobody would use this mod. Will they be right? Let's find out.
Force Random
This mod is very simple. It forces you to play with random classes. If you change mid-game, your class will be reset to random anyway. If you change while you spectate or are dead, you will be killed immediately upon respawning. It does not ban any classes, it just bans you from picking them. So if you run this mod on a CTF server, and see that the entire other team is playing as Quick Man, rest assured that they're just extremely lucky.
And it doesn't break bots either!
The people I talk to have mixed philosophies about this sort of thing. Some people complain about people who rely on one or two classes. Others complain about not being able to rely on one or two classes. Well, I'll leave you all to fight that battle. I just work here.
I've only tested this with Yellow Devil's classes, but it should work with any of the mods. Of course, there's no guarantee that the odd bug or two won't rear its ugly head, but you won't know until you give it a whirl.
Enjoy. (https://github.com/JesseTG/MM8BDM-Things/raw/master/force-random-r3.pk3)
You can download older versions of anything I make (including Force Random) here. (https://github.com/JesseTG/MM8BDM-Things/commits/master) Just click "Browse Code" on a particular commit to browse the state of my mods repository on a given date.
-
I have no idea who you are but you've managed to impress me and win thousands of Respect Points within a minute, and for that I congratulate you.
Welcome to Cutstuff, and thanks in advance for keeping it classy!
-
I am but a man.
-
So a mod that forces people to work with what class there given? i have no issues with that. i'm more then willing to try this out just to see what happens with matches.
-
So a mod that forces people to work with what class there given? i have no issues with that. i'm more then willing to try this out just to see what happens with matches.
People will ragequit when they can't use the flavor of the month to the exclusion of all else.
-
The amount of wrong you are is ridiculous, Balrog. Many people will use this mod BECAUSE it forces you to be a random class. So many good times to be had, it's amazing.
-
The only catch is, someone has to host it in one of the popular WAD locations.
People will ragequit when they can't use the flavor of the month to the exclusion of all else.
Are those the kinds of people you want on your servers?
Also, can you kill people while their spawn protection is on? Right now, if you try to cheat you're killed immediately after it wears off, but a skilled player, depending on where he spawns and the health of those nearby, might be able to sneak in a quick frag.
-
From testing it out, the first pick you make when entering the game always gives what you want, but deaths after that are randomized.
It works fine with CSCC, but it breaks ammo regen in KY Classes.
-
Huh. That's odd. When you play a match, do you join immediately, or do you join as a spectator? Are you testing online, or are you testing locally?
-
The amount of wrong you are is ridiculous, Balrog. Many people will use this mod BECAUSE it forces you to be a random class. So many good times to be had, it's amazing.
Not wrong if you assume the following train of thought: player joins server without noticing that forcerandom is loaded, player gets stuck with a class that he doesn't even have basic competence in due to only playing one class, player gets killed a lot, player ragequits. I thought that the existence of people who would enjoy playing with random was obvious, and therefore not worth mentioning.
-
Oh God, I can already smell an argument coming on. Let's play nice, 'kay?
-
Huh. That's odd. When you play a match, do you join immediately, or do you join as a spectator? Are you testing online, or are you testing locally?
I tested that in the singleplayer campaign. I join as a spectator.
-
Campaigns work a bit differently in terms of script execution, don't they? Can someone please host this WAD so we can see how it works in multiplayer?
-
Oh God, I can already smell an argument coming on. Let's play nice, 'kay?
Yeah, sorry about that. Great work, by the way.
-
Thank you!
-
Hey, welcome to Cutstuff. Nice one right there. I don't exactly enjoy CTF with classes because of speed classes. This should breathe some fresh air into CTF classes.
Even then, I prefer vanilla CTF over all other CTF games but hey, I'm loving this. I assume you've had previous experience making patches and things like that?
-
Nope. This is my first Doom mod of any sort. I have, however, been programming for a few years. (I'm a computer science student.)
-
This sounds pretty cool, I mean it should be easy and fair for everyone since it's just CTF. I approve of you and this.
-
Haven't tried this nor checked the mod yet (although I love the idea), but do you have a check in the spawn state? as in: Have it check if the "playerclass" is "random" or something and, if it is not, have it kill the player on spawn and print a message "Nice try, cheater!"
-
The amount of wrong you are is ridiculous, Balrog. Many people will use this mod BECAUSE it forces you to be a random class. So many good times to be had, it's amazing.
Not wrong if you assume the following train of thought: player joins server without noticing that forcerandom is loaded, player gets stuck with a class that he doesn't even have basic competence in due to only playing one class, player gets killed a lot, player ragequits. I thought that the existence of people who would enjoy playing with random was obvious, and therefore not worth mentioning.
Well youve could say the same about saxton hale...
Only because 20 of you knows it, doesnt mean saxton hale would be the thing newcomers wanna see...
to be earnest i cant even take 10 minutes of it...
saxton hale = hide & seek
-
Question- does this make you one class for the ENTIRE time of the match, or does it keep switching after you die?
Also, if it's the first, does spectating and then rejoining switch your class?
Also rather unrelated, but I like your classy avatar.
-
Since I've looked at the code, I'll take the liberty of answering this. Basically, all this does is force the "Class" option in Player Setup to be set to Random at every opportunity.
BTW, Wint, ConsoleCommand() is being removed due to idiots abusing it. (http://zandronum.com/tracker/view.php?id=1070) You might want to file a ticket to let the Zandronum team know about this particular use case.
-
Question- does this make you one class for the ENTIRE time of the match, or does it keep switching after you die?
Also, if it's the first, does spectating and then rejoining switch your class?
Also rather unrelated, but I like your classy avatar.
Changes every time you die, and yes, spectating and joining changes your class, but it's still random. Also, thank you.
Since I've looked at the code, I'll take the liberty of answering this. Basically, all this does is force the "Class" option in Player Setup to be set to Random at every opportunity.
BTW, Wint, ConsoleCommand() is being removed due to idiots abusing it. (http://zandronum.com/tracker/view.php?id=1070) You might want to file a ticket to let the Zandronum team know about this particular use case.
Damn. Well, I posted on the tracker. Also, I fixed one of the bugs that Zerokk reported:
From testing it out, the first pick you make when entering the game always gives what you want, but deaths after that are randomized.
It works fine with CSCC, but it breaks ammo regen in KY Classes.
I have no idea why this mod breaks KY classes. How does ammo regeneration work in that, anyway?
As a bonus, I also fixed another issue. The first version I released killed violators after their spawn shield wears off. This version kills them immediately, and then it sets them back to a random character.
I'm considering going a bit further than just killing violators, though. I want to shame would-be naysayers into playing a random class. I'd even consider giving the other players (or other team, depending) a frag each. What do you all think in terms of punishment harshness?
-
BTW, Wint, ConsoleCommand() is being removed due to idiots abusing it. (http://zandronum.com/tracker/view.php?id=1070) You might want to file a ticket to let the Zandronum team know about this particular use case.
Whoa, what?! But that's the feature that makes Zandronum superior to ZDoom!... Other than better multiplayer, of course.
EDIT: Not to mention that would screw up old mods, but I should be posting this on the Zandronum forum.
-
How can I get this hosted, anyway?
-
Best.Ever. (http://best-ever.org/) can be used to host this. It requires an account on the site and possibly DoomSeeker.
-
Ah, thank you.
Hrm, fancy that, it seems that it's already on there. Has someone hosted a server with this already?
-
Concerning this mod, isn't it better to simply remove the speed classes in CTF ? Some kind of code that'll say "If Game type is CTF, then change every player's classes to RANDOM if they chose Quick Man or Slash Man"...
Not only that it has been said many times, that some people want to master an unique class, others simply can't handle every classes...
why forcing them to have a random class ? If people want a random class, the option's there.
-
It's not just the speed classes that are problems though. Flying classes, tanks[woodman mostly], and anyone with a dash can be problematic.
Also, I threw the mod up on Best-Ever's wad hosting when you mentioned hosting it in "one of the popular WAD locations." Hope you don't mind!
-
Then why simply not disabling them in CTF ? It's more efficient than "reduce the luck of getting them", if the problem's here. And if someone grabs the luck, especially if it's a "good player", then it'll be almost impossible to defeat him, a Quick Man that constantly uses his speed boost thing, and so the problem isn't solved :3 (Quick Man is the best example because hardest to catch in CTF, but flyings and tanks, I agree with that too. Through tanks have low speed so it's not dramatic).
-
Concerning this mod, isn't it better to simply remove the speed classes in CTF ? Some kind of code that'll say "If Game type is CTF, then change every player's classes to RANDOM if they chose Quick Man or Slash Man"...
Not only that it has been said many times, that some people want to master an unique class, others simply can't handle every classes...
why forcing them to have a random class ? If people want a random class, the option's there.
No one's forcing any server host to run this WAD. It's the host's responsibility to decide how s/he wants to handle this sort of problem. I'm just providing a possible solution. Also, this mod is not just aimed at CTF, it's applicable to any game mode. I just used the CTF thing as an example.
It's not just the speed classes that are problems though. Flying classes, tanks[woodman mostly], and anyone with a dash can be problematic.
Also, I threw the mod up on Best-Ever's wad hosting when you mentioned hosting it in "one of the popular WAD locations." Hope you don't mind!
Fine with it this time, but now that I know how to upload the WADs myself, I'd prefer to handle my own WADs in the future. Thank you, though!
-
Though it is also possible for the same idea that KY classes used. A custom class for whoever has the flag/terminator.
Though with YD classes having most everyone atm I can't think of who would make for a good flag holder.
Though there is an idea I have for that. This isn't the place to put it though.
-
BTW, Wint, ConsoleCommand() is being removed due to idiots abusing it. (http://zandronum.com/tracker/view.php?id=1070) You might want to file a ticket to let the Zandronum team know about this particular use case.
Uh oh. I just remembered that Chaos Generator uses ConsoleCommand() to force fall damage on for one of the effects. Can you inform them that as well?
-
I tested this mod more extensively, and it turns out that it only worked on local games. So I went ahead and fixed that bug. Sorry about that.
-
Then why simply not disabling them in CTF ? It's more efficient than "reduce the luck of getting them"
Well, when you look at the insane number of classes that have a notable edge in CTF (as Korby mentioned), wouldn't it limit the variety that defines Classes? I mean, aren't vast choices and play-styles the whole idea behind Classes? Nonetheless, I totally agree with your perspective on luck and there doesn't appear to be a coherent solution. Not only could a Quickman fall in the hands of a skilled player as previously mentioned, but the other team would have nothing to fight back with. Can anyone disprove the idea that luck and variety are mutually exclusive?
-
The problem with "non-random" is just that some people abuse of a class's advantage (See, for example, Saxton Fail Classes for examples of Gyroabuse, Quickabuse, Shadeabuse and others), which makes the game really unfair to the other side (in SH case, the hale)
-
Oh, believe me, I've long since given up on Saxton Hale Classes and hate it to no end (despite it being painfully popular). Most people, however probably play Classes for two reasons:
1. The advantage abuse you mentioned.
2. The variety you get (adding a bunch of variables for a fresh kind of game each time).
I know how frustrating it is to have Quickmen, Gyromen, and Shadowmen on the Hale like Auto on a spare bolt, but I'm afraid that without either of these motives to play, people might be scared off of Classes forever, which would be quite sad considering how much potential it has. Many new players especially in this community tend to play one round and judge the entire game on it. If these new players don't like vanilla, their first alternative is often Classes. I know several people that stayed on MM8BDM just because of "that amazing feeling when you get when you first play as Quickman and blast the daylights out of somebody."
-
>forcerandom means less variety
>people who play classes just for abuse not playing classes is bad
>implying that having new players' first impression of MM8BDM being a 20-minute ClassesSH stallfest is a good thing
Not sure what the hell you're talking about here. Everyone using a random classes having less "variety" than everyone using about 5 different classes goes against basic mathematics. Also, as both myself and others argued vociferously in the latest "zomg no new pplz" thread (http://cutstuff.net/forum/viewtopic.php?f=34&t=5732), people playing Classes and only Classes so they can abuse cheap tactics is probably having a negative effect on the community. As for your third point, I would normally construct some form of counterargument, but your phrasing and reasoning is so baffling that right now all I can say is :shock: wat.
I'll just be... elsewhere now.
(http://i.imgur.com/n3vw76u.gif)
-
For some reason, Force Random seems to be broken. I've encountered two main problems with it;
- It can detect whether or not your class is random, and then kill you, but it doesn't change it for you. This is a problem in any game that respawns people instantly (because then you'll just die and die and etc, etc.)
- It winds up kicking everybody because it floods the server with changing player info.
God damn, ACS's execution environment is weird. Any tips on this?
-
Not really. Your options are:
1. wait for sv_forcerandom to hopefully become a thing
2. ragequit and start your own indie development house like Ijon Tichy did
-
For some reason, Force Random seems to be broken. I've encountered two main problems with it;
- It can detect whether or not your class is random, and then kill you, but it doesn't change it for you. This is a problem in any game that respawns people instantly (because then you'll just die and die and etc, etc.)
- It winds up kicking everybody because it floods the server with changing player info.
God damn, ACS's execution environment is weird. Any tips on this?
Rather than having it change player info, have it do this:
On Spawn/Respawn, check what is playerinfo_class (or something). If it is non-random, constantly kill that player OR force spectate.. The script should not loop, so it checks only ONCE within every spawn or respawn
-
^ Or you could do that. Wow, I'm so inured to disgusting hacks in Zandronum that I didn't even think of something that simple.
-
Not really. Your options are:
2. ragequit and start your own indie development house like Ijon Tichy did
Believe it or not, that's exactly what I'm doing. (http://www.corundumgames.com/) Just released my first game, too.
Rather than having it change player info, have it do this:
On Spawn/Respawn, check what is playerinfo_class (or something). If it is non-random, constantly kill that player OR force spectate.. The script should not loop, so it checks only ONCE within every spawn or respawn
I had considered that, but if possible I would prefer to kill the player and set him on random automatically. I may just have to concede to that workaround, though.
-
Rather than having it change player info, have it do this:
On Spawn/Respawn, check what is playerinfo_class (or something). If it is non-random, constantly kill that player OR force spectate.. The script should not loop, so it checks only ONCE within every spawn or respawn
I had considered that, but if possible I would prefer to kill the player and set him on random automatically. I may just have to concede to that workaround, though.
That can work. However, don't forget they will be dumping ConsoleCommand because "lol, hax mods"
-
I'm not using consoleCommand("kill"), I'm just using good old-fashioned scripting and TIDs for that.
-
I'm not using consoleCommand("kill"), I'm just using good old-fashioned scripting and TIDs for that.
I meant for the whole "Force them into Random"
-
Ah, right. Well, I posted about it on the Zandronum tracker, and they're gonna cover that use case before they remove ConsoleCommand().
-
ConsoleCommand is a quick fix. If you plan to spend much more time on this, then you might want to look into recreating all classes without using any playerclasses, only inventory items and Weapon.PreferredSkin. I'm not sure whether or not it will be possible with these classes, but it could be worth a shot.
-
recreating all classes
Sorry, but fuck that shit. I don't have the time or patience for something redundant like that.
-
Well yeah, that's why I said if you were planning on spending much more time on it. I recommended ConsoleCommand as something quick and dirty that works, but it's starting to sound like the "working" part will be a long shot. If it's possible to recreate the classes with inventory items, then that way will be cleaner (the randomizing part, anyway) and more flexible.
-
Everyone using a random classes having less "variety" than everyone using about 5 different classes goes against basic mathematics.
Uh... what? I was referring to removing certain cheap classes altogether as having less variety than usual. More choices = more variety, right?
-
Not really. Your options are:
2. ragequit and start your own indie development house like Ijon Tichy did
Believe it or not, that's exactly what I'm doing. (http://www.corundumgames.com/) Just released my first game, too.
okay this is extremely off-topic
but that is amazing and I wish you the best
-
Well, I'm not really ragequitting, but thank you.