Resigning

Status
Not open for further replies.

eezstreet

Movie Battles II Team Retired
Posts
242
Likes
299
Soapbox thread! Get your soapbox thread here!

As of right now, I'm resigning from the team.

Some of you are probably wondering "wtf who is that noob :D i never seen him before :D". So I think I might need a bit of a re-introduction, as well as some context for this post.

WARNING: I am going to call some a lot of people out by name specifically and you might be offended by my post. pls don't rage, only happy tears here
NOTE: this post has been edited slightly in order to remove some confidential info


Intro
If you don't know me: I'm eezstreet! Originally I started modding this game when I was 8 years old, tinkering with GTK Radiant, making crappy maps that still exist to this day on the JK2Files archive (albeit, under a different alias). I'm 22 years old now and am finishing up a computer science degree. I made the shift from art stuff to code stuff when Raz0r spearheaded JACoders. My first real mod was Gunslinger's Academy, which promised COD-like gunplay for Jedi Academy. I was 15 and still learning this stuff at the time, but I had big ambitions. From there I joined the Jedi Knight Galaxies team, and I continue to work on it to this day. I also joined the MB2 team at one point, although I had some skirmishes with the team even then. (If you've ever used QFX Pro, I also made that.)

At this point I was fairly active in the community and began to talk quite frequently to the game's developers through email exchanges. I joined JKHub as a staff member and ran it for two years while Caelum was busy. When LucasArts was closed, I was the one who talked with Raven about releasing the source code. I can still remember the night that I pasted the link into IRC and people began digging furiously through the code (only to find out that the one labeled JKA code was actually the xbox version of JK2 code...whoops). I contributed to a number of key systems from the resulting OpenJK project, including the singleplayer support, and the beginning parts of rend2 (although SomaZ and Xycaleth have picked up a great deal from where I left off!).

I wanted to do singleplayer stuff mostly from here on, but my hands were quite tied: the code was quite messy and most of what I wanted to do was art stuff. So for the most part I've been hanging back and sort of moving on to other things. I've been looking at the community at making sure it's still alive. I tried to make my own game (an ARPG), it failed though because I didn't have much experience with writing a game from scratch. So I had two learning objectives here: find out how other engines work (hence SWAT: Elite Force, which peaked at #1 recently on Moddb), and figure out how this works with the type of game I'm trying to emulate (a game like Diablo II, via OpenD2, is my next project: to rewrite Diablo II from scratch, similar to OpenRCT2 for RollerCoaster Tycoon).



but you're doing other stuff, why go back to JKA?
See, here's the thing. One doesn't simply stop playing MB2 I'm entirely, 100% convinced that what the dev team is doing is running this mod into the ground. I won't be the first to admit that that sounds like straight-up hyperbole, but it's sort of the truth. Let me explain why.


ok go ahead sry
In 2016 we launched the JKCommunity Discord server. At first, MB2 had its own channel on the server. A few of the devs weren't around, but a few were. Later on, they inexplicably migrated to their new Discord server. I told at least one of the developers at the time that I thought this was a bad idea, and it would make more sense for us to all be on one Discord server. Mostly because:
  • The JKCommunity Discord vastly eclipsed the MB2 Discord in terms of size. Only just now is it starting to get roughly the same amount as what's in JKCommunity (although the real number of active users is hard to say with certainty, since many people are offline). It didn't make sense from a logic standpoint to make a smaller, deader community.
  • The JKCommunity Discord moderators are always active and it would be easier to have a moderated server (I'll get back to this in a minute)
  • It would allow for intermingling between communities. MB2 sections itself off in my opinion way too much from the rest of the community. One big community, or two smaller communities? I'll take the former any day of the week.


GPL funnybusiness
In July of 2017 I had been playing for a bit in MB2 when I heard that the jamp and jaMME versions of the game have special engine hooks to make it work on certain resolutions. I also looked ingame and there were the mme_ cvars, straight from q3mme, along with some new ones. This is significant because:
  • Copying code from GPL projects into a closed source project automatically makes that project considered a "derivative work" and therefore subject to the terms of the GNU GPL, and therefore require that closed source project to go open source
  • Some of the code taken was from LordHavoc, who (I'm told, by Rich Whitehouse) is not too keen on their code being used in closed source projects
  • Some of the code taken was from cannabis, who (I'm told, by Ensiform) did not give them permission to use this code
At first I had only speculative evidence. I told Spaghetti and Viserys that the signature of the code seemed to match this GPL code precisely and that they were most likely in violation. Spaghetti seemed to ignore me. Viserys didn't know what I was talking about, despite my best attempts to explain

At around the same time (actually before I even found this out), I started a thread picking up about discussion of open-sourcing the mod. It's an old mod after all. Anticheat is not really a good enough reason when it doesn't catch everything. The other reason was "all of the old devs need to be contacted and give their permission." My thread was about this specifically - about finding old devs and getting them to give their permission. I found out later that Subaru had already started doing this, long before I made the thread. This is nonsense anyway, because the NDA explicitly states that when you commit code, it belongs to the MB2 team. So in actuality this doesn't make sense.

Anyway, back to the story - a new wrinkle emerged! Someone gave me the source code, albeit an older version. So I peeked and there it was, the offending code that is. I then told Viserys and Spaghetti again about this, and gave them the specific areas. They made it clear that they weren't going to do anything about it.

So after that, not gonna lie, I just said fuck it. I started posting random bits of code on Discord for lulz. That made them pay attention and they finally started to do stuff then. Although for some reason they were under the impression that I told them that they needed to remove the offending bits of code within 30 days (?) which is not accurate.

In hindsight, I probably shouldn't have made the thread because it made me look like I was trying to steal their code or something. However it wasn't until Puppytine put 2 and 2 together that the thread devolved into something about GPL stuff. Eventually Rich Whitehouse joined the thread, which really says a lot when you're getting BTFO by the developer of the game that you're modding for, about making things open source. But whatever. Their response here, and the behavior of the community in general seemed to signal to me that something was wrong, so I applied to join the team and tried to set things right. Hoboy.



THE JEDI TRIALS
No, not a dirty fanfic...

So I applied to join the team. They were very divided at first, but by August or so they had me starting to code. See, here's the weird thing. They wanted me to "prove" to them that I could code for them and be trusted. I found this weird, since I was essentially sitting on code that I already didn't leak in full, and was technically legally required of me to do so since it was GPL code. But whatever, I guess they feel like they didn't trust me. It's not that I can't code - I've been working with this engine for almost a decade now - it's that they didn't trust me to code.

So what they had me do was, "we give you this code and you are supposed to code these things in, capiche?" They wanted me to code in some very simple bugfixes and code in a RLY BIG THING which is a lot to do without repository access. To be honest, this wigged me out a lot. It felt very under-the-table, they insisted that we talk on voice (maybe so there's no text logs?), and from my understanding they didn't tell anyone else on the team about this first. Although maybe they did later on, I'm not sure. I didn't outright tell them that this seemed sketchy, but at the time I was more concerned about coding this stuff up.

I didn't actually finish the RLY BIG THING because it was going to be a nightmare to code it all in without altering SOME CODE a lot, and someone was already working on code that would've conflicted anyway...so....


eezstreet joins the famil:b:


so yeah i joined the team lmao
The organization is kinda a mess though.
  • The team uses Stack, Discord, and the forums to communicate with each other, so I have to switch between things a lot
  • It's spaghetticode in the worst possible way. I can't load it up in a debugger because it constantly throws debug assertions, the load times are 20-30x longer than in base, etc. Then when you actually get ingame what you'll find is that your code gets tripped up by something random that doesn't make any sense (like...deka movement code tripping errors while you're in spectator...)
  • The code itself is barely readable.
Now, I've highlighted a lot of these points in threads privately. However it seems like people were either apathetic, they didn't know what was going on, they were too busy, or something, because my proposed changes (creating a style guide, asking for a list of #ifdefs that can be pruned, asking for a list of branches that aren't used) never really resonated with anyone. And that's frustrating. There's too many issues with the code that it gives me anxiety to work with, and I don't want to feel anxious on a project that I'm essentially working on for no real self-gain.


episode 2: attack of the memes
I fought alongside your father, in the Meme Wars...


so around this time, I had basically no time to work on any of the code and I was really hoping for other branches to progress where stuff would (hopefully) be cleaner to work on. So I volunteered for the role of moderator.

I'll be honest. It was kinda a disaster.

Ever since Viserys and Spaghetti killed off that funny pictures thread, it's just been getting out of control. And neither side is definitively "right" but I can at least commend Puppytine for being tenacious. Viserys and Spaghetti were getting into these long-winded arguments with people and it was just getting messy. I told them (and others) to stop engaging Puppytine so that this wouldn't get worse. I got angry at one point and unlocked a thread that Subaru had locked (nothing against him personally, I just don't think that locking and relocking Puppytine's threads is really going to do much. A better strategy would've been to just let Puppytine spin his wheels out). In hindsight...kind of a shitty move on my part.

I made a thread about changing the rules. Initially I went in with the idea of having a forum section where people can post nonsense with wanton disregard, like a Mos Eisley's Cantina area. This seemed to be a really popular idea amongst the community, and there were quite a few developers who agreed with this approach as well, like Helix, Peneke, and I think Mace also liked the idea if I'm not mistaken. I think the other end was something like Subaru, Viserys and Spaghetti but I could be wrong on this.

However at some point I got put in the hospital while this was going on and I didn't really have access to the forums or slack or anything and for some reason the rules got changed to being in more or less their present form. For what it's worth, I only really strongly object to the "no mocking tragedy" rule because there isn't a good justification for it. I think the idea was that it is supposed to not offend people who are feeling raw emotions. My response to this is: is humor not a way to relieve the stress? Can humor not be used as a tool to brunt the impact a tragedy has? And, was anyone truly offended by what tragedy was mocked in the original Funny Pictures thread?

(Remember when I mentioned that the Discord server would be better suited to being part of the JKCommunity Discord server, for moderation purposes? The #nonsense area was removed for lack of moderation, and it's more or less effectively dead now)

Banning Puppytine was an equally stupid move. Not only has it legitimized his views and painted him as a martyr for the community, there was literally no reason for this! All that needed to be done was to talk to him and try to sort this out, understanding that there's a language and cultural barrier there. It's overly dramatic nonsense. (Then again...I did just write a 2k+ word essay here, so maybe I'll try to wrap this up.)

Furthermore, I don't understand why the developers continue to keep CatLady on the team. This is a person who has called the players, quoting from what he/she said on Discord: "troglodytes," "racists," "misogynists," and that he/she would kick their asses in real life. They also referred to the "moderator action" forum (where disputes are settled) as a "garbage bin".
(actual screenshots. thanks to Bob Billy and Puppytine)
e4a92356a1c2.png

1bac16967af0.png

044d544a2af8.png

12526ac2edfe.png

115db8476f32.png

2205b0ee22c5.png

614f53131986.png
(publicly visible messages on the MB2 discord server, nothing private there)

The developers in general have a disdain for the playerbase which isn't toxic. Yes, there are people who laugh at stupid memes and pictures on the internet. But are they misogynists? Racists? No. They're definitely edgier memes than what you might normally see on a PG forum.


So why leave now? Aren't you supposed to MAKE MB2 GREAT AGAIN? (tm)


Well today I got a bit tipsy and leaked a couple things that CatLady said about Puppytine. (I've been told that I shouldn't repeat them here, I guess)

Would I do it again? Absolutely. When people say that MB2 is "toxic," I really freaking hate this phrase, because it can mean whatever you want it to be. Is the community toxic? I don't know, depends. Are you a memer who just wants cool vibes in tR or other trolly servers? If so, this community is absolutely not toxic at all and you'll have a blast. Are you a person who really cares about getting good at the game? ...dunno, YMMV depending on what kind of server you're on. Are you a person who cares deeply about the mechanics of the game and is super passionate about Star Wars? ...then yeah, this is probably a super toxic community to that type of person. The old forum rules (before they were changed) even pushed out this type of person, by making specific "do not make these kinds of threads" aimed at specific people.

What I see as being a toxic community is when you have developers who have such disdain for the community members that they seemingly get off on this kind of constant drama. There's things said in private about people that make me wonder if mutual respect is honestly possible. It's dysfunctional and reminds me a lot of the shenanigans pulled at Old School Runescape. Do you want to Make MB2 Great Again? Work top-down. Address the community's relationship with the developers because this is totally fucked, my dudes.

--edit, something I forgot--
Anyway, they gave me a choice and it came down to, "respect the devs by following the rules and not leaking stuff anymore from our chat" or "respect the players and the community by telling them things that they ought to know." My intention here was to fix the dysfunction in the community and stop this thing from crashing down, but it seems that I don't have much of a choice but to choose the community over the devs. Sorry to whoever is bothered by that.
--end edit--

Closing Words / TLDR


So this is long as fuck and I really want to cut to the chase here. Basically:
  • I'm quitting because the devs don't really listen to any feedback that I give them, specifically towards means that would make their lives much easier
  • A "toxic" community is in the eyes of the beholder, and trying to overly regulate what you see as "toxic" is often not what is actually toxic.
  • The developers seem rather inexperienced and like to stir drama pots as much as possible (even if they claim not to)
  • I'm probably going to quit JKA entirely outside of the JKCommunity Discord because this was really going to be the last active project I took (aside from endless dream projects which will probably never be completed but are fun to work on)
specific addressing (in no particular order):
  • To the devs: Literally every other JKA coder who isn't part of this hivemind mentality thinks that you're in the wrong here with regards to open source. It would be best to consolidate everything as much as possible, clean up the codebase as much as possible, and migrate to an open source model.
    • This also addresses the anticheat problem - most traditional quake3 cheats can't work with OpenJK, but they sure can with jamp.
    • When you have the developer of the game, who released their source code for you to use, tell you that maybe you should maybe go open source, that this game is way too old to justify complex anticheats, I tend to favor that guy's opinion.
    • CLEAN UP THE CODE. Seriously. You'll spend probably one month of cleaning the code and getting a nice pipeline that could save dozens of months with overly rigorous testing procedures.
    • There is zero reason to be manually packing each release. Zero reason. It should be completely automated.
  • To k4far: lay off the damn jew memes man they're funny like maybe once or twice but they're just spam tbh
  • To Puppytine: try and take it easy on the devs, see from their position and where they're coming from, I think perhaps you are being overdramatic about all this meme stuff.
  • To Viserys: im sorry we didnt manage to make things work, as despite our differences, i still believe you wanted to help MBII.
  • To Helix: good luck mate
  • To LoU: i tried :/
  • To Defiant: I think you're a good (solid, even) programmer but you're perhaps a bit too...stuck in the past? idk. you strike me as an older person with a long and distinguished history with programming, but I find it weird that you don't know much about Git since it's pretty ubiquitous these days (maybe we're just from different circles, idk). i have zero animosity for you either way
  • To MoToKo: hope tR does well, loved playing on that server
---edit---
  • To DaloLorn: You were always cool when we did JKG tests, so nothing personal
---end edit---

and lastly, I'd like to lay out what my overall vision for MB2 could've been like, if I had infinite control over everything. you can decide if that's good or bad, or if it's admirable for simply having a vision (I'd argue that the only one on the team who does is Viserys):
  • Drop jamp support, go all in on a hybrid jaMME/OpenJK client. Open-sourced, of course.
  • Fix all of the minor little optimization issues so that the game runs much smoother. I know of a few specific problem areas where it is allocating memory every frame for EFX. Take advantage of the engine access to full effect. GIVE WIDESCREEN. REND2??
  • Merge RTV into the server itself, with a new revamped callvote system.
  • Compress the server package way down. Probably to like 1/5 of the client is all that's actually needed.
  • A system where players can log in to the game using their MB2 forum account. Doing so logs hours, stats, and achievements which can be displayed on your profile. Some servers may elect to have *all* their players be logged in, like the official ones or something.
  • Stop with this crap about a closed infrastructure. Externalize all of the data that could possibly be modified (weapon damage, rate of fire, weapon looks, etc), and then make the ingame library pull from these data files instead of needing to be manually updated. Make it a human-readable format and let server owners play around with it a bit.
    • It's arguably as bad as Bethesda when you have a specific set of things that you allow to change, but not others...Makes me think of their creation club, with "curated" creations, and modding exploited. Modding should be natural and free, not something that exists within the confines of what a developer says is allowed.
      ...after all, MB2 technically does break the SDK license...
  • Just make it play cleaner. I don't care about the balance really (aside from wooks being stupidly overpowered and SBDs being a garbage class). Ideally the engine should be clean enough that a new class being added is not a multi-year affair, but something done over a weekend.
adios, this has been too long
 
Last edited:

DaloLorn

Movie Battles II Team Retired
Posts
408
Likes
261
On the topic of Puppytine: I feel that things were going well with his 'Volume 4' thread, that things were starting to calm down to a sufficient degree that we could get off this war footing and start discussing a solution like civilized people. Then he started with that "I'm going to get myself banned" malarkey, and singlehandedly dealt the most crippling blow imaginable to his own cause - by putting the team between a rock and a hard place, forcing them to send one bad message ("Okay, we're going to kick our most helpful troubleshooter over a forum disagreement, that's fine") or another ("Oh shit, we need to backtrack to keep him here, YESTERDAY!"). Between saying they didn't care about having Puppytine and saying that sufficient pressure can accomplish what the most carefully-formulated arguments could not, I think it was naive to assume there would be any real dilemma.

Had Puppytine decided to let people on both sides of the conflict cool off for a while, reach a point where they could look at the issue objectively without all the baggage of the "us vs them" or "we need to show these people who's in charge" mentalities that were forged in the forum fires of those early weeks, then there would have been a good chance (IMO) of a peaceful conclusion. Instead, he escalated things again, we lost him, we lost you, and the forum/Discord war continues undeterred.
 

eezstreet

Movie Battles II Team Retired
Posts
242
Likes
299
On the topic of Puppytine: I feel that things were going well with his 'Volume 4' thread, that things were starting to calm down to a sufficient degree that we could get off this war footing and start discussing a solution like civilized people. Then he started with that "I'm going to get myself banned" malarkey, and singlehandedly dealt the most crippling blow imaginable to his own cause - by putting the team between a rock and a hard place, forcing them to send one bad message ("Okay, we're going to kick our most helpful troubleshooter over a forum disagreement, that's fine") or another ("Oh shit, we need to backtrack to keep him here, YESTERDAY!"). Between saying they didn't care about having Puppytine and saying that sufficient pressure can accomplish what the most carefully-formulated arguments could not, I think it was naive to assume there would be any real dilemma.

Had Puppytine decided to let people on both sides of the conflict cool off for a while, reach a point where they could look at the issue objectively without all the baggage of the "us vs them" or "we need to show these people who's in charge" mentalities that were forged in the forum fires of those early weeks, then there would have been a good chance (IMO) of a peaceful conclusion. Instead, he escalated things again, we lost him, we lost you, and the forum/Discord war continues undeterred.
The whole "forum/Discord" war thing really didn't affect my decision much in leaving. It was only where I got to see a lot of people's true colors. The more irritating issue is the mistrust, lack of listening, etc.
 

DaloLorn

Movie Battles II Team Retired
Posts
408
Likes
261
Well, it's possible that I might have said all that in a thread of my own if you hadn't left - it's just that it was easier to piggyback off of your own remarks. :p
 

Subaru

Not a car!
Donator
Movie Battles II Team Retired
Posts
216
Likes
172
  • It's spaghetticode in the worst possible way. I can't load it up in a debugger because it constantly throws debug assertions, the load times are 20-30x longer than in base, etc. Then when you actually get ingame what you'll find is that your code gets tripped up by something random that doesn't make any sense (like...deka movement code tripping errors while you're in spectator...)
  • The code itself is barely readable.

  • This is news to noone. The development team has been quite clear about how crap the code is.
 

DaloLorn

Movie Battles II Team Retired
Posts
408
Likes
261
So uh, can we say this is no longer a MBII Meme war but now a MBII Civil war?

I suppose we could, but at that point you might create yet another self-fulfilling prophecy. I think we may have had enough of those this week.
 

GoodOl'Ben

Nerd
Donator
Movie Battles II Team Retired
Posts
1,116
Likes
1,656
The more irritating issue is the mistrust, lack of listening, etc.
I think it was also in part a matter of your impatience. I've been around here for a long time and things happen at a snail's pace largely due to how internal discussions never tend to lead to a clear consensus. Generally the things that end up happening are the ones where a developer condenses briefly what he sets out to do, then starts working towards that goal and shows off an early version of it. Based on feedback it'll either lose momentum and die or gain momentum and eventually actualize into a feature or what-have-you.

The appropriate reaction in case of being shut down is to work together and seek out steps both can somewhat agree on. MB2 is entirely design-by-committee. This is most likely never going away since we are a hobbyist team. Whatever is done tends to hinge entirely on what gains momentum in one form or the other.

I am not meaning to sling shit here, I know what went down and it's not exactly a case where either party is completely in the right. In this thread you admitted to being a bit of a twat on occasion and I will admit my responsibility in being a twat as well. Hopefully people will cool off and be able to laugh at this whole thing a few years later.
 
Status
Not open for further replies.
Top