Hello There, Guest! Login Register


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Creating Pre Pub 9 style or Choice Jedi
#11
The whole issue concerning the holocron unlock and using the Force Shrine shouldn't have been an issue, since you could just award whatever skill you needed in the hologrind_jedi_manager.lua or changed the required skill check in the ForceShrineMenuComponent.lua, though you shouldn't have to since the hologrind_jedi_manager.lua also awards force_title_jedi_novice, which is what the ForceShrineMenuComponent.lua checks for.  

Unfortunately, I forgot the the hologrind unlock file never worked as intended after the change.  After much difficulty trying to figure this out I remembered helping someone else last year with the hologrind unlock after the changes.  After comparing the new file with an older version I had saved I identified a few lines the SWGEmu team removed from the file that when put back in made it work.  I'll post a link here as soon as I figure out how to work Google Drive/sign up for a free account.  Since you just want the pre pub 9 Jedi just find and comment out the line awardSkill(pCreatureObject, "force_title_jedi_novice")

In your ForceShrineMenuComponent.lua replace the entire function function ForceShrineMenuComponent:fillObjectMenuResponse(pSceneObject, pMenuResponse, pPlayer)

with the one below:


function ForceShrineMenuComponent:fillObjectMenuResponse(pSceneObject, pMenuResponse, pPlayer)
    local menuResponse = LuaObjectMenuResponse(pMenuResponse)
    menuResponse:addRadialMenuItem(120, 3, "@jedi_trials:meditate") -- Meditate
    menuResponse:addRadialMenuItem(121, 3, "@force_rank:recover_jedi_items") -- Recover Jedi Items
end

Since you wont have the Village Jedi skills you will not be able to equip the robes.  If you would like to change the requirements in object/tangible/wearables/robe/robe_jedi_padawan.lua

Lastly, make the change in step 2 at the start of the guide above then rebuild your server.  Should be good to go then.

I believe this is the link to download that hologrind_jedi_manager.lua.
 
Reply
#12
Edited:

Also forgot 3 things.

1., in the ForceShrineMenuComponent.lua replace the whole  function ForceShrineMenuComponent:doMeditate(pObject, pPlayer) with the below:

function ForceShrineMenuComponent:doMeditate(pObject, pPlayer)

    local rand = getRandomNumber(1, 15)
    local genericMessage = "@jedi_trials:force_shrine_wisdom_" .. rand
    local isJediPadawan = CreatureObject(pPlayer):hasSkill("force_title_jedi_rank_02")
    local isJediKnight = CreatureObject(pPlayer):hasSkill("force_title_jedi_rank_03")
    local currentTrial = tonumber(readScreenPlayData(pPlayer, "JediPadawanTrial", "CurrentTrial"))
    local knightAvailable = CreatureObject(pPlayer):villageKnightPrereqsMet("")

    local pGhost = CreatureObject(pPlayer):getPlayerObject()

    if (not isJediPadawan) then
        -- Unlock Padawan
        self:unlockJediPadawan(pPlayer)
    end
end

2., You will have to edit your skills.iff file to remove the pre-req I placed for Novice paddy and add certification for the training saber.  Go to the line for jedi_padawan_novice and in the column SKILLS_REQUIRED delete the entry.  Then put cert_onehandlightsaber_training in the COMMANDS column.  Remember, this file has to be server-side and client-side, following Step 5.

3., I had to make a bunch of changes to LightsaberCrystalComponmentImplementation.cpp in order to allow for tuning crystals.
 
Reply
#13
I was also able to fix the bug where when you used 1 holocron it told you all the processions to unlock. I could share the 'how to" if there's interest but I already made huge changes to that file.
 
Reply
#14
hehe I did the same thing. Here is the change. The "break" is new:



Code:
if not playerObject:hasBadge(professions[i]) then
                    local professionText = self:getProfessionStringIdFromBadgeNumber(professions[i])
Add a comment to this line
                    creatureObject:sendSystemMessageWithTO("@jedi_spam:holocron_light_information", "@skl_n:" .. professionText)
                    break
                end
            end
        end)
 
Reply
#15
I never knew lua had break. That would have been a lot cleaner lol.

one more thing to be mindful of, the current lightsaber files on the server will give Jedi XP, so you will want to change them to the appropriate XP type or each one (or no one will be able to advance).
 
Reply
#16
So I was tweaking stuff and I'm still having some issues in the unlock with it granting the proper stuff for the shrine to give me access.

Here is my function:
function HologrindJediManager:awardJediStatusAndSkill(pCreatureObject)
ObjectManager.withCreaturePlayerObject(pCreatureObject, function(playerObject)
awardSkill(pCreatureObject, "force_title_jedi_novice")
playerObjectConfusedetJediState(1)
end)
end

I am not seeing force_title_jedi_novice successfully appear under my skills after I unlock and I'm not entirely sure why. I've tried moving around the setJediState to set it before the awardskill but that didn't seem to change anything
 
Reply
#17
I re read your post about it not working correctly and think I need to implement exactly what you said. I will do that and see where I end up. Thanks
 
Reply
#18
So I felt that not using the force progression tree was going to cause some issues so instead I figured out how to hack this out so it would work. It isn't pretty but I'll go over it in detail if someone wants

The keys are you need to change how SkillManager.cpp checks to ensure you have the rights to learn force skills, I moved it from looking at the canLearnSkill in the jedi_manager.lua to just check your Jedi state. I also had to change the granting of skills by lua to send true true true instead of true false true because they were not working in the DirectorManager.lua
 
Reply
#19
If you weren't going to use the village you should be able to still use the force progression tree but hide it. There's a column in the skills.iff file that is labeled something like show_skill or similar. Just tick that off (or on?) and it should be invisible to the client but function normally.
 
Reply
#20
(2017-03-20, 04:37 PM)c0pp3r Wrote: So I felt that not using the force progression tree was going to cause some issues so instead I figured out how to hack this out so it would work. It isn't pretty but I'll go over it in detail if someone wants

The keys are you need to change how SkillManager.cpp checks to ensure you have the rights to learn force skills, I moved it from looking at the canLearnSkill in the jedi_manager.lua to just check your Jedi state. I also had to change the granting of skills by lua to send true true true instead of true false true because they were not working in the DirectorManager.lua

Did you manage to get the force_title_rank_01 to be given on completion of the hologrind? if so can you let me know what you changed to get it to work?

Thank you
 
Reply
  



Forum Jump:


Browsing: 1 Guest(s)