![]() Is the way implementing WaitSynchronizationN(. I am not sure what is the correct way to fix this. The problem is: this event becomes the last one in camera threads waiting list, and we always signal CAM:completion_event_cam1 immediately, so WaitSynchronizationN always catches CAM:completion_event_cam1 but never catches "event A", which means the camera thread never knows it should stop. So this event is for sure the stop signal of camera thread. The event A is never signaled until "screen turn to white, lower screen turn to black", where the event A is signaled and the "personality test" is supposed to begin. This program randomizes the following aspects of the game: Pokemon Attributes Abilities Move learnset Typing IQ Groups Dungeon Attributes The pokemon that appear in each dungeon The items that spawn in each dungeo. However, when the game begins to show the welcome text, the waiting strategy of the camera thread changes somehow: the order of 3 objects for WaitSynchronizationN(.) changes to Seeing as the PMD games werent mysterious enough, I made a randomizer for them. The WaitSynchronizationN(.) is waiting for ONE OF the following 3 objects (in array order): Then I did some tracing and here is the result:īefore title screen, main thread creates event A, then creates thread 9 (camera thread)Ĭall CAM::SetReceiving→.→ WaitSynchronizationN(.) →. That thread continues calling CAM service. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |