-
-
Notifications
You must be signed in to change notification settings - Fork 81
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
Experimental multithread mode for single player #1200
base: develop
Are you sure you want to change the base?
Conversation
WalkthroughThe project has introduced multithreading support for single player modes, aiming to enhance game performance. This significant update includes the addition of a new configuration option, updates to project files, and detailed documentation to guide users through enabling and understanding this experimental feature. Changes
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
you ztyping wot |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 0
Configuration used: CodeRabbit UI
Files selected for processing (7)
- CREDITS.md (1 hunks)
- Phobos.vcxproj (1 hunks)
- docs/Miscellanous.md (1 hunks)
- docs/Whats-New.md (1 hunks)
- src/Misc/Hooks.Multithread.cpp (1 hunks)
- src/Phobos.INI.cpp (2 hunks)
- src/Phobos.h (1 hunks)
Additional comments: 7
src/Phobos.h (1)
- 79-79: LGTM!
src/Phobos.INI.cpp (1)
- 43-43: LGTM!
src/Misc/Hooks.Multithread.cpp (1)
- 18-267: The implementation of the multithreading feature is comprehensive, covering thread management, rendering in a separate thread, and synchronization mechanisms. Ensure thorough testing, especially around thread safety and game state consistency across different game scenarios.
docs/Miscellanous.md (1)
- 166-175: The documentation update accurately describes how to enable the experimental multithreading feature for single-player modes. Clear and concise instructions are provided.
CREDITS.md (1)
- 239-239: The update to the
CREDITS.md
file appropriately acknowledges contributions related to the development of the multithreading support for single-player modes.Phobos.vcxproj (1)
- 172-172: The addition of
src\Misc\Hooks.Multithread.cpp
to the compilation list is correctly formatted and follows the project's conventions for file inclusion.docs/Whats-New.md (1)
- 358-358: LGTM!
Nightly build for this pull request:
This comment is automatic and is meant to allow guests to get latest nightly builds for this pull request without registering. It is updated on every successful build. |
All info about my setup will be on the very bottom of this post. 1.) Game is freezing preety randomly, no matter debug on or off it doesn't generate any logs after all. I will try to get memory dump and post it. 2.) gfx glitches that occured to me:
I think thats all I can recall for now 3.) also fps cap on 30, why? Or I did something wrong? 4.) Oh just one more thing, but this might be just a placebo feeling, I feel like AI is doing everything quicker, from building, creating units and executings scripts. Like few % faster, but I'm not 100% sure about that. Notice: My mod with Phobos 38 build and latest Ares works perfectly stable with fps ~50, I was even making 12+ hours tests with all slots occupied by AIs. edit: video My mod I'm working on: github |
MultiThreadSinglePlayer=true
.In
rulesmd.ini
:No multiplayer. Multiplayer never. I tried and I gave up and I tried again and I gave up twofold. I have robbed myself of hours for nothing. For some reason, all ztyping problems return in PvP, as if to mock me. Or is this a lesson? Punishment for hubris? Mockery of youthful ignorance, repetition of Icarian bravery. If "it" has agency, then it is against me. If "it" has form, then it is alien to my senses. When it first became apparent to me, idealism coming from dreams of progress gave way to pride and spite. Yet, anger only ever burns inside and the heavens do not believe in tears. And so I have arrived at the last act of grief, a timeless tragic play with one actor and no audience. I throw in the towel, wave the white flag, bend the knee, and kiss the pinky ring. There are men made for great things, but just because we walk among them doesn't make us equals.
Summary by CodeRabbit