Error list

Lenora Rose

Farmer
So after successfully remaking my flower and hat mods (flower mod published, hat mod personal), I started working on a dialogue and event mod. I've been noodling at the dialogue for weeks, but events are scary, yo. So finally, I started writing them, realised the one I was starting with (chronologically the earliest) had stupidly complicated coding for one item,. So I backed up, identified 2 events which ought to be simpler, and started work.

I had 3 days in a row of writing, testing, fixing, testing; days 1 and 3 were the first event, day 2 was the second, which took less time to fix. I thought my error list might be A: hilarious and B: useful for others going "WTH?!?"when trying to move around the villagers (since at least twice, it wasn't the move that went wrong that was causing the error).

Also of note, I skipped past all of the event crashes that happened before getting the mod to load and play in the first place. though there were several, because they're more boring than watching the farmer suddenly walk through walls.

Event 1: Jodi's kitchen. In vicinity: Jodi, Vincent, farmer, Evelyn, Kent.

Errors:

Issue 0: Event starts and crashes

Cause: warps don’t require facing direction (anymore). Remove all facing directions from all warp instructions.

Issue 1: First few lines of dialogue work fine, then 5th dialogue box comes up as translation not found, and whole thing freezes.

Cause: Forgot one \” at start of one line of dialogue in the main file.

Issue 2: Event actually plays through, but ALL character dialogue comes up as “translation not found”, albeit without freezing event.

Cause: Despite actively reloading the entire mod after fixing the first error, the game didn’t read the translation file. Fix is to completely exit and restart SDV.

Issue 3: Farmer is supposed to walk one step at the same time Evelyn is moving. Farmer walks about 6, which puts her inside a wall, only her feet sticking out.

Cause: wasn’t sure. Distance travelled did indeed say 1.

Issue 4: Tried a different direction command. Farmer walks about 6 steps in new direction even though instruction says 1. Now she’s in a new wall.

Cause: wasn’t sure. Distance travelled did indeed say 1.

Issue 5: Revert to walking 1 step in original direction to get out of the way of Evelyn. Farmer is supposed to walk one step. Walks about 6, which puts her inside a wall, only her feet sticking out.

Cause: After shifting direction a few times, re-reading all the troubleshooting options and move instructions, finally figure it out. Other character’s simultaneous move Boolean slot says “true” (Because they ARE supposed to move at the same time for the first move). This causes farmer’s move, if not *actively* marked false, to repeat on loop until other character finishes their whole move (…6 steps). (Normally Boolean slot defaults to false so you don’t need to put anything in at all.) Cure is to fill farmer’s Boolean slot with “false”.

Issue 6: Stopped above testing on the alternate direction command. Farmer walks 1 step, but Evelyn, moving 6 steps, walks through her.

Cause: …Obviously don’t do that move first. Fix is to switch order of farmer’s moves back to original now that they work at all.

Issue 7: Astonishingly, first attempt at writing in an advancedMove worked perfectly to have Kent run into the room. Except that he goes 1 step too far. This means on Kent’s next move down one choice thread, he runs back out the wall instead of out the doorway.

Cause: needed 9 steps, not 10. Really easy fix. Yay!

Issue 8: On one of 2 question forks, Vincent, who’s supposed to walk up to his mom and hug her, walks up and kind of vaguely shifts in her direction, then pops back in place.

Cause: Need more and further position offsets. Refining these takes me dozens of tries (at least) but I won’t mention it again unless the fix is something ELSE.

Issue 9: When Jodi moves forward a step to where she’s supposed to be standing when Vincent hugs her, she’s actually a few pixels higher on the screen than other characters even though this is BEFORE the position offsets. This makes the hug look weird, like she's floating, while he's standing.

Cause: ... I still have no idea. She’s on the right square, and characters are supposed to move full squares when directed. Solution: Sneak in a warp to the *same* square right after she moves to that square, which places her correctly. (!?!? It worked and it’s not obvious, but I still don’t get why she wasn’t correctly placed in the first place?)

Issue 10: in second question fork, Vincent is supposed to run up via advancedMove and hug Kent instead. Apparently this bothered him, because instead he wanders offscreen in a direction he was not told to go during the move, and doesn't stop walking. Since the event won't continue until he stops moving, the action can't progress and I have to hit skip to exit.

Cause: as above, sometimes different move instructions affect each other. After sneaking in 10-millisecond pauses between some moves, and testing warping a character to the exact spot they're standing, which are the suggested cures in all the troubleshooting guides… it still happens. So despite the other advancedMove working perfectly, I change this one to 3 much shorter moves.

Issue 11: Vincent now runs as instructed… and ends up a square above his dad, both kind of making vague hug motions at air.

Cause: Despite checking and writing down every single character position and location for this event in advance, I still screwed up positioning. Thankfully, this reduces 3 moves to 1 single move.

Issue 12: With both hugs, the characters jerk weirdly back to position afterwards.

Cause: used a warp to reset, which you ARE supposed to do, but apparently I needed to write a few position offsets reverting the characters to their original place first, to make it look natural.

Issue 13: despite sitting there counting position offsets, Vincent still end ups backing into Evelyn at the end and kind of jitters back forwards into location at the warp. (Jodi is fine).

Cause: Either I am *that* bad at math or, as with the mom earlier, characters moving into a spot don’t actually centre themselves on their new square when they arrive. I *think* it’s the latter but by this time, don’t quote me.

Issue 14: All this while, the music cues have not been working. While fixing other things, moved them a few times, triple-checked they were written correctly. Sound effects seem to be working okay…

Cause: They’ve been working fine. At some point during actual game play on another day entirely, I had turned the music volume off but left sound effects on, which meant I couldn’t hear them, but because I did hear sound effects, it didn’t twig right away.



Event 2: Pierre's Store. Present: Just Pierre, farmer, George.

Errors:

Issue 1: George steers himself directly into (as in inside) a box of fruit.

Cause: Miscounted squares when looking at a map, because I didn’t actually check the location and count squares before writing the event, I just looked at a map and guessed. This works out okay for the farmer, who ended up looking at the wrong shelf but was still standing in an aisle browsing for groceries, and I decided to leave her as is.

Issue 2: Event proceeds as planned up to the question fork, skips that entirely, and jumps to the closing fadeout.

Cause: Put a space in the command quickQuestion so it said quick Question.

Issue 3: in first question fork, the farmer is supposed to walk (in a slight zig-zag to go around George) out the door, warp away, warp back, and walk in a completely straight line up back to George and stop. Instead, the farmer warps away immediately, reappears in doorway, and proceeds to walk in a diagonal line out the wall of the building and into deep space, not stopping. Event is stuck.

Cause: *something* inexplicable went wrong with using an advancedMove for the zig-zag route out, causing it not to happen; which then also messes up the next move after it for reasons that must exist in the deep code somewhere. Solved by turning the single advanced move into 4 separate short move actions. (Note I did not actually have to correct the move where the farmer walked into space; once the advancedMove was gone, that move command did what it was supposed to.)

Issue 4: In other question fork, George is supposed to bend his head slowly then raise it again. Instead he bobs it several times, quickly, and doesn’t stop.

Cause: Put true and false in the wrong two Boolean slots, one for other actions being allowed during animation (should have been “true”) and one for looping (should have been “false). Also misjudged speed of animation and had to increase the number of milliseconds.

Issue 5: First dialogue line keeps reopening, event won’t continue.

Cause: Self-inflicted injury in testing. Forced the event to start while I had the inventory menu open. Which I was warned would freeze the event. Not actually anything inside the event written incorrectly. Anymore.
 

BeenASon

Local Legend
That's a long list eh. I love looking at other people figuring out things so I can leech off them if I decide to do something like this. Thanks!
 

Lenora Rose

Farmer
That's a long list eh. I love looking at other people figuring out things so I can leech off them if I decide to do something like this. Thanks!
I have to admit, not being code savvy, I had three event related written tutorials (I don't do video for tutorials except for music), the SDV wiki pages, and a giant spreadsheet someone compiled of info you might need (sound effects, music cues, item IDs, sprite sheets) open in chrome, plus the json parser and Smapi log reader, plus a folder open with the unpacked version of files from the actual game (because the event info spreadsheet only goes to 1.4, so there are whole events, items, sound cues, new sprites, new portraits, that aren't in it). And I was writing the events in visual basic but often looking at the code in notepad because visual basic leaves it as one loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong line where notepad wraps text.
 

BeenASon

Local Legend
I have to admit, not being code savvy, I had three event related written tutorials (I don't do video for tutorials except for music), the SDV wiki pages, and a giant spreadsheet someone compiled of info you might need (sound effects, music cues, item IDs, sprite sheets) open in chrome, plus the json parser and Smapi log reader, plus a folder open with the unpacked version of files from the actual game (because the event info spreadsheet only goes to 1.4, so there are whole events, items, sound cues, new sprites, new portraits, that aren't in it). And I was writing the events in visual basic but often looking at the code in notepad because visual basic leaves it as one loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong line where notepad wraps text.
I hate when it's a long line of code lmfaoo. Very ugly to read. Also dedication my friend dedication. It's very impressive you did it!
 
So after successfully remaking my flower and hat mods (flower mod published, hat mod personal), I started working on a dialogue and event mod. I've been noodling at the dialogue for weeks, but events are scary, yo. So finally, I started writing them, realised the one I was starting with (chronologically the earliest) had stupidly complicated coding for one item,. So I backed up, identified 2 events which ought to be simpler, and started work.

I had 3 days in a row of writing, testing, fixing, testing; days 1 and 3 were the first event, day 2 was the second, which took less time to fix. I thought my error list might be A: hilarious and B: useful for others going "WTH?!?"when trying to move around the villagers (since at least twice, it wasn't the move that went wrong that was causing the error).

Also of note, I skipped past all of the event crashes that happened before getting the mod to load and play in the first place. though there were several, because they're more boring than watching the farmer suddenly walk through walls.

Event 1: Jodi's kitchen. In vicinity: Jodi, Vincent, farmer, Evelyn, Kent.

Errors:

Issue 0: Event starts and crashes

Cause: warps don’t require facing direction (anymore). Remove all facing directions from all warp instructions.

Issue 1: First few lines of dialogue work fine, then 5th dialogue box comes up as translation not found, and whole thing freezes.

Cause: Forgot one \” at start of one line of dialogue in the main file.

Issue 2: Event actually plays through, but ALL character dialogue comes up as “translation not found”, albeit without freezing event.

Cause: Despite actively reloading the entire mod after fixing the first error, the game didn’t read the translation file. Fix is to completely exit and restart SDV.

Issue 3: Farmer is supposed to walk one step at the same time Evelyn is moving. Farmer walks about 6, which puts her inside a wall, only her feet sticking out.

Cause: wasn’t sure. Distance travelled did indeed say 1.

Issue 4: Tried a different direction command. Farmer walks about 6 steps in new direction even though instruction says 1. Now she’s in a new wall.

Cause: wasn’t sure. Distance travelled did indeed say 1.

Issue 5: Revert to walking 1 step in original direction to get out of the way of Evelyn. Farmer is supposed to walk one step. Walks about 6, which puts her inside a wall, only her feet sticking out.

Cause: After shifting direction a few times, re-reading all the troubleshooting options and move instructions, finally figure it out. Other character’s simultaneous move Boolean slot says “true” (Because they ARE supposed to move at the same time for the first move). This causes farmer’s move, if not *actively* marked false, to repeat on loop until other character finishes their whole move (…6 steps). (Normally Boolean slot defaults to false so you don’t need to put anything in at all.) Cure is to fill farmer’s Boolean slot with “false”.

Issue 6: Stopped above testing on the alternate direction command. Farmer walks 1 step, but Evelyn, moving 6 steps, walks through her.

Cause: …Obviously don’t do that move first. Fix is to switch order of farmer’s moves back to original now that they work at all.

Issue 7: Astonishingly, first attempt at writing in an advancedMove worked perfectly to have Kent run into the room. Except that he goes 1 step too far. This means on Kent’s next move down one choice thread, he runs back out the wall instead of out the doorway.

Cause: needed 9 steps, not 10. Really easy fix. Yay!

Issue 8: On one of 2 question forks, Vincent, who’s supposed to walk up to his mom and hug her, walks up and kind of vaguely shifts in her direction, then pops back in place.

Cause: Need more and further position offsets. Refining these takes me dozens of tries (at least) but I won’t mention it again unless the fix is something ELSE.

Issue 9: When Jodi moves forward a step to where she’s supposed to be standing when Vincent hugs her, she’s actually a few pixels higher on the screen than other characters even though this is BEFORE the position offsets. This makes the hug look weird, like she's floating, while he's standing.

Cause: ... I still have no idea. She’s on the right square, and characters are supposed to move full squares when directed. Solution: Sneak in a warp to the *same* square right after she moves to that square, which places her correctly. (!?!? It worked and it’s not obvious, but I still don’t get why she wasn’t correctly placed in the first place?)

Issue 10: in second question fork, Vincent is supposed to run up via advancedMove and hug Kent instead. Apparently this bothered him, because instead he wanders offscreen in a direction he was not told to go during the move, and doesn't stop walking. Since the event won't continue until he stops moving, the action can't progress and I have to hit skip to exit.

Cause: as above, sometimes different move instructions affect each other. After sneaking in 10-millisecond pauses between some moves, and testing warping a character to the exact spot they're standing, which are the suggested cures in all the troubleshooting guides… it still happens. So despite the other advancedMove working perfectly, I change this one to 3 much shorter moves.

Issue 11: Vincent now runs as instructed… and ends up a square above his dad, both kind of making vague hug motions at air.

Cause: Despite checking and writing down every single character position and location for this event in advance, I still screwed up positioning. Thankfully, this reduces 3 moves to 1 single move.

Issue 12: With both hugs, the characters jerk weirdly back to position afterwards.

Cause: used a warp to reset, which you ARE supposed to do, but apparently I needed to write a few position offsets reverting the characters to their original place first, to make it look natural.

Issue 13: despite sitting there counting position offsets, Vincent still end ups backing into Evelyn at the end and kind of jitters back forwards into location at the warp. (Jodi is fine).

Cause: Either I am *that* bad at math or, as with the mom earlier, characters moving into a spot don’t actually centre themselves on their new square when they arrive. I *think* it’s the latter but by this time, don’t quote me.

Issue 14: All this while, the music cues have not been working. While fixing other things, moved them a few times, triple-checked they were written correctly. Sound effects seem to be working okay…

Cause: They’ve been working fine. At some point during actual game play on another day entirely, I had turned the music volume off but left sound effects on, which meant I couldn’t hear them, but because I did hear sound effects, it didn’t twig right away.



Event 2: Pierre's Store. Present: Just Pierre, farmer, George.

Errors:

Issue 1: George steers himself directly into (as in inside) a box of fruit.

Cause: Miscounted squares when looking at a map, because I didn’t actually check the location and count squares before writing the event, I just looked at a map and guessed. This works out okay for the farmer, who ended up looking at the wrong shelf but was still standing in an aisle browsing for groceries, and I decided to leave her as is.

Issue 2: Event proceeds as planned up to the question fork, skips that entirely, and jumps to the closing fadeout.

Cause: Put a space in the command quickQuestion so it said quick Question.

Issue 3: in first question fork, the farmer is supposed to walk (in a slight zig-zag to go around George) out the door, warp away, warp back, and walk in a completely straight line up back to George and stop. Instead, the farmer warps away immediately, reappears in doorway, and proceeds to walk in a diagonal line out the wall of the building and into deep space, not stopping. Event is stuck.

Cause: *something* inexplicable went wrong with using an advancedMove for the zig-zag route out, causing it not to happen; which then also messes up the next move after it for reasons that must exist in the deep code somewhere. Solved by turning the single advanced move into 4 separate short move actions. (Note I did not actually have to correct the move where the farmer walked into space; once the advancedMove was gone, that move command did what it was supposed to.)

Issue 4: In other question fork, George is supposed to bend his head slowly then raise it again. Instead he bobs it several times, quickly, and doesn’t stop.

Cause: Put true and false in the wrong two Boolean slots, one for other actions being allowed during animation (should have been “true”) and one for looping (should have been “false). Also misjudged speed of animation and had to increase the number of milliseconds.

Issue 5: First dialogue line keeps reopening, event won’t continue.

Cause: Self-inflicted injury in testing. Forced the event to start while I had the inventory menu open. Which I was warned would freeze the event. Not actually anything inside the event written incorrectly. Anymore.
Yeah the last thing I want to go through the code of THAT.
 
Last edited:

Lenora Rose

Farmer
Error Log, event 3:
This is the one with the tricky code bit that scared me and caused me to work on the other two first.

Improvements: Only one person once walked a weird distance, and NOBODY ended up strolling off diagonally into the void. There were no issues with the event fork (question coding), which is often a tricky part, and all 3 paths worked.

Not improvements: Several of my mistakes were dumber things, not "this is something someone first learning to code might screw up naturally".

In the Mullner house. Present: Farmer, Alex, Evelyn, George.

1: Farmer does not appear at the door after the door opening sound, AND text shows up as "no translation found" AND event crashes shortly thereafter.

A three in one! The farmer not appearing was due to a typo in the warp command, and I hadn't written the full path name for the temporary animated sprite ...

...and I forgot to add the translation from the main mod folder (which contains a lot of extra code that's not yet ready for testing) into the test version of the mod (Stripped to the elements that either already were tested or are in the immediate process of testing). Facepalm.

2: Farmer appears but walks too far, AND event crashes where the temporary animated sprite should show up.

Solution: Farmer's move action appears to be written correctly. But as with the above events, the boolean defaults to false OR to the last explicitly written boolean, and once you have one, you need to keep writing them in. So I filled in not just this one but all of the future moves. Learning from my past mistakes is a win!

I knew temporary animated sprites would be a headache to run... checked how it's loaded, and revised listed path.

3: Temporary sprite now appears as needed, but flies off into the distance...

Sprite was listed to loop its animation one time (ie, to play twice), and move command was to go the full distance during that animation. 2 x 10 = 20 squares, not 10. (Not beating my own bad at match charge...). Changing the distance to half the full total let it go where it was supposed to .

4: Rest of event continues almost as expected, but Evelyn never shows up even though she speaks on cue.
If she wasn't in the event map, it would crash, so she's SOMEWHERE. Played with Evelyn's move commands a bit.

5: Evelyn now moves far enough we can see her shadow at the top of the screen...
When planning the event, I figured out her starting point, then changed my mind and moved her to a different spot. The move commands only direct her as if she's standing in the new location, but I never changed her starting place. (This was possibly the dumbest of all my "mistakes" this time around, even more than 2 x 10)

6: Realise after the next iteration of the sprite working, that Alex just threw a football, and is... holding a football.
Need to add sprite changes in...

7: Return throw still starts from Alex and... looks weird... (think footballs cut in half weird)
Instead of replacing the map location for the sprite starting, I replaced the location on the spritesheet. THIS is why a space delimited string of numbers and booleans with 18 different spots to fill out is a wee bit harder than one command at a time. (What it looks like (With some imaginary numbers but the right placements): path\\sprite 0 0 16 16 250 7 2 8 16 false false 1 1 1 1 0 0 motion -10 0)

8: Now when the football is thrown back to Alex, his sprite changes back to holding a football after the throw starts but BEFORE the football arrives.

Solution: There's a wonderful command called waitForAllStationary which means that instead of playing with the exact pause needed before switching his sprite, it's guaranteed to happen right after. I loved this command in the last event I wrote it into, and it helped here.

I have a couple of small timing things to finish up (that can't be resolved with waitForAllStationary) and a couple of sound effects are a touch off, and I might need a different temporary animated sprite to make clear where a particular sound came from.) but the basic event now goes from crashing partway through to playing through in full.

... I want to have 12 events done before March 26th. I have 3. Granted, I started in chronological order rather than order of simplicity, but even so...ack!
 

Lenora Rose

Farmer
1.5 mods finished today (Both in the saloon; the second changes location halfway and I tested the first half alone to make sure it worked before I try the headache of switching locales), and despite a couple of screwups on starting that were enough to render the event unplayable, once I got them to play, I really only had two errors worth listing:

1: Robin breaks off dancing and walks towards Gus's counter. Demetrius follows, confused, and flinches slightly at one of the things she says. Then vanishes, and Shane, who's only just stopped drinking and started paying attention, apparently pays so MUCH attention he appears in Demetrius's place. Which explains why Robin gives him a very grouchy look....

I transposed numbers on BOTH men's post-animation warp back into place. It was a happy coincidence this landed Shane on Demetrius' spot. Demetrius was hiding in a wall.

The only other real mistake was forgetting to include Elliott in a crowd scene then writing an instruction specially for him.

Although I did find that regarding the last event above, Alex was STILL appearing to hold a football (gridball) before it was thrown back at him. I THINK I fixed the timing, but I thought as much once already.

On to a bit more work...
 
Top