### Godot version

4.2 beta 4

### System information

Godot v4.2.beta4 - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4070 Ti (NVIDIA; 31.0.15.4584) - AMD Ryzen 9 5900X 12-Core Processor (24 Threads)

### Issue description

I am not sure what is going on to be honest, I tried to figure out for several hours hoping that I could open a more clear issue. But I managed to figure out it is a bug by running the same project in two different version of GoDot.

In the project I attached, make sure you do not have Steam open, run the project, click create a lobby then click start game.

![image](https://github.com/godotengine/godot/assets/73620153/028c81fd-60d9-43f7-bd91-8a677cd88e73)

The same project will have two different behaviors: 

* 4.2beta3: 
It will load the scene in around 2 seconds, then holding "Tab" will show the scoreboard, pressing console will open the console, pressing it again will close it, game is clearly active no matter the state of UI, or the input, you can orbit the camera around the player.

* 4.2beta4: It will simply freeze black no matter how long you wait, the multiplayer lobby UI is hidden and screen will stay black until you either hold "Tab" to open the scoreboard, or press "`" to open the console. If you press any of those inputs, the game scene will appear, but the it will render just as long as you hold 'Tab' or as long as the console should be active (between two console presses). The game seems to be running behind, that is why I used "render" here.

This behavior is very strange, there are no errors or warning displayed in output, and I think it should really be looked into. I feel that something was broken badly in this beta 4.

### Steps to reproduce

In the project I attached, make sure you do not have Steam open, run the project, click create a lobby then click start game.

![image](https://github.com/godotengine/godot/assets/73620153/028c81fd-60d9-43f7-bd91-8a677cd88e73)

The same project will have two different behaviors: 

* 4.2beta3 (CORRECT BEHAVIOR): 
It will load the scene in around 2 seconds, then holding "Tab" will show the scoreboard, pressing console will open the console, pressing it again will close it, game is clearly active no matter the state of UI, or the input, you can orbit the camera around the player.

* 4.2beta4 (WRONG BEHAVIOR): 
It will simply freeze black no matter how long you wait, the multiplayer lobby UI is hidden and screen will stay black until you either hold "Tab" to open the scoreboard, or press "`" to open the console. If you press any of those inputs, the game scene will appear, but it will render just as long as you hold 'Tab' or as long as the console should be active (between two console presses). besides this, it stays frozen.

### Minimal reproduction project

[Project.zip](https://github.com/godotengine/godot/files/13223077/Project.zip)


_Production edit: Confirmed to be a regression from https://github.com/godotengine/godot/pull/83649_
virtual RID decal_allocate() override { return RID(); }
	virtual void decal_initialize(RID p_rid) override {}
	virtual void decal_free(RID p_rid) override{};
	virtual void decal_set_size(RID p_decal, const Vector3 &p_size) override {}
	virtual void decal_set_texture(RID p_decal, RS::DecalTexture p_type, RID p_texture) override {}
	virtual void decal_set_emission_energy(RID p_decal, float p_energy) override {}
	virtual void decal_set_albedo_mix(RID p_decal, float p_mix) override {}
	virtual void decal_set_modulate(RID p_decal, const Color &p_modulate) override {}
	virtual void decal_set_cull_mask(RID p_decal, uint32_t p_layers) override {}
	virtual void decal_set_distance_fade(RID p_decal, bool p_enabled, float p_begin, float p_length) override {}
	virtual void decal_set_fade(RID p_decal, float p_above, float p_below) override {}
	virtual void decal_set_normal_fade(RID p_decal, float p_fade) override {}
	virtual AABB decal_get_aabb(RID p_decal) const override { return AABB(); }
	virtual uint32_t decal_get_cull_mask(RID p_decal) const override { return 0; }
	virtual void texture_add_to_decal_atlas(RID p_texture, bool p_panorama_to_dp = false) override {}
	virtual void texture_remove_from_decal_atlas(RID p_texture, bool p_panorama_to_dp = false) override {}
	
	virtual RID decal_instance_create(RID p_decal) override { return RID(); }
	virtual void decal_instance_free(RID p_decal_instance) override {}
	virtual void decal_instance_set_transform(RID p_decal, const Transform3D &p_transform) override {}
	virtual void decal_instance_set_sorting_offset(RID p_decal_instance, float p_sorting_offset) override {}
	
	virtual RID render_target_create() override { return RID(); }
	virtual void render_target_free(RID p_rid) override {}
	virtual void render_target_set_position(RID p_render_target, int p_x, int p_y) override {}
	virtual Point2i render_target_get_position(RID p_render_target) const override { return Point2i(); }
	virtual void render_target_set_size(RID p_render_target, int p_width, int p_height, uint32_t p_view_count) override {}
	virtual Size2i render_target_get_size(RID p_render_target) const override { return Size2i(); }
	virtual void render_target_set_transparent(RID p_render_target, bool p_is_transparent) override {}