Zoom Based Exoskeleton Speed


Adjusts exoskeleton speed based on player zoom level.

Utilities
6 months ago
2.0
937
Transportation Armor

b [Fixed] Crashes in BP Sandbox

6 months ago

Self evident, every time. Also, I think the first time your open your character after using remote view it sets the speed to the previous zoom level you were just using even though the game itself remembers the zoom level of every cam including your own and switches it. After zoom in - zoom out works as intended. Maybe there's a way to store this variable when you open remote cam and restore it (if it can't be accessed directly)

6 months ago
(updated 6 months ago)

BP Sandbox is known, im trying to find a workaround, switching from BP GOD mode to remote fixes it temperarly.

The memory is also something i know of and working on next version, might take a bit, dont have a lot of free time.

6 months ago

Yeah, of course, I understand that it takes time. Just making sure the problem is known.

6 months ago

Fixed.

Major Features:
- Memory function, if Remote View is used, Speed Values do not change for the player.
- Rewrote slow down formula, now halves each step down. Usable with extreme speeds like +29862% etc.
- New Mod Toggle, designed to be used in opposite of Factorio Exoskeletons state.
Fix:
- Crash when using GOD mode or Blueprint areas.

6 months ago

Cool. Something isn't right with the new equation though... Now it makes my character way faster than the normal max speed at far zoom and doesn't slow down at close view pretty much at all. Even judging by the debug messages you added it scales between 0% and 525% but that looks to be added speed and the base speed is always there. Shouldn't it be from base speed without exos (or less) at close view to 100% exos bonus when zoomed out? Maybe I'm missing the point of the mod but I thought it was meant to be a high precision control/less visual stagger alternative to turning off the exos manually and not a cheat-tool. Old more linear formula worked better for that.

6 months ago
(updated 6 months ago)

Ok maybe I just can't understand the setup instructions... I tried following them exactly but feel like my comprehension of English is suddenly leaving me. Should I take off the armor, switch the state and then put it back on? Is it like two different modes? The descriptions don't really make sense. The "enabled" one says to enable it back (?) but don't say when to disable and "disabled" says equip armor when exos are ON but you can't enable them without the armor. I tried putting the armor on and off in different combinations and one of the states seem to do nothing and the other works properly only when exos are off. Either way the 2^x formula feels way too aggressive for me. It goes like "slow" "slow" "slow" "slow" "slow" "slow" and then "normal" and "fast". Which makes most of the zoom levels unusable. And now I can't revert back to the previous version, wish I downloaded it separately before...

Ok I looked a little bit into the code and manually changing the formula from
local applied_modifier = bonus * (0.5 ^ exponent)
to
local applied_modifier = bonus * (0.8 ^ exponent)
made the experience much more pleasant. I understand it varies with different exo loadouts but feel like 6.1%-525% from 7 legendary exos is a rather decently high baseline for a vanilla SA game. Maybe you could scale the variable dynamically based on the top bonus from the current ammo to better account for different loadouts/mods.

6 months ago
(updated 6 months ago)

Ok, I actually took some time for testing and managed to achieve exactly the behavior I was talking about.
This makes the total character speed (and not just the bonus) change from base to max smoothly with different exos:

local base = math.pow (1 / (bonus + 1), 0.05)
local applied_modifier = (bonus + 1) * (base ^ exponent) - 1

An example: https://imgur.com/5OCRGpr
In stock: https://imgur.com/1qolO4B

6 months ago

The mod is designed to work only in Armor State where it says "Disabled" on armour and you are getting 0% speed bonus.
The mod then reads combined exo skeletons in your armor and applies the speed to the character, its not actual exos that gives you speed.
Otherwise the speed is multipled by almost more than 2 (69% with 1 exo for example) and not negated on full zoom in (30%), this is why you were experiencing bigger speeds, this is also a side effect of other similar mod.
Because you cant toggle Factorio exoskeletons without equipment the instruction was given how to attach it properly.
The drastic speed reduction is for extreme speed handles, as i believe full speed is only needed on final zoom out, thus its so rough on reducing it on zoom in. It halfs each step, for example if on max zoom out its 3.00 and you have 30% bonus in totall, next step 20/21 it be 15%, then 7.5% etc.

Previous versions are still available in Download section.

6 months ago

Ah, I think I understood in the end that the instructions were only meant to sync the mod states with the factorio exo toggle. So it's either stock exos or the dynamic range. The descriptions aren't very clear at conveying that.

Yeah, I get how the speed calculation works now. What do you think about the adjusted formula? Doesn't it satisfy your use case? I didn't test with such a huge movement bonus but it still should work fine and reduce the speed more steeply.

Thanks for the tip about "downloads", I was trying to switch versions from the mod manager menu as some of the mods allow that.

Also, got another crash with "shortcuts for 2.0" when clicking on a night vision button, but only in remote view. That mod uses some kind of dummy equipment items to disable them so it probably has to do with it. https://imgur.com/Lpy0I8k

6 months ago
(updated 6 months ago)

Thank you for further testing and patience!

The Shortcuts bug have been fixed, should potentialy fix any interaction with other buttons/equipment.
I will adjust the debug message and instruction to make it more clear.
I will be trying to add a field in the Settings where you can adjust Exponent value, to have either more smooth or rough speed cut from max zoom.
Feel free to use your own aproach as well as you already figured it out.

The reason for my exponent formula is that i want to support reddiculusly high speeds with modded armors and modded qualities.
Full slotted Legendery Mech armor with Legendery Exoskeletons gives me +29862%, sure its not usable at such speed of lights, but with your aproach, on step 2/21 with 9% of that, its 2687.58% which is utterly unusuable on such high zoon levels. Sure it be 0 on step 1/21, but that is too close to have enjoable interaction with machines or fight biters.

Ill be updating the mod to 1.0.2 shortly.
Any suggestion/ideas welcomed.

6 months ago
(updated 6 months ago)

I'm afraid you still misunderstood what my code modification does (or haven't tried it). It's not "9% of 29862%". It's "X% less at every step" where X happens to be about 9% in my specific case. That's just how exponents work of course. If you try it with your exo setup it will give you only 33% bonus on first step, not 2687.58%. Here, look https://imgur.com/pCBwb1g (I dirty-hardcoded the same max bonus number, others are calculated by the code) I think the speeds are pretty manageable. Of course you may find the mid-high zoom speeds still quite large so you might want the steeper scaling particularly for that edge case. Yet I'd say at this point you are effectively just using low-speed teleportation and might turn off/on the exos entirely instead of "scaling" something. Adding a manual override for the exponent is a good idea but the auto scaling works not that bad either so having it as a default instead of a fixed value might be neat (and much more flexible and convenient for the user)

But you do you of course, it's not my mod and I still get to keep my code for my personal use. Just wanted to clear any confusion.
(Also, the default max value that you can get in vanilla is +2100% https://imgur.com/IzrvBVd)

6 months ago

Version: 1.0.2
Features:
- Adjustable field for Speed Reduction Factor in Mod Settings. Range from 0.001 to 0.999. Default 0.57 = cuts speed in ~half each zoom step in. Lower number = decrease/increase of speed will be bigger each step. Higher number = decrease/increase of speed will be smaller each step.
Changes:
- Debug instructions rewriten.
Fix:
- Error with Shortcuts interactions (potential other equipment/button fix)

New response