Jump to content

Ask me anything about the Jedi source code


Recommended Posts

Hey, just made an account for JKHub to respond to a thread about manual saber blocking and figured I'd offer up my insights if anyone had any questions about the Jedi Outcast or Jedi Academy source code (SP or MP). It's been almost 15 years since I've written or even seen most of it, but hopefully if you ask me a specific question about a specific chunk of code (copy/paste a chunk or gimme a file name and line number) I can at least try to jog my memory and speak intelligently about it. ;)

 

I'll try to check back if people have questions.

lervish, Wolfeye, Cerez and 26 others like this
Link to comment

Wow, cool to see a developer around.

 

1. What things about the gameplay in Jedi Outcast caused you (the company) to make new patches, eventually with very different combat?

Asking because JK2 today has perhaps most of its active player base still in JK2 1.02, and the rest in 1.04.

 

2. Have you seen videos of the highly experienced players over the years? Do they play the game anything like how you imagined they would or could when you made the game?

 

3. Did you have to 'kill a darling' during production, any planned features that either didn't work out or got down-prioritized?

dg1995, Smoo and Cerez like this
Link to comment

Wait were you involved in the creation of jedi Academy? If that's legit then it's great to have you here. Jedi Academy has the best gameplay when it comes to Saber combat, I'm definitely interested and will follow up on this thread.

Thanks! Yeah, I worked on Jedi Outcast and Academy. On Outcast I designed and programmed the light saber combat, force powers and Jedi/Reborn AI. On Academy, I added the dual sabers, saber staff, new Force powers and dark Jedi, flyable/drivable vehicles and worked on MP. I also worked on the Melee mod, Asteroids mod, the Siege mode and the ladder map.

@@Boothand, lot to reply to and late here. I'll reply tomorrow.

Link to comment

Thanks! Yeah, I worked on Jedi Outcast and Academy. On Outcast I designed and programmed the light saber combat, force powers and Jedi/Reborn AI. On Academy, I added the dual sabers, saber staff, new Force powers and dark Jedi, flyable/drivable vehicles and worked on MP. I also worked on the Melee mod, Asteroids mod, the Siege mode and the ladder map.

@@Boothand, lot to reply to and late here. I'll reply tomorrow.

 

I know some people feel that the story for JKA was weaker than JKO; my question is was JKA's development rushed in comparison to JKO and if you had any awareness of different story pitches than what we got?

Link to comment

This is a my personal question because in my waste time now i am trying to improve NPC shooting fighting of JA Single player. i am lot tired of how they stay ever into a place without run or walk, or how they depend of a waypoint grid for move efficiently.

i am looking for AI_bobafett.cpp. i see that BOBA AI not need to waypoint to chase, flee and fight to player. also boba fett have an interessing two abilities: he can switch between the weapons is stored into weapon.dat and he can alternate main fire to alt fire. i am interessed to transport these two abilities of boba fett to ALL other classes for the shoot combat.  so enemy can run, flee and fight in more strategic way and also they can use alt fire and switch weapons the modder give to they on NPC file cache.

Dusty is working now at a patch of open jk source code, and he give me some great hint about the code related about switching weapon in combat. but at moment it not works on my npcs. 

so i want basically this: i want understand how is possible to improving NPCs with this behavour into shooting fight:

1 - if they have into .NPC file multiple weapons example "weapon WP_CONCUSSION , weapon WP_BLASTER, i desire that NPC randomly switch between the two weapons.

2 - if they lost a weapon because gripped or dropped with force pull, they not surrender, but equip another weapon of they inventory.

3 - they randomly alternate main fire and alt fire. maybe using altfire if player are far, and main fire if is relatively near.

4 - optionally if you try to kill they with a saber or shoot to themself, they act like boba, so they try to dodge the saber, or jump, or rools, or flee.

Yes i know it's an hard question. specially about single player code. it get many misteries and only recently in the last year is fully discovered.

 

PS: so i had really fine read or understood?  (sorry for my bad english) you was into the lucas art raven team?? Amazing!!! D: I am really curious to follow this thread and to know more possible about this game dinamic. i hope some day to make some mine personal project of a my science fiction saga . (on real life i am a writer, and i dream to make some game with fights like JA, air \ space battles like rogue squadron and x wing allinace and also RPG support like kotor. yes i now, is really a dream very hard to realize. also if i get terrains, building and model materials i need a good engine for making that.

 

Thanks for any answer. JA modding for me is a way to learn how much is possible about games.

Link to comment

Thanks! Yeah, I worked on Jedi Outcast and Academy. On Outcast I designed and programmed the light saber combat, force powers and Jedi/Reborn AI. On Academy, I added the dual sabers, saber staff, new Force powers and dark Jedi, flyable/drivable vehicles and worked on MP. I also worked on the Melee mod, Asteroids mod, the Siege mode and the ladder map.

@@Boothand, lot to reply to and late here. I'll reply tomorrow.

 

Just out of curiosity, were vehicles supposed to play a much larger role in base Jedi Academy than they did in the end, especially the starfighters?

Link to comment

I know some people feel that the story for JKA was weaker than JKO; my question is was JKA's development rushed in comparison to JKO and if you had any awareness of different story pitches than what we got?

No, we actually finished Jedi Outcast in 10 months. Academy took 14 months. The reason for Academy's story was:

1) we didn't want to start Kyle without powers again

2) we wanted to give players choice, a more interactive story

 

Story-wise, it probably would have been better to just tell another Katarn story and let him start with all his powers, then maybe introduce the new ones and the new saber styles. That probably would have been enough progression. There may have been other story ideas, but none that I can remember now. I could ask the project lead.

Link to comment

Just out of curiosity, were vehicles supposed to play a much larger role in base Jedi Academy than they did in the end, especially the starfighters?

No, I added fully flyable vehicles to Jedi Academy completely on my own, just because I thought it would be fun. That lead to the Asteroids and Star Destroyer Siege MP modes/maps that we released post-launch.

This is a my personal question because in my waste time now i am trying to improve NPC shooting fighting of JA Single player. i am lot tired of how they stay ever into a place without run or walk, or how they depend of a waypoint grid for move efficiently.

i am looking for AI_bobafett.cpp. i see that BOBA AI not need to waypoint to chase, flee and fight to player. also boba fett have an interessing two abilities: he can switch between the weapons is stored into weapon.dat and he can alternate main fire to alt fire. i am interessed to transport these two abilities of boba fett to ALL other classes for the shoot combat.  so enemy can run, flee and fight in more strategic way and also they can use alt fire and switch weapons the modder give to they on NPC file cache.

Dusty is working now at a patch of open jk source code, and he give me some great hint about the code related about switching weapon in combat. but at moment it not works on my npcs. 

so i want basically this: i want understand how is possible to improving NPCs with this behavour into shooting fight:

1 - if they have into .NPC file multiple weapons example "weapon WP_CONCUSSION , weapon WP_BLASTER, i desire that NPC randomly switch between the two weapons.

2 - if they lost a weapon because gripped or dropped with force pull, they not surrender, but equip another weapon of they inventory.

3 - they randomly alternate main fire and alt fire. maybe using altfire if player are far, and main fire if is relatively near.

4 - optionally if you try to kill they with a saber or shoot to themself, they act like boba, so they try to dodge the saber, or jump, or rools, or flee.

Yes i know it's an hard question. specially about single player code. it get many misteries and only recently in the last year is fully discovered.

 

PS: so i had really fine read or understood?  (sorry for my bad english) you was into the lucas art raven team?? Amazing!!! D: I am really curious to follow this thread and to know more possible about this game dinamic. i hope some day to make some mine personal project of a my science fiction saga . (on real life i am a writer, and i dream to make some game with fights like JA, air \ space battles like rogue squadron and x wing allinace and also RPG support like kotor. yes i now, is really a dream very hard to realize. also if i get terrains, building and model materials i need a good engine for making that.

 

Thanks for any answer. JA modding for me is a way to learn how much is possible about games.

This is going to require a long, involved answer. I'll have to respond to this later tonight, but I will try to respond.

Ramikad, Cerez, Noodle and 4 others like this
Link to comment

No, I added fully flyable vehicles to Jedi Academy completely on my own, just because I thought it would be fun. That lead to the Asteroids and Star Destroyer Siege MP modes/maps that we released post-launch.

 

This is going to require a long, involved answer. I'll have to respond to this later tonight, but I will try to respond.

Thanks very much, sir ^_^

Link to comment

Whoah! Hold on, we're a little overwhelming, guys! I think we need to structure these questions into a "most popular questions" collection before asking @@MGummelt to kindly answer them. It's lovely to see original developer participation and help on these forums, but he didn't come here to be assaulted by requests.

 

How would you like to spend 98% of your time answering direct, detailed questions?! It's very tiring, and, quite frankly, scary! It's enough to put you off from visiting these forums again for a lifetime. Let's show a little consideration.

 

I suggest a discussion thread with a (growing) poll -- or likes -- for questions we want to ask, and then to pose those questions once we have a comprehensive list of most popular questions/requests in an official JKHub article thread.

Link to comment

@@MGummelt I'd love to make this thread into a JKHub news article (with way more people reading it both here & on other sites) for you to answer players' questions about JKA/JKO's development there. What do you think? I would have to ask for a copy of your passport or driver's license or ID card or similar to verify you're actually you though. Send me a PM if you're at all interested in doing that. :)

Sure, fine by me.  I was going to upload a photo to this thread as proof, but I can't for the life of me figure out where this board lets me upload to "my media".  And I don't want to upload a personal photo like that to an outside site.

hleV and Caelum like this
Link to comment

This is a my personal question because in my waste time now i am trying to improve NPC shooting fighting of JA Single player. i am lot tired of how they stay ever into a place without run or walk, or how they depend of a waypoint grid for move efficiently.

i am looking for AI_bobafett.cpp. i see that BOBA AI not need to waypoint to chase, flee and fight to player. also boba fett have an interessing two abilities: he can switch between the weapons is stored into weapon.dat and he can alternate main fire to alt fire. i am interessed to transport these two abilities of boba fett to ALL other classes for the shoot combat.  so enemy can run, flee and fight in more strategic way and also they can use alt fire and switch weapons the modder give to they on NPC file cache.

Dusty is working now at a patch of open jk source code, and he give me some great hint about the code related about switching weapon in combat. but at moment it not works on my npcs. 

so i want basically this: i want understand how is possible to improving NPCs with this behavour into shooting fight:

1 - if they have into .NPC file multiple weapons example "weapon WP_CONCUSSION , weapon WP_BLASTER, i desire that NPC randomly switch between the two weapons.

2 - if they lost a weapon because gripped or dropped with force pull, they not surrender, but equip another weapon of they inventory.

3 - they randomly alternate main fire and alt fire. maybe using altfire if player are far, and main fire if is relatively near.

4 - optionally if you try to kill they with a saber or shoot to themself, they act like boba, so they try to dodge the saber, or jump, or rools, or flee.

Yes i know it's an hard question. specially about single player code. it get many misteries and only recently in the last year is fully discovered.

 

PS: so i had really fine read or understood?  (sorry for my bad english) you was into the lucas art raven team?? Amazing!!! D: I am really curious to follow this thread and to know more possible about this game dinamic. i hope some day to make some mine personal project of a my science fiction saga . (on real life i am a writer, and i dream to make some game with fights like JA, air \ space battles like rogue squadron and x wing allinace and also RPG support like kotor. yes i now, is really a dream very hard to realize. also if i get terrains, building and model materials i need a good engine for making that.

 

Thanks for any answer. JA modding for me is a way to learn how much is possible about games.

 

1 - if they have into .NPC file multiple weapons example "weapon WP_CONCUSSION , weapon WP_BLASTER, i desire that NPC randomly switch between the two weapons.

Give an NPC multiple weapons by listing more than one weapon in their .npc file (text file in ext_data folder).  For example, the ATST:

atst
{
playerModel atst
weapon WP_ATST_MAIN
weapon WP_ATST_SIDE
.
.
.
.
}
 
To make them switch, you just call NPC_ChangeWeapon( <weapon index> ), the <weapon index> being one of the weapons you set up in the .npc file.
Multiple NPCs do this already, not just Boba Fett.  The AT-ST does it, the Galak Mech does it, the Grenadiers do it (Gran), Snipers do it and even Stormtroopers can do it (switching between alt fire and normal fire).  Like so (grenadier switching to melee if player is too close):
 
//See if we should switch to melee attack
if ( enemyDist < 16384 && (!NPC->enemy->client||NPC->enemy->client->ps.weapon != WP_SABER||(!NPC->enemy->client->ps.SaberActive())) )//128
{//enemy is close and not using saber
if ( NPC->client->ps.weapon == WP_THERMAL )
{//grenadier
trace_t trace;
gi.trace ( &trace, NPC->currentOrigin, NPC->enemy->mins, NPC->enemy->maxs, NPC->enemy->currentOrigin, NPC->s.number, NPC->enemy->clipmask );
if ( !trace.allsolid && !trace.startsolid && (trace.fraction == 1.0 || trace.entityNum == NPC->enemy->s.number ) )
{//I can get right to him
//reset fire-timing variables
NPC_ChangeWeapon( WP_MELEE );
if ( !(NPCInfo->scriptFlags&SCF_CHASE_ENEMIES) )//NPCInfo->behaviorState == BS_STAND_AND_SHOOT )
{//FIXME: should we be overriding scriptFlags?
NPCInfo->scriptFlags |= SCF_CHASE_ENEMIES;//NPCInfo->behaviorState = BS_HUNT_AND_KILL;
}
}
}
}
 
You can write any logic you want to make them switch weapons.  It can be random if you like.  You can even do this without coding if you do it in BehavEd using the SET_WEAPON command and run your script on an AI.
 

2 - if they lost a weapon because gripped or dropped with force pull, they not surrender, but equip another weapon of they inventory.

In NPC_Behavior.cpp, there's a function called qboolean NPC_CheckSurrender( void ).  Inside there, there's a part that checks to see if an NPC's current weapon is WP_NONE.  You could check to see if the NPC has another weapon they could switch to, then switch to that weapon (as I described in #1 above) instead of surrendering.
 
This is the chunk of code I'm referring to:
if ( !NPCInfo->group || (NPCInfo->group && NPCInfo->group->numGroup <= 1) )
{//I'm alone but I was in a group//FIXME: surrender anyway if just melee or no weap?
if ( NPC->s.weapon == WP_NONE 
//NPC has a weapon
|| NPC->enemy == player
|| (NPC->enemy->s.weapon == WP_SABER&&NPC->enemy->client&&NPC->enemy->client->ps.SaberActive())
|| (NPC->enemy->NPC && NPC->enemy->NPC->group && NPC->enemy->NPC->group->numGroup > 2) )
{//surrender only if have no weapon or fighting a player or jedi or if we are outnumbered at least 3 to 1
 
Better yet, you could change what happens when an NPC drops their weapon.  In wp_saber.cpp there's a function called:
 
void WP_DropWeapon( gentity_t *dropper, vec3_t velocity )
{
if ( !dropper || !dropper->client )
{
return;
}
 
int replaceWeap = WP_NONE;
int oldWeap = dropper->s.weapon;
 
gentity_t *weapon = TossClientItems( dropper );
 
if ( oldWeap == WP_THERMAL && dropper->NPC )
{//Hmm, maybe all NPCs should go into melee?  Not too many, though, or they mob you and look silly
replaceWeap = WP_MELEE;
}

.

.

.

}

 

You can see there that, by default, when an NPC drops their weapon, they will set their current weapon to WP_NONE (triggering the surrender code described above).  If, instead, you had them switch to their other weapon in this function, then they would not surrender.

 

You can tell what other weapons an NPC has by looking at this:

NPC->client->ps.stats[sTAT_WEAPONS]

 

You'll need to loop through all the possible WP_ weapons and see what they own, like so:

for (i=0;i< WP_NUM_WEAPONS; i++)
{
if ( (NPC->client->ps.stats[sTAT_WEAPONS]&(1<<i))
{
//NPC has this weapon
}

}

 

3 - they randomly alternate main fire and alt fire. maybe using altfire if player are far, and main fire if is relatively near.

Sure, just look at the example for the Grenadier I gave in #1 above - that's exactly what they do to decide if they should use the thermals or melee.  AT-STs and Galak Mech also have logic for switching weapons based on various conditions.

 

4 - optionally if you try to kill they with a saber or shoot to themself, they act like boba, so they try to dodge the saber, or jump, or rools, or flee.

This is a bit trickier, but not impossible.  You'll probably want to copy some of the evasive logic/functions from the AI_BobaFett.cpp for your new AI (or the AI you want to add this too) and it should work.  Most of that logic is in here:

Boba_StopKnockdown()

 

What that does is make Boba input the same commands a player uses to dodge, roll and flip (all the AI move the same way the player does - this is why a player can take over any NPC - they're all driven by the same input commands.  AI just simulate them).

 

So a jump + direction will do a flip, a duck + direction will do a roll, etc.

 

 

Hope this helps and good luck!

Link to comment

1 - if they have into .NPC file multiple weapons example "weapon WP_CONCUSSION , weapon WP_BLASTER, i desire that NPC randomly switch between the two weapons.

Give an NPC multiple weapons by listing more than one weapon in their .npc file (text file in ext_data folder).  For example, the ATST:

atst
{
playerModel atst
weapon WP_ATST_MAIN
weapon WP_ATST_SIDE
.
.
.
.
}
 
To make them switch, you just call NPC_ChangeWeapon( <weapon index> ), the <weapon index> being one of the weapons you set up in the .npc file.
Multiple NPCs do this already, not just Boba Fett.  The AT-ST does it, the Galak Mech does it, the Grenadiers do it (Gran), Snipers do it and even Stormtroopers can do it (switching between alt fire and normal fire).  Like so (grenadier switching to melee if player is too close):
 
//See if we should switch to melee attack
if ( enemyDist < 16384 && (!NPC->enemy->client||NPC->enemy->client->ps.weapon != WP_SABER||(!NPC->enemy->client->ps.SaberActive())) )//128
{//enemy is close and not using saber
if ( NPC->client->ps.weapon == WP_THERMAL )
{//grenadier
trace_t trace;
gi.trace ( &trace, NPC->currentOrigin, NPC->enemy->mins, NPC->enemy->maxs, NPC->enemy->currentOrigin, NPC->s.number, NPC->enemy->clipmask );
if ( !trace.allsolid && !trace.startsolid && (trace.fraction == 1.0 || trace.entityNum == NPC->enemy->s.number ) )
{//I can get right to him
//reset fire-timing variables
NPC_ChangeWeapon( WP_MELEE );
if ( !(NPCInfo->scriptFlags&SCF_CHASE_ENEMIES) )//NPCInfo->behaviorState == BS_STAND_AND_SHOOT )
{//FIXME: should we be overriding scriptFlags?
NPCInfo->scriptFlags |= SCF_CHASE_ENEMIES;//NPCInfo->behaviorState = BS_HUNT_AND_KILL;
}
}
}
}
 
You can write any logic you want to make them switch weapons.  It can be random if you like.  You can even do this without coding if you do it in BehavEd using the SET_WEAPON command and run your script on an AI.
 

2 - if they lost a weapon because gripped or dropped with force pull, they not surrender, but equip another weapon of they inventory.

In NPC_Behavior.cpp, there's a function called qboolean NPC_CheckSurrender( void ).  Inside there, there's a part that checks to see if an NPC's current weapon is WP_NONE.  You could check to see if the NPC has another weapon they could switch to, then switch to that weapon (as I described in #1 above) instead of surrendering.
 
This is the chunk of code I'm referring to:
if ( !NPCInfo->group || (NPCInfo->group && NPCInfo->group->numGroup <= 1) )
{//I'm alone but I was in a group//FIXME: surrender anyway if just melee or no weap?
if ( NPC->s.weapon == WP_NONE 
//NPC has a weapon
|| NPC->enemy == player
|| (NPC->enemy->s.weapon == WP_SABER&&NPC->enemy->client&&NPC->enemy->client->ps.SaberActive())
|| (NPC->enemy->NPC && NPC->enemy->NPC->group && NPC->enemy->NPC->group->numGroup > 2) )
{//surrender only if have no weapon or fighting a player or jedi or if we are outnumbered at least 3 to 1
 
Better yet, you could change what happens when an NPC drops their weapon.  In wp_saber.cpp there's a function called:
 
void WP_DropWeapon( gentity_t *dropper, vec3_t velocity )
{
if ( !dropper || !dropper->client )
{
return;
}
 
int replaceWeap = WP_NONE;
int oldWeap = dropper->s.weapon;
 
gentity_t *weapon = TossClientItems( dropper );
 
if ( oldWeap == WP_THERMAL && dropper->NPC )
{//Hmm, maybe all NPCs should go into melee?  Not too many, though, or they mob you and look silly
replaceWeap = WP_MELEE;
}

.

.

.

}

 

You can see there that, by default, when an NPC drops their weapon, they will set their current weapon to WP_NONE (triggering the surrender code described above).  If, instead, you had them switch to their other weapon in this function, then they would not surrender.

 

You can tell what other weapons an NPC has by looking at this:

NPC->client->ps.stats[sTAT_WEAPONS]

 

You'll need to loop through all the possible WP_ weapons and see what they own, like so:

for (i=0;i< WP_NUM_WEAPONS; i++)
{
if ( (NPC->client->ps.stats[sTAT_WEAPONS]&(1<<i))
{
//NPC has this weapon
}

}

 

3 - they randomly alternate main fire and alt fire. maybe using altfire if player are far, and main fire if is relatively near.

Sure, just look at the example for the Grenadier I gave in #1 above - that's exactly what they do to decide if they should use the thermals or melee.  AT-STs and Galak Mech also have logic for switching weapons based on various conditions.

 

4 - optionally if you try to kill they with a saber or shoot to themself, they act like boba, so they try to dodge the saber, or jump, or rools, or flee.

This is a bit trickier, but not impossible.  You'll probably want to copy some of the evasive logic/functions from the AI_BobaFett.cpp for your new AI (or the AI you want to add this too) and it should work.  Most of that logic is in here:

Boba_StopKnockdown()

 

What that does is make Boba input the same commands a player uses to dodge, roll and flip (all the AI move the same way the player does - this is why a player can take over any NPC - they're all driven by the same input commands.  AI just simulate them).

 

So a jump + direction will do a flip, a duck + direction will do a roll, etc.

 

 

Hope this helps and good luck!

wow that's gold man! thanks for all! :)

i have just a last question, and after that, i will leave, because i agree @@Cerez idea of a thread with the most important and common question for you by all community, so you are not stressed by an overflow of asks.

it's just a simple tecnical curiosity about terrains.

in a past thread, NumberWan noticed me that the the terrain of level t2_trip has a different structure of triangles respect of a default terrain like in hoth2 map... it's like the original map developer used some kind of decimating tool for reducing number of poly that make the terrain. considering that gtk radiant for JKA map have a limit of 64 thousand brush for a level, and an huge terrain entity is very poly consuming i understanbd if developer got some kind of LOD decimator of the more complex terrain for avoid brushes overflows. sure is pretty fine for an huge map with an big terrain, like t2_trip. this map is very... vaste D:

i was interessed about that tecnique of terrain sculpting, maybe can be of help also for many mappers here.

However, thanks for all your time. I understood if you not answer soon at this question. technically that involving mapping and not souource coding. :\

thanks for all the time you spend for me, sir.

i will read you. bye :)

Link to comment
~snip~

 

Now that he mentions it, the first three are all theoretically doable with scripts.

For 1, as he said, simple SET_WEAPON (timed and looped) commands in BehavED.

For 2, in theory you could check the weapon it is using, and in case the weapon switches to WP_NONE, you can set the NPC to use the other weapon, and losing that you can set it to use melee. Would need to get a bit creative whether the NPC has lost all weapons or just one, but it might be doable.

For 3, you can check the distance in BehavED (SET_DISTSQRD_TO_PLAYER) and set main or alt fire accordingly.

MGummelt likes this
Link to comment

Now that he mentions it, the first three are all theoretically doable with scripts.

For 1, as he said, simple SET_WEAPON (timed and looped) commands in BehavED.

For 2, in theory you could check the weapon it is using, and in case the weapon switches to WP_NONE, you can set the NPC to use the other weapon, and losing that you can set it to use melee. Would need to get a bit creative whether the NPC has lost all weapons or just one, but it might be doable.

For 3, you can check the distance in BehavED (SET_DISTSQRD_TO_PLAYER) and set main or alt fire accordingly.

Yes, i know about the point 1 because i tryied in past a loop between weapons... but i not know hot to make a random script so i was thinking this thing should work only with code. ._. i need that for code because i wanna really now how to code that, also, because i hope some day thats thing can be useful for making some game. so i wanna know how make the things working into code for that motivation.

point 2: is possible to use the if \ else brank for checking weapons also on icarus? interessing. i never think to use that function in this way.

3: never thinked about it. this is an alternative very nice solution! thanks! :D  (never tried the DISTSQRD script. .-. )

 

PS: the new  function NPC_StopKnockdown works pretty fine. now there is a randorm probability that shooters resist to force push\pull! many thanks! Now i wanna see the other points in code.

MGummelt likes this
Link to comment

Yes, i know about the point 1 because i tryied in past a loop between weapons... but i not know hot to make a random script so i was thinking this thing should work only with code. ._. i need that for code because i wanna really now how to code that, also, because i hope some day thats thing can be useful for making some game. so i wanna know how make the things working into code for that motivation.

point 2: is possible to use the if \ else brank for checking weapons also on icarus? interessing. i never think to use that function in this way.

3: never thinked about it. this is an alternative very nice solution! thanks! :D  (never tried the DISTSQRD script. .-. )

 

PS: the new  function NPC_StopKnockdown works pretty fine. now there is a randorm probability that shooters resist to force push\pull! many thanks! Now i wanna see the other points in code.

 

You can run a check on a random number:

//(BHVD)
if ( $random( 0, 1 )$, $<$, $1$ )
{
}
Cerez likes this
Link to comment

Nice question, the unique way for limitate this is on effect ed setting primitve of projectile to 10-50ms value as life duration.

i noticed that also on the bladeeffect.  effect of blade on game is very massive in report to how appear on effected.

i have suspect that a primitive in this kind of effect is called one time for frame.. so... 60 frame -> 60 primitives? (blade effect can be very STRONG and bad for sight. with dinamyc light enabled they can be pretty offensive for eyes...)

Link to comment

@MGummelt -- Were you involved with X-Men Legends or Marvel: Ultimate Alliance in any way? We have a team of modders over at marvelmods.com who could use a Raven employee's expertise.

 

Back on topic, any idea why it was JO/JA were never released for PS2, but made it to GameCube/Xbox? Is the GameCube source code still out there somewhere?

Smoo likes this
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...