I'm interested in making a server side MOD for 1.03 version of the game, but as we know, SDK is for 1.04. Getting any information about how to get 1.03 sdk/code changes will be very appreciated.
I have also listened that pure servers have a bug that can be exploited. Any place to get info and solutions??
Lot of THX,
visiat
2 years later... umm ive basically converted the source code to 1.03 if ur still interested or even still use this forum after 2 years xD
Hello :D
Yes, i'm interested in getting the changes i have to do to source code to transform to 1.03.
Thx.
PD. Your mod is very interesting, i managed to patch some exploits :)
Ok, I will look at what I've changed to restore it to 1.03 and tell you later.
Which exploits are you referring to?
It's more of just Clan Mod now. NeWaGe let me use that source for 1.03 which is pretty cool. So it's basically my editing and updated version of Clan Mod for JK2.
Lots of thx, i need 1.03 to "unpatch" some "bugs" like blue lunge and others.
I'm refering to Q3Fill, name crash, force string crash, and I use your Jk2Ded1.03b
Yeah I sort of already did all of those, but can I still look at your codes for them? You can PM me on my forum. I saw you signed up there :P
I'm going to post all that I've switched back.
Starting with w_force.c:
if (modPowerLevel > otherPushPower && push_list[x]->client)
{
if (modPowerLevel == FORCE_LEVEL_3 &&
push_list[x]->client->ps.forceHandExtend != HANDEXTEND_KNOCKDOWN)
{
dirLen = VectorLength(pushDir);
if (dirLen <= (64*((modPowerLevel - otherPushPower)-1)))
{ //can only do a knockdown if fairly close
push_list[x]->client->ps.forceHandExtend = HANDEXTEND_KNOCKDOWN;
push_list[x]->client->ps.forceHandExtendTime = level.time + 700;
push_list[x]->client->ps.forceDodgeAnim = 0; //this toggles between 1 and 0, when it's 1 we should play the get up anim
push_list[x]->client->ps.quickerGetup = qtrue;
}
}
} That's where 2 fixes are. This is what I changed.
W_FORCE.C
-LINE 3028: removed otherPushPower to fix Push and Pull in 1.03
-LINE 3033: changed "qtrue" to "qfalse" for the getting up time
It depends on what you've edited of which line it is on. The regular source code off of jk2files it's those lines above, 3028 & 3033.
if (modPowerLevel > otherPushPower && push_list[x]->client)
{
if (modPowerLevel == FORCE_LEVEL_3 &&
push_list[x]->client->ps.forceHandExtend != HANDEXTEND_KNOCKDOWN)
{
dirLen = VectorLength(pushDir);
//JediDog: Removed "- otherPushPower" to fix the Push and Pull system to 1.03's settings.
if (dirLen <= (64*((modPowerLevel /*- otherPushPower*/)-1)))
{ //can only do a knockdown if fairly close
push_list[x]->client->ps.forceHandExtend = HANDEXTEND_KNOCKDOWN;
push_list[x]->client->ps.forceHandExtendTime = level.time + 700;
push_list[x]->client->ps.forceDodgeAnim = 0; //this toggles between 1 and 0, when it's 1 we should play the get up anim
push_list[x]->client->ps.quickerGetup = qfalse;//JediDog: switched getting up time back to 1.03's settings, Change: qtrue to qfalse
}
}
} That is all that is changed in w_force.c.
Here's float/lunge:
BG_SABER.C
-LINE 1234-1242: enabled float lunge back to 1.03
}
else if (pm->ps->fd.saberAnimLevel == FORCE_LEVEL_1 &&
pm->ps->groundEntityNum != ENTITYNUM_NONE &&
(pm->ps->pm_flags & PMF_DUCKED) &&
pm->ps->weaponTime <= 0 &&
!BG_SaberInSpecialAttack(pm->ps->torsoAnim))
{ //LUNGE (weak)
newmove = PM_SaberLungeAttackMove();
} To:
}//JediDog: Re-enabled Float Lunge
else if (pm->ps->fd.saberAnimLevel == FORCE_LEVEL_1 &&
// pm->ps->groundEntityNum != ENTITYNUM_NONE &&
(pm->ps->pm_flags & PMF_DUCKED) &&
pm->ps->weaponTime <= 0 /*&&
!BG_SaberInSpecialAttack(pm->ps->torsoAnim)*/)
{ //LUNGE (weak)
newmove = PM_SaberLungeAttackMove();
}//end of float
And finally:
BG_PMOVE.C
-LINE 4460 - 4472: enabled pivoting for backslashes and backstab
-LINE 4164: changed walking backwards to 1.03's settings, .75 to 1
-LINE 4272: changed rolling backwards to 1.03's settings. 2.5 to 2.25
These aren't exact lines because once again it varies on the editing...
Pivoting:
if ( pm->ps->saberMove == LS_A_BACK || pm->ps->saberMove == LS_A_BACK_CR
|| pm->ps->saberMove == LS_A_BACKSTAB || pm->ps->saberMove == LS_A_FLIP_STAB ||
pm->ps->saberMove == LS_A_FLIP_SLASH || pm->ps->saberMove == LS_A_JUMP_T__B_ )
{
To:
//JediDog: This part is the DFA & Lunge non-pivoting for 1.03
if (pm->ps->saberMove == LS_A_JUMP_T__B_ || pm->ps->saberMove == LS_A_LUNGE)
{
PM_SetPMViewAngle(pm->ps, pm->ps->viewangles, &pm->cmd);
}
And for the speed of backwards:
else if ( cmd->forwardmove < 0 && !(cmd->buttons&BUTTON_WALKING) && pm->ps->groundEntityNum != ENTITYNUM_NONE )
{//running backwards is slower than running forwards (like SP)
ps->speed *= 0.75;
}
To:
else if ( cmd->forwardmove < 0 && !(cmd->buttons&BUTTON_WALKING) && pm->ps->groundEntityNum != ENTITYNUM_NONE )
{//JediDog: Changed backwards back to 1.03's settings
ps->speed *= 1;
}
I think that is all the changes made.
BG_PMOVE.C
-LINE 4460 - 4472: enabled pivoting for backslashes and backstab
-LINE 4164: changed walking backwards to 1.03's settings, .75 to 1
BG_SABER.C
-LINE 1234-1242: enabled float lunge back to 1.03
W_FORCE.C
-LINE 3062: removed otherPushPower to fix Push and Pull in 1.03
-LINE 3067: changed "qtrue" to "qfalse" for the getting up time
Amazing!!
Months ago i managed to do few changes, and now i'm surprised. There's only one change i have to do: flying with blue lunge.
Two parts of blue lunge code are the same? for the moment, is possible to fly with lunge, but it does only every second. Probably i have to change the conditions.
Oops my fault, I didn't paste the fix for lunge float. It's done.
}//JediDog: Re-enabled Float Lunge
else if (pm->ps->fd.saberAnimLevel == FORCE_LEVEL_1 &&
// pm->ps->groundEntityNum != ENTITYNUM_NONE &&
(pm->ps->pm_flags & PMF_DUCKED) &&
pm->ps->weaponTime <= 0 /*&&
!BG_SaberInSpecialAttack(pm->ps->torsoAnim)*/)
{ //LUNGE (weak)
newmove = PM_SaberLungeAttackMove();
}//end of float There, now you can "fly with blue lunge" i call it float o_O, heh there :) ... it's probably easiest if you just copy and paste the things i posted