Jump to content

Source Code Release: One Year Later


Recommended Posts




One year ago this month marks a very special time in JK's history. Prior to this period of time, coders spent the majority of the time muddling through the SDK, often using reverse engineering and engine hacks to accomplish certain feats and patch certain exploits. In addition, SP coding was virtually nonexistent, as there was no coding option for that platform. Last year as you are probably aware, Lucasarts closed its doors as Lucasfilm LLC was purchased by Disney. Many mourned the loss of the studio, fondly remembering the wealth of Star Wars, Indiana Jones, and various other adventure games that they had bestowed upon us.


Others however, saw a huge opportunity here. Correspondence with Raven Software regarding the source code release had been all the same. When asked about the code, the usual response boiled down to "We cannot release the source code at this time, due to LucasArts being unable to respond to our requests." This had continued for many years, and a few snippets here and there leaked out. Some singleplayer code was acquired by the OJP team, but nothing substantial was ever released. A few years ago, Raven's modified MD3View source code was released, indicating that they still showed an interest in the community despite all these years.


It was I who contacted the developers about the source code, and what could be done now that LucasArts was out of the picture. For a few days, things remained in limbo, until finally I received an email saying only "here you go!". At first I thought it was simply the singleplayer source code as I had explicitly mentioned it, and I reported the news to JACoders. Upon further examination however, we discovered that it was actually the whole source code for the game. And so on April 3rd, 2013, the source code for both JK2 and JKA was made available to the general public. Both myself and another coder from Raven agreed to speak to Kotaku, and as a result, the release received widespread attention across the gaming media.  


Click on the "Read Story..." button below for the full story!


The release was not without problems, however. Initially, it was discovered that the two .zip files I received (josource.zip and jkasource.zip) were not actually labelled correctly; the JK2 source code was actually the XBOX code for JK2. The subject of the XBOX code sparked controversy, as there were proprietary libraries from RAD Game Tools and Microsoft which were included in the code. Technically speaking, the libraries were pay-to-use, so this could be considered software piracy to some degree. In addition, the code was not intended for modern compilers, so it took a few days of editing to get a compilable version of the code. Due to this, Raven Software unfortunately pulled the source code, and the people involved have been in hot water ever since.


The coders split up, each of us working to get a section of the game compiling and working. Singleplayer and multiplayer were completed at roughly the same time. In the meantime, Raz0r had begun work on assembling a common project for all of JK - titled OpenJK. Originally, there was some discussion with the ioquake3 team to build an iojamp or iojk. Some conflicts and ideological issues arose between the ioquake3 project head and our coders, and OpenJK became the more predominant project. In a year's time, many of the exploits and bugs which plagued the original game were fixed, and new features, such as a modular renderer system, were added. While a first release has yet to see fruition, the project is still going strong, and code is being committed on a daily basis. 


Many projects also went opensource with the release of the source code. Most notably, Jedi Knight Galaxies went completely opensource, allowing others to contribute on both assets and code. The codebase was retooled from the ground-up to work with OpenJK, and it still remains in active development. Also, several other notable mods became public, including compJA and JA++. @ent's mod, jaMME, gave a whole new dimension to video creators. OpenJK is also being considered by the Moviebattles team.


I have asked the coders about what they remember thinking about and doing when the code first came out:



 ZTM: "The Jedi Academy GPL release appears to be the Xbox port."



 ensiform: what ZTM said.



 Scooper: well, I had just arrived the next day and there were tons of people in IRC



 RMS: This GPL soup has proprietary products. I specifically ordered free.



Xycaleth: i remember Rich Whitehouse coming on to the channel and saying that he would make the game run with 300 reborn onscreen. I just laughed and laughed. 



Raz0r: ensiform and eezstreet were talking about the SP source probably getting released. As I recall, eez was like "OMFG, THEY GAVE ME THE SOURCE," and ensiform was like "what. no way. is it full source?" After a few minutes, eez said "yes!!!" and gave us a link. 



spior: I remember [the #JACoders IRC channel] being packed as all hell the day afterwards. there was tons of commotion.



deepy: It was a truly exciting moment, it was better than sneezing






Thinking about the future, contributors had this to say:



ensiform: About the same as with Q3. Let's fix the fucking bugs.



 ent: I wasn't thinking about future at all, but I was happy that I could make the mod which I wanted. and the source releease is a cause. my thoughts are that now more people can make cooler vids :D



 deepy: I feel a bright future ahead, the source release has enabled some truly great people to continue perfecting JKA




The following infographic lays out the statistics of the project as a whole. I was hoping we could have some more of these in the future. :)


Click here to download as .PNG



What do you think about the source release? Do you think it has helped or hurt the community as a whole? Let us know how you think in the comments.


Click here to view the article

spior, Boothand, Morabis and 2 others like this
Link to comment

This release definitely ushered in a new age

I am one for Open-Source community efforts, especially for things like this as it does drive it forward and often add a new dimension to applications that were considered "fruitless".


I would like to personally Thank OpenJK and the people who work hard at it. Their efforts do not go to waste and I bet if there was a stat that could track number of people running OpenJK and users who play JKA, it would have definitely increased!!!


Muchos Gracios from me and EFF!

Morabis likes this
Link to comment

Such an old game, I still can't believe the source was ever released, I look forward to seeing the future of this game, the various fixes and rend-2. I am still to much of a novice to even understand programming or how to even get openjk.Is their a version available?

Link to comment

I love the idea of OpenJK, but I have a question...

There's two sites that I know of;





Now, the first one, when downloaded, gives me a OpenJK-master folder, with a bunch of stuff in it. Do I simply put that into my Gamedata, or do I put everything that's inside that folder into my Gamedata?

Then, the second link.. gives me a couple files, and a folder "OpenJK" with a .pk3 in it.. are they completely seperate or what? Not really sure how exactly I'm supposed to go about installing this...

Link to comment

The first link is only the source code for developers.

The second link provides the files needed to run it (client executable, server executable, gamecode in OpenJK folder).


Extract it to GameData and run the client executable.

Link to comment

Extract it to GameData and run the client executable.


Okay, so I take it OpenJK doesn't run side-by-side with something like JA+ then?

As I have my Steam setup to auto-start in JA+.. thought OpenJK ran along with it to help fix some things like that error with the config files.

Link to comment

Hi, guys, maybe here I will get the answer... What happened with irc channel #jacoders on aloria? Is there any substitute channel or chat to join?

Also, why linux binaries of OpenJK have been removed from the sites?

Link to comment

irc.arloria.net/#JACoders still exists.

I don't think the linux buildbots are uploading their files, but they're still running. I think it was an issue with 32 bit binaries being named weird so it was disabled.

Link to comment
  • 2 weeks later...

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...