This is an automated email from the git hooks/post-receive script.

smcv pushed a commit to branch debian/master
in repository openjk.

commit e286d0e90ae6778b2d1a23f16277bc5e6e8bda19
Author: bibendovsky <[email protected]>
Date:   Sun Jul 24 18:17:35 2016 +0300

    Rename saved game affected classes back
---
 code/cgame/cg_local.h            |  2 +-
 code/cgame/cg_main.cpp           | 10 +++---
 code/cgame/cg_media.h            |  2 +-
 code/cgame/cg_players.cpp        | 42 ++++++++++++-------------
 code/cgame/cg_weapons.cpp        |  6 ++--
 code/game/AI_Animal.cpp          |  2 +-
 code/game/AI_HazardTrooper.cpp   |  2 +-
 code/game/AI_SandCreature.cpp    |  2 +-
 code/game/AI_Stormtrooper.cpp    | 10 +++---
 code/game/AI_Utils.cpp           | 30 +++++++++---------
 code/game/NPC.cpp                | 12 ++++----
 code/game/NPC_senses.cpp         | 10 +++---
 code/game/NPC_spawn.cpp          |  6 ++--
 code/game/NPC_stats.cpp          | 24 +++++++--------
 code/game/NPC_utils.cpp          |  2 +-
 code/game/Q3_Interface.cpp       | 10 +++---
 code/game/ai.h                   | 12 +++-----
 code/game/b_local.h              |  4 +--
 code/game/b_public.h             | 13 ++++----
 code/game/bg_pangles.cpp         |  2 +-
 code/game/bg_panimate.cpp        | 14 ++++-----
 code/game/bg_pmove.cpp           |  4 +--
 code/game/bg_public.h            |  5 ++-
 code/game/fields.h               |  6 ++--
 code/game/g_active.cpp           | 12 ++++----
 code/game/g_client.cpp           | 22 +++++++-------
 code/game/g_cmds.cpp             |  2 +-
 code/game/g_combat.cpp           |  8 ++---
 code/game/g_local.h              | 31 +++++++++----------
 code/game/g_main.cpp             |  4 +--
 code/game/g_misc_model.cpp       |  2 +-
 code/game/g_navigator.cpp        |  2 +-
 code/game/g_objectives.cpp       |  8 ++---
 code/game/g_savegame.cpp         | 66 ++++++++++++++++++++--------------------
 code/game/g_session.cpp          |  8 ++---
 code/game/g_shared.h             | 64 +++++++++++++++++---------------------
 code/game/g_target.cpp           |  4 +--
 code/game/g_weapon.cpp           |  2 +-
 code/game/wp_saber.cpp           |  6 ++--
 code/qcommon/q_shared.h          |  1 -
 code/ui/ui_main.cpp              |  6 ++--
 codeJK2/cgame/cg_local.h         |  2 +-
 codeJK2/cgame/cg_main.cpp        | 10 +++---
 codeJK2/cgame/cg_media.h         |  2 +-
 codeJK2/cgame/cg_players.cpp     | 44 +++++++++++++--------------
 codeJK2/cgame/cg_weapons.cpp     |  6 ++--
 codeJK2/game/AI_Stormtrooper.cpp | 10 +++---
 codeJK2/game/AI_Utils.cpp        | 34 ++++++++++-----------
 codeJK2/game/NPC.cpp             |  8 ++---
 codeJK2/game/NPC_senses.cpp      |  8 ++---
 codeJK2/game/NPC_spawn.cpp       | 10 +++---
 codeJK2/game/NPC_stats.cpp       | 16 +++++-----
 codeJK2/game/NPC_utils.cpp       |  2 +-
 codeJK2/game/Q3_Interface.cpp    | 10 +++---
 codeJK2/game/ai.h                | 12 +++-----
 codeJK2/game/anims.h             |  7 ++---
 codeJK2/game/b_local.h           |  4 +--
 codeJK2/game/b_public.h          | 13 ++++----
 codeJK2/game/bg_panimate.cpp     | 12 ++++----
 codeJK2/game/bg_pmove.cpp        |  4 +--
 codeJK2/game/bg_public.h         |  5 ++-
 codeJK2/game/fields.h            |  6 ++--
 codeJK2/game/g_active.cpp        | 12 ++++----
 codeJK2/game/g_client.cpp        | 24 +++++++--------
 codeJK2/game/g_cmds.cpp          |  2 +-
 codeJK2/game/g_combat.cpp        |  6 ++--
 codeJK2/game/g_local.h           | 28 ++++++++---------
 codeJK2/game/g_main.cpp          |  4 +--
 codeJK2/game/g_misc_model.cpp    |  2 +-
 codeJK2/game/g_objectives.cpp    |  8 ++---
 codeJK2/game/g_savegame.cpp      | 62 ++++++++++++++++++-------------------
 codeJK2/game/g_session.cpp       |  8 ++---
 codeJK2/game/g_shared.h          | 64 +++++++++++++++++---------------------
 codeJK2/game/g_svcmds.cpp        |  4 +--
 codeJK2/game/g_target.cpp        |  2 +-
 codeJK2/game/wp_saber.cpp        |  4 +--
 76 files changed, 452 insertions(+), 483 deletions(-)

diff --git a/code/cgame/cg_local.h b/code/cgame/cg_local.h
index 9ae6e36..19b8f11 100644
--- a/code/cgame/cg_local.h
+++ b/code/cgame/cg_local.h
@@ -128,7 +128,7 @@ typedef struct {
        qboolean        pitching;
 
        int                     animationNumber;
-       ja_animation_t  *animation;
+       animation_t     *animation;
        int                     animationTime;          // time when the first 
frame of the animation will be exact
 } lerpFrame_t;
 
diff --git a/code/cgame/cg_main.cpp b/code/cgame/cg_main.cpp
index f6d955a..3c335ba 100644
--- a/code/cgame/cg_main.cpp
+++ b/code/cgame/cg_main.cpp
@@ -33,7 +33,7 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 //NOTENOTE: Be sure to change the mirrored code in g_shared.h
 typedef        std::map< sstring_t, unsigned char  >   namePrecache_m;
 extern namePrecache_m  *as_preCacheMap;
-extern void CG_RegisterNPCCustomSounds( ja_clientInfo_t *ci );
+extern void CG_RegisterNPCCustomSounds( clientInfo_t *ci );
 extern qboolean G_AddSexToMunroString ( char *string, qboolean qDoBoth );
 extern int G_ParseAnimFileSet( const char *skeletonName, const char 
*modelName=0);
 extern void CG_DrawDataPadInventorySelect( void );
@@ -852,7 +852,7 @@ CLIENT INFO
 CG_RegisterClientSkin
 ==========================
 */
-qboolean       CG_RegisterClientSkin( ja_clientInfo_t *ci,
+qboolean       CG_RegisterClientSkin( clientInfo_t *ci,
                                                                  const char 
*headModelName, const char *headSkinName,
                                                                  const char 
*torsoModelName, const char *torsoSkinName,
                                                                  const char 
*legsModelName, const char *legsSkinName)
@@ -902,7 +902,7 @@ qboolean    CG_RegisterClientSkin( ja_clientInfo_t *ci,
 CG_RegisterClientModelname
 ==========================
 */
-qboolean CG_RegisterClientModelname( ja_clientInfo_t *ci,
+qboolean CG_RegisterClientModelname( clientInfo_t *ci,
                                                                        const 
char *headModelName, const char *headSkinName,
                                                                        const 
char *torsoModelName, const char *torsoSkinName,
                                                                        const 
char *legsModelName, const char *legsSkinName )
@@ -990,7 +990,7 @@ Ghoul2 Insert End
 }
 
 
-void CG_RegisterClientRenderInfo(ja_clientInfo_t *ci, ja_renderInfo_t *ri)
+void CG_RegisterClientRenderInfo(clientInfo_t *ci, renderInfo_t *ri)
 {
        char                    *slash;
        char                    headModelName[MAX_QPATH];
@@ -1190,7 +1190,7 @@ void CG_RegisterClientModels (int entityNum)
 
        if(entityNum < MAX_CLIENTS)
        {
-               memcpy(&cgs.clientinfo[entityNum], &ent->client->clientInfo, 
sizeof(ja_clientInfo_t));
+               memcpy(&cgs.clientinfo[entityNum], &ent->client->clientInfo, 
sizeof(clientInfo_t));
        }
 }
 
diff --git a/code/cgame/cg_media.h b/code/cgame/cg_media.h
index 38651b3..6e045f3 100644
--- a/code/cgame/cg_media.h
+++ b/code/cgame/cg_media.h
@@ -399,7 +399,7 @@ typedef struct {
        qhandle_t               inlineDrawModel[MAX_SUBMODELS];
        vec3_t                  inlineModelMidpoints[MAX_SUBMODELS];
 
-       ja_clientInfo_t clientinfo[MAX_CLIENTS];
+       clientInfo_t    clientinfo[MAX_CLIENTS];
 
        // media
        cgMedia_t               media;
diff --git a/code/cgame/cg_players.cpp b/code/cgame/cg_players.cpp
index 25d3abb..bb01835 100644
--- a/code/cgame/cg_players.cpp
+++ b/code/cgame/cg_players.cpp
@@ -123,7 +123,7 @@ void CG_AddGhoul2Mark(int type, float size, vec3_t hitloc, 
vec3_t hitdirection,
        gi.G2API_AddSkinGore(ghoul2,goreSkin);
 }
 
-qboolean CG_RegisterClientModelname( ja_clientInfo_t *ci, const char 
*headModelName, const char *headSkinName,
+qboolean CG_RegisterClientModelname( clientInfo_t *ci, const char 
*headModelName, const char *headSkinName,
                                                                        const 
char *torsoModelName, const char *torsoSkinName,
                                                                        const 
char *legsModelName, const char *legsSkinName );
 
@@ -319,7 +319,7 @@ static const char *GetCustomSound_VariantCapped(const char 
*ppsTable[], int iEnt
 
 extern cvar_t  *g_sex;
 extern cvar_t  *com_buildScript;
-static void CG_RegisterCustomSounds(ja_clientInfo_t *ci, int iSoundEntryBase,
+static void CG_RegisterCustomSounds(clientInfo_t *ci, int iSoundEntryBase,
                                                                        int 
iTableEntries, const char *ppsTable[], const char *psDir
                                                                        )
 {
@@ -375,7 +375,7 @@ CG_CustomSound
 */
 static sfxHandle_t     CG_CustomSound( int entityNum, const char *soundName, 
int customSoundSet )
 {
-       ja_clientInfo_t *ci;
+       clientInfo_t *ci;
        int                     i;
 
        if ( soundName[0] != '*' )
@@ -517,7 +517,7 @@ CG_NewClientinfo
 */
 void CG_NewClientinfo( int clientNum )
 {
-       ja_clientInfo_t *ci;
+       clientInfo_t *ci;
        const char      *configstring;
        const char      *v;
 //     const char      *s;
@@ -591,7 +591,7 @@ void CG_NewClientinfo( int clientNum )
 /*
 CG_RegisterNPCCustomSounds
 */
-void CG_RegisterNPCCustomSounds( ja_clientInfo_t *ci )
+void CG_RegisterNPCCustomSounds( clientInfo_t *ci )
 {
 //     const char      *s;
 //     int                     i;
@@ -710,9 +710,9 @@ void CG_ClearAnimEvtCache( void )
 CG_SetLerpFrameAnimation
 ===============
 */
-static void CG_SetLerpFrameAnimation( ja_clientInfo_t *ci, lerpFrame_t *lf, 
int newAnimation )
+static void CG_SetLerpFrameAnimation( clientInfo_t *ci, lerpFrame_t *lf, int 
newAnimation )
 {
-       ja_animation_t  *anim;
+       animation_t     *anim;
 
        if ( newAnimation < 0 || newAnimation >= MAX_ANIMATIONS )
        {
@@ -748,9 +748,9 @@ Sets cg.snap, cg.oldFrame, and cg.backlerp
 cg.time should be between oldFrameTime and frameTime after exit
 ===============
 */
-static qboolean CG_RunLerpFrame( ja_clientInfo_t *ci, lerpFrame_t *lf, int 
newAnimation, float fpsMod, int entNum ) {
+static qboolean CG_RunLerpFrame( clientInfo_t *ci, lerpFrame_t *lf, int 
newAnimation, float fpsMod, int entNum ) {
        int                     f, animFrameTime;
-       ja_animation_t  *anim;
+       animation_t     *anim;
        qboolean        newFrame = qfalse;
 
        if(fpsMod > 2 || fpsMod < 0.5)
@@ -877,7 +877,7 @@ static qboolean CG_RunLerpFrame( ja_clientInfo_t *ci, 
lerpFrame_t *lf, int newAn
 CG_ClearLerpFrame
 ===============
 */
-static void CG_ClearLerpFrame( ja_clientInfo_t *ci, lerpFrame_t *lf, int 
animationNumber )
+static void CG_ClearLerpFrame( clientInfo_t *ci, lerpFrame_t *lf, int 
animationNumber )
 {
        lf->frameTime = lf->oldFrameTime = cg.time;
        CG_SetLerpFrameAnimation( ci, lf, animationNumber );
@@ -898,7 +898,7 @@ CG_PlayerAnimation
 */
 static void CG_PlayerAnimation( centity_t *cent, int *legsOld, int *legs, 
float *legsBackLerp,
                                                int *torsoOld, int *torso, 
float *torsoBackLerp ) {
-       ja_clientInfo_t *ci;
+       clientInfo_t    *ci;
        int                             legsAnim;
        int                             legsTurnAnim = -1;
        qboolean                newLegsFrame = qfalse;
@@ -1209,7 +1209,7 @@ static void CG_PlayerAnimEvents( int animFileIndex, 
qboolean torso, int oldFrame
                else
                {//still in same anim, check for looping anim
                        inSameAnim = qtrue;
-                       ja_animation_t *animation = 
&level.knownAnimFileSets[animFileIndex].animations[anim];
+                       animation_t *animation = 
&level.knownAnimFileSets[animFileIndex].animations[anim];
                        animBackward = (animation->frameLerp<0);
                        if ( animation->loopFrames != -1 )
                        {//a looping anim!
@@ -1649,7 +1649,7 @@ Added 11/06/02 by Aurelio Reis.
 extern vmCvar_t        cg_drawBreath;
 static void CG_BreathPuffs( centity_t *cent, vec3_t angles, vec3_t origin )
 {
-       ja_gclient_t *client = cent->gent->client;
+       gclient_t *client = cent->gent->client;
 
        /*      cg_drawBreath.integer   == 0 - Don't draw at all.
                                                                == 1 - Draw 
both (but bubbles only when under water).
@@ -1811,7 +1811,7 @@ CG_AddHeadBob
 */
 static qboolean CG_AddHeadBob( centity_t *cent, vec3_t addTo )
 {
-       ja_renderInfo_t *renderInfo     = &cent->gent->client->renderInfo;
+       renderInfo_t    *renderInfo     = &cent->gent->client->renderInfo;
        const int               volume          = 
gi.VoiceVolume[cent->gent->s.clientNum];
        const int               volChange       = volume - 
renderInfo->lastVoiceVolume;//was *3 because voice fromLA was too low
        int                             i;
@@ -2686,7 +2686,7 @@ static void CG_G2PlayerAngles( centity_t *cent, vec3_t 
legs[3], vec3_t angles )
                                        int turnAnim = PM_TurnAnimForLegsAnim( 
cent->gent, cent->gent->client->ps.legsAnim );
                                        if ( turnAnim != -1 && 
cent->gent->health > 0 )
                                        {
-                                               ja_animation_t *animations = 
level.knownAnimFileSets[cent->gent->client->clientInfo.animFileIndex].animations;
+                                               animation_t *animations = 
level.knownAnimFileSets[cent->gent->client->clientInfo.animFileIndex].animations;
 
                                                if ( !animatingHips || ( 
animations[turnAnim].firstFrame != startFrame ) )// only set the anim if we 
aren't going to do the same animation again
                                                {
@@ -3915,7 +3915,7 @@ static void CG_PlayerSplash( centity_t *cent )
 
        if ( cent->gent && cent->gent->client )
        {
-               ja_gclient_t *cl = cent->gent->client;
+               gclient_t *cl = cent->gent->client;
 
                if ( cent->gent->disconnectDebounceTime < cg.time ) // can't do 
these expanding ripples all the time
                {
@@ -5093,7 +5093,7 @@ static void CG_G2SetHeadAnim( centity_t *cent, int anim )
 {
        gentity_t       *gent = cent->gent;
        const int blendTime = 50;
-       const ja_animation_t *animations = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
+       const animation_t *animations = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
        int     animFlags = BONE_ANIM_OVERRIDE ;//| BONE_ANIM_BLEND;
        // animSpeed is 1.0 if the frameLerp (ms/frame) is 50 (20 fps).
 //     float           timeScaleMod = 
(cg_timescale.value&&gent&&gent->s.clientNum==0&&!player_locked&&!MatrixMode&&gent->client->ps.forcePowersActive&(1<<FP_SPEED))?(1.0/cg_timescale.value):1.0;
@@ -5519,7 +5519,7 @@ static void CG_StopWeaponSounds( centity_t *cent )
 
 //--------------- SABER STUFF --------
 extern void CG_Smoke( vec3_t origin, vec3_t dir, float radius, float speed, 
qhandle_t shader, int flags);
-void CG_SaberDoWeaponHitMarks( ja_gclient_t *client, gentity_t *saberEnt, 
gentity_t *hitEnt, int saberNum, int bladeNum, vec3_t hitPos, vec3_t hitDir, 
vec3_t uaxis, vec3_t splashBackDir, float sizeTimeScale )
+void CG_SaberDoWeaponHitMarks( gclient_t *client, gentity_t *saberEnt, 
gentity_t *hitEnt, int saberNum, int bladeNum, vec3_t hitPos, vec3_t hitDir, 
vec3_t uaxis, vec3_t splashBackDir, float sizeTimeScale )
 {
        if ( client
                && sizeTimeScale > 0.0f
@@ -5932,7 +5932,7 @@ extern void FX_AddPrimitive( CEffect **effect, int 
killTime );
 //-------------------------------------------------------
 void CG_CheckSaberInWater( centity_t *cent, centity_t *scent, int saberNum, 
int modelIndex, vec3_t origin, vec3_t angles )
 {
-       ja_gclient_t *client = cent->gent->client;
+       gclient_t *client = cent->gent->client;
        if ( !client )
        {
                return;
@@ -5981,7 +5981,7 @@ static void CG_AddSaberBladeGo( centity_t *cent, 
centity_t *scent, refEntity_t *
        mdxaBone_t      boltMatrix;
        qboolean tagHack = qfalse;
 
-       ja_gclient_t *client = cent->gent->client;
+       gclient_t *client = cent->gent->client;
 
        if ( !client )
        {
@@ -6812,7 +6812,7 @@ extern qboolean G_RagDoll(gentity_t *ent, vec3_t 
forcedAngles);
 int    cg_saberOnSoundTime[MAX_GENTITIES] = {0};
 
 void CG_Player( centity_t *cent ) {
-       ja_clientInfo_t *ci;
+       clientInfo_t    *ci;
        qboolean                shadow, staticScale = qfalse;
        float                   shadowPlane;
        const weaponData_t  *wData = NULL;
diff --git a/code/cgame/cg_weapons.cpp b/code/cgame/cg_weapons.cpp
index 5f7959b..020412c 100644
--- a/code/cgame/cg_weapons.cpp
+++ b/code/cgame/cg_weapons.cpp
@@ -747,14 +747,14 @@ the weapon hand animation has 3 anims,
 =================
 */
 extern qboolean ValidAnimFileIndex ( int index );
-int CG_MapTorsoToWeaponFrame( const ja_clientInfo_t *ci, int frame, int 
animNum, int weaponNum, int firing )
+int CG_MapTorsoToWeaponFrame( const clientInfo_t *ci, int frame, int animNum, 
int weaponNum, int firing )
 {
        // we should use the animNum to map a weapon frame instead of relying 
on the torso frame
        if ( !ValidAnimFileIndex( ci->animFileIndex ) )
        {
                return 0;
        }
-       ja_animation_t *animations = 
level.knownAnimFileSets[ci->animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ci->animFileIndex].animations;
        int ret=0;
 
        switch( animNum )
@@ -1144,7 +1144,7 @@ void CG_AddViewWeapon( playerState_t *ps )
 #endif
        {
                // get clientinfo for animation map
-               const ja_clientInfo_t   *ci = &cent->gent->client->clientInfo;
+               const clientInfo_t      *ci = &cent->gent->client->clientInfo;
                int torsoAnim = 
cent->gent->client->ps.torsoAnim;//pe.torso.animationNumber;
                float currentFrame;
                int startFrame,endFrame,flags;
diff --git a/code/game/AI_Animal.cpp b/code/game/AI_Animal.cpp
index 08ea31c..4626ff4 100644
--- a/code/game/AI_Animal.cpp
+++ b/code/game/AI_Animal.cpp
@@ -183,7 +183,7 @@ void NPC_BSAnimal_Default( void )
        int     alertEvent = NPC_CheckAlertEvents(qtrue, qtrue, -1, qfalse, 
AEL_MINOR, qfalse);
        if ( alertEvent >= 0 )
        {
-               ja_alertEvent_t *event = &level.alertEvents[alertEvent];
+               alertEvent_t *event = &level.alertEvents[alertEvent];
                if (event->owner!=NPC  &&  Distance(event->position, 
CurrentLocation.v)<event->radius)
                {
                        ThreatLocation = event->position;
diff --git a/code/game/AI_HazardTrooper.cpp b/code/game/AI_HazardTrooper.cpp
index d5f6f82..fd4e6be 100644
--- a/code/game/AI_HazardTrooper.cpp
+++ b/code/game/AI_HazardTrooper.cpp
@@ -452,7 +452,7 @@ private:
                float                   targetNoiseLevel;
 
                gentity_t*              scanner                                 
= mActors[scannerIndex];
-               ja_gNPCstats_t* scannerStats                    = 
&(scanner->NPC->stats);
+               gNPCstats_t*    scannerStats                    = 
&(scanner->NPC->stats);
                float                   scannerMaxViewDist              = 
scannerStats->visrange;
                float                   scannerMinVisability    = 0.1f;//1.0f - 
scannerStats->vigilance;
                float                   scannerMaxHearDist              = 
scannerStats->earshot;
diff --git a/code/game/AI_SandCreature.cpp b/code/game/AI_SandCreature.cpp
index 2ec8a60..49e7b8f 100644
--- a/code/game/AI_SandCreature.cpp
+++ b/code/game/AI_SandCreature.cpp
@@ -462,7 +462,7 @@ void SandCreature_CheckMovingEnts( void )
 
 void SandCreature_SeekAlert( int alertEvent )
 {
-       ja_alertEvent_t *alert = &level.alertEvents[alertEvent];
+       alertEvent_t *alert = &level.alertEvents[alertEvent];
 
        //FIXME: check for higher alert status or closer than last location?
        NPCInfo->enemyLastSeenTime = level.time;
diff --git a/code/game/AI_Stormtrooper.cpp b/code/game/AI_Stormtrooper.cpp
index b7f78a1..dfcdf9f 100644
--- a/code/game/AI_Stormtrooper.cpp
+++ b/code/game/AI_Stormtrooper.cpp
@@ -29,10 +29,10 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 
 extern void CG_DrawAlert( vec3_t origin, float rating );
 extern void G_AddVoiceEvent( gentity_t *self, int event, int speakDebounceTime 
);
-extern void AI_GroupUpdateSquadstates( ja_AIGroupInfo_t *group, gentity_t 
*member, int newSquadState );
-extern qboolean AI_GroupContainsEntNum( ja_AIGroupInfo_t *group, int entNum );
-extern void AI_GroupUpdateEnemyLastSeen( ja_AIGroupInfo_t *group, vec3_t spot 
);
-extern void AI_GroupUpdateClearShotTime( ja_AIGroupInfo_t *group );
+extern void AI_GroupUpdateSquadstates( AIGroupInfo_t *group, gentity_t 
*member, int newSquadState );
+extern qboolean AI_GroupContainsEntNum( AIGroupInfo_t *group, int entNum );
+extern void AI_GroupUpdateEnemyLastSeen( AIGroupInfo_t *group, vec3_t spot );
+extern void AI_GroupUpdateClearShotTime( AIGroupInfo_t *group );
 extern void NPC_TempLookTarget( gentity_t *self, int lookEntNum, int 
minLookTime, int maxLookTime );
 extern qboolean G_ExpandPointToBBox( vec3_t point, const vec3_t mins, const 
vec3_t maxs, int ignore, int clipmask );
 extern void ChangeWeapon( gentity_t *ent, int newWeapon );
@@ -1854,7 +1854,7 @@ void ST_Commander( void )
 {
        int             i;//, j;
        int             cp, cpFlags;
-       ja_AIGroupInfo_t        *group = NPCInfo->group;
+       AIGroupInfo_t   *group = NPCInfo->group;
        gentity_t       *member;//, *buddy;
        qboolean        enemyLost = qfalse;
        float           avoidDist;
diff --git a/code/game/AI_Utils.cpp b/code/game/AI_Utils.cpp
index 6f13ea9..5199a61 100644
--- a/code/game/AI_Utils.cpp
+++ b/code/game/AI_Utils.cpp
@@ -33,7 +33,7 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 #define        DEFAULT_RADIUS          45
 
 extern cvar_t          *d_noGroupAI;
-qboolean AI_ValidateGroupMember( ja_AIGroupInfo_t *group, gentity_t *member );
+qboolean AI_ValidateGroupMember( AIGroupInfo_t *group, gentity_t *member );
 
 /*
 -------------------------
@@ -92,7 +92,7 @@ int AI_GetGroupSize( gentity_t *ent, int radius )
        return AI_GetGroupSize( ent->currentOrigin, radius, 
ent->client->playerTeam, ent );
 }
 
-void AI_SetClosestBuddy( ja_AIGroupInfo_t *group )
+void AI_SetClosestBuddy( AIGroupInfo_t *group )
 {
        int     i, j;
        int     dist, bestDist;
@@ -114,9 +114,9 @@ void AI_SetClosestBuddy( ja_AIGroupInfo_t *group )
        }
 }
 
-void AI_SortGroupByPathCostToEnemy( ja_AIGroupInfo_t *group )
+void AI_SortGroupByPathCostToEnemy( AIGroupInfo_t *group )
 {
-       ja_AIGroupMember_t bestMembers[MAX_GROUP_MEMBERS];
+       AIGroupMember_t bestMembers[MAX_GROUP_MEMBERS];
        int                             i, j, k;
        qboolean                sort = qfalse;
 
@@ -212,7 +212,7 @@ qboolean AI_FindSelfInPreviousGroup( gentity_t *self )
        return qfalse;
 }
 
-void AI_InsertGroupMember( ja_AIGroupInfo_t *group, gentity_t *member )
+void AI_InsertGroupMember( AIGroupInfo_t *group, gentity_t *member )
 {
        int i;
        //okay, you know what?  Check this damn group and make sure we're not 
already in here!
@@ -287,7 +287,7 @@ qboolean AI_GetNextEmptyGroup( gentity_t *self )
        }
 }
 
-qboolean AI_ValidateNoEnemyGroupMember( ja_AIGroupInfo_t *group, gentity_t 
*member )
+qboolean AI_ValidateNoEnemyGroupMember( AIGroupInfo_t *group, gentity_t 
*member )
 {
        if ( !group )
        {
@@ -318,7 +318,7 @@ qboolean AI_ValidateNoEnemyGroupMember( ja_AIGroupInfo_t 
*group, gentity_t *memb
        return qtrue;
 }
 
-qboolean AI_ValidateGroupMember( ja_AIGroupInfo_t *group, gentity_t *member )
+qboolean AI_ValidateGroupMember( AIGroupInfo_t *group, gentity_t *member )
 {
        //Validate ents
        if ( member == NULL )
@@ -468,7 +468,7 @@ void AI_GetGroup( gentity_t *self )
        }
 
        //create a new one
-       memset( self->NPC->group, 0, sizeof( ja_AIGroupInfo_t ) );
+       memset( self->NPC->group, 0, sizeof( AIGroupInfo_t ) );
 
        self->NPC->group->enemy = self->enemy;
        self->NPC->group->team = self->client->playerTeam;
@@ -534,7 +534,7 @@ void AI_GetGroup( gentity_t *self )
        AI_SetClosestBuddy( self->NPC->group );
 }
 
-void AI_SetNewGroupCommander( ja_AIGroupInfo_t *group )
+void AI_SetNewGroupCommander( AIGroupInfo_t *group )
 {
        gentity_t *member = NULL;
        group->commander = NULL;
@@ -549,7 +549,7 @@ void AI_SetNewGroupCommander( ja_AIGroupInfo_t *group )
        }
 }
 
-void AI_DeleteGroupMember( ja_AIGroupInfo_t *group, int memberNum )
+void AI_DeleteGroupMember( AIGroupInfo_t *group, int memberNum )
 {
        if ( group->commander && group->commander->s.number == 
group->member[memberNum].number )
        {
@@ -673,7 +673,7 @@ void AI_GroupMemberKilled( gentity_t *self )
        }*/
 }
 
-void AI_GroupUpdateEnemyLastSeen( ja_AIGroupInfo_t *group, vec3_t spot )
+void AI_GroupUpdateEnemyLastSeen( AIGroupInfo_t *group, vec3_t spot )
 {
        if ( !group )
        {
@@ -683,7 +683,7 @@ void AI_GroupUpdateEnemyLastSeen( ja_AIGroupInfo_t *group, 
vec3_t spot )
        VectorCopy( spot, group->enemyLastSeenPos );
 }
 
-void AI_GroupUpdateClearShotTime( ja_AIGroupInfo_t *group )
+void AI_GroupUpdateClearShotTime( AIGroupInfo_t *group )
 {
        if ( !group )
        {
@@ -692,7 +692,7 @@ void AI_GroupUpdateClearShotTime( ja_AIGroupInfo_t *group )
        group->lastClearShotTime = level.time;
 }
 
-void AI_GroupUpdateSquadstates( ja_AIGroupInfo_t *group, gentity_t *member, 
int newSquadState )
+void AI_GroupUpdateSquadstates( AIGroupInfo_t *group, gentity_t *member, int 
newSquadState )
 {
        if ( !group )
        {
@@ -712,7 +712,7 @@ void AI_GroupUpdateSquadstates( ja_AIGroupInfo_t *group, 
gentity_t *member, int
        }
 }
 
-qboolean AI_RefreshGroup( ja_AIGroupInfo_t *group )
+qboolean AI_RefreshGroup( AIGroupInfo_t *group )
 {
        gentity_t       *member;
        int                     i;//, j;
@@ -953,7 +953,7 @@ void AI_UpdateGroups( void )
        }
 }
 
-qboolean AI_GroupContainsEntNum( ja_AIGroupInfo_t *group, int entNum )
+qboolean AI_GroupContainsEntNum( AIGroupInfo_t *group, int entNum )
 {
        if ( !group )
        {
diff --git a/code/game/NPC.cpp b/code/game/NPC.cpp
index f46e8d8..328d9a2 100644
--- a/code/game/NPC.cpp
+++ b/code/game/NPC.cpp
@@ -76,13 +76,13 @@ cvar_t              *d_slowmodeath;
 extern qboolean        stop_icarus;
 
 gentity_t              *NPC;
-ja_gNPC_t                      *NPCInfo;
-ja_gclient_t           *client;
+gNPC_t                 *NPCInfo;
+gclient_t              *client;
 usercmd_t              ucmd;
 visibility_t   enemyVisibility;
 
 void NPC_SetAnim(gentity_t     *ent,int setAnimParts,int anim,int 
setAnimFlags, int iBlend);
-static bState_t G_CurrentBState( ja_gNPC_t *gNPC );
+static bState_t G_CurrentBState( gNPC_t *gNPC );
 
 extern int eventClearTime;
 
@@ -914,8 +914,8 @@ void SetNPCGlobals( gentity_t *ent )
 }
 
 gentity_t      *_saved_NPC;
-ja_gNPC_t              *_saved_NPCInfo;
-ja_gclient_t   *_saved_client;
+gNPC_t         *_saved_NPCInfo;
+gclient_t      *_saved_client;
 usercmd_t      _saved_ucmd;
 
 void SaveNPCGlobals()
@@ -2137,7 +2137,7 @@ void NPC_RunBehavior( int team, int bState )
        }
 }
 
-static bState_t G_CurrentBState( ja_gNPC_t *gNPC )
+static bState_t G_CurrentBState( gNPC_t *gNPC )
 {
        if ( gNPC->tempBehavior != BS_DEFAULT )
        {//Overrides normal behavior until cleared
diff --git a/code/game/NPC_senses.cpp b/code/game/NPC_senses.cpp
index ae50b42..2e3fc0b 100644
--- a/code/game/NPC_senses.cpp
+++ b/code/game/NPC_senses.cpp
@@ -590,7 +590,7 @@ qboolean G_RememberAlertEvent( gentity_t *self, int 
alertIndex )
 
        // Get The Event Struct
        //----------------------
-       ja_alertEvent_t&        at = level.alertEvents[alertIndex];
+       alertEvent_t&   at = level.alertEvents[alertIndex];
 
        if ( at.ID == self->NPC->lastAlertID )
        {//already know this one
@@ -865,12 +865,12 @@ void ClearPlayerAlertEvents( void )
                        {//still have more in the array
                                if ( (i+1) < MAX_ALERT_EVENTS )
                                {
-                                       memmove( &level.alertEvents[i], 
&level.alertEvents[i+1], sizeof(ja_alertEvent_t)*(MAX_ALERT_EVENTS-(i+1) ) );
+                                       memmove( &level.alertEvents[i], 
&level.alertEvents[i+1], sizeof(alertEvent_t)*(MAX_ALERT_EVENTS-(i+1) ) );
                                }
                        }
                        else
                        {//just clear this one... or should we clear the whole 
array?
-                               memset( &level.alertEvents[i], 0, sizeof( 
ja_alertEvent_t ) );
+                               memset( &level.alertEvents[i], 0, sizeof( 
alertEvent_t ) );
                        }
                }
        }
@@ -905,12 +905,12 @@ qboolean RemoveOldestAlert( void )
                {//still have more in the array
                        if ( (oldestEvent+1) < MAX_ALERT_EVENTS )
                        {
-                               memmove( &level.alertEvents[oldestEvent], 
&level.alertEvents[oldestEvent+1], 
sizeof(ja_alertEvent_t)*(MAX_ALERT_EVENTS-(oldestEvent+1) ) );
+                               memmove( &level.alertEvents[oldestEvent], 
&level.alertEvents[oldestEvent+1], 
sizeof(alertEvent_t)*(MAX_ALERT_EVENTS-(oldestEvent+1) ) );
                        }
                }
                else
                {//just clear this one... or should we clear the whole array?
-                       memset( &level.alertEvents[oldestEvent], 0, sizeof( 
ja_alertEvent_t ) );
+                       memset( &level.alertEvents[oldestEvent], 0, sizeof( 
alertEvent_t ) );
                }
        }
        //make sure this never drops below zero... if it does, something very 
very bad happened
diff --git a/code/game/NPC_spawn.cpp b/code/game/NPC_spawn.cpp
index a593d4f..fba920d 100644
--- a/code/game/NPC_spawn.cpp
+++ b/code/game/NPC_spawn.cpp
@@ -985,7 +985,7 @@ extern qboolean     stop_icarus;
 void NPC_Begin (gentity_t *ent)
 {
        vec3_t  spawn_origin, spawn_angles;
-       ja_gclient_t    *client;
+       gclient_t       *client;
        usercmd_t       ucmd;
        gentity_t       *spawnPoint = NULL;
 
@@ -1503,7 +1503,7 @@ gentity_t *NPC_Spawn_Do( gentity_t *ent, qboolean 
fullSpawnNow )
                return NULL;
        }
 
-       newent->client = (ja_gclient_t *)gi.Malloc(sizeof(ja_gclient_t), 
TAG_G_ALLOC, qtrue);
+       newent->client = (gclient_t *)gi.Malloc(sizeof(gclient_t), TAG_G_ALLOC, 
qtrue);
 
        newent->svFlags |= SVF_NPC;
 
@@ -1517,7 +1517,7 @@ gentity_t *NPC_Spawn_Do( gentity_t *ent, qboolean 
fullSpawnNow )
                newent->NPC_type = Q_strlwr( G_NewString( ent->NPC_type ) );    
//get my own copy so i can free it when i die
        }
 
-       newent->NPC = (ja_gNPC_t*) gi.Malloc(sizeof(ja_gNPC_t), TAG_G_ALLOC, 
qtrue);
+       newent->NPC = (gNPC_t*) gi.Malloc(sizeof(gNPC_t), TAG_G_ALLOC, qtrue);
 
        newent->NPC->tempGoal = G_Spawn();
 
diff --git a/code/game/NPC_stats.cpp b/code/game/NPC_stats.cpp
index 01e29cd..19611d8 100644
--- a/code/game/NPC_stats.cpp
+++ b/code/game/NPC_stats.cpp
@@ -356,9 +356,9 @@ static int MoveTypeNameToEnum( const char *name )
        return MT_STATIC;
 }
 
-extern void CG_RegisterClientRenderInfo(ja_clientInfo_t *ci, ja_renderInfo_t 
*ri);
+extern void CG_RegisterClientRenderInfo(clientInfo_t *ci, renderInfo_t *ri);
 extern void CG_RegisterClientModels (int entityNum);
-extern void CG_RegisterNPCCustomSounds( ja_clientInfo_t *ci );
+extern void CG_RegisterNPCCustomSounds( clientInfo_t *ci );
 
 //#define CONVENIENT_ANIMATION_FILE_DEBUG_THING
 
@@ -413,7 +413,7 @@ int CG_CheckAnimFrameForEventType( animevent_t *animEvents, 
int keyFrame, animEv
 ParseAnimationEvtBlock
 ======================
 */
-static void ParseAnimationEvtBlock(int glaIndex, unsigned short modelIndex, 
const char* aeb_filename, animevent_t *animEvents, ja_animation_t *animations, 
unsigned char &lastAnimEvent, const char **text_p, bool bIsFrameSkipped)
+static void ParseAnimationEvtBlock(int glaIndex, unsigned short modelIndex, 
const char* aeb_filename, animevent_t *animEvents, animation_t *animations, 
unsigned char &lastAnimEvent, const char **text_p, bool bIsFrameSkipped)
 {
        const char              *token;
        int                             num, n, animNum, keyFrame, lowestVal, 
highestVal, curAnimEvent = 0;
@@ -829,10 +829,10 @@ void G_ParseAnimationEvtFile(int glaIndex, const char* 
eventsDirectory, int file
 
        // Get The Pointers To The Anim Event Arrays
        //-------------------------------------------
-       ja_animFileSet_t&       afileset                = 
level.knownAnimFileSets[fileIndex];
+       animFileSet_t&  afileset                = 
level.knownAnimFileSets[fileIndex];
        animevent_t     *legsAnimEvents         = afileset.legsAnimEvents;
        animevent_t     *torsoAnimEvents        = afileset.torsoAnimEvents;
-       ja_animation_t  *animations                     = afileset.animations;
+       animation_t     *animations                     = afileset.animations;
 
 
        if (modelSpecific)
@@ -884,7 +884,7 @@ qboolean G_ParseAnimationFile(int glaIndex, const char 
*skeletonName, int fileIn
        float                   fps                     = 0;
        const char*             text_p          = text;
        int                             animNum         = 0;
-       ja_animation_t* animations      = 
level.knownAnimFileSets[fileIndex].animations;
+       animation_t*    animations      = 
level.knownAnimFileSets[fileIndex].animations;
        char                    skeletonPath[MAX_QPATH];
 
 
@@ -1071,7 +1071,7 @@ int               G_ParseAnimFileSet(const char 
*skeletonName, const char *modelName=0)
                level.knownAnimFileSets[fileIndex].torsoAnimEventCount = 0;
                level.knownAnimFileSets[fileIndex].legsAnimEventCount = 0;
 
-               ja_animation_t* animations              = 
level.knownAnimFileSets[fileIndex].animations;
+               animation_t*    animations              = 
level.knownAnimFileSets[fileIndex].animations;
                animevent_t*    legsAnimEvents  = 
level.knownAnimFileSets[fileIndex].legsAnimEvents;
                animevent_t*    torsoAnimEvents = 
level.knownAnimFileSets[fileIndex].torsoAnimEvents;
 
@@ -1577,8 +1577,8 @@ Precaches NPC skins, tgas and md3s.
 */
 void CG_NPC_Precache ( gentity_t *spawner )
 {
-       ja_clientInfo_t ci={};
-       ja_renderInfo_t ri={};
+       clientInfo_t    ci={};
+       renderInfo_t    ri={};
        team_t                  playerTeam = TEAM_FREE;
        const char      *token;
        const char      *value;
@@ -1941,9 +1941,9 @@ qboolean NPC_ParseParms( const char *NPCName, gentity_t 
*NPC )
        char    sound[MAX_QPATH];
        char    playerModel[MAX_QPATH];
        char    customSkin[MAX_QPATH];
-       ja_clientInfo_t *ci = &NPC->client->clientInfo;
-       ja_renderInfo_t *ri = &NPC->client->renderInfo;
-       ja_gNPCstats_t          *stats = NULL;
+       clientInfo_t    *ci = &NPC->client->clientInfo;
+       renderInfo_t    *ri = &NPC->client->renderInfo;
+       gNPCstats_t             *stats = NULL;
        qboolean        md3Model = qtrue;
        char    surfOff[1024]={0};
        char    surfOn[1024]={0};
diff --git a/code/game/NPC_utils.cpp b/code/game/NPC_utils.cpp
index c6cd5c9..d92cdd1 100644
--- a/code/game/NPC_utils.cpp
+++ b/code/game/NPC_utils.cpp
@@ -1180,7 +1180,7 @@ gentity_t *NPC_PickEnemyExt( qboolean checkAlerts = 
qfalse )
                //There is an event to look at
                if ( alertEvent >= 0 )
                {
-                       ja_alertEvent_t *event = &level.alertEvents[alertEvent];
+                       alertEvent_t *event = &level.alertEvents[alertEvent];
 
                        //Don't pay attention to our own alerts
                        if ( event->owner == NPC )
diff --git a/code/game/Q3_Interface.cpp b/code/game/Q3_Interface.cpp
index a527a58..29d659e 100644
--- a/code/game/Q3_Interface.cpp
+++ b/code/game/Q3_Interface.cpp
@@ -751,8 +751,8 @@ extern qboolean G_CheckPlayerDarkSide( void );
 static void Q3_SetObjective(const char *ObjEnum, int status)
 {
        int objectiveID;
-       ja_gclient_t    *client;
-       ja_objectives_t *objective;
+       gclient_t       *client;
+       objectives_t    *objective;
        int                             *objectivesShown;
 
        client = &level.clients[0];
@@ -4077,8 +4077,8 @@ void Q3_SetParm (int entID, int parmNum, const char 
*parmValue)
 
        if( !ent->parms )
        {
-               ent->parms = (ja_parms_t *)G_Alloc( sizeof(ja_parms_t) );
-               memset( ent->parms, 0, sizeof(ja_parms_t) );
+               ent->parms = (parms_t *)G_Alloc( sizeof(parms_t) );
+               memset( ent->parms, 0, sizeof(parms_t) );
        }
 
        if ( (val = Q3_CheckStringCounterIncrement( parmValue )) )
@@ -7453,7 +7453,7 @@ CQuake3GameInterface::CQuake3GameInterface() : 
IGameInterface()
 
        player_locked = qfalse;
 
-       ja_gclient_t* client = &level.clients[0];
+       gclient_t* client = &level.clients[0];
        memset(&client->sess, 0, sizeof(client->sess));
 }
 
diff --git a/code/game/ai.h b/code/game/ai.h
index a322258..672a5f5 100644
--- a/code/game/ai.h
+++ b/code/game/ai.h
@@ -115,8 +115,7 @@ void NPC_BSAnimal_Default( void );
 //Group AI
 #define        MAX_FRAME_GROUPS        32
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_AIGroupMember_t
+class AIGroupMember_t
 {
 public:
        int     number;
@@ -142,12 +141,11 @@ public:
         saved_game->read<int32_t>(pathCostToEnemy);
         saved_game->read<int32_t>(closestBuddy);
     }
-}; // ja_AIGroupMember_t
+}; // AIGroupMember_t
 
 #define MAX_GROUP_MEMBERS 32
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_AIGroupInfo_t
+class AIGroupInfo_t
 {
 public:
        int                     numGroup;
@@ -166,7 +164,7 @@ public:
        gentity_t       *commander;
        vec3_t          enemyLastSeenPos;
        int                     numState[ NUM_SQUAD_STATES ];
-       ja_AIGroupMember_t member[ MAX_GROUP_MEMBERS ];
+       AIGroupMember_t member[ MAX_GROUP_MEMBERS ];
 
 
     void sg_export(
@@ -212,7 +210,7 @@ public:
         saved_game->read<int32_t>(numState);
         saved_game->read<>(member);
     }
-}; // ja_AIGroupInfo_t
+}; // AIGroupInfo_t
 
 
 int    AI_GetGroupSize( vec3_t origin, int radius, team_t playerTeam, 
gentity_t *avoid = NULL );
diff --git a/code/game/b_local.h b/code/game/b_local.h
index a49df8d..8093b64 100644
--- a/code/game/b_local.h
+++ b/code/game/b_local.h
@@ -80,8 +80,8 @@ extern void Debug_NPCPrintf( gentity_t *printNPC, cvar_t *cv, 
int debugLevel, ch
 //MCG - Begin============================================================
 //NPC_ai variables - shared by NPC.cpp andf the following modules
 extern gentity_t       *NPC;
-extern ja_gNPC_t               *NPCInfo;
-extern ja_gclient_t    *client;
+extern gNPC_t          *NPCInfo;
+extern gclient_t       *client;
 extern usercmd_t       ucmd;
 extern visibility_t    enemyVisibility;
 
diff --git a/code/game/b_public.h b/code/game/b_public.h
index 5351e16..590dce5 100644
--- a/code/game/b_public.h
+++ b/code/game/b_public.h
@@ -132,7 +132,7 @@ typedef enum
 } sexType_t;
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-class ja_gNPCstats_t
+class gNPCstats_t
 {//Stats, loaded in, and can be set by scripts
 public:
        //AI
@@ -203,7 +203,7 @@ public:
         saved_game->read<int32_t>(acceleration);
         saved_game->read<int32_t>(sex);
     }
-}; // ja_gNPCstats_t
+}; // gNPCstats_t
 
 
 #define        MAX_ENEMY_POS_LAG       2400
@@ -211,8 +211,7 @@ public:
 #define        ENEMY_POS_LAG_STEPS     
(MAX_ENEMY_POS_LAG/ENEMY_POS_LAG_INTERVAL)
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_gNPC_t
+class gNPC_t
 {
 public:
        //FIXME: Put in playerInfo or something
@@ -295,13 +294,13 @@ public:
        int                     leaderAvoidSide;
        int                     lastAvoidSteerSide;
        int                     lastAvoidSteerSideDebouncer;
-       ja_AIGroupInfo_t        *group;
+       AIGroupInfo_t   *group;
        int                     troop;
 
        vec3_t          lastPathAngles;         //So we know which way to face 
generally when we stop
 
        //stats
-       ja_gNPCstats_t  stats;
+       gNPCstats_t     stats;
        int                     aimErrorDebounceTime;
        float           lastAimErrorYaw;
        float           lastAimErrorPitch;
@@ -627,7 +626,7 @@ public:
         saved_game->read<int32_t>(ffireDebounce);
         saved_game->read<int32_t>(ffireFadeDebounce);
     }
-}; // ja_gNPC_t
+}; // gNPC_t
 
 
 void G_SquadPathsInit(void);
diff --git a/code/game/bg_pangles.cpp b/code/game/bg_pangles.cpp
index ca94bf3..052dc31 100644
--- a/code/game/bg_pangles.cpp
+++ b/code/game/bg_pangles.cpp
@@ -67,7 +67,7 @@ void BG_IK_MoveLimb( CGhoul2Info_v &ghoul2, int boltIndex, 
char *animBone, char
        vec3_t holdPoint;
        vec3_t torg;
        float distToDest;
-       ja_animation_t  *anim = 
&level.knownAnimFileSets[animFileIndex].animations[basePose];
+       animation_t     *anim = 
&level.knownAnimFileSets[animFileIndex].animations[basePose];
 
        assert( ghoul2.size() );
 
diff --git a/code/game/bg_panimate.cpp b/code/game/bg_panimate.cpp
index 70d8621..48b23f0 100644
--- a/code/game/bg_panimate.cpp
+++ b/code/game/bg_panimate.cpp
@@ -4180,7 +4180,7 @@ int PM_LegsAnimForFrame( gentity_t *ent, int legsFrame )
        if( ValidAnimFileIndex( ent->client->clientInfo.animFileIndex ) == 
qfalse )
                return -1;
 
-       ja_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
        int     glaIndex = gi.G2API_GetAnimIndex(&(ent->ghoul2[0]));
 
        for ( int animation = 0; animation < BOTH_CIN_1; animation++ )  //first 
anim after last legs
@@ -4215,7 +4215,7 @@ int PM_LegsAnimForFrame( gentity_t *ent, int legsFrame )
 
 int PM_ValidateAnimRange( const int startFrame, const int endFrame, const 
float animSpeed )
 {//given a startframe and endframe, see if that lines up with any known 
animation
-       ja_animation_t *animations = level.knownAnimFileSets[0].animations;
+       animation_t *animations = level.knownAnimFileSets[0].animations;
 
        for ( int anim = 0; anim < MAX_ANIMATIONS; anim++ )
        {
@@ -4264,7 +4264,7 @@ int PM_TorsoAnimForFrame( gentity_t *ent, int torsoFrame )
        if( ValidAnimFileIndex( ent->client->clientInfo.animFileIndex ) == 
qfalse )
                return -1;
 
-       ja_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
        int     glaIndex = gi.G2API_GetAnimIndex(&(ent->ghoul2[0]));
 
        for ( int animation = 0; animation < LEGS_TURN1; animation++ )  //first 
legs only anim
@@ -4306,7 +4306,7 @@ qboolean PM_FinishedCurrentLegsAnim( gentity_t *self )
        curFrame = floor( currentFrame );
 
        int                             legsAnim        = 
self->client->ps.legsAnim;
-       ja_animation_t          *animations     = 
level.knownAnimFileSets[self->client->clientInfo.animFileIndex].animations;
+       animation_t             *animations     = 
level.knownAnimFileSets[self->client->clientInfo.animFileIndex].animations;
 
        if ( curFrame >= animations[legsAnim].firstFrame + 
(animations[legsAnim].numFrames - 2) )
        {
@@ -4337,7 +4337,7 @@ qboolean PM_HasAnimation( gentity_t *ent, int animation )
        if( ValidAnimFileIndex( ent->client->clientInfo.animFileIndex ) == 
qfalse )
                return qfalse;
 
-       ja_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
 
        //No frames, no anim
        if ( animations[animation].numFrames == 0 )
@@ -4660,8 +4660,8 @@ void PM_SetAnimFinal(int *torsoAnim,int *legsAnim,
        //----------------------------
        float                   timeScaleMod  = PM_GetTimeScaleMod( gent );
        const int               actualTime        = 
(cg.time?cg.time:level.time);
-       const ja_animation_t*   animations        = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
-       const ja_animation_t&   curAnim           = animations[anim];
+       const animation_t*      animations        = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
+       const animation_t&      curAnim           = animations[anim];
 
        // Make Sure This Character Has Such An Anim And A Model
        //-------------------------------------------------------
diff --git a/code/game/bg_pmove.cpp b/code/game/bg_pmove.cpp
index bf2b629..29223cf 100644
--- a/code/game/bg_pmove.cpp
+++ b/code/game/bg_pmove.cpp
@@ -10554,7 +10554,7 @@ qboolean PM_SaberLocked( void )
                                int     remaining = 0;
                                if( ValidAnimFileIndex( 
gent->client->clientInfo.animFileIndex ) )
                                {
-                                       ja_animation_t *anim;
+                                       animation_t *anim;
                                        float           currentFrame, junk2;
                                        int                     curFrame, junk;
                                        int                     strength = 1;
@@ -10697,7 +10697,7 @@ qboolean PM_SaberLocked( void )
 
                                if( ValidAnimFileIndex( 
genemy->client->clientInfo.animFileIndex ) )
                                {
-                                       ja_animation_t *anim;
+                                       animation_t *anim;
                                        anim = 
&level.knownAnimFileSets[genemy->client->clientInfo.animFileIndex].animations[genemy->client->ps.torsoAnim];
                                        /*
                                        float           currentFrame, junk2;
diff --git a/code/game/bg_public.h b/code/game/bg_public.h
index 4afafb1..e2e7b93 100644
--- a/code/game/bg_public.h
+++ b/code/game/bg_public.h
@@ -454,8 +454,7 @@ typedef enum {
 
 } entity_event_t;
 
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_animation_t
+class animation_t
 {
 public:
        unsigned short          firstFrame;
@@ -485,7 +484,7 @@ public:
         saved_game->read<int8_t>(loopFrames);
         saved_game->read<uint8_t>(glaIndex);
     }
-}; // ja_animation_t
+}; // animation_t
 
 #define MAX_ANIM_FILES 16
 #define MAX_ANIM_EVENTS 300
diff --git a/code/game/fields.h b/code/game/fields.h
index ba7bb10..8d35831 100644
--- a/code/game/fields.h
+++ b/code/game/fields.h
@@ -37,9 +37,9 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 #define        FOFS(x) offsetof(gentity_t, x)  // usually already defined in 
qshared.h
 #endif
 #define        STOFS(x) offsetof(spawn_temp_t, x)
-#define        LLOFS(x) offsetof(ja_level_locals_t, x)
-#define        CLOFS(x) offsetof(ja_gclient_t, x)
-#define NPCOFS(x) offsetof(ja_gNPC_t, x)
+#define        LLOFS(x) offsetof(level_locals_t, x)
+#define        CLOFS(x) offsetof(gclient_t, x)
+#define NPCOFS(x) offsetof(gNPC_t, x)
 #define VHOFS(x) offsetof(Vehicle_t, x)
 
 //
diff --git a/code/game/g_active.cpp b/code/game/g_active.cpp
index dc77d42..c40de5e 100644
--- a/code/game/g_active.cpp
+++ b/code/game/g_active.cpp
@@ -481,7 +481,7 @@ global pain sound events for all clients.
 ===============
 */
 void P_DamageFeedback( gentity_t *player ) {
-       ja_gclient_t    *client;
+       gclient_t       *client;
        float   count;
        vec3_t  angles;
 
@@ -1685,7 +1685,7 @@ Actions that happen once a second
 ==================
 */
 void ClientTimerActions( gentity_t *ent, int msec ) {
-       ja_gclient_t *client;
+       gclient_t *client;
 
        client = ent->client;
        client->timeResidual += msec;
@@ -1734,7 +1734,7 @@ void ClientTimerActions( gentity_t *ent, int msec ) {
 ClientIntermissionThink
 ====================
 */
-static qboolean ClientCinematicThink( ja_gclient_t *client ) {
+static qboolean ClientCinematicThink( gclient_t *client ) {
        client->ps.eFlags &= ~EF_FIRING;
 
        // swap button actions
@@ -1760,7 +1760,7 @@ extern void WP_SaberUpdateOldBladeData( gentity_t *ent );
 void ClientEvents( gentity_t *ent, int oldEventSequence ) {
        int             i;
        int             event;
-       ja_gclient_t *client;
+       gclient_t *client;
        //int           damage;
 #ifndef FINAL_BUILD
        qboolean        fired = qfalse;
@@ -4412,7 +4412,7 @@ This function is called ONLY from ClientThinkReal, and is 
responsible for settin
 */
 void   ClientAlterSpeed(gentity_t *ent, usercmd_t *ucmd, qboolean      
controlledByPlayer, float vehicleFrameTimeModifier)
 {
-       ja_gclient_t    *client = ent->client;
+       gclient_t       *client = ent->client;
        Vehicle_t *pVeh = NULL;
 
        if ( ent->client && ent->client->NPC_class == CLASS_VEHICLE )
@@ -4754,7 +4754,7 @@ extern float      G_CanJumpToEnemyVeh(Vehicle_t *pVeh, 
const usercmd_t *pUmcd );
 
 void ClientThink_real( gentity_t *ent, usercmd_t *ucmd )
 {
-       ja_gclient_t    *client;
+       gclient_t       *client;
        pmove_t         pm;
        vec3_t          oldOrigin;
        int                     oldEventSequence;
diff --git a/code/game/g_client.cpp b/code/game/g_client.cpp
index 5d55ebb..4fb1432 100644
--- a/code/game/g_client.cpp
+++ b/code/game/g_client.cpp
@@ -453,7 +453,7 @@ if desired.
 */
 void ClientUserinfoChanged( int clientNum ) {
        gentity_t       *ent = g_entities + clientNum;
-       ja_gclient_t    *client = ent->client;
+       gclient_t       *client = ent->client;
        int                     health=100, maxHealth=100;
        const char      *s=NULL;
        char            userinfo[MAX_INFO_STRING]={0},  
buf[MAX_INFO_STRING]={0},
@@ -526,12 +526,12 @@ char *ClientConnect( int clientNum, qboolean firstTime, 
SavedGameJustLoaded_e eS
 
        // they can connect
        ent->client = level.clients + clientNum;
-       ja_gclient_t *client = ent->client;
+       gclient_t *client = ent->client;
 
 //     if (!qbFromSavedGame)
        if (eSavedGameJustLoaded != eFULL)
        {
-               ja_clientSession_t savedSess = client->sess;    //
+               clientSession_t savedSess = client->sess;       //
                memset( client, 0, sizeof(*client) );
                client->sess = savedSess;
                if ( firstTime ) {      //not loading full, and directconnect
@@ -581,7 +581,7 @@ void ClientBegin( int clientNum, usercmd_t *cmd, 
SavedGameJustLoaded_e eSavedGam
 //                                                                             
                qboolean qbFromSavedGame
 {
        gentity_t       *ent;
-       ja_gclient_t    *client;
+       gclient_t       *client;
 
        ent = g_entities + clientNum;
        client = level.clients + clientNum;
@@ -681,7 +681,7 @@ Player_RestoreFromPrevLevel
 */
 static void Player_RestoreFromPrevLevel(gentity_t *ent, SavedGameJustLoaded_e 
eSavedGameJustLoaded)
 {
-       ja_gclient_t    *client = ent->client;
+       gclient_t       *client = ent->client;
        int                     i;
 
        assert(client);
@@ -2116,11 +2116,11 @@ qboolean ClientSpawn(gentity_t *ent, 
SavedGameJustLoaded_e eSavedGameJustLoaded
 {
        int             index;
        vec3_t  spawn_origin, spawn_angles;
-       ja_gclient_t    *client;
+       gclient_t       *client;
        int             i;
-       ja_clientPersistant_t   saved;
-       ja_clientSession_t              savedSess;
-       ja_clientInfo_t         savedCi;
+       clientPersistant_t      saved;
+       clientSession_t         savedSess;
+       clientInfo_t            savedCi;
        int             persistant[MAX_PERSISTANT];
        usercmd_t       ucmd;
        gentity_t       *spawnPoint;
@@ -2195,11 +2195,11 @@ qboolean ClientSpawn(gentity_t *ent, 
SavedGameJustLoaded_e eSavedGameJustLoaded
                        persistant[i] = client->ps.persistant[i];
                }
                //Preserve clientInfo
-               memcpy (&savedCi, &client->clientInfo, sizeof(ja_clientInfo_t));
+               memcpy (&savedCi, &client->clientInfo, sizeof(clientInfo_t));
 
                memset (client, 0, sizeof(*client));
 
-               memcpy (&client->clientInfo, &savedCi, sizeof(ja_clientInfo_t));
+               memcpy (&client->clientInfo, &savedCi, sizeof(clientInfo_t));
 
                client->pers = saved;
                client->sess = savedSess;
diff --git a/code/game/g_cmds.cpp b/code/game/g_cmds.cpp
index e211517..b34868a 100644
--- a/code/game/g_cmds.cpp
+++ b/code/game/g_cmds.cpp
@@ -126,7 +126,7 @@ Returns -1 if invalid
 ==================
 */
 int ClientNumberFromString( gentity_t *to, char *s ) {
-       ja_gclient_t    *cl;
+       gclient_t       *cl;
        int                     idnum;
        char            s2[MAX_STRING_CHARS];
        char            n2[MAX_STRING_CHARS];
diff --git a/code/game/g_combat.cpp b/code/game/g_combat.cpp
index a8566a6..42370d7 100644
--- a/code/game/g_combat.cpp
+++ b/code/game/g_combat.cpp
@@ -2049,7 +2049,7 @@ static qboolean G_Dismember( gentity_t *ent, vec3_t point,
                gi.G2API_StopBoneAnim( &limb->ghoul2[limb->playerModel], 
"pelvis" );
                gi.G2API_StopBoneAnim( &limb->ghoul2[limb->playerModel], 
"upper_lumbar" );
                //FIXME: screws up origin
-               ja_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+               animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
                //play the proper dismember anim on the limb
                gi.G2API_SetBoneAnim(&limb->ghoul2[limb->playerModel], 0, 
animations[limbAnim].firstFrame,
                                                        
animations[limbAnim].numFrames + animations[limbAnim].firstFrame,
@@ -4833,7 +4833,7 @@ CheckArmor
 */
 int CheckArmor (gentity_t *ent, int damage, int dflags, int mod)
 {
-       ja_gclient_t    *client;
+       gclient_t       *client;
        int                     save;
        int                     count;
 
@@ -5488,7 +5488,7 @@ dflags            these flags are used to control how 
T_Damage works
 */
 void G_Damage( gentity_t *targ, gentity_t *inflictor, gentity_t *attacker, 
const vec3_t dir, const vec3_t point, int damage, int dflags, int mod, int 
hitLoc )
 {
-       ja_gclient_t    *client;
+       gclient_t       *client;
        int                     take;
        int                     asave = 0;
        int                     knockback;
@@ -6330,7 +6330,7 @@ void G_Damage( gentity_t *targ, gentity_t *inflictor, 
gentity_t *attacker, const
                                        
gi.G2API_CopyGhoul2Instance(targ->ghoul2, limb->ghoul2, -1);
                                        gi.G2API_SetRootSurface(limb->ghoul2, 
limb->playerModel, "lfront");
                                        
gi.G2API_SetSurfaceOnOff(&targ->ghoul2[targ->playerModel], "lfront", TURN_OFF);
-                                       ja_animation_t *animations = 
level.knownAnimFileSets[targ->client->clientInfo.animFileIndex].animations;
+                                       animation_t *animations = 
level.knownAnimFileSets[targ->client->clientInfo.animFileIndex].animations;
 
                                        //play the proper dismember anim on the 
limb
                                        
gi.G2API_SetBoneAnim(&limb->ghoul2[limb->playerModel], 0, 
animations[BOTH_A1_BL_TR].firstFrame,
diff --git a/code/game/g_local.h b/code/game/g_local.h
index c99532e..df0d6cc 100644
--- a/code/game/g_local.h
+++ b/code/game/g_local.h
@@ -88,12 +88,11 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 #define VALIDSTRING( a )       ( ( a != NULL ) && ( a[0] != '\0' ) )
 
 //animations
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_animFileSet_t
+class animFileSet_t
 {
 public:
        char                    filename[MAX_QPATH];
-       ja_animation_t          animations[MAX_ANIMATIONS];
+       animation_t             animations[MAX_ANIMATIONS];
        animevent_t             torsoAnimEvents[MAX_ANIM_EVENTS];
        animevent_t             legsAnimEvents[MAX_ANIM_EVENTS];
        unsigned char   torsoAnimEventCount;
@@ -123,7 +122,7 @@ public:
         saved_game->read<uint8_t>(legsAnimEventCount);
         saved_game->skip(2);
     }
-}; // ja_animFileSet_t
+}; // animFileSet_t
 
 extern stringID_table_t animTable [MAX_ANIMATIONS+1];
 
@@ -172,8 +171,7 @@ enum alertEventLevel_e
 };
 
 // !!!!!!!!! LOADSAVE-affecting struct !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_alertEvent_t
+class alertEvent_t
 {
 public:
        vec3_t                          position;       //Where the event is 
located
@@ -217,7 +215,7 @@ public:
         saved_game->read<int32_t>(timestamp);
         saved_game->read<int32_t>(onGround);
     }
-}; // ja_alertEvent_t
+}; // alertEvent_t
 
 //
 // this structure is cleared as each map is entered
@@ -241,11 +239,10 @@ typedef struct
 #define        WF_PUFFING              0x00000004      // puffing something
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_level_locals_t
+class level_locals_t
 {
 public:
-       ja_gclient_t    *clients;               // [maxclients]
+       gclient_t       *clients;               // [maxclients]
 
        // store latched cvars here that we want to get at often
        int                     maxclients;
@@ -261,13 +258,13 @@ public:
        qboolean        locationLinked;                 // target_locations get 
linked
        gentity_t       *locationHead;                  // head of the location 
list
 
-       ja_alertEvent_t alertEvents[ MAX_ALERT_EVENTS ];
+       alertEvent_t    alertEvents[ MAX_ALERT_EVENTS ];
        int                             numAlertEvents;
        int                             curAlertID;
 
-       ja_AIGroupInfo_t        groups[MAX_FRAME_GROUPS];
+       AIGroupInfo_t   groups[MAX_FRAME_GROUPS];
 
-       ja_animFileSet_t        knownAnimFileSets[MAX_ANIM_FILES];
+       animFileSet_t   knownAnimFileSets[MAX_ANIM_FILES];
        int                             numKnownAnimFileSets;
 
        int                             worldFlags;
@@ -347,9 +344,9 @@ public:
         saved_game->read<int32_t>(worldFlags);
         saved_game->read<int32_t>(dmState);
     }
-}; // ja_level_locals_t
+}; // level_locals_t
 
-extern ja_level_locals_t       level;
+extern level_locals_t  level;
 extern game_export_t   globals;
 
 extern cvar_t  *g_gravity;
@@ -639,8 +636,8 @@ void Svcmd_GameMem_f( void );
 //
 // g_session.c
 //
-void G_ReadSessionData( ja_gclient_t *client );
-void G_InitSessionData( ja_gclient_t *client, char *userinfo );
+void G_ReadSessionData( gclient_t *client );
+void G_InitSessionData( gclient_t *client, char *userinfo );
 
 void G_InitWorldSession( void );
 void G_WriteSessionData( void );
diff --git a/code/game/g_main.cpp b/code/game/g_main.cpp
index 0d75924..3e4f7de 100644
--- a/code/game/g_main.cpp
+++ b/code/game/g_main.cpp
@@ -62,7 +62,7 @@ extern qboolean g_bCollidableRoffs;
 
 #define        STEPSIZE                18
 
-ja_level_locals_t      level;
+level_locals_t level;
 game_import_t  gi;
 game_export_t  globals;
 gentity_t              g_entities[MAX_GENTITIES];
@@ -759,7 +759,7 @@ void InitGame(  const char *mapname, const char 
*spawntarget, int checkSum, cons
        ClearAllInUse();
        // initialize all clients for this game
        level.maxclients = 1;
-       level.clients = (ja_gclient_t*) G_Alloc( level.maxclients * 
sizeof(level.clients[0]) );
+       level.clients = (gclient_t*) G_Alloc( level.maxclients * 
sizeof(level.clients[0]) );
        memset(level.clients, 0, level.maxclients * sizeof(level.clients[0]));
 
        // set client fields on player
diff --git a/code/game/g_misc_model.cpp b/code/game/g_misc_model.cpp
index 210ddf6..8a01b39 100644
--- a/code/game/g_misc_model.cpp
+++ b/code/game/g_misc_model.cpp
@@ -155,7 +155,7 @@ extern int G_ParseAnimFileSet( const char *skeletonName, 
const char *modelName=0
 int temp_animFileIndex;
 void set_MiscAnim( gentity_t *ent)
 {
-       ja_animation_t *animations = 
level.knownAnimFileSets[temp_animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[temp_animFileIndex].animations;
        if (ent->playerModel & 1)
        {
                int anim = BOTH_STAND3;
diff --git a/code/game/g_navigator.cpp b/code/game/g_navigator.cpp
index ed38204..297286d 100644
--- a/code/game/g_navigator.cpp
+++ b/code/game/g_navigator.cpp
@@ -2198,7 +2198,7 @@ void                      
NAV::RegisterDangerSense(gentity_t* actor, int alertEventIndex)
        // Get The Alert List For This Ent And The Alert Itself
        //------------------------------------------------------
        TAlertList&             al = mEntityAlertList[actor->s.number];
-       ja_alertEvent_t&        ae = level.alertEvents[alertEventIndex];
+       alertEvent_t&   ae = level.alertEvents[alertEventIndex];
 
        if (ae.radius<=0.0f)
        {
diff --git a/code/game/g_objectives.cpp b/code/game/g_objectives.cpp
index e206c3b..b9ced07 100644
--- a/code/game/g_objectives.cpp
+++ b/code/game/g_objectives.cpp
@@ -58,7 +58,7 @@ void OBJ_SetPendingObjectives(gentity_t *ent)
 OBJ_SaveMissionObjectives
 ============
 */
-void OBJ_SaveMissionObjectives( ja_gclient_t *client )
+void OBJ_SaveMissionObjectives( gclient_t *client )
 {
     ::gi.saved_game->write_chunk(
         INT_ID('O','B','J','T'),
@@ -73,7 +73,7 @@ OBJ_SaveObjectiveData
 */
 void OBJ_SaveObjectiveData(void)
 {
-       ja_gclient_t *client;
+       gclient_t *client;
 
        client = &level.clients[0];
 
@@ -85,7 +85,7 @@ void OBJ_SaveObjectiveData(void)
 OBJ_LoadMissionObjectives
 ============
 */
-void OBJ_LoadMissionObjectives( ja_gclient_t *client )
+void OBJ_LoadMissionObjectives( gclient_t *client )
 {
     ::gi.saved_game->read_chunk(
         INT_ID('O','B','J','T'),
@@ -100,7 +100,7 @@ OBJ_LoadObjectiveData
 */
 void OBJ_LoadObjectiveData(void)
 {
-       ja_gclient_t *client;
+       gclient_t *client;
 
        client = &level.clients[0];
 
diff --git a/code/game/g_savegame.cpp b/code/game/g_savegame.cpp
index 5d6e77c..174e514 100644
--- a/code/game/g_savegame.cpp
+++ b/code/game/g_savegame.cpp
@@ -255,9 +255,9 @@ static gentity_t *GetGEntityPtr(intptr_t iEntNum)
 
 
 
-static intptr_t GetGroupNumber(ja_AIGroupInfo_t *pGroup)
+static intptr_t GetGroupNumber(AIGroupInfo_t *pGroup)
 {
-       assert( pGroup != (ja_AIGroupInfo_t *) 0xcdcdcdcd);
+       assert( pGroup != (AIGroupInfo_t *) 0xcdcdcdcd);
 
        if (pGroup == NULL)
        {
@@ -272,7 +272,7 @@ static intptr_t GetGroupNumber(ja_AIGroupInfo_t *pGroup)
        return iReturnIndex;
 }
 
-static ja_AIGroupInfo_t *GetGroupPtr(intptr_t iGroupNum)
+static AIGroupInfo_t *GetGroupPtr(intptr_t iGroupNum)
 {
        if (iGroupNum == -1)
        {
@@ -288,12 +288,12 @@ static ja_AIGroupInfo_t *GetGroupPtr(intptr_t iGroupNum)
 /////////// gclient_t * ////////
 //
 //
-static intptr_t GetGClientNum(ja_gclient_t *c, gentity_t *ent)
+static intptr_t GetGClientNum(gclient_t *c, gentity_t *ent)
 {
        // unfortunately, I now need to see if this is a 
INT_ID('r','e','a','l') client (and therefore resolve to an enum), or
        //      whether it's one of the NPC or SP_misc_weapon_shooter
        //
-       assert(c != (ja_gclient_t *)0xcdcdcdcd);
+       assert(c != (gclient_t *)0xcdcdcdcd);
 
        if (c == NULL)
        {
@@ -310,7 +310,7 @@ static intptr_t GetGClientNum(ja_gclient_t *c, gentity_t 
*ent)
        }
 }
 
-static ja_gclient_t *GetGClientPtr(intptr_t c)
+static gclient_t *GetGClientPtr(intptr_t c)
 {
        if (c == -1)
        {
@@ -318,7 +318,7 @@ static ja_gclient_t *GetGClientPtr(intptr_t c)
        }
        if (c == -2)
        {
-               return (ja_gclient_t *) -2;     // preserve this value so that 
I know to load in one of Mike's private NPC clients later
+               return (gclient_t *) -2;        // preserve this value so that 
I know to load in one of Mike's private NPC clients later
        }
 
        assert(c >= 0);
@@ -407,11 +407,11 @@ static void EnumerateField(const save_field_t *pField, 
const byte *pbBase)
                break;
 
        case F_GROUP:
-               *(int *)pv = GetGroupNumber(*(ja_AIGroupInfo_t **)pv);
+               *(int *)pv = GetGroupNumber(*(AIGroupInfo_t **)pv);
                break;
 
        case F_GCLIENT:
-               *(intptr_t *)pv = GetGClientNum(*(ja_gclient_t **)pv, 
(gentity_t *) pbBase);
+               *(intptr_t *)pv = GetGClientNum(*(gclient_t **)pv, (gentity_t 
*) pbBase);
                break;
 
        case F_ITEM:
@@ -448,7 +448,7 @@ static void EnumerateField(const save_field_t *pField, 
const byte *pbBase)
 
        case F_ALERTEVENT:      // convert all gentity_t ptrs in an alertEvent 
array into indexes...
                {
-                       ja_alertEvent_t* p = (ja_alertEvent_t *) pv;
+                       alertEvent_t* p = (alertEvent_t *) pv;
 
                        for (int i=0; i<MAX_ALERT_EVENTS; i++)
                        {
@@ -459,7 +459,7 @@ static void EnumerateField(const save_field_t *pField, 
const byte *pbBase)
 
        case F_AIGROUPS:        // convert to ptrs within this into indexes...
                {
-                       ja_AIGroupInfo_t* p = (ja_AIGroupInfo_t *) pv;
+                       AIGroupInfo_t* p = (AIGroupInfo_t *) pv;
 
                        for (int i=0; i<MAX_FRAME_GROUPS; i++)
                        {
@@ -471,7 +471,7 @@ static void EnumerateField(const save_field_t *pField, 
const byte *pbBase)
 
        case F_ANIMFILESETS:
                {
-                       ja_animFileSet_t* p = (ja_animFileSet_t *) pv;
+                       animFileSet_t* p = (animFileSet_t *) pv;
 
                        for ( int i = 0; i < MAX_ANIM_FILES; i++ ) {
                                for ( int j = 0; j < MAX_ANIM_EVENTS; j++ ) {
@@ -562,11 +562,11 @@ static void EvaluateField(const save_field_t *pField, 
byte *pbBase, byte *pbOrig
                break;
 
        case F_GROUP:
-               *(ja_AIGroupInfo_t **)pv = GetGroupPtr(*(int *)pv);
+               *(AIGroupInfo_t **)pv = GetGroupPtr(*(int *)pv);
                break;
 
        case F_GCLIENT:
-               *(ja_gclient_t **)pv = GetGClientPtr(*(intptr_t *)pv);
+               *(gclient_t **)pv = GetGClientPtr(*(intptr_t *)pv);
                break;
 
        case F_ITEM:
@@ -602,7 +602,7 @@ static void EvaluateField(const save_field_t *pField, byte 
*pbBase, byte *pbOrig
 
        case F_ALERTEVENT:
                {
-                       ja_alertEvent_t* p = (ja_alertEvent_t *) pv;
+                       alertEvent_t* p = (alertEvent_t *) pv;
 
                        for (int i=0; i<MAX_ALERT_EVENTS; i++)
                        {
@@ -613,7 +613,7 @@ static void EvaluateField(const save_field_t *pField, byte 
*pbBase, byte *pbOrig
 
        case F_AIGROUPS:        // convert to ptrs within this into indexes...
                {
-                       ja_AIGroupInfo_t* p = (ja_AIGroupInfo_t *) pv;
+                       AIGroupInfo_t* p = (AIGroupInfo_t *) pv;
 
                        for (int i=0; i<MAX_FRAME_GROUPS; i++)
                        {
@@ -625,7 +625,7 @@ static void EvaluateField(const save_field_t *pField, byte 
*pbBase, byte *pbOrig
 
        case F_ANIMFILESETS:
                {
-                       ja_animFileSet_t* p = (ja_animFileSet_t *) pv;
+                       animFileSet_t* p = (animFileSet_t *) pv;
                        char *pO;
                        for (int i=0; i<MAX_ANIM_FILES; i++)
                        {
@@ -844,7 +844,7 @@ All pointer variables (except function pointers) must be 
handled specially.
 */
 static void WriteLevelLocals ()
 {
-       ja_level_locals_t *temp = (ja_level_locals_t 
*)gi.Malloc(sizeof(ja_level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
+       level_locals_t *temp = (level_locals_t 
*)gi.Malloc(sizeof(level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
        *temp = level;  // copy out all data into a temp space
 
        EnumerateFields(savefields_LevelLocals, temp, INT_ID('L','V','L','C'), 
LLOFS(LEVEL_LOCALS_T_SAVESTOP)); // sizeof(temp));
@@ -862,9 +862,9 @@ static void ReadLevelLocals ()
 {
        // preserve client ptr either side of the load, because clients are 
already saved/loaded through Read/Writegame...
        //
-       ja_gclient_t *pClients = level.clients; // save clients
+       gclient_t *pClients = level.clients;    // save clients
 
-       ja_level_locals_t *temp = (ja_level_locals_t 
*)gi.Malloc(sizeof(ja_level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
+       level_locals_t *temp = (level_locals_t 
*)gi.Malloc(sizeof(level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
        *temp = level;  // struct copy
        EvaluateFields(savefields_LevelLocals, temp, (byte *)&level, 
INT_ID('L','V','L','C'), LLOFS(LEVEL_LOCALS_T_SAVESTOP),qfalse);   // 
sizeof(level_locals_t));
        level = *temp;                                  // struct copy
@@ -918,14 +918,14 @@ static void WriteGEntities(qboolean qbAutosave)
                        //
                        if (tempEnt.NPC)
                        {
-                               ja_gNPC_t npc = *ent->NPC;      // NOT 
*tempEnt.NPC; !! :-)
+                               gNPC_t npc = *ent->NPC; // NOT *tempEnt.NPC; !! 
:-)
 
                                EnumerateFields(savefields_gNPC, &npc, 
INT_ID('G','N','P','C'), sizeof(npc));
                        }
 
-                       if (tempEnt.client == (ja_gclient_t *)-2)       // I 
know, I know...
+                       if (tempEnt.client == (gclient_t *)-2)  // I know, I 
know...
                        {
-                               ja_gclient_t client = *ent->client;     // NOT 
*tempEnt.client!!
+                               gclient_t client = *ent->client;        // NOT 
*tempEnt.client!!
                                EnumerateFields(savefields_gClient, &client, 
INT_ID('G','C','L','I'), sizeof(client));
                        }
 
@@ -1031,7 +1031,7 @@ static void ReadGEntities(qboolean qbAutosave)
                //
                if (pEnt->NPC)  // will be qtrue/qfalse
                {
-                       ja_gNPC_t tempNPC;
+                       gNPC_t tempNPC;
 
                        EvaluateFields(savefields_gNPC, &tempNPC,(byte 
*)pEntOriginal->NPC, INT_ID('G','N','P','C'), sizeof (*pEnt->NPC),qfalse);
 
@@ -1048,7 +1048,7 @@ static void ReadGEntities(qboolean qbAutosave)
                                // original didn't have one (hmmm...), so make 
a new one...
                                //
                                //assert(0);    // I want to know about this, 
though not in release
-                               pEnt->NPC = (ja_gNPC_t *) 
G_Alloc(sizeof(*pEnt->NPC));
+                               pEnt->NPC = (gNPC_t *) 
G_Alloc(sizeof(*pEnt->NPC));
                        }
 
                        // copy over the one we've just loaded...
@@ -1065,9 +1065,9 @@ static void ReadGEntities(qboolean qbAutosave)
                        */
                }
 
-               if (pEnt->client == (ja_gclient_t*) -2) // one of Mike G's NPC 
clients?
+               if (pEnt->client == (gclient_t*) -2)    // one of Mike G's NPC 
clients?
                {
-                       ja_gclient_t tempGClient;
+                       gclient_t tempGClient;
 
                        EvaluateFields(savefields_gClient, &tempGClient, (byte 
*)pEntOriginal->client, INT_ID('G','C','L','I'), 
sizeof(*pEnt->client),qtrue);//qfalse);
 
@@ -1083,7 +1083,7 @@ static void ReadGEntities(qboolean qbAutosave)
                        {
                                // original didn't have one (hmmm...) so make a 
new one...
                                //
-                               pEnt->client = (ja_gclient_t *) 
G_Alloc(sizeof(*pEnt->client));
+                               pEnt->client = (gclient_t *) 
G_Alloc(sizeof(*pEnt->client));
                        }
 
                        // copy over the one we've just loaded....
@@ -1100,7 +1100,7 @@ static void ReadGEntities(qboolean qbAutosave)
                //
                if (pEnt->parms)        // will be qtrue/qfalse
                {
-                       ja_parms_t tempParms;
+                       parms_t tempParms;
 
             ::gi.saved_game->read_chunk(
                 INT_ID('P','A','R','M'),
@@ -1118,7 +1118,7 @@ static void ReadGEntities(qboolean qbAutosave)
                        {
                                // original didn't have one, so make a new 
one...
                                //
-                               pEnt->parms = (ja_parms_t *) 
G_Alloc(sizeof(*pEnt->parms));
+                               pEnt->parms = (parms_t *) 
G_Alloc(sizeof(*pEnt->parms));
                        }
 
                        // copy over the one we've just loaded...
@@ -1248,7 +1248,7 @@ void WriteLevel(qboolean qbAutosave)
                // write out one client - us!
                //
                assert(level.maxclients == 1);  // I'll need to know if this 
changes, otherwise I'll need to change the way ReadGame works
-               ja_gclient_t client = level.clients[0];
+               gclient_t client = level.clients[0];
                EnumerateFields(savefields_gClient, &client, 
INT_ID('G','C','L','I'), sizeof(client));
                WriteLevelLocals();     // level_locals_t level
        }
@@ -1297,7 +1297,7 @@ void ReadLevel(qboolean qbAutosave, qboolean 
qbLoadTransition)
                //SO: We read it in, but throw it away.
 
                //Read & throw away gclient info
-               ja_gclient_t junkClient;
+               gclient_t junkClient;
                EvaluateFields(savefields_gClient, &junkClient, (byte 
*)&level.clients[0], INT_ID('G','C','L','I'), sizeof(*level.clients), 
qtrue);//qfalse);
 
                ReadLevelLocals();      // level_locals_t level
@@ -1312,7 +1312,7 @@ void ReadLevel(qboolean qbAutosave, qboolean 
qbLoadTransition)
                {
                        assert(level.maxclients == 1);  // I'll need to know if 
this changes, otherwise I'll need to change the way things work
 
-                       ja_gclient_t GClient;
+                       gclient_t GClient;
                        EvaluateFields(savefields_gClient, &GClient, (byte 
*)&level.clients[0], INT_ID('G','C','L','I'), sizeof(*level.clients), 
qtrue);//qfalse);
                        level.clients[0] = GClient;     // struct copy
                        ReadLevelLocals();      // level_locals_t level
diff --git a/code/game/g_session.cpp b/code/game/g_session.cpp
index 59beb6d..8a42757 100644
--- a/code/game/g_session.cpp
+++ b/code/game/g_session.cpp
@@ -42,7 +42,7 @@ G_WriteClientSessionData
 Called on game shutdown
 ================
 */
-void G_WriteClientSessionData( ja_gclient_t *client ) {
+void G_WriteClientSessionData( gclient_t *client ) {
        const char      *s;
        const char      *s2;
        const char      *var;
@@ -112,7 +112,7 @@ G_ReadSessionData
 Called on a reconnect
 ================
 */
-void G_ReadSessionData( ja_gclient_t *client ) {
+void G_ReadSessionData( gclient_t *client ) {
        char    s[MAX_STRING_CHARS];
        const char      *var;
        int             i;
@@ -202,8 +202,8 @@ G_InitSessionData
 Called on a first-time connect
 ================
 */
-void G_InitSessionData( ja_gclient_t *client, char *userinfo ) {
-       ja_clientSession_t      *sess;
+void G_InitSessionData( gclient_t *client, char *userinfo ) {
+       clientSession_t *sess;
 
        sess = &client->sess;
 
diff --git a/code/game/g_shared.h b/code/game/g_shared.h
index cd23705..7201c2e 100644
--- a/code/game/g_shared.h
+++ b/code/game/g_shared.h
@@ -91,8 +91,7 @@ typedef enum //# material_e
 #define        MAX_CUSTOM_JEDI_SOUNDS  22
 #define        MAX_CUSTOM_SOUNDS       (MAX_CUSTOM_JEDI_SOUNDS + 
MAX_CUSTOM_EXTRA_SOUNDS + MAX_CUSTOM_COMBAT_SOUNDS + MAX_CUSTOM_BASIC_SOUNDS)
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_clientInfo_t
+class clientInfo_t
 {
 public:
        qboolean                infoValid;
@@ -166,7 +165,7 @@ public:
         saved_game->read<int32_t>(customExtraSoundDir);
         saved_game->read<int32_t>(customJediSoundDir);
     }
-}; // ja_clientInfo_t
+}; // clientInfo_t
 
 
 //==================================================================
@@ -198,8 +197,7 @@ typedef enum
 #define        RF_LOCKEDANGLE  1
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_renderInfo_t
+class renderInfo_t
 {
 public:
        // Legs model, or full model on one piece entities
@@ -404,7 +402,7 @@ public:
         saved_game->read<int32_t>(lookingDebounceTime);
         saved_game->read<float>(legsYaw);
     }
-}; // ja_renderInfo_t
+}; // renderInfo_t
 
 // Movement information structure
 
@@ -432,8 +430,7 @@ typedef enum {
 } playerTeamStateState_t;
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_playerTeamState_t
+class playerTeamState_t
 {
 public:
        playerTeamStateState_t  state;
@@ -482,11 +479,10 @@ public:
         saved_game->read<float>(flagsince);
         saved_game->read<float>(lastfraggedcarrier);
     }
-}; // ja_playerTeamState_t
+}; // playerTeamState_t
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_objectives_t
+class objectives_t
 {
 public:
        qboolean        display;        // A displayable objective?
@@ -506,14 +502,13 @@ public:
         saved_game->read<int32_t>(display);
         saved_game->read<int32_t>(status);
     }
-}; // ja_objectives_t
+}; // objectives_t
 // NOTE: This is an arbitrary number greater than our current number of 
objectives with
 // some fluff just in case we add more in the future.
 #define MAX_MISSION_OBJ 100
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_missionStats_t
+class missionStats_t
 {
 public:
        int                             secretsFound;                           
        // # of secret areas found
@@ -569,7 +564,7 @@ public:
         saved_game->read<int32_t>(forceUsed);
         saved_game->read<int32_t>(weaponUsed);
     }
-}; // ja_missionStats_t
+}; // missionStats_t
 
 // the auto following clients don't follow a specific client
 // number, but instead follow the first two active players
@@ -582,14 +577,13 @@ public:
 // MUST be dealt with in G_InitSessionData() / G_ReadSessionData() / 
G_WriteSessionData()
 //
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_clientSession_t
+class clientSession_t
 {
 public:
        int                             missionObjectivesShown; // Number of 
times mission objectives have been updated
        team_t                  sessionTeam;
-       ja_objectives_t mission_objectives[MAX_MISSION_OBJ];
-       ja_missionStats_t       missionStats;                   // Various 
totals while on a mission
+       objectives_t    mission_objectives[MAX_MISSION_OBJ];
+       missionStats_t  missionStats;                   // Various totals while 
on a mission
 
 
     void sg_export(
@@ -609,13 +603,13 @@ public:
         saved_game->read<>(mission_objectives);
         saved_game->read<>(missionStats);
     }
-}; // ja_clientSession_t
+}; // clientSession_t
 
 // client data that stays across multiple respawns, but is cleared
 // on each level change or team change at ClientBegin()
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
 // FIXME Prefix added to avoid debugging problems in Visual Studio.
-class ja_clientPersistant_t
+class clientPersistant_t
 {
 public:
        clientConnected_t       connected;
@@ -625,7 +619,7 @@ public:
        int                     enterTime;                      // level.time 
the client entered the game
        short           cmd_angles[3];          // angles sent over in the last 
command
 
-       ja_playerTeamState_t teamState; // status in teamplay games
+       playerTeamState_t teamState;    // status in teamplay games
 
 
     void sg_export(
@@ -655,7 +649,7 @@ public:
         saved_game->skip(2);
         saved_game->read<>(teamState);
     }
-}; // ja_clientPersistant_t
+}; // clientPersistant_t
 
 typedef enum {
        BLK_NO,
@@ -692,16 +686,15 @@ typedef enum //# movetype_e
 
 // this structure is cleared on each ClientSpawn(),
 // except for 'client->pers' and 'client->sess'
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_gclient_t
+class gclient_t
 {
 public:
        // ps MUST be the first element, because the server expects it
        playerState_t   ps;                             // communicated by 
server to clients
 
        // private to game
-       ja_clientPersistant_t   pers;
-       ja_clientSession_t              sess;
+       clientPersistant_t      pers;
+       clientSession_t         sess;
 
        int                     lastCmdTime;            // level.time of last 
usercmd_t, for EF_CONNECTION
 
@@ -739,7 +732,7 @@ public:
        int                     facial_anim;            // anim to show in anim 
mode
 
        //Client info - updated when ClientInfoChanged is called, instead of 
using configstrings
-       ja_clientInfo_t clientInfo;
+       clientInfo_t    clientInfo;
        movetype_t              moveType;
        int                             jetPackTime;
        int                             fireDelay;              //msec to delay 
calling G_FireWeapon after EV_FIREWEAPON event is called
@@ -757,7 +750,7 @@ public:
        float           hiddenDist;//How close ents have to be to pick you up 
as an enemy
        vec3_t          hiddenDir;//Normalized direction in which NPCs can't 
see you (you are hidden)
 
-       ja_renderInfo_t renderInfo;
+       renderInfo_t    renderInfo;
 
        //dismember tracker
        bool            dismembered;
@@ -929,13 +922,12 @@ public:
         saved_game->read<int32_t>(inSpaceSuffocation);
         saved_game->read<int32_t>(inSpaceIndex);
     }
-}; // ja_gclient_t
+}; // gclient_t
 
 #define        MAX_PARMS       16
 #define        MAX_PARM_STRING_LENGTH  MAX_QPATH//was 16, had to lengthen it 
so they could take a valid file path
 
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class ja_parms_t
+class parms_t
 {
 public:
        char    parm[MAX_PARMS][MAX_PARM_STRING_LENGTH];
@@ -952,7 +944,7 @@ public:
     {
         saved_game->read<int8_t>(parm);
     }
-}; // ja_parms_t
+}; // parms_t
 
 #ifdef GAME_INCLUDE
 //these hold the place for the enums in functions.h so i don't have to 
recompile everytime it changes
@@ -973,7 +965,7 @@ typedef struct centity_s centity_t;
 // !!!!!!!!!!! LOADSAVE-affecting struct !!!!!!!!!!!!!
 struct gentity_s {
        entityState_t   s;                              // communicated by 
server to clients
-       ja_gclient_t    *client;        // NULL if not a player (unless it's 
NPC ( if (this->NPC != NULL)  )  <sigh>... -slc)
+       gclient_t       *client;        // NULL if not a player (unless it's 
NPC ( if (this->NPC != NULL)  )  <sigh>... -slc)
        qboolean        inuse;
        qboolean        linked;                         // qfalse if not in any 
good cluster
 
@@ -1152,7 +1144,7 @@ Ghoul2 Insert End
 //Script/ICARUS-related fields
        int                             m_iIcarusID;
        int                             taskID[NUM_TIDS];
-       ja_parms_t                      *parms;
+       parms_t                 *parms;
        char            *behaviorSet[NUM_BSETS];
        char            *script_targetname;
        int                     delayScriptTime;
@@ -1219,7 +1211,7 @@ Ghoul2 Insert End
 
        //NPC/Player entity fields
        //FIXME: Make these client only?
-       ja_gNPC_t               *NPC;//Only allocated if the entity becomes an 
NPC
+       gNPC_t          *NPC;//Only allocated if the entity becomes an NPC
 
        //Other NPC/Player-related entity fields
        char            *ownername;//Used by squadpaths to locate owning NPC
diff --git a/code/game/g_target.cpp b/code/game/g_target.cpp
index 904e190..db57c22 100644
--- a/code/game/g_target.cpp
+++ b/code/game/g_target.cpp
@@ -925,7 +925,7 @@ void set_mission_stats_cvars( void )
        char text[1024]={0};
 
        //we'll assume that the activator is the player
-       ja_gclient_t* const client = &level.clients[0];
+       gclient_t* const client = &level.clients[0];
 
        if (!client)
        {
@@ -1222,7 +1222,7 @@ void SP_target_autosave( gentity_t *self )
 void target_secret_use(gentity_t *self, gentity_t *other, gentity_t *activator)
 {
        //we'll assume that the activator is the player
-       ja_gclient_t* const client = &level.clients[0];
+       gclient_t* const client = &level.clients[0];
        client->sess.missionStats.secretsFound++;
        if ( activator )
        {
diff --git a/code/game/g_weapon.cpp b/code/game/g_weapon.cpp
index b72148d..0197f22 100644
--- a/code/game/g_weapon.cpp
+++ b/code/game/g_weapon.cpp
@@ -1663,7 +1663,7 @@ extern stringID_table_t WPTable[];
 void SP_misc_weapon_shooter( gentity_t *self )
 {
        //alloc a client just for the weapon code to use
-       self->client = (ja_gclient_t *)gi.Malloc(sizeof(ja_gclient_t), 
TAG_G_ALLOC, qtrue);
+       self->client = (gclient_t *)gi.Malloc(sizeof(gclient_t), TAG_G_ALLOC, 
qtrue);
 
        //set weapon
        self->s.weapon = self->client->ps.weapon = WP_BLASTER;
diff --git a/code/game/wp_saber.cpp b/code/game/wp_saber.cpp
index f087f1b..e8c41a4 100644
--- a/code/game/wp_saber.cpp
+++ b/code/game/wp_saber.cpp
@@ -70,7 +70,7 @@ extern void                   G_SetViewEntity( gentity_t 
*self, gentity_t *viewEntity );
 extern qboolean G_ControlledByPlayer( gentity_t *self );
 extern void G_AddVoiceEvent( gentity_t *self, int event, int speakDebounceTime 
);
 extern void CG_ChangeWeapon( int num );
-extern void CG_SaberDoWeaponHitMarks( ja_gclient_t *client, gentity_t 
*saberEnt, gentity_t *hitEnt, int saberNum, int bladeNum, vec3_t hitPos, vec3_t 
hitDir, vec3_t uaxis, vec3_t splashBackDir, float sizeTimeScale );
+extern void CG_SaberDoWeaponHitMarks( gclient_t *client, gentity_t *saberEnt, 
gentity_t *hitEnt, int saberNum, int bladeNum, vec3_t hitPos, vec3_t hitDir, 
vec3_t uaxis, vec3_t splashBackDir, float sizeTimeScale );
 extern void G_AngerAlert( gentity_t *self );
 extern void G_ReflectMissile( gentity_t *ent, gentity_t *missile, vec3_t 
forward );
 extern int G_CheckLedgeDive( gentity_t *self, float checkDist, const vec3_t 
checkVel, qboolean tryOpposite, qboolean tryPerp );
@@ -544,7 +544,7 @@ void G_Throw( gentity_t *targ, const vec3_t newDir, float 
push )
        }
 }
 
-int WP_SetSaberModel( ja_gclient_t *client, class_t npcClass )
+int WP_SetSaberModel( gclient_t *client, class_t npcClass )
 {//FIXME: read from NPCs.cfg
        if ( client )
        {
@@ -3131,7 +3131,7 @@ qboolean G_CheckIncrementLockAnim( int anim, int 
winOrLose )
 
 qboolean WP_SabersCheckLock2( gentity_t *attacker, gentity_t *defender, 
sabersLockMode_t lockMode )
 {
-       ja_animation_t *anim;
+       animation_t *anim;
        int             attAnim, defAnim, advance = 0;
        float   attStart = 0.5f, defStart = 0.5f;
        float   idealDist = 48.0f;
diff --git a/code/qcommon/q_shared.h b/code/qcommon/q_shared.h
index da6153f..6ae3fab 100644
--- a/code/qcommon/q_shared.h
+++ b/code/qcommon/q_shared.h
@@ -2278,7 +2278,6 @@ typedef struct
 // so if a playerState_t is transmitted, the entityState_t can be fully derived
 // from it.
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
 class playerState_t
 {
 public:
diff --git a/code/ui/ui_main.cpp b/code/ui/ui_main.cpp
index 2b790af..3611148 100644
--- a/code/ui/ui_main.cpp
+++ b/code/ui/ui_main.cpp
@@ -2021,7 +2021,7 @@ class ui_animFileSet_t
 {
 public:
        char                    filename[MAX_QPATH];
-       ja_animation_t          animations[MAX_ANIMATIONS];
+       animation_t             animations[MAX_ANIMATIONS];
 }; // ui_animFileSet_t
 static ui_animFileSet_t        ui_knownAnimFileSets[MAX_ANIM_FILES];
 
@@ -2036,7 +2036,7 @@ qboolean UI_ParseAnimationFile( const char *af_filename )
        float           fps;
        char            text[80000];
        int                     animNum;
-       ja_animation_t  *animations = 
ui_knownAnimFileSets[ui_numKnownAnimFileSets].animations;
+       animation_t     *animations = 
ui_knownAnimFileSets[ui_numKnownAnimFileSets].animations;
 
        len = re.GetAnimationCFG(af_filename, text, sizeof(text));
        if ( len <= 0 )
@@ -2206,7 +2206,7 @@ int UI_G2SetAnim(CGhoul2Info *ghlInfo, const char 
*boneName, int animNum, const
 
        if (animIndex != -1)
        {
-               ja_animation_t *anim = 
&ui_knownAnimFileSets[animIndex].animations[animNum];
+               animation_t *anim = 
&ui_knownAnimFileSets[animIndex].animations[animNum];
                if (anim->numFrames <= 0)
                {
                        return 0;
diff --git a/codeJK2/cgame/cg_local.h b/codeJK2/cgame/cg_local.h
index 9425260..30eb45f 100644
--- a/codeJK2/cgame/cg_local.h
+++ b/codeJK2/cgame/cg_local.h
@@ -123,7 +123,7 @@ typedef struct {
        qboolean        pitching;
 
        int                     animationNumber;        
-       jo_animation_t  *animation;
+       animation_t     *animation;
        int                     animationTime;          // time when the first 
frame of the animation will be exact
 } lerpFrame_t;
 
diff --git a/codeJK2/cgame/cg_main.cpp b/codeJK2/cgame/cg_main.cpp
index 709f443..2e12a2b 100644
--- a/codeJK2/cgame/cg_main.cpp
+++ b/codeJK2/cgame/cg_main.cpp
@@ -33,7 +33,7 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 //NOTENOTE: Be sure to change the mirrored code in g_shared.h
 typedef std::map< sstring_t, unsigned char, std::less<sstring_t>, 
std::allocator< unsigned char >  >   namePrecache_m;
 extern namePrecache_m  *as_preCacheMap;
-extern void CG_RegisterNPCCustomSounds( jo_clientInfo_t *ci );
+extern void CG_RegisterNPCCustomSounds( clientInfo_t *ci );
 extern qboolean G_AddSexToMunroString ( char *string, qboolean qDoBoth );
 extern void CG_RegisterNPCEffects( team_t team );
 extern qboolean G_ParseAnimFileSet( const char *filename, const char *animCFG, 
int *animFileIndex );
@@ -796,7 +796,7 @@ qhandle_t CG_RegisterHeadSkin( const char *headModelName, 
const char *headSkinNa
 CG_RegisterClientSkin
 ==========================
 */
-qboolean       CG_RegisterClientSkin( jo_clientInfo_t *ci,
+qboolean       CG_RegisterClientSkin( clientInfo_t *ci,
                                                                  const char 
*headModelName, const char *headSkinName,
                                                                  const char 
*torsoModelName, const char *torsoSkinName,
                                                                  const char 
*legsModelName, const char *legsSkinName)
@@ -852,7 +852,7 @@ qboolean    CG_RegisterClientSkin( jo_clientInfo_t *ci,
 CG_RegisterClientModelname
 ==========================
 */
-qboolean CG_RegisterClientModelname( jo_clientInfo_t *ci,
+qboolean CG_RegisterClientModelname( clientInfo_t *ci,
                                                                        const 
char *headModelName, const char *headSkinName,
                                                                        const 
char *torsoModelName, const char *torsoSkinName,
                                                                        const 
char *legsModelName, const char *legsSkinName )
@@ -939,7 +939,7 @@ Ghoul2 Insert End
 }
 
 
-void CG_RegisterClientRenderInfo(jo_clientInfo_t *ci, jo_renderInfo_t *ri)
+void CG_RegisterClientRenderInfo(clientInfo_t *ci, renderInfo_t *ri)
 {
        char                    *slash;
        char                    headModelName[MAX_QPATH];
@@ -1104,7 +1104,7 @@ void CG_RegisterClientModels (int entityNum)
 
        if(entityNum < MAX_CLIENTS)
        {
-               memcpy(&cgs.clientinfo[entityNum], &ent->client->clientInfo, 
sizeof(jo_clientInfo_t));
+               memcpy(&cgs.clientinfo[entityNum], &ent->client->clientInfo, 
sizeof(clientInfo_t));
        }
 }
 
diff --git a/codeJK2/cgame/cg_media.h b/codeJK2/cgame/cg_media.h
index bd0cf36..5c24c4e 100644
--- a/codeJK2/cgame/cg_media.h
+++ b/codeJK2/cgame/cg_media.h
@@ -353,7 +353,7 @@ typedef struct {
        qhandle_t               inlineDrawModel[MAX_SUBMODELS];
        vec3_t                  inlineModelMidpoints[MAX_SUBMODELS];
 
-       jo_clientInfo_t clientinfo[MAX_CLIENTS];
+       clientInfo_t    clientinfo[MAX_CLIENTS];
 
        // media
        cgMedia_t               media;
diff --git a/codeJK2/cgame/cg_players.cpp b/codeJK2/cgame/cg_players.cpp
index 7aea958..ab7edc4 100644
--- a/codeJK2/cgame/cg_players.cpp
+++ b/codeJK2/cgame/cg_players.cpp
@@ -43,7 +43,7 @@ taken from the entityState_t
 
 */
 
-qboolean CG_RegisterClientModelname( jo_clientInfo_t *ci, const char 
*headModelName, const char *headSkinName,
+qboolean CG_RegisterClientModelname( clientInfo_t *ci, const char 
*headModelName, const char *headSkinName,
                                                                        const 
char *torsoModelName, const char *torsoSkinName,
                                                                        const 
char *legsModelName, const char *legsSkinName );
 
@@ -231,7 +231,7 @@ static const char *GetCustomSound_VariantCapped(const char 
*ppsTable[], int iEnt
        return ppsTable[iEntryNum];
 }
 
-static void CG_RegisterCustomSounds(jo_clientInfo_t *ci, int iSoundEntryBase,
+static void CG_RegisterCustomSounds(clientInfo_t *ci, int iSoundEntryBase,
                                                                        int 
iTableEntries, const char *ppsTable[], const char *psDir
                                                                        )
 {
@@ -273,7 +273,7 @@ CG_CustomSound
 */
 static sfxHandle_t     CG_CustomSound( int entityNum, const char *soundName, 
int customSoundSet )
 {
-       jo_clientInfo_t *ci;
+       clientInfo_t *ci;
        int                     i;
 
        if ( soundName[0] != '*' )
@@ -407,7 +407,7 @@ CG_NewClientinfo
 */
 void CG_NewClientinfo( int clientNum )
 {
-       jo_clientInfo_t *ci;
+       clientInfo_t *ci;
        const char      *configstring;
        const char      *v;
 //     const char      *s;
@@ -481,7 +481,7 @@ void CG_NewClientinfo( int clientNum )
 /*
 CG_RegisterNPCCustomSounds
 */
-void CG_RegisterNPCCustomSounds( jo_clientInfo_t *ci )
+void CG_RegisterNPCCustomSounds( clientInfo_t *ci )
 {
 //     const char      *s;
 //     int                     i;
@@ -578,7 +578,7 @@ qboolean ValidAnimFileIndex ( int index )
 
 
 
-void ParseAnimationSndBlock(const char *asb_filename, animsounds_t 
*animSounds, jo_animation_t *animations, int *i,const char **text_p)
+void ParseAnimationSndBlock(const char *asb_filename, animsounds_t 
*animSounds, animation_t *animations, int *i,const char **text_p)
 {
        const char      *token;
        char            soundString[MAX_QPATH];
@@ -757,7 +757,7 @@ void CG_ParseAnimationSndFile( const char *as_filename, int 
animFileIndex )
        assert(animFileIndex < MAX_ANIM_FILES);
        animsounds_t    *legsAnimSnds = 
level.knownAnimFileSets[animFileIndex].legsAnimSnds;
        animsounds_t    *torsoAnimSnds = 
level.knownAnimFileSets[animFileIndex].torsoAnimSnds;
-       jo_animation_t          *animations = 
level.knownAnimFileSets[animFileIndex].animations;
+       animation_t             *animations = 
level.knownAnimFileSets[animFileIndex].animations;
 
        if ( level.knownAnimFileSets[animFileIndex].soundsCached )
        {//already cached this one
@@ -832,9 +832,9 @@ void CG_ParseAnimationSndFile( const char *as_filename, int 
animFileIndex )
 CG_SetLerpFrameAnimation
 ===============
 */
-void CG_SetLerpFrameAnimation( jo_clientInfo_t *ci, lerpFrame_t *lf, int 
newAnimation )
+void CG_SetLerpFrameAnimation( clientInfo_t *ci, lerpFrame_t *lf, int 
newAnimation )
 {
-       jo_animation_t  *anim;
+       animation_t     *anim;
 
        if ( newAnimation < 0 || newAnimation >= MAX_ANIMATIONS )
        {
@@ -870,9 +870,9 @@ Sets cg.snap, cg.oldFrame, and cg.backlerp
 cg.time should be between oldFrameTime and frameTime after exit
 ===============
 */
-qboolean CG_RunLerpFrame( jo_clientInfo_t *ci, lerpFrame_t *lf, int 
newAnimation, float fpsMod, int entNum ) {
+qboolean CG_RunLerpFrame( clientInfo_t *ci, lerpFrame_t *lf, int newAnimation, 
float fpsMod, int entNum ) {
        int                     f, animFrameTime;
-       jo_animation_t  *anim;
+       animation_t     *anim;
        qboolean        newFrame = qfalse;
 
        if(fpsMod > 2 || fpsMod < 0.5)
@@ -1002,7 +1002,7 @@ qboolean CG_RunLerpFrame( jo_clientInfo_t *ci, 
lerpFrame_t *lf, int newAnimation
 CG_ClearLerpFrame
 ===============
 */
-void CG_ClearLerpFrame( jo_clientInfo_t *ci, lerpFrame_t *lf, int 
animationNumber )
+void CG_ClearLerpFrame( clientInfo_t *ci, lerpFrame_t *lf, int animationNumber 
)
 {
        lf->frameTime = lf->oldFrameTime = cg.time;
        CG_SetLerpFrameAnimation( ci, lf, animationNumber );
@@ -1023,7 +1023,7 @@ CG_PlayerAnimation
 */
 void CG_PlayerAnimation( centity_t *cent, int *legsOld, int *legs, float 
*legsBackLerp,
                                                int *torsoOld, int *torso, 
float *torsoBackLerp ) {
-       jo_clientInfo_t *ci;
+       clientInfo_t    *ci;
        int                             legsAnim;
        int                             legsTurnAnim = -1;
        qboolean                newLegsFrame = qfalse;
@@ -1147,7 +1147,7 @@ void CG_PlayerAnimSounds( int animFileIndex, qboolean 
torso, int oldFrame, int f
                else
                {//still in same anim, check for looping anim
                        inSameAnim = qtrue;
-                       jo_animation_t *animation = 
&level.knownAnimFileSets[animFileIndex].animations[anim];
+                       animation_t *animation = 
&level.knownAnimFileSets[animFileIndex].animations[anim];
                        animBackward = (animation->frameLerp<0);
                        if ( animation->loopFrames != -1 )
                        {//a looping anim!
@@ -1666,7 +1666,7 @@ CG_AddHeadBob
 */
 static qboolean CG_AddHeadBob( centity_t *cent, vec3_t addTo )
 {
-       jo_renderInfo_t *renderInfo     = &cent->gent->client->renderInfo;
+       renderInfo_t    *renderInfo     = &cent->gent->client->renderInfo;
        const int               volume          = 
gi.VoiceVolume[cent->gent->s.clientNum];
        const int               volChange       = volume - 
renderInfo->lastVoiceVolume;//was *3 because voice fromLA was too low
        int                             i;
@@ -2181,7 +2181,7 @@ void CG_G2PlayerAngles( centity_t *cent, vec3_t legs[3], 
vec3_t angles )
                                        int turnAnim = PM_TurnAnimForLegsAnim( 
cent->gent, cent->gent->client->ps.legsAnim );
                                        if ( turnAnim != -1 && 
cent->gent->health > 0 )
                                        {
-                                               jo_animation_t *animations = 
level.knownAnimFileSets[cent->gent->client->clientInfo.animFileIndex].animations;
+                                               animation_t *animations = 
level.knownAnimFileSets[cent->gent->client->clientInfo.animFileIndex].animations;
 
                                                if ( !animatingHips || ( 
animations[turnAnim].firstFrame != startFrame ) )// only set the anim if we 
aren't going to do the same animation again
                                                {
@@ -3031,7 +3031,7 @@ void CG_PlayerSplash( centity_t *cent )
 
        if ( cent->gent && cent->gent->client )
        {
-               jo_gclient_t *cl = cent->gent->client;
+               gclient_t *cl = cent->gent->client;
 
                if ( cent->gent->disconnectDebounceTime < cg.time ) // can't do 
these expanding ripples all the time
                {
@@ -3708,7 +3708,7 @@ static void CG_G2SetHeadAnim( centity_t *cent, int anim )
 {
        gentity_t       *gent = cent->gent;
        const int blendTime = 50;
-       const jo_animation_t *animations = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
+       const animation_t *animations = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
        int     animFlags = BONE_ANIM_OVERRIDE ;//| BONE_ANIM_BLEND;
        // animSpeed is 1.0 if the frameLerp (ms/frame) is 50 (20 fps).
 //     float           timeScaleMod = 
(cg_timescale.value&&gent&&gent->s.clientNum==0&&!player_locked&&!MatrixMode&&gent->client->ps.forcePowersActive&(1<<FP_SPEED))?(1.0/cg_timescale.value):1.0;
@@ -3870,7 +3870,7 @@ CG_PlayerHeadExtension
 */
 int CG_PlayerHeadExtension( centity_t *cent, refEntity_t *head )
 {
-       jo_clientInfo_t *ci = &cent->gent->client->clientInfo;;
+       clientInfo_t    *ci = &cent->gent->client->clientInfo;;
 
        // if we have facial texture extensions, go get the sound override and 
add it to the face skin
        // if we aren't talking, then it will be 0
@@ -4372,7 +4372,7 @@ extern void FX_AddPrimitive( CEffect **effect, int 
killTime );
 //-------------------------------------------------------
 void CG_CheckSaberInWater( centity_t *cent, centity_t *scent, int modelIndex, 
vec3_t origin, vec3_t angles )
 {
-       jo_gclient_t *client = cent->gent->client;
+       gclient_t *client = cent->gent->client;
        vec3_t          saberOrg;
        if ( !client )
        {
@@ -4409,7 +4409,7 @@ void CG_AddSaberBlade( centity_t *cent, centity_t *scent, 
refEntity_t *saber, in
        trace_t trace;
        float   length;
 
-       jo_gclient_t *client = cent->gent->client;
+       gclient_t *client = cent->gent->client;
 
        if ( !client )
        {
@@ -4780,7 +4780,7 @@ CG_Player
 */
 extern qboolean G_ControlledByPlayer( gentity_t *self );
 void CG_Player( centity_t *cent ) {
-       jo_clientInfo_t *ci;
+       clientInfo_t    *ci;
        qboolean                shadow, staticScale = qfalse;
        float                   shadowPlane;
        const weaponData_t  *wData = NULL;
diff --git a/codeJK2/cgame/cg_weapons.cpp b/codeJK2/cgame/cg_weapons.cpp
index afb6973..a03fe02 100644
--- a/codeJK2/cgame/cg_weapons.cpp
+++ b/codeJK2/cgame/cg_weapons.cpp
@@ -657,14 +657,14 @@ the weapon hand animation has 3 anims,
 =================
 */
 extern qboolean ValidAnimFileIndex ( int index );
-int CG_MapTorsoToWeaponFrame( const jo_clientInfo_t *ci, int frame, int 
animNum, int weaponNum, int firing )
+int CG_MapTorsoToWeaponFrame( const clientInfo_t *ci, int frame, int animNum, 
int weaponNum, int firing )
 {
        // we should use the animNum to map a weapon frame instead of relying 
on the torso frame
        if ( !ValidAnimFileIndex( ci->animFileIndex ) )
        {
                return 0;
        }
-       jo_animation_t *animations = 
level.knownAnimFileSets[ci->animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ci->animFileIndex].animations;
        int ret=0;
 
        switch( animNum )
@@ -1054,7 +1054,7 @@ void CG_AddViewWeapon( playerState_t *ps )
        else
        {
                // get clientinfo for animation map
-               const jo_clientInfo_t   *ci = &cent->gent->client->clientInfo;
+               const clientInfo_t      *ci = &cent->gent->client->clientInfo;
                int torsoAnim = 
cent->gent->client->ps.torsoAnim;//pe.torso.animationNumber;
                float currentFrame;
                int startFrame,endFrame,flags;
diff --git a/codeJK2/game/AI_Stormtrooper.cpp b/codeJK2/game/AI_Stormtrooper.cpp
index d9a4300..d79cd1d 100644
--- a/codeJK2/game/AI_Stormtrooper.cpp
+++ b/codeJK2/game/AI_Stormtrooper.cpp
@@ -28,10 +28,10 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 
 extern void CG_DrawAlert( vec3_t origin, float rating );
 extern void G_AddVoiceEvent( gentity_t *self, int event, int speakDebounceTime 
);
-extern void AI_GroupUpdateSquadstates( jo_AIGroupInfo_t *group, gentity_t 
*member, int newSquadState );
-extern qboolean AI_GroupContainsEntNum( jo_AIGroupInfo_t *group, int entNum );
-extern void AI_GroupUpdateEnemyLastSeen( jo_AIGroupInfo_t *group, vec3_t spot 
);
-extern void AI_GroupUpdateClearShotTime( jo_AIGroupInfo_t *group );
+extern void AI_GroupUpdateSquadstates( AIGroupInfo_t *group, gentity_t 
*member, int newSquadState );
+extern qboolean AI_GroupContainsEntNum( AIGroupInfo_t *group, int entNum );
+extern void AI_GroupUpdateEnemyLastSeen( AIGroupInfo_t *group, vec3_t spot );
+extern void AI_GroupUpdateClearShotTime( AIGroupInfo_t *group );
 extern void NPC_TempLookTarget( gentity_t *self, int lookEntNum, int 
minLookTime, int maxLookTime );
 extern qboolean G_ExpandPointToBBox( vec3_t point, const vec3_t mins, const 
vec3_t maxs, int ignore, int clipmask );
 extern void ChangeWeapon( gentity_t *ent, int newWeapon );
@@ -1714,7 +1714,7 @@ void ST_Commander( void )
 {
        int             i, j;
        int             cp, cpFlags_org, cpFlags;
-       jo_AIGroupInfo_t        *group = NPCInfo->group;
+       AIGroupInfo_t   *group = NPCInfo->group;
        gentity_t       *member;//, *buddy;
        qboolean        runner = qfalse;
        qboolean        enemyLost = qfalse;
diff --git a/codeJK2/game/AI_Utils.cpp b/codeJK2/game/AI_Utils.cpp
index 511577b..bdd670f 100644
--- a/codeJK2/game/AI_Utils.cpp
+++ b/codeJK2/game/AI_Utils.cpp
@@ -36,7 +36,7 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 
 extern CNavigator      navigator;
 extern cvar_t          *d_noGroupAI;
-qboolean AI_ValidateGroupMember( jo_AIGroupInfo_t *group, gentity_t *member );
+qboolean AI_ValidateGroupMember( AIGroupInfo_t *group, gentity_t *member );
 
 /*
 -------------------------
@@ -96,7 +96,7 @@ int AI_GetGroupSize( gentity_t *ent, int radius )
 }
 
 extern int NAV_FindClosestWaypointForPoint( gentity_t *ent, vec3_t point );
-int AI_ClosestGroupEntityNumToPoint( jo_AIGroupInfo_t &group, vec3_t point )
+int AI_ClosestGroupEntityNumToPoint( AIGroupInfo_t &group, vec3_t point )
 {
        int     markerWP = WAYPOINT_NONE;
        int     cost, bestCost = Q3_INFINITE;
@@ -127,7 +127,7 @@ int AI_ClosestGroupEntityNumToPoint( jo_AIGroupInfo_t 
&group, vec3_t point )
        return closest;
 }
 
-void AI_SetClosestBuddy( jo_AIGroupInfo_t *group )
+void AI_SetClosestBuddy( AIGroupInfo_t *group )
 {
        int     i, j;
        int     dist, bestDist;
@@ -149,9 +149,9 @@ void AI_SetClosestBuddy( jo_AIGroupInfo_t *group )
        }
 }
 
-void AI_SortGroupByPathCostToEnemy( jo_AIGroupInfo_t *group )
+void AI_SortGroupByPathCostToEnemy( AIGroupInfo_t *group )
 {
-       jo_AIGroupMember_t bestMembers[MAX_GROUP_MEMBERS];
+       AIGroupMember_t bestMembers[MAX_GROUP_MEMBERS];
        int                             i, j, k;
        qboolean                sort = qfalse;
 
@@ -247,7 +247,7 @@ qboolean AI_FindSelfInPreviousGroup( gentity_t *self )
        return qfalse;
 }
 
-void AI_InsertGroupMember( jo_AIGroupInfo_t *group, gentity_t *member )
+void AI_InsertGroupMember( AIGroupInfo_t *group, gentity_t *member )
 {
        //okay, you know what?  Check this damn group and make sure we're not 
already in here!
        int i;
@@ -322,7 +322,7 @@ qboolean AI_GetNextEmptyGroup( gentity_t *self )
        }
 }
 
-qboolean AI_ValidateNoEnemyGroupMember( jo_AIGroupInfo_t *group, gentity_t 
*member )
+qboolean AI_ValidateNoEnemyGroupMember( AIGroupInfo_t *group, gentity_t 
*member )
 {
        if ( !group )
        {
@@ -353,7 +353,7 @@ qboolean AI_ValidateNoEnemyGroupMember( jo_AIGroupInfo_t 
*group, gentity_t *memb
        return qtrue;
 }
 
-qboolean AI_ValidateGroupMember( jo_AIGroupInfo_t *group, gentity_t *member )
+qboolean AI_ValidateGroupMember( AIGroupInfo_t *group, gentity_t *member )
 {
        //Validate ents
        if ( member == NULL )
@@ -494,7 +494,7 @@ void AI_GetGroup( gentity_t *self )
        }
 
        //create a new one
-       memset( self->NPC->group, 0, sizeof( jo_AIGroupInfo_t ) );
+       memset( self->NPC->group, 0, sizeof( AIGroupInfo_t ) );
 
        self->NPC->group->enemy = self->enemy;
        self->NPC->group->team = self->client->playerTeam;
@@ -560,7 +560,7 @@ void AI_GetGroup( gentity_t *self )
        AI_SetClosestBuddy( self->NPC->group );
 }
 
-void AI_SetNewGroupCommander( jo_AIGroupInfo_t *group )
+void AI_SetNewGroupCommander( AIGroupInfo_t *group )
 {
        gentity_t *member = NULL;
        group->commander = NULL;
@@ -575,7 +575,7 @@ void AI_SetNewGroupCommander( jo_AIGroupInfo_t *group )
        }
 }
 
-void AI_DeleteGroupMember( jo_AIGroupInfo_t *group, int memberNum )
+void AI_DeleteGroupMember( AIGroupInfo_t *group, int memberNum )
 {
        if ( group->commander && group->commander->s.number == 
group->member[memberNum].number )
        {
@@ -623,7 +623,7 @@ extern void ST_MarkToCover( gentity_t *self );
 extern void ST_StartFlee( gentity_t *self, gentity_t *enemy, vec3_t 
dangerPoint, int dangerLevel, int minTime, int maxTime );
 void AI_GroupMemberKilled( gentity_t *self )
 {
-       jo_AIGroupInfo_t *group = self->NPC->group;
+       AIGroupInfo_t *group = self->NPC->group;
        gentity_t       *member;
        qboolean        noflee = qfalse;
 
@@ -699,7 +699,7 @@ void AI_GroupMemberKilled( gentity_t *self )
        }
 }
 
-void AI_GroupUpdateEnemyLastSeen( jo_AIGroupInfo_t *group, vec3_t spot )
+void AI_GroupUpdateEnemyLastSeen( AIGroupInfo_t *group, vec3_t spot )
 {
        if ( !group )
        {
@@ -709,7 +709,7 @@ void AI_GroupUpdateEnemyLastSeen( jo_AIGroupInfo_t *group, 
vec3_t spot )
        VectorCopy( spot, group->enemyLastSeenPos );
 }
 
-void AI_GroupUpdateClearShotTime( jo_AIGroupInfo_t *group )
+void AI_GroupUpdateClearShotTime( AIGroupInfo_t *group )
 {
        if ( !group )
        {
@@ -718,7 +718,7 @@ void AI_GroupUpdateClearShotTime( jo_AIGroupInfo_t *group )
        group->lastClearShotTime = level.time;
 }
 
-void AI_GroupUpdateSquadstates( jo_AIGroupInfo_t *group, gentity_t *member, 
int newSquadState )
+void AI_GroupUpdateSquadstates( AIGroupInfo_t *group, gentity_t *member, int 
newSquadState )
 {
        if ( !group )
        {
@@ -738,7 +738,7 @@ void AI_GroupUpdateSquadstates( jo_AIGroupInfo_t *group, 
gentity_t *member, int
        }
 }
 
-qboolean AI_RefreshGroup( jo_AIGroupInfo_t *group )
+qboolean AI_RefreshGroup( AIGroupInfo_t *group )
 {
        gentity_t       *member;
        int                     i;//, j;
@@ -975,7 +975,7 @@ void AI_UpdateGroups( void )
        }
 }
 
-qboolean AI_GroupContainsEntNum( jo_AIGroupInfo_t *group, int entNum )
+qboolean AI_GroupContainsEntNum( AIGroupInfo_t *group, int entNum )
 {
        if ( !group )
        {
diff --git a/codeJK2/game/NPC.cpp b/codeJK2/game/NPC.cpp
index b6a69e2..30cbcec 100644
--- a/codeJK2/game/NPC.cpp
+++ b/codeJK2/game/NPC.cpp
@@ -75,8 +75,8 @@ cvar_t                *d_slowmodeath;
 extern qboolean        stop_icarus;
 
 gentity_t              *NPC;
-jo_gNPC_t                      *NPCInfo;
-jo_gclient_t           *client;
+gNPC_t                 *NPCInfo;
+gclient_t              *client;
 usercmd_t              ucmd;
 visibility_t   enemyVisibility;
 
@@ -817,8 +817,8 @@ void SetNPCGlobals( gentity_t *ent )
 }
 
 gentity_t      *_saved_NPC;
-jo_gNPC_t              *_saved_NPCInfo;
-jo_gclient_t   *_saved_client;
+gNPC_t         *_saved_NPCInfo;
+gclient_t      *_saved_client;
 usercmd_t      _saved_ucmd;
 
 void SaveNPCGlobals()
diff --git a/codeJK2/game/NPC_senses.cpp b/codeJK2/game/NPC_senses.cpp
index 8a0508f..57e6abc 100644
--- a/codeJK2/game/NPC_senses.cpp
+++ b/codeJK2/game/NPC_senses.cpp
@@ -699,12 +699,12 @@ void ClearPlayerAlertEvents( void )
                        {//still have more in the array
                                if ( (i+1) < MAX_ALERT_EVENTS )
                                {
-                                       memmove( &level.alertEvents[i], 
&level.alertEvents[i+1], sizeof(jo_alertEvent_t)*(MAX_ALERT_EVENTS-(i+1) ) );
+                                       memmove( &level.alertEvents[i], 
&level.alertEvents[i+1], sizeof(alertEvent_t)*(MAX_ALERT_EVENTS-(i+1) ) );
                                }
                        }
                        else
                        {//just clear this one... or should we clear the whole 
array?
-                               memset( &level.alertEvents[i], 0, sizeof( 
jo_alertEvent_t ) );
+                               memset( &level.alertEvents[i], 0, sizeof( 
alertEvent_t ) );
                        }
                }
        }
@@ -739,12 +739,12 @@ qboolean RemoveOldestAlert( void )
                {//still have more in the array
                        if ( (oldestEvent+1) < MAX_ALERT_EVENTS )
                        {
-                               memmove( &level.alertEvents[oldestEvent], 
&level.alertEvents[oldestEvent+1], 
sizeof(jo_alertEvent_t)*(MAX_ALERT_EVENTS-(oldestEvent+1) ) );
+                               memmove( &level.alertEvents[oldestEvent], 
&level.alertEvents[oldestEvent+1], 
sizeof(alertEvent_t)*(MAX_ALERT_EVENTS-(oldestEvent+1) ) );
                        }
                }
                else
                {//just clear this one... or should we clear the whole array?
-                       memset( &level.alertEvents[oldestEvent], 0, sizeof( 
jo_alertEvent_t ) );
+                       memset( &level.alertEvents[oldestEvent], 0, sizeof( 
alertEvent_t ) );
                }
        }
        //make sure this never drops below zero... if it does, something very 
very bad happened
diff --git a/codeJK2/game/NPC_spawn.cpp b/codeJK2/game/NPC_spawn.cpp
index c3faba7..cd2c2b3 100644
--- a/codeJK2/game/NPC_spawn.cpp
+++ b/codeJK2/game/NPC_spawn.cpp
@@ -74,7 +74,7 @@ extern void NPC_Mark2_Precache(void);
 extern void NPC_GalakMech_Precache( void );
 extern void NPC_GalakMech_Init( gentity_t *ent );
 extern void NPC_Protocol_Precache( void );
-extern int WP_SetSaberModel( jo_gclient_t *client, class_t npcClass );
+extern int WP_SetSaberModel( gclient_t *client, class_t npcClass );
 
 #define        NSF_DROP_TO_FLOOR       16
 
@@ -771,7 +771,7 @@ extern qboolean     stop_icarus;
 void NPC_Begin (gentity_t *ent)
 {
        vec3_t  spawn_origin, spawn_angles;
-       jo_gclient_t    *client;
+       gclient_t       *client;
        usercmd_t       ucmd;
        gentity_t       *spawnPoint = NULL;
 
@@ -1070,9 +1070,9 @@ void NPC_Begin (gentity_t *ent)
        }
 }
 
-jo_gNPC_t *New_NPC_t()
+gNPC_t *New_NPC_t()
 {
-       jo_gNPC_t *ptr = (jo_gNPC_t *)G_Alloc (sizeof(jo_gNPC_t));
+       gNPC_t *ptr = (gNPC_t *)G_Alloc (sizeof(gNPC_t));
 
        if (ptr)
        {
@@ -1222,7 +1222,7 @@ void NPC_Spawn_Go( gentity_t *ent )
        newent->NPC->tempGoal->owner = newent;
        newent->NPC->tempGoal->svFlags |= SVF_NOCLIENT;
 
-       newent->client = (jo_gclient_t *)G_Alloc (sizeof(jo_gclient_t));
+       newent->client = (gclient_t *)G_Alloc (sizeof(gclient_t));
        
        if ( newent->client == NULL ) 
        {
diff --git a/codeJK2/game/NPC_stats.cpp b/codeJK2/game/NPC_stats.cpp
index 1eec8d1..4aa7aab 100644
--- a/codeJK2/game/NPC_stats.cpp
+++ b/codeJK2/game/NPC_stats.cpp
@@ -301,9 +301,9 @@ static int MoveTypeNameToEnum( const char *name )
        return MT_STATIC;
 }
 
-extern void CG_RegisterClientRenderInfo(jo_clientInfo_t *ci, jo_renderInfo_t 
*ri);
+extern void CG_RegisterClientRenderInfo(clientInfo_t *ci, renderInfo_t *ri);
 extern void CG_RegisterClientModels (int entityNum);
-extern void CG_RegisterNPCCustomSounds( jo_clientInfo_t *ci );
+extern void CG_RegisterNPCCustomSounds( clientInfo_t *ci );
 extern void CG_RegisterNPCEffects( team_t team );
 extern void CG_ParseAnimationSndFile( const char *filename, int animFileIndex 
);
 
@@ -355,7 +355,7 @@ qboolean G_ParseAnimationFile( const char *af_filename )
        //int                   skip;
        char            text[40000];
        int                     animNum;
-       jo_animation_t  *animations = 
level.knownAnimFileSets[level.numKnownAnimFileSets].animations;
+       animation_t     *animations = 
level.knownAnimFileSets[level.numKnownAnimFileSets].animations;
 
        len = gi.RE_GetAnimationCFG(af_filename, NULL, 0);
        if (len <= 0)
@@ -705,8 +705,8 @@ Precaches NPC skins, tgas and md3s.
 */
 void NPC_Precache ( gentity_t *spawner )
 {
-       jo_clientInfo_t ci={};
-       jo_renderInfo_t ri={};
+       clientInfo_t    ci={};
+       renderInfo_t    ri={};
        team_t                  playerTeam = TEAM_FREE;
        const char      *token;
        const char      *value;
@@ -1069,9 +1069,9 @@ qboolean NPC_ParseParms( const char *NPCName, gentity_t 
*NPC )
        char    sound[MAX_QPATH];
        char    playerModel[MAX_QPATH];
        char    customSkin[MAX_QPATH];
-       jo_clientInfo_t *ci = &NPC->client->clientInfo;
-       jo_renderInfo_t *ri = &NPC->client->renderInfo;
-       jo_gNPCstats_t          *stats = NULL;
+       clientInfo_t    *ci = &NPC->client->clientInfo;
+       renderInfo_t    *ri = &NPC->client->renderInfo;
+       gNPCstats_t             *stats = NULL;
        qboolean        md3Model = qtrue;
        char    surfOff[1024];
        char    surfOn[1024];
diff --git a/codeJK2/game/NPC_utils.cpp b/codeJK2/game/NPC_utils.cpp
index 602fb14..b885de8 100644
--- a/codeJK2/game/NPC_utils.cpp
+++ b/codeJK2/game/NPC_utils.cpp
@@ -1108,7 +1108,7 @@ gentity_t *NPC_PickEnemyExt( qboolean checkAlerts = 
qfalse )
                //There is an event to look at
                if ( alertEvent >= 0 )
                {
-                       jo_alertEvent_t *event = &level.alertEvents[alertEvent];
+                       alertEvent_t *event = &level.alertEvents[alertEvent];
 
                        //Don't pay attention to our own alerts
                        if ( event->owner == NPC )
diff --git a/codeJK2/game/Q3_Interface.cpp b/codeJK2/game/Q3_Interface.cpp
index 86dc9ef..7a6a73c 100644
--- a/codeJK2/game/Q3_Interface.cpp
+++ b/codeJK2/game/Q3_Interface.cpp
@@ -722,8 +722,8 @@ Q3_SetObjective
 static void Q3_SetObjective(const char *ObjEnum, int status)
 {
        int objectiveID;
-       jo_gclient_t    *client;
-       jo_objectives_t *objective;
+       gclient_t       *client;
+       objectives_t    *objective;
        int                             *objectivesShown;
 
        client = &level.clients[0];
@@ -4124,8 +4124,8 @@ void Q3_SetParm (int entID, int parmNum, const char 
*parmValue)
 
        if( !ent->parms )
        {
-               ent->parms = (jo_parms_t *)G_Alloc( sizeof(jo_parms_t) );
-               memset( ent->parms, 0, sizeof(jo_parms_t) );
+               ent->parms = (parms_t *)G_Alloc( sizeof(parms_t) );
+               memset( ent->parms, 0, sizeof(parms_t) );
        }
 
        if ( (val = Q3_CheckStringCounterIncrement( parmValue )) )
@@ -9265,7 +9265,7 @@ void Interface_Init( interface_export_t *pe )
        pe->I_LinkEntity                        =       ICARUS_LinkEntity;
     pe->saved_game = gi.saved_game;
 
-       jo_gclient_t    *client;
+       gclient_t       *client;
        client = &level.clients[0];
        memset(&client->sess,0,sizeof(client->sess));
 }
diff --git a/codeJK2/game/ai.h b/codeJK2/game/ai.h
index ad0a12c..3bd7e0a 100644
--- a/codeJK2/game/ai.h
+++ b/codeJK2/game/ai.h
@@ -105,8 +105,7 @@ void NPC_BSHowler_Default( void );
 //Group AI
 #define        MAX_FRAME_GROUPS        32
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_AIGroupMember_t
+class AIGroupMember_t
 {
 public:
        int     number;
@@ -132,12 +131,11 @@ public:
         saved_game->read<int32_t>(pathCostToEnemy);
         saved_game->read<int32_t>(closestBuddy);
     }
-}; // jo_AIGroupMember_t
+}; // AIGroupMember_t
 
 #define MAX_GROUP_MEMBERS 32
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_AIGroupInfo_t
+class AIGroupInfo_t
 {
 public:
        int                     numGroup;
@@ -156,7 +154,7 @@ public:
        gentity_t       *commander;
        vec3_t          enemyLastSeenPos;
        int                     numState[ NUM_SQUAD_STATES ];
-       jo_AIGroupMember_t member[ MAX_GROUP_MEMBERS ];
+       AIGroupMember_t member[ MAX_GROUP_MEMBERS ];
 
 
     void sg_export(
@@ -202,7 +200,7 @@ public:
         saved_game->read<int32_t>(numState);
         saved_game->read<>(member);
     }
-}; // jo_AIGroupInfo_t
+}; // AIGroupInfo_t
 
 int    AI_GetGroupSize( vec3_t origin, int radius, team_t playerTeam, 
gentity_t *avoid = NULL );
 int AI_GetGroupSize( gentity_t *ent, int radius );
diff --git a/codeJK2/game/anims.h b/codeJK2/game/anims.h
index 8e87389..d4b9cb9 100644
--- a/codeJK2/game/anims.h
+++ b/codeJK2/game/anims.h
@@ -1399,12 +1399,11 @@ extern stringID_table_t animTable [MAX_ANIMATIONS+1];
 #endif// #ifndef CG_PLAYER_CPP
 
 // !!!!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_animFileSet_t
+class animFileSet_t
 {
 public:
        char                    filename[MAX_QPATH];
-       jo_animation_t          animations[MAX_ANIMATIONS];
+       animation_t             animations[MAX_ANIMATIONS];
        animsounds_t    torsoAnimSnds[MAX_ANIM_SOUNDS];
        animsounds_t    legsAnimSnds[MAX_ANIM_SOUNDS];
        qboolean                soundsCached;
@@ -1429,7 +1428,7 @@ public:
         saved_game->read<>(legsAnimSnds);
         saved_game->read<int32_t>(soundsCached);
     }
-}; // jo_animFileSet_t
+}; // animFileSet_t
 #define MAX_ANIM_FILES 64
 
 #endif// #ifndef __ANIMS_H__
diff --git a/codeJK2/game/b_local.h b/codeJK2/game/b_local.h
index dd3ebd0..4b9ed50 100644
--- a/codeJK2/game/b_local.h
+++ b/codeJK2/game/b_local.h
@@ -81,8 +81,8 @@ extern void Debug_NPCPrintf( gentity_t *printNPC, cvar_t *cv, 
int debugLevel, ch
 //MCG - Begin============================================================
 //NPC_ai variables - shared by NPC.cpp andf the following modules
 extern gentity_t       *NPC;
-extern jo_gNPC_t               *NPCInfo;
-extern jo_gclient_t    *client;
+extern gNPC_t          *NPCInfo;
+extern gclient_t       *client;
 extern usercmd_t       ucmd;
 extern visibility_t    enemyVisibility;
 
diff --git a/codeJK2/game/b_public.h b/codeJK2/game/b_public.h
index 9f76dba..66d5c29 100644
--- a/codeJK2/game/b_public.h
+++ b/codeJK2/game/b_public.h
@@ -114,7 +114,7 @@ typedef enum //# movetype_e
        NUM_MOVETYPES
 } movetype_t;
 
-class jo_gNPCstats_t
+class gNPCstats_t
 {//Stats, loaded in, and can be set by scripts
 public:
        //AI
@@ -184,7 +184,7 @@ public:
         saved_game->read<int32_t>(health);
         saved_game->read<int32_t>(acceleration);
     }
-}; // jo_gNPCstats_t
+}; // gNPCstats_t
 
 // NOTE!!!  If you add any ptr fields into this structure could you please 
tell me so I can update the load/save code?
 //     so far the only things I've got to cope with are a bunch of 
gentity_t*'s, but tell me if any more get added -slc
@@ -194,8 +194,7 @@ public:
 #define        ENEMY_POS_LAG_INTERVAL  100
 #define        ENEMY_POS_LAG_STEPS     
(MAX_ENEMY_POS_LAG/ENEMY_POS_LAG_INTERVAL)
 
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_gNPC_t
+class gNPC_t
 {
 public:
        //FIXME: Put in playerInfo or something
@@ -273,12 +272,12 @@ public:
        int                     lastSideStepSide;
        int                     sideStepHoldTime;
        int                     homeWp;
-       jo_AIGroupInfo_t        *group;
+       AIGroupInfo_t   *group;
 
        vec3_t          lastPathAngles;         //So we know which way to face 
generally when we stop
 
        //stats
-       jo_gNPCstats_t  stats;
+       gNPCstats_t     stats;
        int                     aimErrorDebounceTime;
        float           lastAimErrorYaw;
        float           lastAimErrorPitch;
@@ -555,7 +554,7 @@ public:
         saved_game->read<int32_t>(ffireDebounce);
         saved_game->read<int32_t>(ffireFadeDebounce);
     }
-}; // jo_gNPC_t
+}; // gNPC_t
 
 void G_SquadPathsInit(void);
 void NPC_InitGame( void );
diff --git a/codeJK2/game/bg_panimate.cpp b/codeJK2/game/bg_panimate.cpp
index b7e39c2..788cc41 100644
--- a/codeJK2/game/bg_panimate.cpp
+++ b/codeJK2/game/bg_panimate.cpp
@@ -1854,7 +1854,7 @@ int PM_LegsAnimForFrame( gentity_t *ent, int legsFrame )
        if( ValidAnimFileIndex( ent->client->clientInfo.animFileIndex ) == 
qfalse )
                return -1;
 
-       jo_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
 
        for ( int animation = 0; animation < FACE_TALK1; animation++ )
        {
@@ -1883,7 +1883,7 @@ int PM_LegsAnimForFrame( gentity_t *ent, int legsFrame )
 
 int PM_ValidateAnimRange( int startFrame, int endFrame, float animSpeed )
 {//given a startframe and endframe, see if that lines up with any known 
animation
-       jo_animation_t *animations = level.knownAnimFileSets[0].animations;
+       animation_t *animations = level.knownAnimFileSets[0].animations;
 
        for ( int anim = 0; anim < MAX_ANIMATIONS; anim++ )
        {
@@ -1932,7 +1932,7 @@ int PM_TorsoAnimForFrame( gentity_t *ent, int torsoFrame )
        if( ValidAnimFileIndex( ent->client->clientInfo.animFileIndex ) == 
qfalse )
                return -1;
 
-       jo_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
 
        for ( int animation = 0; animation < LEGS_WALKBACK1; animation++ )
        {
@@ -1968,7 +1968,7 @@ qboolean PM_FinishedCurrentLegsAnim( gentity_t *self )
        curFrame = floor( currentFrame );
 
        int                             legsAnim        = 
self->client->ps.legsAnim;
-       jo_animation_t          *animations     = 
level.knownAnimFileSets[self->client->clientInfo.animFileIndex].animations;
+       animation_t             *animations     = 
level.knownAnimFileSets[self->client->clientInfo.animFileIndex].animations;
 
        if ( curFrame >= animations[legsAnim].firstFrame + 
(animations[legsAnim].numFrames - 2) )
        {
@@ -1999,7 +1999,7 @@ qboolean PM_HasAnimation( gentity_t *ent, int animation )
        if( ValidAnimFileIndex( ent->client->clientInfo.animFileIndex ) == 
qfalse )
                return qfalse;
 
-       jo_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
 
        //No frames, no anim
        if ( animations[animation].numFrames == 0 )
@@ -2235,7 +2235,7 @@ void PM_SetAnimFinal(int *torsoAnim,int *legsAnim,
 #endif
                return;
        }
-       jo_animation_t *animations = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[gent->client->clientInfo.animFileIndex].animations;
        float           timeScaleMod = PM_GetTimeScaleMod( gent );
        float           animSpeed, oldAnimSpeed;
        int                     actualTime = (cg.time?cg.time:level.time);
diff --git a/codeJK2/game/bg_pmove.cpp b/codeJK2/game/bg_pmove.cpp
index 1d32026..0fb672e 100644
--- a/codeJK2/game/bg_pmove.cpp
+++ b/codeJK2/game/bg_pmove.cpp
@@ -6490,7 +6490,7 @@ qboolean PM_SaberLocked( void )
                                int     remaining = 0;
                                if( ValidAnimFileIndex( 
gent->client->clientInfo.animFileIndex ) )
                                {
-                                       jo_animation_t *anim;
+                                       animation_t *anim;
                                        float           currentFrame, junk2;
                                        int                     curFrame, junk;
                                        int                     strength = 1;
@@ -6587,7 +6587,7 @@ qboolean PM_SaberLocked( void )
                                }
                                if( ValidAnimFileIndex( 
genemy->client->clientInfo.animFileIndex ) )
                                {
-                                       jo_animation_t *anim;
+                                       animation_t *anim;
                                        anim = 
&level.knownAnimFileSets[genemy->client->clientInfo.animFileIndex].animations[genemy->client->ps.torsoAnim];
                                        /*
                                        float           currentFrame, junk2;
diff --git a/codeJK2/game/bg_public.h b/codeJK2/game/bg_public.h
index 22ec3ad..77b11b0 100644
--- a/codeJK2/game/bg_public.h
+++ b/codeJK2/game/bg_public.h
@@ -441,8 +441,7 @@ typedef enum {
 
 } entity_event_t;
 
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_animation_t
+class animation_t
 {
 public:
        int             firstFrame;
@@ -471,7 +470,7 @@ public:
         saved_game->read<int32_t>(frameLerp);
         saved_game->read<int32_t>(initialLerp);
     }
-}; // jo_animation_t
+}; // animation_t
 
 #define        MAX_RANDOM_ANIMSOUNDS   8
 
diff --git a/codeJK2/game/fields.h b/codeJK2/game/fields.h
index 42e3da3..c801467 100644
--- a/codeJK2/game/fields.h
+++ b/codeJK2/game/fields.h
@@ -37,9 +37,9 @@ along with this program; if not, see 
<http://www.gnu.org/licenses/>.
 #define        FOFS(x) offsetof(gentity_t, x)  // usually already defined in 
qshared.h
 #endif
 #define STOFS(x) offsetof(spawn_temp_t, x)
-#define LLOFS(x) offsetof(jo_level_locals_t, x)
-#define CLOFS(x) offsetof(jo_gclient_t, x)
-#define NPCOFS(x) offsetof(jo_gNPC_t, x) 
+#define LLOFS(x) offsetof(level_locals_t, x)
+#define CLOFS(x) offsetof(gclient_t, x)
+#define NPCOFS(x) offsetof(gNPC_t, x) 
 //
 #define strFOFS(x)      #x,FOFS(x)
 #define        strSTOFS(x)  #x,STOFS(x)
diff --git a/codeJK2/game/g_active.cpp b/codeJK2/game/g_active.cpp
index 0f3a69e..77dc384 100644
--- a/codeJK2/game/g_active.cpp
+++ b/codeJK2/game/g_active.cpp
@@ -419,7 +419,7 @@ global pain sound events for all clients.
 ===============
 */
 void P_DamageFeedback( gentity_t *player ) {
-       jo_gclient_t    *client;
+       gclient_t       *client;
        float   count;
        vec3_t  angles;
 
@@ -1134,7 +1134,7 @@ ClientInactivityTimer
 Returns qfalse if the client is dropped
 =================
 */
-qboolean ClientInactivityTimer( jo_gclient_t *client ) {
+qboolean ClientInactivityTimer( gclient_t *client ) {
        if ( ! g_inactivity->integer ) 
        {
                // give everyone some time, so if the operator sets 
g_inactivity during
@@ -1178,7 +1178,7 @@ Actions that happen once a second
 ==================
 */
 void ClientTimerActions( gentity_t *ent, int msec ) {
-       jo_gclient_t *client;
+       gclient_t *client;
 
        client = ent->client;
        client->timeResidual += msec;
@@ -1215,7 +1215,7 @@ void ClientTimerActions( gentity_t *ent, int msec ) {
 ClientIntermissionThink
 ====================
 */
-static qboolean ClientCinematicThink( jo_gclient_t *client ) {
+static qboolean ClientCinematicThink( gclient_t *client ) {
        client->ps.eFlags &= ~EF_FIRING;
 
        // swap button actions
@@ -1241,7 +1241,7 @@ extern void WP_SaberUpdateOldBladeData( gentity_t *ent );
 void ClientEvents( gentity_t *ent, int oldEventSequence ) {
        int             i;
        int             event;
-       jo_gclient_t *client;
+       gclient_t *client;
        //int           damage;
 #ifndef FINAL_BUILD
        qboolean        fired = qfalse;
@@ -1982,7 +1982,7 @@ usually be a couple times for each server frame on fast 
clients.
 extern int G_FindLocalInterestPoint( gentity_t *self );
 void ClientThink_real( gentity_t *ent, usercmd_t *ucmd ) 
 {
-       jo_gclient_t    *client;
+       gclient_t       *client;
        pmove_t         pm;
        vec3_t          oldOrigin;
        int                     oldEventSequence;
diff --git a/codeJK2/game/g_client.cpp b/codeJK2/game/g_client.cpp
index e460630..6f34d83 100644
--- a/codeJK2/game/g_client.cpp
+++ b/codeJK2/game/g_client.cpp
@@ -382,7 +382,7 @@ ForceClientSkin
 Forces a client's skin (for teamplay)
 ===========
 */
-void ForceClientSkin( jo_gclient_t *client, char *model, const char *skin ) {
+void ForceClientSkin( gclient_t *client, char *model, const char *skin ) {
        char *p;
 
        if ((p = strchr(model, '/')) != NULL) {
@@ -469,7 +469,7 @@ if desired.
 */
 void ClientUserinfoChanged( int clientNum ) {
        gentity_t       *ent = g_entities + clientNum;
-       jo_gclient_t    *client = ent->client;
+       gclient_t       *client = ent->client;
        int                     health=100, maxHealth=100;
        const char      *s=NULL, *sex=NULL;
        char            userinfo[MAX_INFO_STRING]={0},  
buf[MAX_INFO_STRING]={0},
@@ -540,12 +540,12 @@ char *ClientConnect( int clientNum, qboolean firstTime, 
SavedGameJustLoaded_e eS
 
        // they can connect
        ent->client = level.clients + clientNum;
-       jo_gclient_t *client = ent->client;
+       gclient_t *client = ent->client;
 
 //     if (!qbFromSavedGame)
        if (eSavedGameJustLoaded != eFULL)
        {
-               jo_clientSession_t savedSess = client->sess;    //
+               clientSession_t savedSess = client->sess;       //
                memset( client, 0, sizeof(*client) );
                client->sess = savedSess;
        }
@@ -591,7 +591,7 @@ void ClientBegin( int clientNum, usercmd_t *cmd, 
SavedGameJustLoaded_e eSavedGam
 //                                                                             
                qboolean qbFromSavedGame
 {
        gentity_t       *ent;
-       jo_gclient_t    *client;
+       gclient_t       *client;
 
        ent = g_entities + clientNum;
        client = level.clients + clientNum;
@@ -688,7 +688,7 @@ Player_RestoreFromPrevLevel
 */
 void Player_RestoreFromPrevLevel(gentity_t *ent)
 {
-       jo_gclient_t    *client = ent->client;
+       gclient_t       *client = ent->client;
        int                     i;
 
        assert(client);
@@ -1518,11 +1518,11 @@ qboolean ClientSpawn(gentity_t *ent, 
SavedGameJustLoaded_e eSavedGameJustLoaded
 {
        int             index;
        vec3_t  spawn_origin, spawn_angles;
-       jo_gclient_t    *client;
+       gclient_t       *client;
        int             i;
-       jo_clientPersistant_t   saved;
-       jo_clientSession_t              savedSess;
-       jo_clientInfo_t         savedCi;
+       clientPersistant_t      saved;
+       clientSession_t         savedSess;
+       clientInfo_t            savedCi;
        int             persistant[MAX_PERSISTANT];
        usercmd_t       ucmd;
        gentity_t       *spawnPoint;
@@ -1587,11 +1587,11 @@ qboolean ClientSpawn(gentity_t *ent, 
SavedGameJustLoaded_e eSavedGameJustLoaded
                        persistant[i] = client->ps.persistant[i];
                }
                //Preserve clientInfo
-               memcpy (&savedCi, &client->clientInfo, sizeof(jo_clientInfo_t));
+               memcpy (&savedCi, &client->clientInfo, sizeof(clientInfo_t));
 
                memset (client, 0, sizeof(*client));
 
-               memcpy (&client->clientInfo, &savedCi, sizeof(jo_clientInfo_t));
+               memcpy (&client->clientInfo, &savedCi, sizeof(clientInfo_t));
 
                client->pers = saved;
                client->sess = savedSess;
diff --git a/codeJK2/game/g_cmds.cpp b/codeJK2/game/g_cmds.cpp
index ac38665..668e021 100644
--- a/codeJK2/game/g_cmds.cpp
+++ b/codeJK2/game/g_cmds.cpp
@@ -125,7 +125,7 @@ Returns -1 if invalid
 ==================
 */
 int ClientNumberFromString( gentity_t *to, char *s ) {
-       jo_gclient_t    *cl;
+       gclient_t       *cl;
        int                     idnum;
        char            s2[MAX_STRING_CHARS];
        char            n2[MAX_STRING_CHARS];
diff --git a/codeJK2/game/g_combat.cpp b/codeJK2/game/g_combat.cpp
index 684df30..efdee55 100644
--- a/codeJK2/game/g_combat.cpp
+++ b/codeJK2/game/g_combat.cpp
@@ -1863,7 +1863,7 @@ static qboolean G_Dismember( gentity_t *ent, vec3_t point,
                gi.G2API_StopBoneAnim( &limb->ghoul2[limb->playerModel], 
"pelvis" );
                gi.G2API_StopBoneAnim( &limb->ghoul2[limb->playerModel], 
"upper_lumbar" );
                //FIXME: screws up origin
-               jo_animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
+               animation_t *animations = 
level.knownAnimFileSets[ent->client->clientInfo.animFileIndex].animations;
                //play the proper dismember anim on the limb
                gi.G2API_SetBoneAnim(&limb->ghoul2[limb->playerModel], 0, 
animations[limbAnim].firstFrame,
                                                        
animations[limbAnim].numFrames + animations[limbAnim].firstFrame,
@@ -4303,7 +4303,7 @@ CheckArmor
 */
 int CheckArmor (gentity_t *ent, int damage, int dflags)
 {
-       jo_gclient_t    *client;
+       gclient_t       *client;
        int                     save;
        int                     count;
 
@@ -4794,7 +4794,7 @@ dflags            these flags are used to control how 
T_Damage works
 
 void G_Damage( gentity_t *targ, gentity_t *inflictor, gentity_t *attacker, 
vec3_t dir, vec3_t point, int damage, int dflags, int mod, int hitLoc )
 {
-       jo_gclient_t    *client;
+       gclient_t       *client;
        int                     take;
        int                     asave = 0;
        int                     knockback;
diff --git a/codeJK2/game/g_local.h b/codeJK2/game/g_local.h
index 58f8d08..a20601e 100644
--- a/codeJK2/game/g_local.h
+++ b/codeJK2/game/g_local.h
@@ -129,8 +129,7 @@ enum alertEventLevel_e
 };
 
 // !!!!!!!!! LOADSAVE-affecting struct !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_alertEvent_t
+class alertEvent_t
 {
 public:
        vec3_t                          position;       //Where the event is 
located
@@ -171,7 +170,7 @@ public:
         saved_game->read<int32_t>(ID);
         saved_game->read<int32_t>(timestamp);
     }
-}; // jo_alertEvent_t
+}; // alertEvent_t
 
 //
 // this structure is cleared as each map is entered
@@ -194,11 +193,10 @@ typedef struct
 #define        WF_SNOWING      0x00000002      //snowing
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_level_locals_t
+class level_locals_t
 {
 public:
-       jo_gclient_t    *clients;               // [maxclients]
+       gclient_t       *clients;               // [maxclients]
 
        // store latched cvars here that we want to get at often
        int                     maxclients;
@@ -214,13 +212,13 @@ public:
        qboolean        locationLinked;                 // target_locations get 
linked
        gentity_t       *locationHead;                  // head of the location 
list
 
-       jo_alertEvent_t alertEvents[ MAX_ALERT_EVENTS ];
+       alertEvent_t    alertEvents[ MAX_ALERT_EVENTS ];
        int                             numAlertEvents;
        int                             curAlertID;
 
-       jo_AIGroupInfo_t        groups[MAX_FRAME_GROUPS];
+       AIGroupInfo_t   groups[MAX_FRAME_GROUPS];
 
-       jo_animFileSet_t        knownAnimFileSets[MAX_ANIM_FILES];
+       animFileSet_t   knownAnimFileSets[MAX_ANIM_FILES];
        int                             numKnownAnimFileSets;
 
        int                             worldFlags;
@@ -293,9 +291,9 @@ public:
         saved_game->read<int32_t>(worldFlags);
         saved_game->read<int32_t>(dmState);
     }
-}; // jo_level_locals_t
+}; // level_locals_t
 
-extern jo_level_locals_t       level;
+extern level_locals_t  level;
 extern game_export_t   globals;
 
 extern cvar_t  *g_gravity;
@@ -471,8 +469,8 @@ team_t PickTeam( int ignoreClientNum );
 void SetClientViewAngle( gentity_t *ent, vec3_t angle );
 gentity_t *SelectSpawnPoint ( vec3_t avoidPoint, team_t team, vec3_t origin, 
vec3_t angles );
 void respawn (gentity_t *ent);
-void InitClientPersistant (jo_gclient_t *client);
-void InitClientResp (jo_gclient_t *client);
+void InitClientPersistant (gclient_t *client);
+void InitClientResp (gclient_t *client);
 qboolean ClientSpawn( gentity_t *ent, SavedGameJustLoaded_e 
eSavedGameJustLoaded );
 void player_die (gentity_t *self, gentity_t *inflictor, gentity_t *attacker, 
int damage, int mod, int dFlags, int hitLoc);
 void AddScore( gentity_t *ent, int score );
@@ -576,8 +574,8 @@ void Svcmd_GameMem_f( void );
 //
 // g_session.c
 //
-void G_ReadSessionData( jo_gclient_t *client );
-void G_InitSessionData( jo_gclient_t *client, char *userinfo );
+void G_ReadSessionData( gclient_t *client );
+void G_InitSessionData( gclient_t *client, char *userinfo );
 
 void G_InitWorldSession( void );
 void G_WriteSessionData( void );
diff --git a/codeJK2/game/g_main.cpp b/codeJK2/game/g_main.cpp
index 4306808..cafe9d6 100644
--- a/codeJK2/game/g_main.cpp
+++ b/codeJK2/game/g_main.cpp
@@ -44,7 +44,7 @@ int           eventClearTime = 0;
 
 #define        STEPSIZE                18
 
-jo_level_locals_t      level;
+level_locals_t level;
 game_import_t  gi;
 game_export_t  globals;
 gentity_t              g_entities[MAX_GENTITIES];
@@ -645,7 +645,7 @@ void InitGame(  const char *mapname, const char 
*spawntarget, int checkSum, cons
        ClearAllInUse();
        // initialize all clients for this game
        level.maxclients = 1;
-       level.clients = (jo_gclient_t *) G_Alloc( level.maxclients * 
sizeof(level.clients[0]) );
+       level.clients = (gclient_t *) G_Alloc( level.maxclients * 
sizeof(level.clients[0]) );
        memset(level.clients, 0, level.maxclients * sizeof(level.clients[0]));
 
        // set client fields on player
diff --git a/codeJK2/game/g_misc_model.cpp b/codeJK2/game/g_misc_model.cpp
index a3e3226..3587e13 100644
--- a/codeJK2/game/g_misc_model.cpp
+++ b/codeJK2/game/g_misc_model.cpp
@@ -158,7 +158,7 @@ extern qboolean G_ParseAnimFileSet( const char *filename, 
const char *animCFG, i
 int temp_animFileIndex;
 void set_MiscAnim( gentity_t *ent)
 {
-       jo_animation_t *animations = 
level.knownAnimFileSets[temp_animFileIndex].animations;
+       animation_t *animations = 
level.knownAnimFileSets[temp_animFileIndex].animations;
        if (ent->playerModel & 1)
        {
                int anim = BOTH_STAND3;
diff --git a/codeJK2/game/g_objectives.cpp b/codeJK2/game/g_objectives.cpp
index dbd6c5c..60c9ade 100644
--- a/codeJK2/game/g_objectives.cpp
+++ b/codeJK2/game/g_objectives.cpp
@@ -60,7 +60,7 @@ void OBJ_SetPendingObjectives(gentity_t *ent)
 OBJ_SaveMissionObjectives
 ============
 */
-void OBJ_SaveMissionObjectives( jo_gclient_t *client )
+void OBJ_SaveMissionObjectives( gclient_t *client )
 {
     ::gi.saved_game->write_chunk(
         INT_ID('O','B','J','T'),
@@ -75,7 +75,7 @@ OBJ_SaveObjectiveData
 */
 void OBJ_SaveObjectiveData(void)
 {
-       jo_gclient_t *client;
+       gclient_t *client;
 
        client = &level.clients[0];
 
@@ -87,7 +87,7 @@ void OBJ_SaveObjectiveData(void)
 OBJ_LoadMissionObjectives
 ============
 */
-void OBJ_LoadMissionObjectives( jo_gclient_t *client )
+void OBJ_LoadMissionObjectives( gclient_t *client )
 {
     ::gi.saved_game->read_chunk(
         INT_ID('O','B','J','T'),
@@ -102,7 +102,7 @@ OBJ_LoadObjectiveData
 */
 void OBJ_LoadObjectiveData(void)
 {
-       jo_gclient_t *client;
+       gclient_t *client;
 
        client = &level.clients[0];
 
diff --git a/codeJK2/game/g_savegame.cpp b/codeJK2/game/g_savegame.cpp
index e4c9ca9..530ab2a 100644
--- a/codeJK2/game/g_savegame.cpp
+++ b/codeJK2/game/g_savegame.cpp
@@ -239,9 +239,9 @@ gentity_t *GetGEntityPtr(intptr_t iEntNum)
        return (g_entities + iEntNum);
 }
 
-static intptr_t GetGroupNumber(jo_AIGroupInfo_t *pGroup)
+static intptr_t GetGroupNumber(AIGroupInfo_t *pGroup)
 {
-       assert( pGroup != (jo_AIGroupInfo_t *) 0xcdcdcdcd);
+       assert( pGroup != (AIGroupInfo_t *) 0xcdcdcdcd);
 
        if (pGroup == NULL)
        {
@@ -256,7 +256,7 @@ static intptr_t GetGroupNumber(jo_AIGroupInfo_t *pGroup)
        return iReturnIndex;
 }
 
-static jo_AIGroupInfo_t *GetGroupPtr(intptr_t iGroupNum)
+static AIGroupInfo_t *GetGroupPtr(intptr_t iGroupNum)
 {
        if (iGroupNum == -1)
        {
@@ -272,9 +272,9 @@ static jo_AIGroupInfo_t *GetGroupPtr(intptr_t iGroupNum)
 /////////// gclient_t * ////////
 //
 //
-intptr_t GetGClientNum(jo_gclient_t *c)
+intptr_t GetGClientNum(gclient_t *c)
 {
-       assert(c != (jo_gclient_t *)0xcdcdcdcd);
+       assert(c != (gclient_t *)0xcdcdcdcd);
 
        if (c == NULL)
        {
@@ -284,7 +284,7 @@ intptr_t GetGClientNum(jo_gclient_t *c)
        return (c - level.clients);
 }
 
-jo_gclient_t *GetGClientPtr(intptr_t c)
+gclient_t *GetGClientPtr(intptr_t c)
 {
        if (c == -1)
        {
@@ -292,7 +292,7 @@ jo_gclient_t *GetGClientPtr(intptr_t c)
        }
        if (c == -2)
        {
-               return (jo_gclient_t *) -2;     // preserve this value so that 
I know to load in one of Mike's private NPC clients later
+               return (gclient_t *) -2;        // preserve this value so that 
I know to load in one of Mike's private NPC clients later
        }
 
        assert(c >= 0);
@@ -350,7 +350,7 @@ void EnumerateField(const field_t *pField, byte *pbBase)
                break;
 
        case F_GROUP:
-               *(intptr_t *)pv = GetGroupNumber(*(jo_AIGroupInfo_t **)pv);
+               *(intptr_t *)pv = GetGroupNumber(*(AIGroupInfo_t **)pv);
                break;
 
        case F_GCLIENT:
@@ -364,7 +364,7 @@ void EnumerateField(const field_t *pField, byte *pbBase)
                {
                        // regular client...
                        //
-                       *(intptr_t *)pv = GetGClientNum(*(jo_gclient_t **)pv);
+                       *(intptr_t *)pv = GetGClientNum(*(gclient_t **)pv);
                        break;
                }
                else
@@ -406,7 +406,7 @@ void EnumerateField(const field_t *pField, byte *pbBase)
 
        case F_ALERTEVENT:      // convert all gentity_t ptrs in an alertEvent 
array into indexes...
                {
-                       jo_alertEvent_t* p = (jo_alertEvent_t *) pv;
+                       alertEvent_t* p = (alertEvent_t *) pv;
 
                        for (int i=0; i<MAX_ALERT_EVENTS; i++)
                        {
@@ -417,7 +417,7 @@ void EnumerateField(const field_t *pField, byte *pbBase)
 
        case F_AIGROUPS:        // convert to ptrs within this into indexes...
                {
-                       jo_AIGroupInfo_t* p = (jo_AIGroupInfo_t *) pv;
+                       AIGroupInfo_t* p = (AIGroupInfo_t *) pv;
 
                        for (int i=0; i<MAX_FRAME_GROUPS; i++)
                        {
@@ -501,11 +501,11 @@ static void EvaluateField(const field_t *pField, byte 
*pbBase, byte *pbOriginalR
                break;
 
        case F_GROUP:
-               *(jo_AIGroupInfo_t **)pv = GetGroupPtr(*(intptr_t *)pv);
+               *(AIGroupInfo_t **)pv = GetGroupPtr(*(intptr_t *)pv);
                break;
 
        case F_GCLIENT:
-               *(jo_gclient_t **)pv = GetGClientPtr(*(intptr_t *)pv);
+               *(gclient_t **)pv = GetGClientPtr(*(intptr_t *)pv);
                break;
 
        case F_ITEM:
@@ -537,7 +537,7 @@ static void EvaluateField(const field_t *pField, byte 
*pbBase, byte *pbOriginalR
 
        case F_ALERTEVENT:
                {
-                       jo_alertEvent_t* p = (jo_alertEvent_t *) pv;
+                       alertEvent_t* p = (alertEvent_t *) pv;
 
                        for (int i=0; i<MAX_ALERT_EVENTS; i++)
                        {
@@ -548,7 +548,7 @@ static void EvaluateField(const field_t *pField, byte 
*pbBase, byte *pbOriginalR
 
        case F_AIGROUPS:        // convert to ptrs within this into indexes...
                {
-                       jo_AIGroupInfo_t* p = (jo_AIGroupInfo_t *) pv;
+                       AIGroupInfo_t* p = (AIGroupInfo_t *) pv;
 
                        for (int i=0; i<MAX_FRAME_GROUPS; i++)
                        {
@@ -674,7 +674,7 @@ All pointer variables (except function pointers) must be 
handled specially.
 */
 static void WriteLevelLocals ()
 {
-       jo_level_locals_t *temp = (jo_level_locals_t 
*)gi.Malloc(sizeof(jo_level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
+       level_locals_t *temp = (level_locals_t 
*)gi.Malloc(sizeof(level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
        *temp = level;  // copy out all data into a temp space
 
        EnumerateFields(savefields_LevelLocals, temp, INT_ID('L','V','L','C'), 
LLOFS(LEVEL_LOCALS_T_SAVESTOP));
@@ -692,9 +692,9 @@ static void ReadLevelLocals ()
 {
        // preserve client ptr either side of the load, because clients are 
already saved/loaded through Read/Writegame...
        //
-       jo_gclient_t *pClients = level.clients; // save clients
+       gclient_t *pClients = level.clients;    // save clients
 
-       jo_level_locals_t *temp = (jo_level_locals_t 
*)gi.Malloc(sizeof(jo_level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
+       level_locals_t *temp = (level_locals_t 
*)gi.Malloc(sizeof(level_locals_t), TAG_TEMP_WORKSPACE, qfalse);
        *temp = level;
        EvaluateFields(savefields_LevelLocals, temp, &level, 
INT_ID('L','V','L','C'), LLOFS(LEVEL_LOCALS_T_SAVESTOP),qfalse);   // 
sizeof(level_locals_t));
        level = *temp;                                  // struct copy
@@ -748,14 +748,14 @@ static void WriteGEntities(qboolean qbAutosave)
                        //
                        if (tempEnt.NPC)
                        {
-                               jo_gNPC_t npc = *ent->NPC;      // NOT 
*tempEnt.NPC; !! :-)
+                               gNPC_t npc = *ent->NPC; // NOT *tempEnt.NPC; !! 
:-)
 
                                EnumerateFields(savefields_gNPC, &npc, 
INT_ID('G','N','P','C'), sizeof(npc));
                        }
 
-                       if (tempEnt.client == (jo_gclient_t *)-2)       // I 
know, I know...
+                       if (tempEnt.client == (gclient_t *)-2)  // I know, I 
know...
                        {
-                               jo_gclient_t client = *ent->client;     // NOT 
*tempEnt.client!!
+                               gclient_t client = *ent->client;        // NOT 
*tempEnt.client!!
                                EnumerateFields(savefields_gClient, &client, 
INT_ID('G','C','L','I'), sizeof(client));
                        }
 
@@ -854,7 +854,7 @@ static void ReadGEntities(qboolean qbAutosave)
                //
                if (pEnt->NPC)  // will be qtrue/qfalse
                {
-                       jo_gNPC_t tempNPC;
+                       gNPC_t tempNPC;
 
                        EvaluateFields(savefields_gNPC, 
&tempNPC,pEntOriginal->NPC, INT_ID('G','N','P','C'), sizeof 
(*pEnt->NPC),qfalse);
 
@@ -871,7 +871,7 @@ static void ReadGEntities(qboolean qbAutosave)
                                // original didn't have one (hmmm...), so make 
a new one...
                                //
                                //assert(0);    // I want to know about this, 
though not in release
-                               pEnt->NPC = (jo_gNPC_t *) 
G_Alloc(sizeof(*pEnt->NPC));
+                               pEnt->NPC = (gNPC_t *) 
G_Alloc(sizeof(*pEnt->NPC));
                        }
 
                        // copy over the one we've just loaded...
@@ -880,9 +880,9 @@ static void ReadGEntities(qboolean qbAutosave)
 
                }
 
-               if (pEnt->client == (jo_gclient_t*) -2) // one of Mike G's NPC 
clients?
+               if (pEnt->client == (gclient_t*) -2)    // one of Mike G's NPC 
clients?
                {
-                       jo_gclient_t tempGClient;
+                       gclient_t tempGClient;
 
                        EvaluateFields(savefields_gClient, &tempGClient, 
pEntOriginal->client, INT_ID('G','C','L','I'), sizeof(*pEnt->client),qfalse);
 
@@ -898,7 +898,7 @@ static void ReadGEntities(qboolean qbAutosave)
                        {
                                // original didn't have one (hmmm...) so make a 
new one...
                                //
-                               pEnt->client = (jo_gclient_t *) 
G_Alloc(sizeof(*pEnt->client));
+                               pEnt->client = (gclient_t *) 
G_Alloc(sizeof(*pEnt->client));
                        }
 
                        // copy over the one we've just loaded....
@@ -910,7 +910,7 @@ static void ReadGEntities(qboolean qbAutosave)
                //
                if (pEnt->parms)        // will be qtrue/qfalse
                {
-                       jo_parms_t tempParms;
+                       parms_t tempParms;
 
             ::gi.saved_game->read_chunk(
                 INT_ID('P','A','R','M'),
@@ -928,7 +928,7 @@ static void ReadGEntities(qboolean qbAutosave)
                        {
                                // original didn't have one, so make a new 
one...
                                //
-                               pEnt->parms = (jo_parms_t *) 
G_Alloc(sizeof(*pEnt->parms));
+                               pEnt->parms = (parms_t *) 
G_Alloc(sizeof(*pEnt->parms));
                        }
 
                        // copy over the one we've just loaded...
@@ -1028,7 +1028,7 @@ void WriteLevel(qboolean qbAutosave)
                // write out one client - us!
                //
                assert(level.maxclients == 1);  // I'll need to know if this 
changes, otherwise I'll need to change the way ReadGame works
-               jo_gclient_t client = level.clients[0];
+               gclient_t client = level.clients[0];
                EnumerateFields(savefields_gClient, &client, 
INT_ID('G','C','L','I'), sizeof(client));
                WriteLevelLocals();     // level_locals_t level
        }
@@ -1070,7 +1070,7 @@ void ReadLevel(qboolean qbAutosave, qboolean 
qbLoadTransition)
                //SO: We read it in, but throw it away.
 
                //Read & throw away gclient info
-               jo_gclient_t junkClient;
+               gclient_t junkClient;
                EvaluateFields(savefields_gClient, &junkClient, 
&level.clients[0], INT_ID('G','C','L','I'), sizeof(*level.clients), qfalse);
 
                //Read & throw away objective info
@@ -1085,7 +1085,7 @@ void ReadLevel(qboolean qbAutosave, qboolean 
qbLoadTransition)
                {
                        assert(level.maxclients == 1);  // I'll need to know if 
this changes, otherwise I'll need to change the way things work
 
-                       jo_gclient_t GClient;
+                       gclient_t GClient;
                        EvaluateFields(savefields_gClient, &GClient, 
&level.clients[0], INT_ID('G','C','L','I'), sizeof(*level.clients), qfalse);
                        level.clients[0] = GClient;     // struct copy
                        ReadLevelLocals();      // level_locals_t level
diff --git a/codeJK2/game/g_session.cpp b/codeJK2/game/g_session.cpp
index 44657d2..1499dfa 100644
--- a/codeJK2/game/g_session.cpp
+++ b/codeJK2/game/g_session.cpp
@@ -43,7 +43,7 @@ G_WriteClientSessionData
 Called on game shutdown
 ================
 */
-void G_WriteClientSessionData( jo_gclient_t *client ) {
+void G_WriteClientSessionData( gclient_t *client ) {
        const char      *s;
        const char      *s2;
        const char      *var;
@@ -109,7 +109,7 @@ G_ReadSessionData
 Called on a reconnect
 ================
 */
-void G_ReadSessionData( jo_gclient_t *client ) {
+void G_ReadSessionData( gclient_t *client ) {
        char    s[MAX_STRING_CHARS];
        const char      *var;
        int             i;
@@ -188,8 +188,8 @@ G_InitSessionData
 Called on a first-time connect
 ================
 */
-void G_InitSessionData( jo_gclient_t *client, char *userinfo ) {
-       jo_clientSession_t      *sess;
+void G_InitSessionData( gclient_t *client, char *userinfo ) {
+       clientSession_t *sess;
 
        sess = &client->sess;
 
diff --git a/codeJK2/game/g_shared.h b/codeJK2/game/g_shared.h
index c25e7b1..0213be5 100644
--- a/codeJK2/game/g_shared.h
+++ b/codeJK2/game/g_shared.h
@@ -121,8 +121,7 @@ typedef enum //# material_e
 #define        MAX_CUSTOM_JEDI_SOUNDS  22
 #define        MAX_CUSTOM_SOUNDS       (MAX_CUSTOM_JEDI_SOUNDS + 
MAX_CUSTOM_EXTRA_SOUNDS + MAX_CUSTOM_COMBAT_SOUNDS + MAX_CUSTOM_BASIC_SOUNDS)
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_clientInfo_t
+class clientInfo_t
 {
 public:
        qboolean                infoValid;
@@ -199,7 +198,7 @@ public:
         saved_game->read<int32_t>(customExtraSoundDir);
         saved_game->read<int32_t>(customJediSoundDir);
     }
-}; // jo_clientInfo_t
+}; // clientInfo_t
 
 
 //==================================================================
@@ -255,8 +254,7 @@ typedef enum
 #define        RF_LOCKEDANGLE  1
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_renderInfo_t
+class renderInfo_t
 {
 public:
        // Legs model, or full model on one piece entities
@@ -440,7 +438,7 @@ public:
         saved_game->read<int32_t>(lookingDebounceTime);
         saved_game->read<float>(legsYaw);
     }
-}; // jo_renderInfo_t
+}; // renderInfo_t
 
 // Movement information structure
 
@@ -468,8 +466,7 @@ typedef enum {
 } playerTeamStateState_t;
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_playerTeamState_t
+class playerTeamState_t
 {
 public:
        playerTeamStateState_t  state;
@@ -518,11 +515,10 @@ public:
         saved_game->read<float>(flagsince);
         saved_game->read<float>(lastfraggedcarrier);
     }
-}; // jo_playerTeamState_t
+}; // playerTeamState_t
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_objectives_t
+class objectives_t
 {
 public:
        qboolean        display;        // A displayable objective?
@@ -542,12 +538,11 @@ public:
         saved_game->read<int32_t>(display);
         saved_game->read<int32_t>(status);
     }
-}; // jo_objectives_t
+}; // objectives_t
 #define MAX_MISSION_OBJ 80
 
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_missionStats_t
+class missionStats_t
 {
 public:
        int                             secretsFound;                           
        // # of secret areas found
@@ -603,7 +598,7 @@ public:
         saved_game->read<int32_t>(forceUsed);
         saved_game->read<int32_t>(weaponUsed);
     }
-}; // jo_missionStats_t
+}; // missionStats_t
 
 // the auto following clients don't follow a specific client
 // number, but instead follow the first two active players
@@ -616,14 +611,13 @@ public:
 // MUST be dealt with in G_InitSessionData() / G_ReadSessionData() / 
G_WriteSessionData()
 //
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_clientSession_t
+class clientSession_t
 {
 public:
        int                             missionObjectivesShown; // Number of 
times mission objectives have been updated
        team_t                  sessionTeam;
-       jo_objectives_t mission_objectives[MAX_MISSION_OBJ];
-       jo_missionStats_t       missionStats;                   // Various 
totals while on a mission
+       objectives_t    mission_objectives[MAX_MISSION_OBJ];
+       missionStats_t  missionStats;                   // Various totals while 
on a mission
 
 
     void sg_export(
@@ -643,13 +637,13 @@ public:
         saved_game->read<>(mission_objectives);
         saved_game->read<>(missionStats);
     }
-}; // jo_clientSession_t
+}; // clientSession_t
 
 // client data that stays across multiple respawns, but is cleared
 // on each level change or team change at ClientBegin()
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
 // FIXME Prefix added to avoid debugging problems in Visual Studio.
-class jo_clientPersistant_t
+class clientPersistant_t
 {
 public:
        clientConnected_t       connected;      
@@ -660,7 +654,7 @@ public:
        int                     enterTime;                      // level.time 
the client entered the game
        short           cmd_angles[3];          // angles sent over in the last 
command
 
-       jo_playerTeamState_t teamState; // status in teamplay games
+       playerTeamState_t teamState;    // status in teamplay games
 
 
     void sg_export(
@@ -692,7 +686,7 @@ public:
         saved_game->skip(2);
         saved_game->read<>(teamState);
     }
-}; // jo_clientPersistant_t
+}; // clientPersistant_t
 
 typedef enum {
        BLK_NO,
@@ -719,16 +713,15 @@ typedef enum {
 // !!!!!!!!!! LOADSAVE-affecting structure !!!!!!!!!!
 // this structure is cleared on each ClientSpawn(),
 // except for 'client->pers' and 'client->sess'
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_gclient_t
+class gclient_t
 {
 public:
        // ps MUST be the first element, because the server expects it
        playerState_t   ps;                             // communicated by 
server to clients
 
        // private to game
-       jo_clientPersistant_t   pers;
-       jo_clientSession_t              sess;
+       clientPersistant_t      pers;
+       clientSession_t         sess;
 
        qboolean        noclip;
 
@@ -769,7 +762,7 @@ public:
        float           facial_aux;                     // time before next 
aux. If a minus value, we are in aux mode
 
        //Client info - updated when ClientInfoChanged is called, instead of 
using configstrings
-       jo_clientInfo_t clientInfo;
+       clientInfo_t    clientInfo;
        signed char             forced_forwardmove;
        signed char             forced_rightmove;
        int                             fireDelay;              //msec to delay 
calling G_FireWeapon after EV_FIREWEAPON event is called
@@ -790,7 +783,7 @@ public:
        float           hiddenDist;//How close ents have to be to pick you up 
as an enemy
        vec3_t          hiddenDir;//Normalized direction in which NPCs can't 
see you (you are hidden)
 
-       jo_renderInfo_t renderInfo;
+       renderInfo_t    renderInfo;
        saberTrail_t    saberTrail;
 
        //dismember tracker
@@ -934,13 +927,12 @@ public:
         saved_game->read<float>(pushVec);
         saved_game->read<int32_t>(pushVecTime);
     }
-}; // jo_gclient_t
+}; // gclient_t
 
 #define        MAX_PARMS       16
 #define        MAX_PARM_STRING_LENGTH  MAX_QPATH//was 16, had to lengthen it 
so they could take a valid file path
 
-// FIXME Added prefix to avoid debugging problems in Visual Studio.
-class jo_parms_t
+class parms_t
 {
 public:
        char    parm[MAX_PARMS][MAX_PARM_STRING_LENGTH];
@@ -957,7 +949,7 @@ public:
     {
         saved_game->read<int8_t>(parm);
     }
-}; // jo_parms_t
+}; // parms_t
 
 #define GAME_INCLUDE
 #ifdef GAME_INCLUDE
@@ -977,7 +969,7 @@ typedef struct centity_s centity_t;
 
 struct gentity_s {
        entityState_t   s;                              // communicated by 
server to clients
-       jo_gclient_t    *client;        // NULL if not a player (unless it's 
NPC ( if (this->NPC != NULL)  )  <sigh>... -slc)
+       gclient_t       *client;        // NULL if not a player (unless it's 
NPC ( if (this->NPC != NULL)  )  <sigh>... -slc)
        qboolean        inuse;
        qboolean        linked;                         // qfalse if not in any 
good cluster
 
@@ -1147,7 +1139,7 @@ Ghoul2 Insert End
        CSequencer              *sequencer;
        CTaskManager    *taskManager;
        int                             taskID[NUM_TIDS];
-       jo_parms_t                      *parms;
+       parms_t                 *parms;
        char            *behaviorSet[NUM_BSETS];
        char            *script_targetname;
        int                     delayScriptTime;
@@ -1210,7 +1202,7 @@ Ghoul2 Insert End
 //FIELDS USED EXCLUSIVELY BY SPECIFIC CLASSES OF ENTITIES
        //NPC/Player entity fields
        //FIXME: Make these client only?
-       jo_gNPC_t               *NPC;//Only allocated if the entity becomes an 
NPC
+       gNPC_t          *NPC;//Only allocated if the entity becomes an NPC
 
        //Other NPC/Player-related entity fields
        char            *ownername;//Used by squadpaths to locate owning NPC
diff --git a/codeJK2/game/g_svcmds.cpp b/codeJK2/game/g_svcmds.cpp
index 7f122a0..83b28a2 100644
--- a/codeJK2/game/g_svcmds.cpp
+++ b/codeJK2/game/g_svcmds.cpp
@@ -78,8 +78,8 @@ void  Svcmd_EntityList_f (void) {
        }
 }
 
-jo_gclient_t   *ClientForString( const char *s ) {
-       jo_gclient_t    *cl;
+gclient_t      *ClientForString( const char *s ) {
+       gclient_t       *cl;
        int                     i;
        int                     idnum;
 
diff --git a/codeJK2/game/g_target.cpp b/codeJK2/game/g_target.cpp
index 3c12415..bfa38e1 100644
--- a/codeJK2/game/g_target.cpp
+++ b/codeJK2/game/g_target.cpp
@@ -1072,7 +1072,7 @@ void SP_target_autosave( gentity_t *self )
 void target_secret_use(gentity_t *self, gentity_t *other, gentity_t *activator)
 {       
        //we'll assume that the activator is the player
-       jo_gclient_t* const client = &level.clients[0];
+       gclient_t* const client = &level.clients[0];
        client->sess.missionStats.secretsFound++;
        if ( activator )
        {
diff --git a/codeJK2/game/wp_saber.cpp b/codeJK2/game/wp_saber.cpp
index c72c3a4..1b5f5fc 100644
--- a/codeJK2/game/wp_saber.cpp
+++ b/codeJK2/game/wp_saber.cpp
@@ -362,7 +362,7 @@ void G_Throw( gentity_t *targ, vec3_t newDir, float push )
        }
 }
 
-int WP_SetSaberModel( jo_gclient_t *client, class_t npcClass )
+int WP_SetSaberModel( gclient_t *client, class_t npcClass )
 {
        if ( client )
        {
@@ -1862,7 +1862,7 @@ extern void PM_SetAnimFrame( gentity_t *gent, int frame, 
qboolean torso, qboolea
 extern qboolean ValidAnimFileIndex ( int index );
 qboolean WP_SabersCheckLock2( gentity_t *attacker, gentity_t *defender, 
sabersLockMode_t lockMode )
 {
-       jo_animation_t *anim;
+       animation_t *anim;
        int             attAnim, defAnim, advance = 0;
        float   attStart = 0.5f;
        float   idealDist = 48.0f;

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-games/openjk.git

_______________________________________________
Pkg-games-commits mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

Reply via email to