- Jun 17, 2019
- 4,308
- 14,347
Self-quoting me for the umpteenth time, in case these doubts about what debugging means in this game are genuine:
Also, let's say you remake a scene because it didn't flow as you wanted: now you may need to change some bits of previous or subsequent dialogues to match the new scene (that's a continuity bug in itself), and maybe you don't remember how many scenes or convos are actually affected, only finding new bits that need to be changed too (new continuity bugs) when you test the game later on - again, at the risk of creating some 'posing' bugs in the process. Considering they've been going back and forth with several scenes they initially created a year or so ago, in an update that is said to have 1/2 more words than the largest one so far (66k compared to 44k), it's only natural they keep finding new things to fix - and they'll find/create many more as they keep fixing them.
Change a line of text, and you'll need to change those little commands that show the characters' expressions so that they match what's being said - miss-spell one of them or use an existing but wrong one because the right one just slipped your mind, and you'll have a bug you'll only detect when you replay the scene, and only if you're really focused on what you're doing (note that these bugs won't make Ren'py crash when you launch the game, telling you where the bug is; you must actively look for them while playing, reading the text and focusing on the sprites' eyes, hands, and mouth expressions to see if they are doing what you wanted them to do).This is 3 lines of text in a complex scene in WaL:
And that's basically the same for every piece of dialog. That's what they call 'posing'. This coding structure you see above needs to be done for every single dialog line in the game (maybe on a different scale, but still), and then you need to replay the scene taking extra care to detect if every single one of those short orders works as intended and make actual sense. Of course, if you edit the dialog lines, all those orders need to be adjusted too, and then checked once again.Python:show abusmall ewide sangry show pov enarrow hfneu2 hbneu2 msmile bangry scrazyhair show rose basemessy xwings xhornsnude enarrow bangryn msmile at s_left: xalign -0.5 alpha 1 $ renpy.music.set_volume(0.8, channel='sfx4') play sfx4 "audio/magicdemon2.ogg" fadein 0.5 abu "WHHHHHAAAAAAATTTTTTT?!" with vpunch show rose eneu bupn show pov hfreach eclosed bup at m_left with moveinleft: xalign 0.3 xzoom -1.0 show pov hfneu2 eneudown show abusmall at t_right with moveoutleft: xalign 1.5 xzoom -1.0 show pov hfneu1 hbneu1 bsad mneu show abusmall at t_right with quickdissolve: xzoom 1.0 xalign 1.5 show rose bsadn show abusmall eangry sangry with quickdissolve pov "Ah, Rose, I was worried you wouldn't come." show rose ewide bupn mneu show pov ewideb bup mcry show abusmall eangry abu "WHAT HAVE YOU DONE?!" with vpunch
Creating a minigame or a turn-based combat system surely takes longer than 'posing' this scene, but it's usually a one-time thing and then all you'd need to do is add a 'call screen' line and maybe adjust the variables involved before that 'call' statement. There, a bug can only exist within the minigame's core, and it would be easily detected as it would crash the game altogether or make the minigame not produce the expected result (it may take several days to fix, sure, but again it would be a one-time thing and you'll then have your minigame's code all fine and dandy for every time you'd want to use it in-game again). Taking care of different variables and paths is complex too, but that's just a matter of carefully noting down every possible combination and not messing with the variables' names; again, bugs would be easily detected and way easier to fix than those in minigames. Having a myriad of those variables and paths is probably similar to what posing means for WaL in terms of complexity, except you only check those variables every once in a while, after a significant interaction, while posing is needed for every single dialog line.
Also, let's say you remake a scene because it didn't flow as you wanted: now you may need to change some bits of previous or subsequent dialogues to match the new scene (that's a continuity bug in itself), and maybe you don't remember how many scenes or convos are actually affected, only finding new bits that need to be changed too (new continuity bugs) when you test the game later on - again, at the risk of creating some 'posing' bugs in the process. Considering they've been going back and forth with several scenes they initially created a year or so ago, in an update that is said to have 1/2 more words than the largest one so far (66k compared to 44k), it's only natural they keep finding new things to fix - and they'll find/create many more as they keep fixing them.