Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stuck on Starting Game - Default server configuration missing (solved) #2334

Closed
robertgro opened this issue Jan 9, 2024 · 5 comments
Closed

Comments

@robertgro
Copy link

robertgro commented Jan 9, 2024

What happened?

FiveM is unable to launch the game properly. The process halts in the state while the game is starting.

gtav_fivem_loading_screen_stuck

Expected result

Successfully started game

Reproduction steps

  1. Have a local windows FiveM server and a local FiveM app as well as GTA:V installed
  2. Register a new server at https://keymaster.fivem.net/ with your public ISP IPv4, configure your local server.cfg with the key and start the server with the commands provided and then FiveM.
  3. Connect to your local server
  4. Getting stuck forever ("Starting game") in the loading screen.

Importancy

Crash

Area(s)

FiveM

Specific version(s)

FiveM b1604, FiveM Server 7290

Additional information

Creating a .dmp file of the FiveM_GTAProcess.exe process reveals a Break instruction exception on my system. Analyzing the file with the WinDbg debugger app results in the following output to debug:

For analysis of this file, run !analyze -v
ntdll!NtWaitForSingleObject+0x14:
00007ffc`eb82d064 c3              ret
0:000> !analyze -v
*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************

*** WARNING: Unable to verify checksum for v8-9.3.345.16.dll

KEY_VALUES_STRING: 1

    Key  : Analysis.CPU.mSec
    Value: 14389

    Key  : Analysis.Elapsed.mSec
    Value: 56879

    Key  : Analysis.IO.Other.Mb
    Value: 17

    Key  : Analysis.IO.Read.Mb
    Value: 160

    Key  : Analysis.IO.Write.Mb
    Value: 320

    Key  : Analysis.Init.CPU.mSec
    Value: 2452

    Key  : Analysis.Init.Elapsed.mSec
    Value: 50339

    Key  : Analysis.Memory.CommitPeak.Mb
    Value: 219

    Key  : Failure.Bucket
    Value: BREAKPOINT_80000003_FiveM_GTAProcess.exe!Unknown

    Key  : Failure.Hash
    Value: {76e02505-8ad9-ac56-a6bd-2a6e4bf86474}

    Key  : Timeline.OS.Boot.DeltaSec
    Value: 1444

    Key  : Timeline.Process.Start.DeltaSec
    Value: 694

    Key  : WER.OS.Branch
    Value: vb_release

    Key  : WER.OS.Version
    Value: 10.0.19041.1

    Key  : WER.Process.Version
    Value: 2.0.0.7298


FILE_IN_CAB:  FiveM_GTAProcess.DMP

NTGLOBALFLAG:  0

PROCESS_BAM_CURRENT_THROTTLED: 0

PROCESS_BAM_PREVIOUS_THROTTLED: 0

APPLICATION_VERIFIER_FLAGS:  0

EXCEPTION_RECORD:  (.exr -1)
ExceptionAddress: 0000000000000000
   ExceptionCode: 80000003 (Break instruction exception)
  ExceptionFlags: 00000000
NumberParameters: 0

FAULTING_THREAD:  00002a58

PROCESS_NAME:  FiveM_GTAProcess.exe

ERROR_CODE: (NTSTATUS) 0x80000003 - {EXCEPTION} Breakpoint A breakpoint has been reached in the source code.

EXCEPTION_CODE_STR:  80000003

STACK_TEXT:  
000000c6`1cb7e228 00007ffc`e94e30ce     : 0000026d`0a49c1a8 00007ffc`e952e53b 00000000`0000002f 00000000`0000002f : ntdll!NtWaitForSingleObject+0x14
000000c6`1cb7e230 00007ff6`ea59c227     : 00000000`00000001 00000000`00000002 00007ffc`00000000 00000000`00002ff4 : KERNELBASE!WaitForSingleObjectEx+0x8e
000000c6`1cb7e2d0 00007ff6`e96a7f4f     : 00007ff6`eb18da10 00007ffc`c1897830 00007ffc`c1897830 00000000`ffffffff : FiveM_GTAProcess+0x127c227
000000c6`1cb7e300 00007ff6`e933edf8     : 00007ff6`eb18da10 00007ffc`c1897830 00007ffc`c1897830 00000000`00000001 : FiveM_GTAProcess+0x387f4f
000000c6`1cb7e330 00007ff6`ea88be08     : 00007ff6`eb18da10 00000000`00000002 00007ffc`c1897830 00000000`ffffffff : FiveM_GTAProcess+0x1edf8
000000c6`1cb7e360 00007ff6`e93214a8     : 00000000`00000000 000000c6`1cb7e530 00000000`00000001 00007ffc`c1897830 : FiveM_GTAProcess+0x156be08
000000c6`1cb7e390 00007ffc`bf292cce     : 00007ff6`00000002 0000026d`40e29ac0 00000000`00000000 00007ff6`eabb7bc0 : FiveM_GTAProcess+0x14a8
000000c6`1cb7e3c0 00007ff6`eaa7df44     : 00000000`00000000 000000c6`1cb7e530 00007ffc`c1897830 00007ffc`c1897830 : gta_core_five!game::SetBindingTagActive+0x5d5e
000000c6`1cb7e3f0 00007ff6`ef47110e     : 00007ff6`00000000 00007ff6`eaa7de00 00007ffc`c1897830 00007ffc`c3d77020 : FiveM_GTAProcess+0x175df44
000000c6`1cb7e430 00007ff6`00000000     : 00007ff6`eaa7de00 00007ffc`c1897830 00007ffc`c3d77020 ffffffff`fffffffe : FiveM_GTAProcess+0x615110e
000000c6`1cb7e438 00007ff6`eaa7ddff     : 00007ffc`c1897830 00007ffc`c3d77020 ffffffff`fffffffe 0000026d`3e600000 : 0x00007ff6`00000000
000000c6`1cb7e440 00007ffc`c1897830     : 00007ffc`c3d77020 ffffffff`fffffffe 0000026d`3e600000 00000000`00000000 : FiveM_GTAProcess+0x175ddff
000000c6`1cb7e448 00007ffc`c3d77020     : ffffffff`fffffffe 0000026d`3e600000 00000000`00000000 00000000`00000000 : CitizenGame!GetLauncherInterface+0x27870
000000c6`1cb7e450 ffffffff`fffffffe     : 0000026d`3e600000 00000000`00000000 00000000`00000000 00000000`00000007 : CitiLaunch_TLSDummy!GetThreadLocalStorage+0x16020
000000c6`1cb7e458 0000026d`3e600000     : 00000000`00000000 00000000`00000000 00000000`00000007 0000026d`3e600000 : 0xffffffff`fffffffe
000000c6`1cb7e460 00000000`00000000     : 00000000`00000000 00000000`00000007 0000026d`3e600000 00000000`00000000 : 0x0000026d`3e600000


STACK_COMMAND:  ~0s; .ecxr ; kb

SYMBOL_NAME:  fivem_gtaprocess+127c227

MODULE_NAME: FiveM_GTAProcess

IMAGE_NAME:  FiveM_GTAProcess.exe

FAILURE_BUCKET_ID:  BREAKPOINT_80000003_FiveM_GTAProcess.exe!Unknown

OS_VERSION:  10.0.19041.1

BUILDLAB_STR:  vb_release

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

IMAGE_VERSION:  2.0.0.7298

FAILURE_ID_HASH:  {76e02505-8ad9-ac56-a6bd-2a6e4bf86474}

Followup:     MachineOwner
---------
@robertgro robertgro added bug triage Needs a preliminary assessment to determine the urgency and required action labels Jan 9, 2024
@github-actions github-actions bot added the crash label Jan 9, 2024
@Vivi4n
Copy link

Vivi4n commented Jan 9, 2024

pls upload dump kthx <3

@robertgro
Copy link
Author

robertgro commented Jan 10, 2024

@Vivi4n
Thank you for reaching out! As requested, the CfxCrashDump after starting a game with my own server. 😅

Attaching WinDbg to your running process results in memory protected access violations. I'm not a reverse engineer, so if you have any hints on how to debug the exception properly, lay me a hand.

I hope the dump enlightens you to find the root cause of the bug!

@robertgro
Copy link
Author

robertgro commented Jan 17, 2024

So I was digging deeper into the issue and found that the manual described in https://docs.fivem.net/docs/server-manual/setting-up-a-server-vanilla/#windows apparently forgot to mention that the installation of an extra framework like ESX is required to get a proper basic FiveM server running on windows localhost. I'm not proposing another pull request for this there due to the PR's being pending for this project since 2020 (unmaintained?).

So I solved this myself and found a ESX standalone here https://github.com/S-ESX/S-ESX-V1F and after applying the SQL query to a custom MySQL database, I altered the provided server.cfg and now the game is proceeding:
basic_esx_fivem

From a developer's perspective, I would suggest throwing an exception if the server is misconfigured (like e.g. missing any additional resources) or didn't let the server start if essential components (like a MySQL database) are missing.

Thank you anyway for tuning into this @Vivi4n :) and if it is allowed, I may create a GitHub Page showing the whole process of setting up a basic fivem server on windows localhost for every person interested.

@robertgro robertgro changed the title Debug FiveM_GTAProcess.exe Break instruction exception 0x80000003 Stuck on Starting Game - Essential server components were missing (solved) Jan 17, 2024
@github-actions github-actions bot removed the triage Needs a preliminary assessment to determine the urgency and required action label Jan 17, 2024
@blattersturm
Copy link
Contributor

blattersturm commented Jan 17, 2024

Huh- you don't need any 'additional framework' or 'MySQL database' to get in game, the existing cfx-server-data repository (as is described on that page!) is sufficient, though if you did deploy it as is described there, this not working would be a little bit weird.

I do agree that this is a bit of a convoluted extra step, however - some work was planned to at least bundle the content of the cfx-server-data repository into the server artifacts container itself and perhaps have a default configuration because this really does not fail very gracefully.

@robertgro robertgro reopened this Jan 17, 2024
@github-actions github-actions bot added the triage Needs a preliminary assessment to determine the urgency and required action label Jan 17, 2024
@robertgro
Copy link
Author

@blattersturm

I agree on you. Then it was my mistake interpreting the screen as if the game wasn't launched properly by your client or the connection to the windows localhost server didn't work.

And yes, I would add an addition for users that if the server is not owning a proper default configuration, then it could look like the setup hasn't been finished successfully or something isn't working the way it was intended.

Re-closing this.

@github-actions github-actions bot removed the triage Needs a preliminary assessment to determine the urgency and required action label Jan 17, 2024
@robertgro robertgro changed the title Stuck on Starting Game - Essential server components were missing (solved) Stuck on Starting Game - Default server configuration missing (solved) Jan 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants