Starfield
0 of 0

File information

Last updated

Original upload

Created by

105gun

Uploaded by

105gun

Virus scan

Safe to use

Tags for this mod

About this mod

This mod allows you to control the speed gear of your ship with hotkeys, from regular flight speed to the equivalent of hundreds of times the speed of light. It allows you to fly inside a star system in a relatively elegant way.

Requirements
Permissions and credits
Changelogs

Simply put, this SFSE plugin allows you to control the speed gears via hotkeys, with the highest gear being equivalent to more than a hundred times the speed of light. There's also a set of hotkeys for slowing down and resetting the current scene (to fix the problem of planets not loading).

The implementation of this mod is rather crude. I'm afraid it's hard to do perfectly until the Creation Kit is released. I'm hoping it will be a temporary alternative for those looking for an immersive or flying experience.

This module is implemented by directly overriding a set of parameters including the speed of the ship using the console. Be sure to backup your save before installing.


Requirements:
SFSE

Console Output To File(Temporarily using this mod to read the ship's Actorvalue)

Source:
Github


Install:
Put the dll into game root folder, like F:\SteamLibrary\steamapps\common\Starfield\Data\SFSE\plugins\Starfield_SlowerThanLight.dll

Uninstall:
The mod will override the max speed Actorvalue of your ship. If you uninstall the mod directly, these parameters will not be restored. But you can manually change them to their original values.
0. Make sure you have uninstalled the mod.
1. Get into shipbuilder, and remember the maximum speed of your ship (usually 150 or 130).
2. Get into Space. Press ~ to call out the console, click on your ship, and enter :
setav spaceshipenginepartmaxforwardspeed {YOUR_MAX_SPEED}

Control:
Press 1 (Above QWER, not numpad) to move UP one speed gear, 2 to move Down, you will see fov change.
Hold 3 to slow the ship down and go into slow motion.
Hold both 3 and L Ctrl to call a game reload (Just quicksave & quickload). I made some experimental changes to this section. If you find that your game isn't loading automatically, or load the wrong archive, check out the INI section below!

The mod now supports simple hotkey mapping. If you don't like the set of keys, you can change them manually in the ini.

(The reload  is necessary for two reasons: the game seems to set an acceleration cap that causes it to take you several minutes to slow down from light speed to 0, which makes maneuvering difficult; and when you fly from one planet to another, the model for that planet often hasn't loaded yet. Use this key combination when you arrive at a destination tens of light-seconds away or when you need an instant stop.)

INI:
sHotkeyUp & sHotkeyDown & sHotkeySlowMotion & sHotkeyReload:These values allow you to set hotkeys. First, visit this page and get the decimal number corresponding to the key you want. Then connect them with & and fill in the ini file. If you are using a gamepad, you can refer to the table below. I'm using Microsoft's XInput API, which seems only work with Xbox controller. I don't have a Playstation controller so I can't test it.
Spoiler:  
Show

266kGamepadButtonOffset_DPAD_UP
267kGamepadButtonOffset_DPAD_DOWN
268kGamepadButtonOffset_DPAD_LEFT
269kGamepadButtonOffset_DPAD_RIGHT
270kGamepadButtonOffset_START
271kGamepadButtonOffset_BACK
272kGamepadButtonOffset_LEFT_THUMB
273kGamepadButtonOffset_RIGHT_THUMB
274kGamepadButtonOffset_LEFT_SHOULDER
275kGamepadButtonOffset_RIGHT_SHOULDER
276kGamepadButtonOffset_A
277kGamepadButtonOffset_B
278kGamepadButtonOffset_X
279kGamepadButtonOffset_Y
280kGamepadButtonOffset_LT
281kGamepadButtonOffset_RT

Example: I want to set the left Ctrl+3 as the reload hotkey . I found out that their corresponding hex numbers are 0xA2 and 0x33, which are 162 and 51 in decimal. so it wiil be like: sHotkeyReload = 51&162
iReloadTime:I used something in my reload implementation that I'm not really sure about. If your reload function isn't working, try changing it to 5000, or greater (in milliseconds). This will make it fall back to the previous version of the implementation.
fSpaceshipEnginePartMaxForwardSpeed & fSpaceshipForwardSpeedMult:If the mod can't successfully read your ship's parameters, it will use these default values as the data for the 0 file.

Note:
It's my first Bethesda mod. I'm clueless about a lot of this, especially the reverse engineering part. Like I know it's stupid to write commands directly in the console, but I don't know of an elegant way to implement it. Not being able to find a way to stop the ship is also driving me crazy. SFSE plugin programming is far from what I know about game development. I'd appreciate it if you guys could show me some tutorials or useful source code examples.