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

5.49.7 breaks Unity-games again #799

Closed
NewKidOnTheBlock opened this issue Apr 18, 2021 · 14 comments
Closed

5.49.7 breaks Unity-games again #799

NewKidOnTheBlock opened this issue Apr 18, 2021 · 14 comments
Labels
fixed in next build Fixed in the next Sandboxie version game issue Gaming issues in the sandboxes

Comments

@NewKidOnTheBlock
Copy link
Contributor

NewKidOnTheBlock commented Apr 18, 2021

Issue #319 is back!
Games based on the Unity-Engine are broken again and take a long time to launch in the latest Sandboxie.

Freezes

  • Candleman
  • Into The Woods
  • Iron Harvest
  • Oddworld Soulstorm
  • The Universim

All these games freeze for 5 minutes on launch, stop responding and start only after 5 minutes of waiting time.
If necessary I can test more.

Windows 10 20H2
Sandboxie 5.49.7

I've also tested Breathedge (an Unreal-engine game) and The Binding of Isaac Rebirth (which got its own engine) - those still work.

@NewKidOnTheBlock
Copy link
Contributor Author

NewKidOnTheBlock commented Apr 18, 2021

Can anyone confirm?

I've tried adding the following lines:

OpenSamEndpoint=y
OpenDevCMApi=y
AllowRawDiskRead=y
RpcMgmtSetComTimeout=y

...but that didn't help.

@davi-ro
Copy link

davi-ro commented Apr 18, 2021

In the latest two releases David wrote that RpcMgmtSetComTimeout was deprecated.
reworked RPC resolver to be ini configurable -- the following options are now deprecated: --- "UseRpcMgmtSetComTimeout=some.dll,n", so use "RpcPortBinding=some.dll,*,TimeOut=y"

Try using the new RpcPortBinding instead of UseRpcMgmtSetComTimeout. Maybe that will help

@dxq3
Copy link

dxq3 commented Apr 20, 2021

I had problems with my games (I use SB-PLUS 0.7.4) and found some working tricks. For the game "Forgotton Anne" I block access to BluetoothApis.dll in system32 and for the game "Stranded Deep" same file in syswow64. Hiding insead of blocking works too.

@DavidXanatos
Copy link
Member

try adding the new bluetooth compatybility template

@NewKidOnTheBlock
Copy link
Contributor Author

NewKidOnTheBlock commented Apr 20, 2021

I got not clue how templates work.
There is a Templates.ini

I found this section in it concerning bluetooth, but I don't know what I'm supposed to do with it:

#
# Optional RPC Port Config
#

[Template_OpenBluetooth]
Tmpl.Title=Open Bluetooth RPC port
Tmpl.Class=Misc
#bluetooth
RpcPortBinding=BluetoothApis.dll,'ncalrpc:',Resolve=Bluetooth,TimeOut=y
RpcPortBindingIfId=Bluetooth,{2ACB9D68-B434-4B3E-B966-E06B4B3A84CB}
RpcPortBindingSvc=Bluetooth,bthserv

@NewKidOnTheBlock
Copy link
Contributor Author

NewKidOnTheBlock commented Apr 20, 2021

Update: The games don't crash, I was just too impatient, but it's the old 5-minute-freeze @typpos pointed out in issue #319

For testing, I put the line
OpenBluetooth=y into my Sandbox's config, but that doesn't make a difference.
The 5-minute-freeze occurs with and without this line.

@Coverlin
Copy link

I got not clue how templates work.
There is a Templates.ini

I found this section in it concerning bluetooth, but I don't know what I'm supposed to do with it:

#
# Optional RPC Port Config
#

[Template_OpenBluetooth]
Tmpl.Title=Open Bluetooth RPC port
Tmpl.Class=Misc
#bluetooth
RpcPortBinding=BluetoothApis.dll,'ncalrpc:',Resolve=Bluetooth,TimeOut=y
RpcPortBindingIfId=Bluetooth,{2ACB9D68-B434-4B3E-B966-E06B4B3A84CB}
RpcPortBindingSvc=Bluetooth,bthserv

Template=OpenBluetooth add to box or global
Or use the tmpl.class/title info to find it and add it via the UI's

@NewKidOnTheBlock
Copy link
Contributor Author

NewKidOnTheBlock commented Apr 20, 2021

Template=OpenBluetooth
solves the freeze and Unity-games start at once

@Coverlin
Thanks, I think I understand how the system works now.
Templates' names can be derived from the .ini and then put into the config.

@isaak654
Copy link
Collaborator

isaak654 commented Apr 22, 2021

I don't like how this works, my suggestion is an informative prompt that allows you to open these RPC ports per process.

@NewKidOnTheBlock
Copy link
Contributor Author

NewKidOnTheBlock commented Apr 22, 2021

@isaak654 Agreed.
Unity Engine games have become legion.
Global-game-engine-market
(Source)
The "closest competitor" would be Unreal Engine. Now these numbers come directly from Unity, so I went ahead and counted how many games in my Steam library are powered by this engine.

Result: 127 (sic!) out of 592 games are Unity games.
That's a whopping 21.4% and the number of Unity games being published is growing every day.

Closing thought:
Unity support out of the box in Sandboxie is important. It makes for a bad sandboxing experience if a new SB user has to actively dig through this issue section to (hopefully) find the magic template hack that helps him run hundreds of grames which all would freeze otherwise.

@DavidXanatos
Copy link
Member

So we should make open BT enabled by default?

@isaak654
Copy link
Collaborator

isaak654 commented Jun 3, 2021

So we should make open BT enabled by default?

Yes, unless there is another way to detect in realtime if a process needs bluetooth. I don't know if it's achievable.

@NewKidOnTheBlock
Copy link
Contributor Author

Yes, because it means hundreds, if not thousands of programs will work out-of-the-box.
If there is a smarter way (like isaak654 mentioned), that's even better.

@DavidXanatos
Copy link
Member

So we should make open BT enabled by default?

Yes, unless there is another way to detect in realtime if a process needs bluetooth. I don't know if it's achievable.

sure we could detectt that but than always allwoing it would be equivalent to always including this template, so no point in doin that

The next build of sandboxie+ will for all existing non hardened sandboxes automatically add this template and when creating a new non hardened box automatically add it

@DavidXanatos DavidXanatos added the fixed in next build Fixed in the next Sandboxie version label Jun 4, 2021
@isaak654 isaak654 added the game issue Gaming issues in the sandboxes label Oct 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
fixed in next build Fixed in the next Sandboxie version game issue Gaming issues in the sandboxes
Projects
None yet
Development

No branches or pull requests

6 participants