Modding Help Custom teleport animation?

Discussion in 'Starbound Modding' started by BlueLeafeon, Oct 1, 2016.

  1. BlueLeafeon

    BlueLeafeon Cosmic Narwhal

    So I noticed Penguins have their own teleport animations... But I haven't precisely been able to figure out what tells the game to use said animation. I've looked in penguinoid.config and several other places, but to no avail. Does anybody know how to make a species use its own teleport animation?
     
  2. Marinebeast

    Marinebeast Existential Complex

    You can find teleport animations under /cinematics/teleport, which directs species to their respective teleport animations + frames.
    Apex use "teleport_apex", "up_apex", "warpdown_apex" and the frames associated with those images, and so on and so forth.

    You can create custom species teleport animations by following the trend, just be sure that you handle frames and frame size correctly if you make your own custom animations.
     
  3. Antyrus

    Antyrus Pangalactic Porcupine

    If I had to guess, they're referring to the landing animation files in /animations/teleport. Every playable vanilla race uses the same teleport animation when they land, and isn't changed per race. Penguins have their own animation, but I don't know how it's chosen ingame. It's not really something most people think about since the vast majority of races are humanoid, but for certain races (e.g. BlueLeafeon's cats) it's a little odd how the animation looks like a human when the race is explicitly not.
     
  4. Marinebeast

    Marinebeast Existential Complex

    Oh, I see what's being gotten at here now.
    That's interesting, though -- the frames in that folder are blue while other races have their own respective colors, which suggests either 1. the game takes the colors of the cinematics/teleport sprites and applies them, or 2. it uses those specific sprites. Do the animations in the cinematics/teleport take priority over the animations/teleport, and if they do, would custom sprites in cinematics/teleport work to overlay the animation/teleport ones? Looking at them makes me think that they're a template or something.

    If there were more files in the penguin species folder, then maybe. this could have a more obvious answer, but there's only the typical humanoid assets. I've the same problem, really, just with a different asset-- I want to tweak the npc chatter noises, but there's no direction on how to specify those for a custom race.
     
  5. Antyrus

    Antyrus Pangalactic Porcupine

    Actually, I'm pretty sure the game uses both file folders. Neither takes priority because they're used for different things: Exiting/entering the world, and loading in between worlds. I'd like to point out that both normal and penguin teleport animations are viewable ingame; If you recruit a penguin mercenary and have it follow you, you see the exit/enter warp animations.
    As for colors
    The /cinematic files are filed by race in order to use different colors for different races. What's weird here is that there's actually a line in .species that defines the color of the /animation files, namely:
    Code:
    "effectDirectives" : "?replace=FEFFFFFF=FFFFFFFF?replace=9bd4ffFF=3dff81?replace=31a6ffFF=00c212FF",
    (this is a green recolor btw)
    That is to say, the colors for both image sets are totally unlinked.
     
  6. BlueLeafeon

    BlueLeafeon Cosmic Narwhal

    As Antyrus said, what I'm specifically looking to change is the animation where the player either turns into an energy beam or takes form after the teleportation. Not the actual beaming itself, which is already covered in Skittles' race mod.

    I originally thought it impossible to change this specific animation because I thought it was something shared across ALL races, but then I found the penguin teleport animation, which is actively in use by said species. I cannot, however, figure out WHAT makes the game call forth this specific animation. It's not in the species config or the penguinoid config. But surely, some file somewhere MUST be pointing to these. It's just a matter of finding said file...
     
  7. Zavender

    Zavender Scruffy Nerf-Herder

    Keep in mind the penguin race isn't playable, and it'll probably be handled differently.
    Considering when I was perusing about I found the animations\teleport folder, it seems penguins are the only ones who have some sort of unique animation, and players solely have the others. I believe what might do it is this, in the client.config file thats located directly in the unpacked folder:
    Code:
      "warpCinematic" : "/cinematics/teleport/teleport_<species>.cinematic",
    If that can't be fiddled to work, then it's either buried in some crew script I didn't find, or its just in the engine to make an exception for the only non-humanoid crew members.

    Also some bonus gems I found reading through penguin stuff.
    Code:
          "subTitle" : "How are you even reading this ?",
          "description" : "No idea what to put here"
    Code:
      // monument to removed felin fur colors RIP
    --TODO: Refactor 'self' to a better name, someday...
     
  8. BlueLeafeon

    BlueLeafeon Cosmic Narwhal

    The felin fur colors things has me curious. ._.

    The only thing I've been able to find is a specific file in stats\effects\beamout (and beamin) in which this is mentioned:
    Code:
    {
      "name" : "beamout",
      "effectConfig" : {
      "speciesTags" : {
      "penguin" : "penguin"
      }
      },
      "defaultDuration" : 0.75,
    
      "scripts" : [
      "beamout.lua"
      ],
    
      "animationConfig" : "beamout.animation"
    }
    
    Not exactly sure what's going on here, though...
     
  9. Antyrus

    Antyrus Pangalactic Porcupine


    So there's also a /beamin in /stats, and for there's a .animation AND a .lua for both.
    what SHOULD solve our problem is right there:
    warpout:
    Code:
    "image" : "/animations/teleport/<species>playerwarpout.png:<frame><effectDirectives>"
    
    warpin:
    Code:
    "image" : "/animations/teleport/<species>playerwarpin.png:<frame><effectDirectives>"
    There's even reference in the lua code for species:
    Code:
      local speciesTags = config.getParameter("speciesTags")
      if status.statusProperty("species") then
        animator.setGlobalTag("species", speciesTags[status.statusProperty("species")] or "")
      end
    There's a reference to speciesTags, which is in beamout.statuseffect, listing penguin.
    Thing is, while I've been able to easily change the teleport animation for all races by replacing the default warp images, changing it for one specific race just doesn't seem to work.
    Also of note: I find myself unable to change the penguin warp images via dirty edit, which implies that the penguin warp images are hidden somewhere else. I'm kinda out of ideas here. I've even changed the speciesTags, removing penguin completely, just to see if it would have ANY effect. None. Penguins continue to warp as usual despite me trying my hardest to mess them up.

    Ok so aside from all the probably useless information listed in the spoiler above, there's some lines in playereffects.animation that look like this:
    Code:
    "image" : "/animations/teleport/playerwarpin.png:<frame><effectDirectives>"
    I've changed /playerwarpin.png to /<species>playerwarpin.png which just removed the animation completely but gave me some log data: When using a race with the appropriate files(in my case, lamiaplayerwarpin.png) it tries to look for defaultplayerwarpin.png, fails, and proceeds anyway.
    Obviously I'd need a default fileset to get the patch working properly, but I'm still not sure why it didn't accept/find lamiaplayerwarpin.png, unless you actually NEED a default in order to accept anything else. I'll take another look at it later if someone else hasn't figured it out.
     
  10. BlueLeafeon

    BlueLeafeon Cosmic Narwhal

    There is, in fact, two separate sets of images for penguins. One in animations/penguinteleport and one in animations/teleport titled "penguinplayerwarp(in/out)"

    Even if there's no way to specifically ADD new animations, if I could somehow make cats use the penguin teleport animation and rework it to be slightly more generic, that would suffice as well. As it is, penguins aren't playable and are much closer in size to that of a cat. I don't really want to replace the humanoid teleport animation, though.
     
  11. Zavender

    Zavender Scruffy Nerf-Herder

    Don't forget that (I believe) there are multiple animations, one for using a teleporter, and one for using the beam in/out option. Or they may be a relic from beta, I actually haven't looked close enough to really take note.
     
  12. Antyrus

    Antyrus Pangalactic Porcupine

    I actually tried every file in both penguin teleport sets, neither of which changed anything. As for the multiple teleport sets, there are 3 total. One for teleporters, one for beaming, and one for ancient gates. The ancient ones are the only ones not in use(although I can't say for sure cause I'm at work right now).
     
  13. BlueLeafeon

    BlueLeafeon Cosmic Narwhal

    Wait, you changed all of them and it didn't work?
     
  14. Antyrus

    Antyrus Pangalactic Porcupine

    I tried via quick dirty edit: copying the vanilla files to a mod folder in the exact location they are in vanilla, opening them in an image editor, and filling the whole image yellow. If I was met with success, it would have been obvious because there would have been a big yellow brick when penguins teleport(which didn't happen).
    I recommend somebody else try because it's totally possible I messed up, or I just did it wrong because I'm dumb sometimes.
     

Share This Page