{"id":18,"date":"2021-07-05T15:21:12","date_gmt":"2021-07-05T15:21:12","guid":{"rendered":"https:\/\/blogs.scummvm.org\/sheep\/?p=18"},"modified":"2022-05-24T18:25:46","modified_gmt":"2022-05-24T18:25:46","slug":"the-way-of-fixing-warlock","status":"publish","type":"post","link":"https:\/\/blogs.scummvm.org\/sheep\/2021\/07\/05\/the-way-of-fixing-warlock\/","title":{"rendered":"The Way of Fixing Warlock"},"content":{"rendered":"\r\n<h3 class=\"wp-block-heading\">The Way of Fixing Warlock<\/h3>\r\n\r\n\r\n\r\n<p>this post may get a little shorter, and i will write another one for supplement later<\/p>\r\n\r\n\r\n\r\n<p>last week, i finished fixing the puppets. And head to fixing the game &#8212; spaceship warlock<\/p>\r\n\r\n\r\n\r\n<p>first, i fixed the text style for text castmember, which will distinguish the fixed text and auto expand texts.<\/p>\r\n\r\n\r\n\r\n<p>Also, i think that would explain the reason why director treat the dims of those text cast members so strangely. Because they are auto expand text, so their dims would change.<\/p>\r\n\r\n\r\n\r\n<p>With knowing that, we could now give the appropriate way for dealing with those text castmembers.<\/p>\r\n\r\n\r\n\r\n<p>Implementing immediateSprite just like puppetSprite.<\/p>\r\n\r\n\r\n\r\n<p>Removing changing the original sprites when we are setting the properties of sprites. That would allow us keep the original sprites unchanged. And we won&#8217;t need to restore it after we using the puppets sprites.<\/p>\r\n\r\n\r\n\r\n<p>I&#8217;ve fixed some issues for drawing quick draw shape, especially the problem relate to linesize.<\/p>\r\n\r\n\r\n\r\n<p>I&#8217;ve modified the way we are drawing the inverted channel. That will allow us to highlight those sprites correctly. check the pic below<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><a href=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-55\" src=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/1.png\" alt=\"\" width=\"424\" height=\"301\" srcset=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/1.png 424w, https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/1-300x213.png 300w\" sizes=\"auto, (max-width: 424px) 100vw, 424px\" \/><\/a><\/figure>\r\n\r\n\r\n\r\n<p>And while dealing with those thing, i found a problem relate to the transition and highlight button. In the Basilisk, looks like the button and the transition is seperate. The button won&#8217;t affect and won&#8217;t be affected by the transition. Also the events should not be blocked. this should be fixed in the future.<\/p>\r\n\r\n\r\n\r\n<p>Then comes the problem of dealing pic data streams. We are not implementing the BITDDecoder correctly. after a day (or maybe two days) of experimenting. i finally got the solution.(the reason i take so long i think is the lack of experience). And we finally managed bring captain warlock back again.<\/p>\r\n\r\n\r\n\r\n<p>You know what. There is a girl, a green girl in stambul, Dancing in the bar. And she has the magic power which can turn herself bigger when she shows up.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><a href=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-57\" src=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/2.png\" alt=\"\" width=\"674\" height=\"299\" srcset=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/2.png 674w, https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/2-300x133.png 300w\" sizes=\"auto, (max-width: 674px) 100vw, 674px\" \/><\/a><\/figure>\r\n\r\n\r\n\r\n<p>And it&#8217;s the bitmap cast member scale problem. Fortunatly, i got the similiar implemetation in window.cpp, so i write a scale code for drawing the bitmap castmembers which are smaller than it&#8217;s initialRect. Also don&#8217;t forget to scale the registrationOffset.<\/p>\r\n\r\n\r\n\r\n<p>After done with that, we can managed to see the original size of that green girl.<\/p>\r\n\r\n\r\n\r\n<p>And there is some detailed problems which is not necessary to said here.<\/p>\r\n\r\n\r\n\r\n<p>After those problems were fixed, the render problem which i&#8217;ve discovered and posted on trello board were all fixed.<\/p>\r\n\r\n\r\n\r\n<p>And then i gone to the lift problem. That finally show as an behaviour problem. After checking the documentation, i resolved that one.<\/p>\r\n\r\n\r\n\r\n<p>And after that, i managed to go further for testing warlock. I&#8217;ve fixed some small problems while i was continue testing.<\/p>\r\n\r\n\r\n\r\n<p>And today, i&#8217;m stucked on a issue related xobjs. So i changed my view and implemented some operations of text field and text chunk field.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><a href=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-58\" src=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/3.png\" alt=\"\" width=\"636\" height=\"420\" srcset=\"https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/3.png 636w, https:\/\/blogs.scummvm.org\/sheep\/wp-content\/uploads\/sites\/8\/2021\/07\/3-300x198.png 300w\" sizes=\"auto, (max-width: 636px) 100vw, 636px\" \/><\/a><\/figure>\r\n\r\n\r\n\r\n<p>I think that problems should be fixed sonner. And i will continue testing warlock. Since sev has told me how to open the warlock in emulator, the problems become more clear and precise. And i believe i will bring the warlock (with no sound) sooner.<\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>The Way of Fixing Warlock this post may get a little shorter, and i will write another one for supplement later last week, i finished fixing the puppets. And head to fixing the game &#8212; spaceship warlock first, i fixed the text style for text castmember, which will distinguish the fixed text and auto expand&hellip; <a class=\"more-link\" href=\"https:\/\/blogs.scummvm.org\/sheep\/2021\/07\/05\/the-way-of-fixing-warlock\/\">Continue reading <span class=\"screen-reader-text\">The Way of Fixing Warlock<\/span><\/a><\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-18","post","type-post","status-publish","format-standard","hentry","category-uncategorized","entry"],"_links":{"self":[{"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/posts\/18","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/comments?post=18"}],"version-history":[{"count":3,"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/posts\/18\/revisions"}],"predecessor-version":[{"id":59,"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/posts\/18\/revisions\/59"}],"wp:attachment":[{"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/media?parent=18"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/categories?post=18"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/sheep\/wp-json\/wp\/v2\/tags?post=18"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}