eezstreet Posted December 14, 2012 Posted December 14, 2012 So it would appear that there is multiple instances where Yoda and the Emperor would appear to be added to the game, but he is not actually in the game, how odd... Force powers do not work on any NPC named yoda.Likewise, any NPC named emperor will only use force powers, regardless of NPC class.Yoda has an extremely strong saber lock (stronger than desann)Yoda automatically inherits all qualities of CLASS_DESANN, regardless of current NPC classYoda's saber exists, buried away in one of the .sab files, named "Eternal". It is forced to be green and use Tavion stance, references a model that doesn't exist, and is shorter than normal. Thoughts? therfiles and Fighter like this
minilogoguy18 Posted December 14, 2012 Posted December 14, 2012 Knew about this for a while, found it back when I first really started digging through the assets. There are a lot of things that are missing like this, for instance the brokent staff saber models, I fixed that one though.
MagSul Posted December 14, 2012 Posted December 14, 2012 I'd never heard anything about the Emperor, but it's clear that Yoda was thought about in some way, shape or form during the production of the game. Though why, I'd be interested to hear. Maybe they'd considered a few characters such as Vader, the Emperor and Yoda to be featured as extra multiplayer player choices?
eezstreet Posted December 14, 2012 Author Posted December 14, 2012 So, it would appear that Raven is pretty fun loving after all. Got this email in my inbox from Raven which discusses yoda saber and emperor hardcodes in SP: Well, this is code I haven't looked at in about 10 years, so I can only speculate. I know I did a lot of stuff "on the side" for the Jedi Games - and after seeing all the mods made for Jedi Outcast, I recall wanting to make Jedi Academy as mod-ready as possible. So I made the lightsabers driven by external data files and made NPC external data files more robust.References to Yoda and the Emperor were probably just me fooling around with community-made models for those characters, so I probably made NPC files for them with the appropriate characteristics. Hope that sheds some light on things! -Mike Gummelt Caelum, therfiles and MUG like this
MUG Posted December 18, 2012 Posted December 18, 2012 Looking at this game's duel/siege maps, and the new saber types, my guess is that the multiplayer for JKA was originally going to be closer to movie battles, with lots of film events. Largely, it seems that they were focusing on episode I stuff, what with the staff sabers, and the maul duel map, but the game has lots of indications that it was modelled more closely after the films than previous JK games (what with kyle not being the main character, luke being more central, the Bryar being swapped out for a gun similar to the one Han Solo uses in the original trilogy). I guess that Yoda and the Emperor were just another part of that vision that never happened, in favour of a more jk2-like multiplayer.
eezstreet Posted December 18, 2012 Author Posted December 18, 2012 Official word from the Raven employee that I talked to suggests that they were actually playing around with the community's mods in JK2 and just left the code and some of the assets in, but all by accident.
MagSul Posted December 18, 2012 Posted December 18, 2012 Well that's just anti-climatic. KInda cool that they're playing with the community's mods. I can picture an employee sitting at his desk thinking: "This map's actually better than anything we've put in the game, and we're getting paid." =P
Serenity937 Posted December 21, 2012 Posted December 21, 2012 In the singleplayer SDK the emporer is referenced only once, and its in NPC_spawn.cpp In void NPC_SetMiscDefaultData( gentity_t *ent ) Ln336 Col19 Ch16 if ( !Q_stricmp( "emperor", ent->NPC_type ) || !Q_stricmp( "cultist_grip", ent->NPC_type )|| !Q_stricmp( "cultist_drain", ent->NPC_type )|| !Q_stricmp( "cultist_lightning", ent->NPC_type )){//FIXME: extern this into NPC.cfg?ent->NPC->scriptFlags |= SCF_DONT_FIRE;//so he uses only force powers} Explains the force power thing for emporer Yoda however is referanced quite a lot in the Singleplayer SDK inAI_Jedi.cppNPC_spawn.cpp wp_saber.cppbut most of it is redundant code or commented out if ( !Q_stricmp( "Yoda", ent->NPC_type ) ){//FIXME: extern this into NPC.cfg?ent->NPC->scriptFlags |= SCF_NO_FORCE;//force powers don't work on himent->NPC->aiFlags |= NPCAI_BOSS_CHARACTER;} may explain why Force powers do not work on any NPC named yoda also yoda npc has several extra instances to help him that have not been removed I.ELn10770 Col10 Ch4 if ( !Q_stricmp("Yoda",traceEnt->NPC_type) ){Jedi_PlayDeflectSound( traceEnt );ForceThrow( traceEnt, qfalse );return;} Most of the remaining yoda/emporer code that can be found in the SP SDK look like an "ABANDONED IDEA" These fragments of "FLOATING CODE" that were never removed properly are the reason why yoda/emporer can sometimes display different behaviour I dont normally post but i thought i might be able to shed some light on this one.
eezstreet Posted December 22, 2012 Author Posted December 22, 2012 SP SDK wat therfiles, afi and Tempust85 like this
Serenity937 Posted December 23, 2012 Posted December 23, 2012 wat Yes ,other instances of code including yoda in the SP SDK mainly ascertain to resting push,pull,drain and grip. I.E inwp_saber.cppatLn9419 Col71 Ch53in void ForceThrow( gentity_t *self, qboolean pull, qboolean fake ){//FIXME: pass in a target ent so we (an NPC) can push/pull just one targeted ent.//shove things in front of you away Etc.Etc.Etc after #ifdef _IMMERSIONint forceIndex;#endif // _IMMERSION Etc.Etc.Etc else if ( !push_list[x]->s.number ){//playerif ( !noResist&& push_list[x]->health > 0 //alive&& push_list[x]->client //client&& push_list[x]->client->ps.forceRageRecoveryTime < level.time //not recobering from rage&& push_list[x]->client->ps.torsoAnim != BOTH_FORCEGRIP_HOLD// BOTH_FORCEGRIP1//wasn't trying to grip anyone//&& push_list[x]->client->ps.torsoAnim != BOTH_HUGGER1// wasn't trying to grip-drain anyone&& push_list[x]->client->ps.torsoAnim != BOTH_FORCE_DRAIN_GRAB_START// wasn't trying to grip-drain anyone&& push_list[x]->client->ps.torsoAnim != BOTH_FORCE_DRAIN_GRAB_HOLD// wasn't trying to grip-drain anyone&& ((self->client->NPC_class != CLASS_DESANN&&Q_stricmp("Yoda",self->NPC_type)) || !Q_irand( 0, 2 ) )//only 30% chance of resisting a Desann push&& push_list[x]->client->ps.groundEntityNum != ENTITYNUM_NONE//on the ground&& !PM_InKnockDown( &push_list[x]->client->ps )//not knocked down already&& push_list[x]->client->ps.saberLockTime < level.time//not involved in a saberLock&& push_list[x]->client->ps.weaponTime < level.time//not attacking or otherwise busy&& (push_list[x]->client->ps.weapon == WP_SABER||push_list[x]->client->ps.weapon == WP_MELEE) )//using saber or fists{//trying to push or pull the player! Etc.Etc.Etc So basically yoda NPC has the same resist abilities as Desann
redsaurus Posted December 23, 2012 Posted December 23, 2012 I assume it's the partial SP source code rather than an SDK. Caelum likes this
eezstreet Posted December 23, 2012 Author Posted December 23, 2012 side note: please use code tags whenever you're posting code, that would make it much easier to readthanks
Serenity937 Posted December 23, 2012 Posted December 23, 2012 I think the point is: there exists an SP SDK? o_o ERM ye ! source development kit probably not a good way to explain.My bad.Old habit from writing about mp SDK ,force of hand. More like the dead sea scrolls. Its out there, you know whats in it, know a guy who knows a guy,That works with a guy ,who met a guy kind of thing.Got the pages,from a 2000 year old manuscript, from a hobbit,who worked with a wizard that got his hands on the map leading to the crystal skull.Who copied the dead see scrolls before burning the ring in the fires of secrecy and made me a copy then made me swear an oath of secrecy about thelocation of the Annunaki............... Nobody,s got the Dead see scrolls at home but we all know what in them..
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now