clock.lua requires an image. Looks like you copied the library and not any of its assets. Check the error: It says it's in line 13 of clock.lua. The filepath in the loadImage call there will reveal the path to the image it's looking for. There might be more loadImage calls in that area, too.
Making a timer in the PAL relase is just two lines anyway:
local timer = require("timer")
timer.activate(TIME_IN_SECONDS)

The brackets can be left empty to default to 500.

Please do not use any of my assets (graphics, scripts) in works affiliated with the Novaverse. This applies to the original releases of those assets as well as any third-party variations (recolours, script alterations). Thank you.
________________________________________________________

But I don't want to use the clock, I just want the NSMB powerups option & the visual effects like Snow, Sandstorms, Fog & Wind.

So... EasyLunalua is a crutch. One of the consequences of that and how it was made is that you can't just take some of it. The library tries to load stuff for the clock, so you gotta include stuff for the clock if you wanna use it.
That said, the "problems" solved by EasyLunaLua are consistently things that are very easily done without relying on the library.

To adjust the particles' sections you just change when drawing happens. For example only "if player.section == 0 then"

Please do not use any of my assets (graphics, scripts) in works affiliated with the Novaverse. This applies to the original releases of those assets as well as any third-party variations (recolours, script alterations). Thank you.
________________________________________________________

Please be more specific. I don't know what information you're looking for.

Please do not use any of my assets (graphics, scripts) in works affiliated with the Novaverse. This applies to the original releases of those assets as well as any third-party variations (recolours, script alterations). Thank you.
________________________________________________________

Right so... you're quoting the part where I provided the code that is essentially executed by the EasyLunaLua system to provide an alternative not relying on the system. You set them up by using the code you quoted, adjusting the variables I pointed out if necessary and not using EasyLunaLua at all.

If you want to instead continue using EasyLunaLua, you must address any errors the library starts complaining about. Might be a good idea, because it increases reading comprehension of error messages... even if the system is unwieldy and you'll have to include more code than you need in your episode. I've already repeated what the first error message you got said. From my post you can trace back to the layout of the error message and find out what to do. Here's the reference that's pinned in codehaus' smbx2-script-help. The stacktrace is less important in this case because you never actually call easylunalua from your own code. In your error it's just a list of files that called each other, and the error is actually in clock.lua at line 13.

Please do not use any of my assets (graphics, scripts) in works affiliated with the Novaverse. This applies to the original releases of those assets as well as any third-party variations (recolours, script alterations). Thank you.
________________________________________________________

luna.lua. That's always where level- or episode-wide lua code goes (level folder if level-wide, episode folder if episode-wide).
Unless you're on Beta 3 (which I doubt since then EasyLunaLua wouldn't be breaking I think), where it's lunaworld.lua or lunadll.lua depending on whether it's episode or level code.
Considering you were on Episode 7 of the lunalua tutorials months ago I thought you had at least watched part of Episode 1, sorry.

Please do not use any of my assets (graphics, scripts) in works affiliated with the Novaverse. This applies to the original releases of those assets as well as any third-party variations (recolours, script alterations). Thank you.
________________________________________________________

That's what I needed to know, but is there that much of a difference between what Beta 3 uses & what PAL uses?

As for the Darkness tutorial, I was just interested in that effect so I went straight to it. If I want to learn how to do something specific & there's a video that covers it, I'm going to THAT video. Why would I watch other videos when there's only 1 video that covers what I want to learn? That's why its important to give details & explain how to do something from step 1 to the final step & leave no information out so the person trying to learn it doesn't screw it up due to a lack of info.

Now are there tutorials or guides to explain how to set those up? Do I need to copy over certain lua files like altpsystem or particles into my episode/level folders?
Do those codes just go into the luna.lua file?

That much of a difference? We just standardized the names so that people don't have to remember different names for episode- and level-wide anymore. And people would often think that "lunaworld" is for the "world map". The Beta 3 system was just confusing. In terms of functionality, there's no significant difference.

No coding tutorial series ever starts at step 0 with every video. It'd be a chore for people who are actually interested in learning the language to always have the fundamentals copypasted onto the start of the video. The videos are numbered in increasing order of complexity, though I suppose I should take out the numbering of the later systems and just imply that they assume people have a grasp on the language from the first few tutorials.

The codes just go into luna.lua.

Please do not use any of my assets (graphics, scripts) in works affiliated with the Novaverse. This applies to the original releases of those assets as well as any third-party variations (recolours, script alterations). Thank you.
________________________________________________________