IronHunter

  • Content count

    214
  • Joined

  • Last visited

Community Reputation

279 Excellent

6 Followers

About IronHunter

Recent Profile Visitors

946 profile views
  1. Spriter Help

    I should probably add some wierd quirks of don't starve animation. First of all animations in don't starve are animated at 30FPS. This means you need to do 34, 67, 100 etc keyframes as spriter supports up to 1000FPS. It does this via tweens from keyframes. The decompiler of krane automatically makes the keyframes at these positions. The name of the folder defines the name of the symbol. Although I believe its not neccessary it does make it a lot easier to make sure all images in the folder have the same name. In a format like symbol-0, symbol-1 etc. This is just for organization sakes. Make sure you give your symbols pivots, because its very likely each of your images for the animation are different dimensions and any rotation, or motion in spriter to compensate for pivot changes will likely have undesired effects. You can open up the scml file to view the file as a text file. It can be handy for manually editing stuff with precision and for updating. It is difficult to troubleshoot off text alone. So if this is not enough to help. You might need to attach your spriter file and its respective assets.
  2. Different arm lower on sprite

    Technically it is possible, but it would require cloning/modifying all the animations to support this for your one character. Well over 200 player animations exist. There is also the possibility depending on what you are trying to do, to use follower symbols following the cuff. However this is very limited in what you can do unless you again make custom animation and code to do it. Directly targeting a specific symbol without proper labels when there are multiples of them has not been a successful endeavor for me and I haven't seen others do it. Practically speaking, the game engine was built from the ground up to use symetrical designs and asymetric ones just aren't easy to do without a ton of work. Even harder to do in dst as you got multiple cameras and client side relations to try to make work. Practically speaking, it is a mountain of work. I have yet to see any full player animation reworks. Just making new animation is already a major headache for most people even with the handy stickied custom player animation template.
  3. custom item help

    You could just clone the reader and book components and actions and make them exclusive to your character to read.
  4. Spriter Help

    Ok spriter is primarily a symbol based animation software. This means instead of dragging new symbols into the frame you simply create a new keyframe of the previous symbol and modify the previous symbol for the new keyframe. If you right click a symbol you can change it to another texture. It is very important you set up your symbol folder correctly. The reason why you are seeing all these added symbols is because you are essentially creating a ton of symbols everytime you drag a new image into the anim. If you look at the timeline these symbols are persistent throughout, and will be appear and disappear as the timeline says. A key thing to understand is the folder architecture for your anim, and the pivot points for your symbols are as desired. Checking out decompiled animations and how they do it is quite helpful. Also you can open .scml in text editors its basically a spreadsheet and can easily be edited. Edit: http://www.brashmonkey.com/spriter_manual/getting started.htm
  5. custom item help

    Define character specific? If you mean only your character can make like wickerbottom's books or wigfrid. Then you need to add your character's unique tag to the items recipe. If you mean the item can only be equipped or picked up by your character like Lucy, then you would have to emulate something similar.
  6. Backpack anim file help

    The backpack like other swappables. Is composed of a symbol folder. These symbols are overided into the player build animation files. The only animation for the backpack would the ground idle. Try decompiling the icepack rather than the backpack. As that one usually works for me.
  7. In an ideal world =/, at least there are solutions to unideal problems.
  8. This is really helpful, it is extemely annoying how much of the game is not modder friendly and workarounds have to be composed to accomplish simple tasks.
  9. Although I have never done keypresses, there is a strong difference between V and "V" The former references a variable labeled V that must exist within the scope available to the code. The latter is a string of V which is a type of data. I am guessing you might need to make them like the latter. If that doesn't work There are quite a few mods in the workshop that use keypresses so it might be useful to double check the syntax that they are using to see what is working.
  10. Well I got a solution for forgetting things overtime. To forget random ones we need to If you want to lose sanity or do other things whenever you forget you can inst:ListenForEvent("lockrecipe", yourfunction) with your function being a -dodelta to sanity etc.
  11. Custom Attack speed,

    --"Iron_Hunter Faster Attack Speed" AddStategraphPostInit("wilson", function(sg) local _attack = sg.states["attack"] local _onenter = _attack.onenter _attack.onenter = function(inst,...) _onenter(inst,...)--"call the original" if inst.prefab == "AAAku" then --"Check the spelling of AAAku to make sure its the correct casing" local hand = inst.components.inventory:GetEquippedItem(GLOBAL.EQUIPSLOTS.HANDS) local speed = 1.5 --"1.5 x speed, do not set at 0 or you will crash from division by 0" if (hand and hand.prefab == "AAATool") then --"Check the spelling of AAATool to make sure its the correct casing" inst.sg:SetTimeout(inst.sg.timeout/speed)--"overide the timeout" inst.AnimState:SetDeltaTimeMultiplier(speed) for k, v in pairs(_attack.timeline) do--"overide the timeline" v.time = v.time/speed end end end return end local _onexit = _attack.onexit _attack.onexit = function(inst,...) if inst.prefab == "AAAku" then --"Check the spelling of your character's prefab to make sure its correct, normally prefabs are made lowercase" inst.AnimState:SetDeltaTimeMultiplier(1) end return _onexit(inst,...) end) end) No idea why my previous post didn't save this...
  12. Custom Attack speed,

    Ok what is your weapons prefab name? Also changing names of stuff without defining them is just asking for crashes, if you don't know how to make it work you should ask and learn. Anyways did you want this weapon to provide this attack speed boost for all characters if they are wielding it or only your specific character and how much faster attack speed do you want?
  13. Custom Attack speed,

    This works as is for my character who punches faster if all you want to do is make it apply to a specific weapon you can modify the if statements there which even conveniently check for a weapon in your hand. lols You do know how to check for prefab name or tag right?
  14. Custom Attack speed,

    The main things you'll need to modify in the stategraph is timeout and timeline.time to get it functioning that is. Animation can be kind of dealt with using AnimState:SetDeltaTimeMultiplier(multiplier)--although the animation looks really choppy at high multipliers. The problem is you'll need to do it for each seperate attack state below is a example of how I made the code for one of my characters for a friend which allows him to punch significantly faster than other characters. --"stark's rapid punch attack" AddStategraphPostInit("wilson", function(sg) local _attack = sg.states["attack"] local _onenter = _attack.onenter _attack.onenter = function(inst,...) _onenter(inst,...)--"call the original" if inst.prefab == "stark" then local hand = inst.components.inventory:GetEquippedItem(EQUIPSLOTS.HANDS) local speed = TUNING.STARK.PUNCH.SPEED--"3" if (hand == nil or hand:HasTag("punch") or hand:HasTag("punchweapon")) then inst.sg:SetTimeout(inst.sg.timeout/speed)--"overide the timeout" inst.AnimState:SetDeltaTimeMultiplier(speed) for k, v in pairs(_attack.timeline) do--"overide the timeline" v.time = v.time/speed end end end return end local _onexit = _attack.onexit _attack.onexit = function(inst,...) if inst.prefab == "stark" then inst.AnimState:SetDeltaTimeMultiplier(1) end return _onexit(inst,...) end) end) Feel free to ask some questions, you will have to replicate this concept for each attack state you want, in my case I only want to make punches to be faster.
  15. I might be wrong about this, but I believe the issue is if the host is using the minimap hud and not neccessarily the server. Any performance hits for the host which is also hosting the server will in turn negatively impact the server. The minimap hud keeps the map essentially open at all times for the host, which means more stuff needs to be rendered. This issue I think only gets worse as more stuff is visible on the minimap. Again I am not 100% sure about this. Client side mods when hosted by the host will effect server performance only because they affect the hosts performance. This issue can be rectified if the host can handle frame drops more effectively. Edit: The only reason clients should be lagging and its not a server issue or network lag: Is if they too can't render as much, however clients lagging should have negible to no real impact on server performance. They'll likely just tp around or disconnect if it gets really bad. There are a sizable number of mods that are designed to disable things like overlays, snow, rain etc graphical effects that cause performance drops for those that need it. Most people don't actually host dedicated servers. So I can imagine this is a common issue Also: Found a discussion relating to this mod