ebmar

Members
  • Content Count

    1,197
  • Joined

  • Last visited

  • Days Won

    45

Posts posted by ebmar


  1. [Updated to v1.0.1: April 16, 2023]

    What's New in Version 1.0.1?

    • Includes the animated version:
      • Each frame sized at x256
      • Consisted of 25 frames to a 5x5 layout sized at x1280
      • Set to cycle procedurally in-game at 12.5 FPS
      • Has an alpha-channel that used for animated-scanline effects, which diffuse used mainly for diffuse-color

     

    Preview

    Blue - Movie-style [ANIMATED]

    Spoiler
    • Like 1

  2. Congrats with the attempt, @EpicStoffer -- impressed with what I've been hearing so far.

    7 hours ago, EpicStoffer said:

    Speaking of splicing, perhaps someone can offer some feedback on my latest splice attempt. I don't feel overly confident in it myself.

    I'm guessing that AI had troubles mostly with pacing, so maybe you can try editing the tempo. Is there an editor for it? Perhaps you can adjust so they are not in a rush when speaking words that followed by "it", as noticed from your latest splices there. But overall the quality is good. Nice!

    Was curious so I took an edit on how I'd like the whole sentence to be spoken, then maybe you can catch what I mean: unsureseelah04_test.mp3

    • Light Side Points 1

  3. [TSL] eb's Holo-Overlays


     

    This mod changes the hologram-overlay texture used by TSL [mostly] for the holo-logs. It is mainly inspired by combination of movie-style and SWTOR's.

     

    Preview

    Blue - Movie-style [STATIC]

    Spoiler
    • Description
      • This version uses a static-texture sized at x512.
      • It has an alpha-channel used for scanline effects, which diffuse used mainly for diffuse-color.

    Blue - Movie-style [ANIMATED]

    Spoiler
    • Description
      • This version uses an animated-texture sized at x256/frame
      • It consisted of 25 frames to a 5x5 layout sized at x1280
      • It is set to cycle procedurally in-game at 12.5 FPS
      • It has an alpha-channel used for animated-scanline effects, which diffuse used mainly for diffuse-color.
    • Disclaimer

     

    Requirement

     

    Compatibility

    Compatible with any mods and builds -- long as not affecting `holotex`. It is advised for user to remove any instance of TGA, DDS, or TXI format of the said file in their `override` folder before install.

     

    Installation

    Install `holotex.TPC` to the `override` folder. Overwrite when prompted.

     

    Uninstallation

    Remove `holotex.TPC` from the `override` folder.

     

    Known Issues
    N/A

     

    Final Remarks
    There's always room for improvements; reviews, critiques, comments, suggestions, questions and feedbacks are much appreciated. PM me here, write them on my feed or leave any on the mod's page as you please. And thank you! for downloading, and using this mod. Hope you enjoy the mod as much as I do!

     

    Redistribution
    Do not redistribute this mod or re-release it on any websites. I'd love providing direct support to my work, which wouldn't be possible if they're scattered in the Unknown Regions. If you are to re-use the assets to a project you will be releasing, please be kindly to ask for permission first -- that way I know what's up.

     

    Credits

    • The Almighty Force.
    • BioWare, Obsidian Entertainment, and LucasArts for "The Old Republic" video-game franchise.
    • DarthParametric for past-present knowledge, and all his creation that I learn from.
    • JCarter426 and Inyri Forge for all their work that I look up to. I learned a lot from their mods and been approaching a lot using their method.
    • Fred Tetra for KotOR Tool.
    • ndix UR for tga2tpc and tpcview.
    • Cortisol for Holocron Toolset.
    • All the Tool Makers wasn't mentioned -- can't make it without y'all! :respect:
    • All streamers of DeadlyStream.
    • All modders either active or inactive.
    • DeadlyStream for being a home -- a place to hang-out, to discuss and hosting my work, and all their staffs for tirelessly improving-maintaining the site.
    • DeadlyStream's #modding [Discord's] channel.

    -eb


    • Submitter
    • Submitted
      03/04/2023
    • Category
    • TSLRCM Compatible
      Yes

     


  4. On 3/1/2021 at 9:38 AM, TheCOPRCollection said:

    Background music interrupts seem bugged. Near the start of the game, the player has the option of checking the hatch to the Peragus Mining Tunnels turbolift only to find that it is sealed. This is typically met with a quick telepathic dialogue from Kreia and a (loud) momentary change in background music. After the sound and the dialogue finishes the Peragus theme is supposed to resume playing on a loop....But it doesn't. The short (loud) music segment from the cutscene just keeps looping in its place throughout the rest of the level...

    Here's in-game footage of the issue as happened on my end as well:

    https://user-images.githubusercontent.com/50026566/214293743-f4ea4c72-da97-4cde-ba16-e4d9e292c6e6.mp4

    The responsible file is `emrhatch.DLG`. Had it fixed locally by moving `a_stoptele` from `EntryList3` to `ReplyList1` -- which is a script that should switch the BGM back to Peragus'.

    You can check the details as posted over TSL-CP's repo here: https://github.com/KOTORCommunityPatches/TSL_Community_Patch/issues/88#issue-1554925084


  5. [Updated to v1.0.1: February 28, 2023]

    What's New in Version 1.0.1?

    • Utilizes `AmbientTrack` field from the relevant DLG instead of calling the track via a custom-script.
      • As a result this version doesn't include a custom-script installation.
    • Using original audio file instead of custom.
      • As a result this version doesn't include a custom audio.
      • 2DA and TLK patching is redundant and isn't used.

     

    Note to v1.0.0 user: Do NOT install v1.0.1 [and above] on top of current installation. There's no functionality difference between them, so you're fine keeping it still. Only do so from a clean install.


  6. On 2/19/2023 at 7:53 PM, N-DReW25 said:

    If anyone would like the full TSLPatcher log or even the full mod to test out the TSLPatcher to find a solution on how to fix it, I'll be happy to send it through.

    Can you attach the mod setup? I'd liked to have a look if you don't mind.

    Edit:

    As we discussed this over DC I think it'd be beneficial to have it documented here as well:

    Spoiler

    Anyways, not relevant with the issue but what you're doing here:

    
     • Warning: A file named appearance.2da already exists in the Override folder. Skipping file...
     • Warning: A file named heads.2da already exists in the Override folder. Skipping file...
     • Warning: A file named soundset.2da already exists in the Override folder. Skipping file...

    -- is not recommended.
    You're probably trying to manually install 2DAs using `[InstallList]` to the `override`, and it shouldn't be like that. `[2DAList]` is sufficient enough and is advised that you only do so.

    /* .... */

    
     • Error: No instruction section found for file kor33b_murderer.utc, skipping...

    -- hmm, a quick guess; that likely you're recalling `kor33b_murderer.utc` from the `[GFFList]` or there's a second instance of `[kor33b_murderer.utc]` without instruction is presented. Cause it already did with the first one here:

    
     • Saving modified file "kor33b_murderer.utc" in archive "korr_m33aa.mod".

    /* .... */

    Hmm, weird. Didn't seem there's anything that should errored out by the setup:

    
    [GFFList]
    ....
    File4=kor33b_murderer.utc
    ....
    [kor33b_murderer.utc]
    !Destination=modules\korr_m33aa.mod
    FirstName(strref)=StrRef8
    ....

    Only an instance, and it should've been running as it should -- no errors.
    However, I disabled `FirstName(lang0)=-1` command as it's irrelevant 'cause you already have `FirstName(strref)=~` going. Someone correct me if I'm wrong 'cause that's out from usual practice from what I recall.

    Anyway, maybe you can try this INI and see if there's any change. I didn't have K1 installed right now so can't do a test unfortunately: changes.ini

     


  7. Greetings,

    Firstly, congrats with the release of the tool -- and much thanks for sharing it with the community.

    Anyway, I wonder if it's possible for the patcher [in the future] to have something like #GetIntbyString# capability?

    Basically it'd try to get a ROW/INT value inside a 2DA -- that instead of adding a new row it checks for a value and inject it to the script.

    So let's say I have this script here --

    Spoiler
    
    void main()
    {
    	// variables
    	string GetIntbyString = "lorem_ipsum";
    	int nOld = #GetIntbyString#;
    	int nPeragus = 11;
    	int nNew = #2DAMEMORY1#;
    	int nTelos = 20;
    	
    	int nParam1 = GetScriptParameter(1);
    	switch(nParam1)
    	{
    		case 0:
    			// retain the OLD value, based on the `Resource` label inside `ambientmusic.2DA`
    			MusicBackgroundChangeDay(GetArea(OBJECT_SELF), nOld);
    			MusicBackgroundChangeNight(GetArea(OBJECT_SELF), nOld);
    			// AFTER 11 seconds, change the BGM back to Peragus'
    			{
    				DelayCommand(11.0, MusicBackgroundChangeDay(GetArea(OBJECT_SELF), nPeragus));
    				DelayCommand(11.0, MusicBackgroundChangeNight(GetArea(OBJECT_SELF), nPeragus));
    			}
    			break;
    		case 1:
    			// This `case` is newly-added, which purpose is to patch a NEW value for another use-case
    			MusicBackgroundChangeDay(GetArea(OBJECT_SELF), nNew);
    			MusicBackgroundChangeNight(GetArea(OBJECT_SELF), nNew);
    			// AFTER 21 seconds, change the BGM back to Telosian Base'
    			{
    				DelayCommand(21.0, MusicBackgroundChangeDay(GetArea(OBJECT_SELF), nTelos));
    				DelayCommand(21.0, MusicBackgroundChangeNight(GetArea(OBJECT_SELF), nTelos));
    			}
    			break;
    		default:
    			break;
    	}
    }

    -- hoped that gave you the picture, and sorry for any misleading caused by it.

    The reason for it is to make it possible to update a script that contain old token/value, without having to add new rows to a 2DA.

    Much thanks for considering this.


  8. [TSL] "T3-M4 Found the Ebon Hawk"s Theme


     

    This mod plays an ambient-track to complement "T3 finding the Ebon Hawk" cutscene in Peragus' Hangar Bay.

     

    Preview

    Spoiler
    • Description
      • It edits the entire cutscene to not-skippable, then sets the ambient-track to `mus_s_positive` -- an original audio file that’s located in `streammusic` folder.
      • It also stops the area BGM momentarily for 11 seconds to not have the AT overlaps with, should then it play back again.

     

    Requirement

    • It is required for users to have TSLRCM v1.8.6 installed to their game for this mod to successfully working – both in installation process and in-game.
    • K2CP is not strictly-required, but is strongly-suggested to have as well as this mod were made with CP’s compatibility in-mind.

     

    Compatibility

    • Should be optimally-compatible with any mods and builds -- long as not affecting `hangcam.DLG` and `mus_s_positive.WAV/MP3`.
    • Note: It is safe now for user to install this version on top of any currently installed version. It supersedes and overrides their functionality so compatibility is much ensured.

     

    ** -- for installation instructions, run the installer [Install.EXE].

     

    Known Issues
    N/A

     

    Final Remarks
    There's always room for improvements; reviews, critiques, comments, suggestions, questions and feedbacks are much appreciated. PM me here, write them on my feed or leave any on the mod's page as you please. And thank you! for downloading, and using this mod. Hope you enjoy the mod as much as I do!

     

    Redistribution
    Do not redistribute this mod or re-release it on any websites. I'd love providing direct support to my work, which wouldn't be possible if they're scattered in the Unknown Regions. If you are to re-use the assets to a project you will be releasing, please be kindly to ask for permission first -- that way I know what's up.

     

    Credits

    • The Almighty Force.
    • BioWare, Obsidian Entertainment, and LucasArts for "The Old Republic" video-game franchise.
    • DarthParametric for past-present knowledge, and all his creation that I learn from.
    • JCarter426 and Inyri Forge for all their work that I look up to. I learned a lot from their mods and been approaching a lot using their method.
    • Fred Tetra for KotOR Tool.
    • stoffe for TSL Patcher and Fair Strides for the updates.
    • tk102 for DLGEditor.
    • Cortisol for Holocron Toolset.
    • All the Tool Makers wasn't mentioned -- can't make it without y'all! :respect:
    • All streamers of DeadlyStream.
    • All modders either active or inactive.
    • DeadlyStream for being a home -- a place to hang-out, to discuss and hosting my work, and all their staffs for tirelessly improving-maintaining the site.
    • DeadlyStream's #modding [Discord's] channel.

    -eb


    • Submitter
    • Submitted
      02/06/2023
    • Category
    • TSLRCM Compatible
      Yes

     

    • Like 2

  9. Quite opposite to what DP suggested -- I'm not encouraging you to use it, but if you know what you're doing--at least locally--it's worth a try. I'm using it along my TSL build, and are comfortable with. I'd enthusiastically use it for K1 as well if only it supports it, which apparently not.

    Be advised that I'm using GOG version of TSL, so I can't tell if things works the same with others [Steam, retail, etc.].

    And to answer your questions --

    8 hours ago, Elwood288 said:

    1. Can I use sub directories in the override folder?

    Yes, you can for TSL but only one level apart, IIRC -- for example;

    Override \ GUI

    -- and not

    Override \ GUI \ Menu
    8 hours ago, Elwood288 said:

    2. Would you recommend using them?

    Only if you think you need to, or most importantly -- can.

    8 hours ago, Elwood288 said:

    3.What files shouldn't be in sub directories? I know 2das shouldn't but anything else?

    From my documentation should only be 2DAs and JRL.

    8 hours ago, Elwood288 said:

    4.Any tips you use on keeping your installed mods organized?

    Whatever suited you, really. This is how my [TSL] Override's lookin' for reference --

    Spoiler
    
    // \Override\
    alienvo.2DA
    ambientmusic.2DA
    ammunitiontypes.2DA
    animations.2DA
    appearance.2DA
    baseitems.2DA
    camerastyle.2DA
    cls_st_jmaster.2DA
    cls_st_jweapmas.2DA
    cls_st_sithlord.2DA
    cls_st_sithmar.2DA
    feat.2DA
    featgain.2DA
    global.JRL
    globalcat.2DA
    heads.2DA
    itemcreate.2DA
    itemcreatemira.2DA
    loadstoryhints.2DA
    modulesave.2DA
    movies.2DA
    musictable.2DA
    nwscript.NSS // This can be ignored. I think K-Tool put this one here for whatever reason and shouldn't do anything at all as the game can't read NSS file as well
    placeableobjsnds.2DA
    placeables.2DA
    portraits.2DA
    soundset.2DA
    spells.2DA
    upgrade.2DA
    videoeffects.2DA
    
    // These are the sub-dir folders --
    D3_LOCATION
    DLG
    DP_WBUI
    EB_COMPANL_SOLID
    EB_GLOBALFADE
    EB_PLAYSOUND
    GUI
    IMP_AI
    INF_FIX
    JCEB_SBRPLANE
    LIP
    LSABRE_MDL
    LYT
    MDL
    NCS
    SSF
    STYLIZED_PO
    SUPER_MDL
    TEST_SITHEYES
    TPC
    TQB_TOR_ROBES
    UTC
    UTE
    UTI
    UTP
    UTW
    VIS
    WAV
    WOK

  10. 6 hours ago, Jj117 said:

    After editing the NPC do i need to extract the said UTI file...

    UTI is for Items [weapons, armors etc.], UTC is for Creatures [NPCs, etc.].

    6 hours ago, Jj117 said:

    ...and place them on override folder?

    No, make it a habit to put back module-specific templates back to their own MODs/modules, such that one you mentioned above.

    You can use ERFEdit as the external-tool to work on it. As with Holocron Toolset @Cortisol might have better answer as I haven't tried the feature yet.

    • Like 1

  11. 1 hour ago, Jj117 said:

    I chose the dantooine level Dantooine Jedi Enclave danm13.mod and tried to change the appearance of a droid but nothing happened.

    For this type of change one will have to load/enter the module the first time to have it work. So in this case you'll need to load a [saved] game anywhere before landing on Dantooine.

    The basic idea is to have the game load the [object] templates before they're spawned into the module, otherwise they still carry the previous data prior to the edited ones.

    1 hour ago, Jj117 said:

    should i also edit the danm13_s.rim portion on the module too?

    No you don't, and never have to edit the RIM -- ever, at least in K1.

    The game prioritize MOD over RIM, so any change you make to the MOD will take precedence shortly -- that, if you load it right. One will not need to edit RIMs' 'cause they're critical for rollbacks and/or debugging without having to reinstall the game.

    • Like 2

  12. 24 minutes ago, Salk said:

    ...the texture would look in game the way it was rendered in the .tpc image?

    Yeah, more or less.

    Basically,--speaking as an end-user of the format--I'm quite certain there are no differences regarding TGA vs TPC colors, pixels' positioning/orientation in such it'd make them details changing shapes or something -- and even if there's one there can only bits of jaggedness/artefacts at parts. However, I guess that's inevitable regarding how compression works -- like almost in general.

    But again, there are probably edge-cases like you experienced -- which I never had one, and that can be down to many things such as the [conversion] process itself.


  13. 52 minutes ago, Salk said:

    As you can see the black part is completely absent.

    tpcview takes account on rendering alpha-channel with the diffuse/texture, so that black area appear transparent there as it's applied with alpha-mask purposed for envmap in-game, if I call this matter correctly.

    Therefore, I don't see any issue regarding tga2tpc's TPC end-result -- particularly in this substance.

    • Like 1

  14. 4 hours ago, Masamune753 said:

    I was able to get around the dual wield limit for stun batons by pointing a vibroblade uti (with stun properties) to a stun baton model.

    That's not advisable -- as in your case then the baton will have Vibroblade's soundsets/SFX as defined in the baseitems.2DA [weaponmattype] -- unless you intent on having that.

    A rather proper route will be by adding new entry for it -- using one of the dual-wield melees as the template and edit the fields where necessary.

    However, it seems possible to use the current baton's ID and changing the value of weaponwield from 1 to 2 to match the other DW melees. Although I haven't tried to see if it's working [properly] or not.

    4 hours ago, Masamune753 said:

    Could you make a lightsaber uti and point it to another weapon model to make it work with Force Jump?

    As JC said the game check for the specific lightsaber item types for FJ to function. Granted that your idea should work [like having a sword pointed to the saber item type], but you can't do much about the SFX--and its other specific traits--unless you don't give much concern about them.


  15. 10 hours ago, djh269 said:

    ...there's another time when I called an OnEnter script and it didn't fire at all!

    Actually I'd suggest you to just edit the OnEnter itself rather than calling/execute it from your script. That way can remove the hassle from having to edit the relevant field on the ARE/IFO. Granted, one can just make a unique name for a script that used for executing the original and placing it to the Override, but I believe that'd do more problems than it solve.

    Understandable that there are some edge cases which the original can't be decompiled, but if necessary just go with the editing.

    10 hours ago, djh269 said:

    Do you have any other educational resources you use?

    Not really aside of other members' source, vanilla scripts and once in a while I visit NWN Lexicon for relevant answers that can't be found anywhere. And not to forget asking other members for insights is a great educational resources as well.

    Though I find the best way to learn is by decompiling any of the binary, and make your way reconstructing them as readable as can be with intelligible constants -- for example [to where they fit into]; int 1 to TRUE, float 0.0 to DIRECTION_EAST, int 5 to ANIMATION_LOOPING_TALK_NORMAL, etc.].

    Oh, and comments [started by // then followed with one] can go a long way too -- as our masters @Qui-Gon Glenn once taught me as well --

    On 11/30/2018 at 4:14 AM, Qui-Gon Glenn said:

    Also, comment your code to death. You will thank yourself later.


  16. 2 hours ago, djh269 said:

    ...thanks for your help buddy!

    No worries, the pleasure's mine. Anyway, in case you missed the added comments you should change the filename of the executed script/k_pdan_13_areaold to something less/equal to 16 characters.

    The script will still compile and the ExecuteScript function will fires -- it's just there's nothing to execute 'cause the game can't read it.

    2 hours ago, djh269 said:

    That's some great scripting knowledge you have mate!  

    Appreciate you think of me like that -- but I know there's more about the [KotOR] scripting world that I didn't understand yet, hahah. But as what I have now wouldn't be possible if not with helping hands from other members in the communities.

    As for scripting syntax [usage of logical AND && / logical OR || / logical NOT !] I'd suggest you to check on this one -- Introduction to Scripting Syntax - Tutorials: Scripting - The International House of Mojo Forums (mixnmojo.com)


  17. Try this, this one compiles for me --

    void main()
    {
        int sID_FOUND_BOD1 = GetGlobalBoolean("FOUND_BOD1");
        int sID_light_crys2 = GetGlobalBoolean("light_crys2");
    
        // Checks if BOTH quest requirements are met
        if(sID_FOUND_BOD1 == TRUE && sID_light_crys2 == TRUE)
        {
    	    CreateObject(OBJECT_TYPE_CREATURE, "dan13_jed99", Location(Vector(160.04f, 84.16f, 12.62f), DIRECTION_EAST));
        }
    
        // Better change the executed-script name as it exceeds the maximum 16 characters the game could read
        ExecuteScript("k_pdan_13_areaold", OBJECT_SELF);
    }
    18 hours ago, djh269 said:

    Unfortunately the above won't compile...

    Your problem was--as the compiler said so -- Error: Variable "check" defined multiple times in the same scope

    Although to be honest I was surprised looking at your script initially - thinking that'd work and the problem was on something else. Would be cool if the compiler can support that idea, I guess. And yeah, it had something to do with the and function within a script.


  18. Try this to swap Malak's appearance to his jawless one before the final sentences -- [K1]_Jawless_Malak_[End-Game]_BETA.7z

    Apparently it's fine as it is using the default jawless model/n_darthmalak02 -- as it already refer the regular model/N_DarthMalak as the Supermodel. Granted, the cape will clips with the floor but that to expected as it will require custom animations like Sithspecter's Revan's Flowing Cape mod -- which not something I could tackle.

    The script will work with a saved game inside the module so one don't have to re-enter looking for its first time.

    I don't provide the source with the archive but here's one to look at --

    Spoiler
    
    //:://///////////////////////////////////////////////////////////////
    //:: [K1] Jawless Malak [End-Game]
    //:://///////////////////////////////////////////////////////////////
    //:: Version            : BETA
    //:: File Name          : k_psta_endjump
    //:: Associated RIM/MOD : sta_m45ad
    //:://///////////////////////////////////////////////////////////////
    /*   Created By         : ebmar [based on BioWare's implementation]
         Created On         : February 06, 2022
    */
    //:://///////////////////////////////////////////////////////////////
    
    void UT_ActionPauseConversation(float fDelay)
    {
    	ActionPauseConversation();
    	DelayCommand(fDelay, ActionResumeConversation());
    }
    
    void main()
    {
    	object oPC = GetFirstPC();
    	object oSta45_DarthMalak = GetObjectByTag("sta_45darthMalak");
    	location lLoc_PC = GetLocation(GetObjectByTag("sta_pc_dead"));
    	location lLoc_Sta45_DarthMalak = GetLocation(GetObjectByTag("sta_malak_dead"));
    	int nDA_JawlessDarthMalak = 368; // Jawless Malak's default ID row in --appearance.2DA
    	
    	UT_ActionPauseConversation(3.0f);
    	
    	SetCommandable(TRUE, oSta45_DarthMalak);
    	
    	// Switch Malak's appearance permanently to the jawless one as in --appearance.2DA
    	ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectDisguise(nDA_JawlessDarthMalak), oSta45_DarthMalak);
    	
    	AssignCommand(oSta45_DarthMalak, PlayAnimation(ANIMATION_LOOPING_KNEEL_TALK_SAD, 1.0f, -1.0f));
    	
    	/* Not sure why they jumped them twice at the same location
    	-- and late to noticed that, but I didn't bother changing it */
        DelayCommand(0.2f, AssignCommand(oPC, JumpToLocation(lLoc_PC)));
    	DelayCommand(0.2f, AssignCommand(oSta45_DarthMalak, JumpToLocation(lLoc_Sta45_DarthMalak)));
    	DelayCommand(0.5f, AssignCommand(oPC, JumpToLocation(lLoc_PC)));
    	DelayCommand(0.5f, AssignCommand(oSta45_DarthMalak, JumpToLocation(lLoc_Sta45_DarthMalak)));
    }

     

    6 hours ago, Liserg said:

    ...this mod can be used for Singleplayer company? Were you able to solve the problem with Malak's mantle animation, when he uses a single/dual blaster, dual sword, staff?

    Nope, and I didn't plan working on one [said animations] in the meantime.

    • Like 1