HD Vanilla Trader Pics 1.6.0

Please do not ask when mod authors will update their mods to 3.10 or if they can upload older versions of their mods.
Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.

Higher resolution vanilla trader pictures.

Why?


The trader pictures were distractingly low rez. I did not like the other alternate trader picture mods. I wanted to keep true to the original design, so I took the original pictures and ran them through various upscalers and face generators, then a lot of clean up in Photoshop.


Now you can see everyone up close. The changes are subtle, but they give them a lot more character.


I recommend using this with my other mod Hide Top Glow, otherwise Ragman and Jager will look too bright.


After installing, you must "Clear Temp Files" in the SPT launcher for the new pictures to show up.




(Those original pictures in the corners are a true size comparison. (127x127 -> 526x526 )



Credit to Alternative Trader Pics for the code. You do not need this as a prerequisite though.

  • Version 1.6.0

    Updated for 3.10

  • Version 1.5.0

    Added alternative Peacekeeper picture. Option in config file.

    His OG pic is only like 2 bits, I could only do so much

  • Version 1.4.0

    • Updated for 3.9.0

    • 3rd pass edits (cleanup, improved ragman, color grading)

    • Added Joe Rogan

    • Brightness has been increased (mostly for ragman and jager) to look good with my "Hide Top Glow" mod.

  • Version 1.3

    Fixed bad server load code. Ty AcidPhantasm for the help kanawow

  • Version 1.1

    • Second pass on all pics. (Fixed eyes, alignment, resizing, color grading)
    • Added option in config file for smiling or non-smiling Prapor.
    • Removed unnecessary server log.
  • Version 1.0.0

  • I love the mod but it does not currently work as-is when the server is run on a Linux system. Would you consider changing the line

    Code
    this.modName = this.path.basename(this.path.dirname(__dirname.split('/').pop()!));

    in src/altPics.ts to

    Code
    this.modName = "redlaser42-HD Vanilla Trader Pics";

    to make it work cross-platform?


    I the current line does not work because the .split method works a bit differently in Linux but whatever is going on, the end result is that the modName gets set to . so when it's run on Linux it is unable to properly obtain the name of the mod. Then when const filepath = `${PreSptModLoader.getModPath(this.modName)}res/`; is run it throws the error message

    Code
    Error reading directory: ENOENT: no such file or directory, scandir 'user/mods/./res/'

    and is unable to provide the HD pictures to the client upon request.

    • Thanks for the report. I noticed I included the .js files in the latest release. That's caused issues with linux users in the past. If you delete the .js files, does the ts file generate a working js file when you run the server?

    • Thanks for the reply!


      This has been an issues for months and I've just finally made a comment. I did delete the .js files just to be sure and it did not fix it.


      I believe this is a fundamental difference in Linux vs Windows with how the `.split` method works. I modified the constructor as follows to try to understand the difference:

      which prints out the following on Linux

      Code
      dirname: /opt/server/user/mods/redlaser42-HD Vanilla Trader Pics/src
      split: ,opt,server,user,mods,redlaser42-HD Vanilla Trader Pics,src
      pop: src
      pop!: src
      path.dirname: .
      modname: .

      and the following on WIndows

      Code
      dirname: C:\Users\Rob\Documents\Applications\SPTarkov\zDev\SPT-310\user\mods\redlaser42-HD Vanilla Trader Pics\src
      split: C:\Users\Rob\Documents\Applications\SPTarkov\zDev\SPT-310\user\mods\redlaser42-HD Vanilla Trader Pics\src
      pop: C:\Users\Rob\Documents\Applications\SPTarkov\zDev\SPT-310\user\mods\redlaser42-HD Vanilla Trader Pics\src
      pop!: C:\Users\Rob\Documents\Applications\SPTarkov\zDev\SPT-310\user\mods\redlaser42-HD Vanilla Trader Pics\src
      path.dirname: C:\Users\Rob\Documents\Applications\SPTarkov\zDev\SPT-310\user\mods\redlaser42-HD Vanilla Trader Pics
      modname: redlaser42-HD Vanilla Trader Pics


      Clearly what returns from split on Linux can be handled by pop but when it's fed into the path.dirname function what you actually want is not what comes out. I'm surprised any Linux users have had success without modifying it (that's what I've done for the last 6 months or so and just forgot about it until I upgraded to 3.10 and had to do it again)


      Other Options

      I also did a bunch of tinkering with some other options so if you don't want to hard code the mod name in.

      Relative Path

      Code
      const filepath = `${PreSptModLoader.getModPath(this.modName)}res/`;

      to

      Code
      const filepath = `${this.path.join(__dirname, "..", "res/")}`;

      I think this would also allow you to remove the PreSptModLoader dependency (if you so desire)

      Use the pkg dependency to dynamically create the modName

      Code
      this.modName = this.path.basename(this.path.dirname(__dirname.split('/').pop()!));

      to

      Code
      this.modName = `${this.pkg.author}-${this.pkg.name}`;
    • Awesome, thanks for looking into this! I'll be sure to include one of these changes in the next update.

    • Thanks a bunch!

  • AMAZING.

    Looks so much more better.

    Heart 1
  • Already cleaned temp files but still not changing the images.

    • Hmm basic troubleshooting steps

      • What SPT and Mod version? OS?
      • The HD Vanilla Trader Pics folder is in the \user\mods?
      • There are no files in \user\sptappdata\files\trader\avatar before loading in?
    • Worked now, my \user\sptappdata\files\trader\avatar was not empty. Ty

      Thumbs Up 1
  • Lol is "Joe Rogan" actually Ref, or a new trader who sells you super expensive stims that don't have any provable effects?

    Happy 1
  • Caught an error on the latest upload

    https://imgur.com/a/aTvGyF1


    ModLoader: Mod (Vanilla Trader Pics Plus 1.0) is incompatible. It must implement at least one of IPostAkiLoadMod, IPostDBLoadMod, IPreAkiLoadMod



    and then later


    TypeError: Cannot read properties of undefined (reading 'main')

    TypeError: Cannot read properties of undefined (reading 'main')

    at PostDBModLoader.executeModsAsync (C:\snapshot\src\loaders\PostDBModLoader.ts:52:70)

    at processTicksAndRejections (node:internal/process/task_queues:95:5)

    at PostDBModLoader.onLoad (C:\snapshot\src\loaders\PostDBModLoader.ts:30:13)

    at App.load (C:\snapshot\src\utils\App.ts:57:13)

    TypeError: Cannot read properties of undefined (reading 'main')

    TypeError: Cannot read properties of undefined (reading 'main')

    at PostDBModLoader.executeModsAsync (C:\snapshot\src\loaders\PostDBModLoader.ts:52:70)

    at processTicksAndRejections (node:internal/process/task_queues:95:5)

    at PostDBModLoader.onLoad (C:\snapshot\src\loaders\PostDBModLoader.ts:30:13)

    at App.load (C:\snapshot\src\utils\App.ts:57:13)

    • Thanks, I think I've gotten that before. I will look into it tonight. You could download 1.0 and drop in the new pics in the meantime.

    • That's just what I did :)

    • Should be all good now. Ty for the report animedance

  • That's really cool, may you please make HD vanilla skill pics as well? I think they are in low quality for a long period, that will improve visual feeling actually if some HD pics on it.

  • Amazing mod! Thank you very much! I must have for vanilla traders!!!

    Thumbs Up 1
  • Quote

    The changes are subtle, but they give them a lot more character.

    You were not kidding. GOATED mod. Thank you ^^ :thumbup:

    Thumbs Up 1
  • If the traders pictures have not changed, close the game and delete the avatar folder from AppData\Local\Temp\Battlestate Games\EscapeFromTarkov\files\trader

    Thumbs Up 2
    • You can also "Clear Temp Files" in the SPT Launcher settings.

  • Code
    TypeError: Cannot read properties of undefined (reading 'forEach')
    TypeError: Cannot read properties of undefined (reading 'forEach')
        at /opt/server/user/mods/Vanilla Trader Pics Plus 1.0/src/altPics.ts:30:19
        at FSReqCallback.oncomplete (node:fs:191:23)
    TypeError: Cannot read properties of undefined (reading 'forEach')
    TypeError: Cannot read properties of undefined (reading 'forEach')
        at /opt/server/user/mods/Vanilla Trader Pics Plus 1.0/src/altPics.ts:30:19
        at FSReqCallback.oncomplete (node:fs:191:23)

    Running server backend on Debian

    • Not sure what this could be having not done the coding, but there are other alternate trader pic mods you could try and use these photos with.

    • This should be fix now btw

  • I love these....I just have one small request....

    Possible to have Prapor not smiling? More like this image

    https://escapefromtarkov.fando…or?file=PraporFullRes.jpg


    Not sure how you feel about it, and it's a small thing, so super down to use your mod either way. Just wanted to see if you'd consider it.