JACoders / OpenJK

Community effort to maintain and improve Jedi Academy (SP & MP) + Jedi Outcast (SP only) released by Raven Software
GNU General Public License v2.0
2.03k stars 614 forks source link

Trying to build without JO support fails #284

Closed B-Keeper closed 11 years ago

B-Keeper commented 11 years ago

After looking through the code, I noticed that JO support can be disabled (in theory) by defining __NO_JK2. However, after doing so, the compiler fails with quite a few errors, mostly about com_jk2 being undefined in various places.

Was it my fault, or is this indeed broken?

Also, is there a reason to keep all the XBox-specific code? There are a lots of parts all around the code in the _XBOX definition.

ensiform commented 11 years ago

It was likely an unintended bug. Pokes @eezstreet to fix it.

And no there isnt a lot of reason to keep xbox code but we'd rather it be there than accidentally break something just for removing xbox code for the time being.

eezstreet commented 11 years ago

Based on what you have mentioned, it seems very likely that it can be repaired. _NO_JK2 also adds backwards compatibility for JKA savegames, likewise for _NO_JKA, but _NO_JKA has less support/is not working as well.

Sent from my Windows Phone


From: Ensiformmailto:notifications@github.com Sent: ‎6/‎11/‎2013 7:31 PM To: Razish/OpenJKmailto:OpenJK@noreply.github.com Subject: Re: [OpenJK] Trying to build without JO support fails (#284)

It was likely an unintended change.

And no there isnt a lot of reason to keep xbox code but we'd rather it be there than accidentally break something just for removing xbox code.


Reply to this email directly or view it on GitHub: https://github.com/Razish/OpenJK/issues/284#issuecomment-19301063

B-Keeper commented 11 years ago

Regarding the __NO_JK2 issue, I'll just leave it to the professionals.

But this _XBOX stuff intrigues me. If the said define is not defined, then the code guarded by it will be ignored by the compiler, right? How can removing these break anything, if they are not used at all? If it's just the matter of going through the code and removing these parts, then I volunteer for the task (and for removing the unused stuff mentioned earlier as well). Now I have to learn how GitHub works, and fork this project...

xycaleth commented 11 years ago

There's a lot of mismatch between what is JK2 only in playerState_t in code/qcommon/msg.cpp, and code/game/q_shared.h. There might be other problems as well, but the compiler stopped at that point. @eezstreet could you please go over this at some point when you have time? Seeing as they're your changes I think you'd be most familiar with them :)