Jump to content


  • Posts

  • Joined

  • Last visited

Profile Information

  • Gaming Specialty
    Full Force
  • Operating System
    Windows 7 x64 Pro

Recent Profile Visitors

458 profile views

Mark_Girland's Achievements


Contributor (1/10)

  1. Hello everyone, need the help of people who know the code OpenJK. The fact is that I would like to know if it is possible to make it so that after pushing the boss of the NPC (Desann or Luke) my player was doing a backflip, not a knockdown. That is, I used the code Jedi_stopknockdown. As I understand it, this line of code is responsible for the backflip of other Jedi NPCs (mostly bosses). When the force of the push is applied to them, they do not fall to the ground but jump back. Therefore, they cannot be shot down. And I would really like my player to have the same ability, so that he does not fall in a knockdown, but does a back flip or jump. This very line is present in several files: WP_SABER.cpp: vec3_t pushdir; if (pulls) { VectorSubtract(pusher->currentOrigin, self->currentOrigin, pushdir); } more { VectorSubtract(self->currentOrigin, pusher->currentOrigin, pushdir); } //FIXME: Sometimes do this for some NPC force users too! if (boba_stop knockdown(himself, pusher, pusher, qfalse)) {//He can do a backflip instead of being knocked down .; } otherwise, if (Jedi_StopKnockdown(self, pusher, pusher)) {//They can do a backflip instead of being knocked down .; } G_CheckLedgeDive(self, 72, pushdir, qtrue, qtrue); if (!PM_SpinningSaberAnim(self->client->ps.legsanim) && !PM_FlippingAnim(self->client->ps.legsanim) && !PM_RollingAnim(self->client->ps.legsanim) && !PM_InKnockDown(&self->client->ps)) { int KNOCKANIM = BOTH_KNOCKDOWN1;//default knockdown if (pusher->client->NPC_CLASS == CLASS_DESANN && self->client->NPC_CLASS != CLASS_LUKE && self->client->NPC_CLASS !=CLASS_KYLE) {//desann always knocks you down, unless you're Luke Strong knockdown = q is true; } if (!self->s.Number && !Strong knockdown && ((!pull && (self->client->ps.Power Level[FP_PUSH] > POWER LEVEL 1 || !g_spskill->integer)) || (pull && (self->client->ps.force level[FP_PULL] > FORCE LEVEL 1 || !g_spskill->integer)))) {//the player is knocked down only with a strong push ** if (self->s.weapons == WP_SABER) {// temporary HACKING: these are the only 2 pain animations that look good when holding a saber KNOCKANIM = PM_PickAnim(self, BOTH_PAIN2, BOTH_PAIN3); } more { KNOCKANIM = PM_PickAnim(self, BOTH_PAIN1, BOTH_PAIN18); } } otherwise, if (PM_CrouchAnim(self->client->ps.legsanim)) {//squatting knockdown Knockdown = BOTH KNOCKDOWNS 4; } more {//the usual old knockdown vec3_t plfwd, slats = { 0,self->client->ps.viewing angles[YAW],0 }; vec3_t sfwd, viewing angles = { 0,pusher->client->ps.viewing angles[YAW],0 }; Angular vectors(Planks, PLFWD, ZERO, ZERO); Angular vectors (SANGLES, SFWD, ZERO, ZERO); if (dot product (sfwd, pLFwd) > 0.2f) {//pushes it from behind //FIXME: Check if we are aiming below or above the waist? if (pulls) { Knockdown = BOTH KNOCKDOWNS 1; } more { Knockdown = BOTH KNOCKDOWNS 3; } } more {//pushing it from the front if (pull) { Knockdown = BOTH KNOCKDOWNS 3; } more { Knockdown = BOTH KNOCKDOWNS 1; } } } if (knockdown == BOTH_KNOCKDOWN1 && Strong knockdown) {//push *hard* Knockdown = BOTH_KNOCKDOWN2; } NPC_SETANIM(self, SETANIM_BOT, KNOCKANIM, SETANIM_FLAG_OVERRIDE | SETANIM_FLAG_HOLD); if (self->s.number >= MAX_CLIENTS) {//randomize the time of receipt - but not for adding a component int; if (self->client->NPC_class == CLASS_BOBAFETT |/ self->client->NPC_class == CLASS_MANDALORIAN |/ self->client->NPC_class == CLASS_JANGO) { Addition time = Q_irand(-500, 0); } more { Addition time = Q_irand(-300, 300); } self->client->ps.legsAnimTimer += Add time; self->client->ps.torsoAnimTimer += Time of addition; } //more {//the player stays longer so that you have more time to decide to get up quickly if (PM_ForceUsingSaberAnim(self->client->ps.legsanim)) { self->client->ps.legsanim_timer += PLAYER_KNOCKDOWN_HOLD_EXTRA_TIME; self->client->ps.torsoanimtimer +=PLAYER_KNOCKDOWN_HOLD_EXTRA_TIME; } } // if (pusher->NPC && pusher-> enemy == Me) {//pushed pushed his enemy G_AddVoiceEvent(pusher, Q_irand(EV_GLOAT1, EV_GLOAT3), 3000); Pusher->NPC->Blocked phone call time = level.time + 3000; } } } self->forcePushTime = level.time + 600; // let the click effect last 600 ms } It is also available in AI_Jedi.cpp : qboolean Jedi_StopKnockdown(gentity_t* pickup, gentity_t* pusher, as const vec3_t pushDir) { if (self->s.number of <MAX_CLIENTS |/ !self->client) {//only NPCs return qfalse; } if (self->client->ps.forcepowerlevel[FP_LEVITATION] < FORCE_LEVEL_1) {//only forced users return qtrue; } if (self->client->Move type == MT_FLYSWIM) {//can't knock me down when I'm flying , return qtrue; } if ( self->NPC && (self->NPC->aiFlags&NPCAI_BOSS_CHARACTER) ) {//the boss is always out knockdown } else if (Q_irand(0, the RANK of CAPTAIN + 5) > I->NPC-> rank) {//the lower their rank, the greater the likelihood that they will fall returning qtrue; } To be honest, I am strong in the game code, but I would like to figure it out and do what I want. I really hope for your help. I hope you can help me
  2. Hi everyone, need help coding one thing in JA. Can someone tell me what to do so that when the npcs push me away, I do a somersault or just an automatic jump, but do not fall into a knockdown? it seems to me that the situation lies in the section AI_Jedi.cpp , or in other sections, but I can't find a piece of code that makes other npcs jump backflip after a push
  3. the problem is that now the skin of my character when I click bind q playermodel default, I get stormtrooper. and the character that was before should remain
  4. I usually bind a key to the playermodel defaultja command. it turns out my command looks like this: bind q playemodel defaultja. you have seen the name itself, I have set up my npc file
  5. https://disk.yandex.ru/i/eq7hOyamgLnaKg - this is my screen, unfortunately I can't upload it directly to you
  6. The game is finally working, thanks for the help, now something else. I bind the playermodel command to the character I created. In it, I specified playermodel player. But an attack aircraft appears. Previously, this was not in the kotf fashion. And the player model did not change, but was the same as I set initially. Why is it now?
  7. Hello dear Jedi Knight modders. I am having a problem namely with the Galactic Legacy (SWGL) mod when starting a mission or map in the game. She crashes !!! This happens after I compiled the executable files of the game (dll and exe) But my friend who also uses this mod, my assemblies work fine. And he sent me his such files. But they do not work for me ... Please tell me what it can be. How can I fix this? P.S .: my build: Windows 7 pro x64, Visual studio 16 2019, cmake 3.21.3
  8. Good day to all! None of the coders collected the source code of the Star Wars Galactic Legacy mod?? When I build, even without my changes in the code, when opening a map or starting a mission, the game crashes. I tried to move the compiled files to the game folder. And the file that is responsible for the sp game library swglgamex86.dll (jagamex86.dll ) it doesn't work for me. When I try to debug, I get an error: ntdll.pdb not loaded Unhandled exception at 0x7731E9A3 (ntdll.dll 0xC0000374: The head was corrupted (parameters: 0x77354270). Do you have any ideas how to solve my problem? I really hope for help! P.S.: My build: Windows 7 x64, CMake 3.21.3, Visual Studio 2019 v. 16.11.3.
  9. Hey, guys I have a question of a part of the game code ... When am I useing two sabers in the game? How can it be done so that when switching to a single saber, it was possible to apply super blows and fast-style rods, and then back when switching to a second saber to work and dual style work?
  10. Hello everyone, coders and modders. Tell me, what part of the source code in Jedi Academy is responsible for ensuring that NPCs automatically pushes missiles and projectiles? I know this part is related to the forcethrow code, but how exactly can I change it so that my player can do the same???
  11. I have one more question for you: many NPCs when you shoot them, they automatically push missiles and projectiles, do you happen to know how to find this code to register it for the player?
  12. I edited to 200, but it's not enough, it doesn't push like npc
  13. I edited to 200, but it's not enough, it doesn't push like npc
  • Create New...