Open jblebrun17 opened 6 years ago
Could you screenshot the desktop window when you are in one of the training mission's cockpits?
Also try backing up and deleting the {user}/AppData/LocalLow/Daniel Friesen/Elite VR Cockpit/SavedState.json
to see if somehow the joystick/throttle got saved with a strange position you can't see.
I deleted the file you mentioned, but still nothing. So here's some screenshots.
And just in case you meant the Elite-VR-Cockpit window, here's a screen of that, too. :P
Ok, it is connected to OpenVR. No wait, I was wondering about ED.
The Elite Dangerous status is saying "Running", that is wrong. ED Status is only running when it doesn't know where you are. It should be displaying "Main Ship". Can you confirm that screenshot was taken when you were in the cockpit?
If so, can you start the game, jump into a copy, and then while you're in your ship open up your {user}/Saved Games/Frontier Developments/Elite Dangerous
folder and look for the Status.json
file and upload it for me to see.
I was definitely in the cockpit when the screenshot was taken. I also tried playing in solo play, outside of the training missions, and had the same issue. I can't upload the actual file through github, but here's the contents: { "timestamp":"2018-09-15T19:48:49Z", "event":"Status", "Flags":16842765, "Pips":[4,4,4], "FireGroup":0, "GuiFocus":0 }
If it's any help, I have Steam installed in my C: Drive, while ED, the Cockpit, and the Saved Games folder are located in my D: Drive.
How did you configure your saved games to be on the D: drive? Is it separate from your %USERPROFILE% folder?
If you feel like setting up Unity, you could add a UnityEngine.Debug.Log(StatusFilePath);
before this line, to log what file the overlay is looking for to compare it to where the Status.json actually is:
https://github.com/dantman/elite-vr-cockpit/blob/master/Assets/Scripts/EDStateManager.cs#L284
Honestly, I'm not sure how it ended up on the D: drive, but that's where the default was. I moved it to my C: drive and everything seems to be working now! I'll update you if the problem resurfaces, but it seems fixed for now.
Hi Daniel, I saw your post on Reddit and I decided to try it, cause I think it's wonderful to have virtual buttons for all the functions of Elite, thanks for the good work! I have an issue similar to Jblebrun17.
I'm in windows 10, and Oculus. I had the installation of steam and elite in E drive, so I delete everything and Installed it in C drive, the issue is the following, in your program, I don't seem to be able to get the SavedState.json
And in the directory {user}/AppData/LocalLow/Daniel Friesen/Elite VR Cockpit/SavedState.json I have no SavedState.json file
So I don't know what I have to do to make your overlay work.
When I start Elite, I don't see the two icons from your program, the edit menu button, and the other one, When I start Elite in Steamvr, or I choose start Elite horizons in Steam VR mode, I am in the steam vr lobby with your white htc vive wands but then when the game starts I no longer have them and as I mentioned before, I do not see the two icons.
Hope all this information is helpful to you.
Regards,
Alexis
Hi. I have oculus rift. i tray working on oculus touch. y configure all ok. but i have always messages that Elite Dangerous its not runing. its like Elite VR Cockpit dont detect elite dangerous when i start the game.
I try start Elite VR cockpit from steam too. but not working. i see a yellow waring in oculus dashboard that tellmi waiting for elite start
@informatico-madrid Can you take a screenshot of the overlay's desktop window while ED is running. Also try running ED in Windows 7 compat mode, someone else said that works.
i think this is somthing with oculus environment. i can switch with oculus dashboard betwen ed an elite vr app but i cant see vr cockpit buttons in ed
Ok, "App: " is blank. Which suggests the overlay can't find the name of the process that is currently rendering to SteamVR.
i have the same issue, the overlay cant find the name of the process because for OculusRift owners ED is running through the native oculus app and not steamvr, even if you run it through Steam client, we need to figure out how to force run ED through SteamVR but for now i did not found any solution for this
Ultimately someone with an Oculus is going to have to run the overlay in the Unity editor, play around with the PID detection and find a way to detect the Elite PID and when it's running in VR.
I don't have access to a Rift so I cannot do this myself.
have a guide link for learn PID detection? i can try but im still learning unity so i cant promise i can do it
Look at EDStateManager.cs. I get the PID from SteamVR, which tells us the PID of the application currently rendering to the VR compositor. And look at SetCurrentProcess
in particular. I use Process.GetProcessById
to get a Process object and use ProcessName
to look at its name.
You'll have to play around with it and see if you can get a process name other than blank text. I recommend using Debug.Log(pid);
to figure out what the PID of the process is when Elite starts rendering to VR. Then looking in the Windows task manager to first figure out what program it even is.
im tryng to unsderstund the code but there is a lot i dont know, istead we can get a pop up windows so the user is going to set the PID manualy looking in taskmenager just for now? just for oculus owners. still tryng to find a way to do it
EDIT: can we do it with Process.GetProcessesByName("EliteDangerous64"); ? im very noob sorry
i have a fix, i just find a way to force elite run on steamvr, just set EliteDangerous64.exe to run on Compatibility mode Windows 7 and all work. but still elite dont recognize touch input so for now is unplayable
Still having this issue Overlay app didn't get that I am in cockpit no matter what
Flags saying 1000000010000000000001000 and that's like... Shields up, Mass lock, In main ship. So IDK what's wrong
@dantman, any ideas? Game in Win7 compat and et cetera
That "Illegal Characters In Path" error is definitely breaking things. I'll need to know more about where you've installed ED, the overlay, and your user/SavedGames folder.
That "Illegal Characters In Path" error is definitely breaking things. I'll need to know more about where you've installed ED, the overlay, and your user/SavedGames folder.
Game: "D:\Games\Steam\steamapps\common\Elite Dangerous" Overlay: "M:\Software\Elite VR Cockpit" SavedGames: "C:\Users\Salieri\Saved Games\Frontier Developments\Elite Dangerous" BUT. My Win in Russian and AFAIK this directory can be accessed also via Cyrillic name.
FYI, there is a little problem for me to change source code and compile it, so I can't do that completely. It's system specific.
There is an output_log.txt
inside the same folder as the SavedState.json. The logs tell you where that's being loaded from.
Could you share that log, it'll have more details on where the error is being thrown from.
ArgumentException: Illegal characters in path.
at System.IO.Path.Combine (System.String path1, System.String path2) [0x00057] in <567df3e0919241ba98db88bec4c6696f>:0
at EVRC.EDStateManager.GetControlBindingsFilePaths () [0x00055] in <54aeff0c4da44cf6bd80a187876b572c>:0
at EVRC.EDStateManager.LoadControlBindings () [0x00000] in <54aeff0c4da44cf6bd80a187876b572c>:0
at EVRC.EDStateManager.SetIsEliteDangerousRunning (System.Boolean running) [0x0001f] in <54aeff0c4da44cf6bd80a187876b572c>:0
at EVRC.EDStateManager.SetCurrentProcess (System.UInt32 pid) [0x0007f] in <54aeff0c4da44cf6bd80a187876b572c>:0
at EVRC.EDStateManager.OnSteamVRInitialized (System.Boolean initialized) [0x0000e] in <54aeff0c4da44cf6bd80a187876b572c>:0
at EVRC.EDStateManager.OnEnable () [0x00039] in <54aeff0c4da44cf6bd80a187876b572c>:0
AFAIK, it tries to read ED keybindings. They are laid under "C:\Users\Salieri\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings"
Important note. In RU version it can be either called Or Users
dir
says it's Users
Okay. I found the issue. It's Odyssey-related
StartPreset.start
:
KeyboardMouseOnly
Custom
Custom
Custom
If we will expand some string in the code:
/**
* Get the potential paths for a user's bindings file
*/
public string[] GetControlBindingsFilePaths()
{
string StartPreset = File.Exists("C:\Users\Salieri\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings\StartPreset.start")
? File.ReadAllText("C:\Users\Salieri\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings\StartPreset.start")
: "";
if ((StartPreset ?? "").Trim() == "")
StartPreset = "Custom";
/* After that StartPreset will be like
KeyboardMouseOnly\nCustom\nCustom\nCustom
*/
// Bindings from the user's Bindings directory
var controlBindingsPaths = new List<string> {
Path.Combine("C:\Users\Salieri\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings", "KeyboardMouseOnly\nCustom\nCustom\nCustom" + ".3.0.binds"),
Path.Combine("C:\Users\Salieri\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings", "KeyboardMouseOnly\nCustom\nCustom\nCustom" + ".2.0.binds"),
Path.Combine("C:\Users\Salieri\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings", "KeyboardMouseOnly\nCustom\nCustom\nCustom" + ".1.8.binds"),
};
if (EDProcessDirectory != null)
{
// Built-in game bindings presets
// @note These will only load after the game starts
controlBindingsPaths.Add(Path.Combine(EDProcessDirectory, "ControlSchemes", StartPreset + ".binds"));
}
return controlBindingsPaths.ToArray();
}
Workaround for me will be like: Create new StartPreset.edh with
Custom
And create batch file
@echo off
if exist StartPreset.edh (
ren StartPreset.start StartPreset.edo
ren StartPreset.edh StartPreset.start
) else if exist StartPreset.edo (
ren StartPreset.start StartPreset.edh
ren StartPreset.edo StartPreset.start
)
Hi, the joystick and throttle don't show up in-game? vJoy is configured properly, and the Elite-VR Cockpit seems to be working as well, but when I hop into a training mission, the joystick and throttle can't be interacted with. They don't even appear as labels or objects to grab on to. I can interact with the edit button to add buttons, but that's it.