Yes, "Move Up" works as it should without script. So here's my take on what this whole thing is doing:
Sub Player_OnControllerMove(OldActions, NewActions)
This is what starts this section of code, running through it after the controller's position moves.
Dim Lyr, Spr, Def
This sets "Lyr", "Spr", and "Def" and variables.
Set Lyr = ProjectObj.Maps("Map1").MapLayer("Test")
Set Spr = Lyr.Sprite(0)
Set Def = Spr.rDef
This section defines "Lyr" as, well, the only layer I have in this project. The second line defines "Spr" as the first sprite on that layer, and the third line defines "Def" as "Spr.rDef", which is referencing the player sprite's sprite definition.
If Def.SolidTest(Spr.X-1,Spr.Y+31) Then
This part was a bit counter-intuitive. I know it's testing for solidity at the point one pixel left of the bottom-left corner, but I would've thought it would need something like "If Def.SolidTest(...) = True Then". But this is how I saw it in the tutorial project's script, so I followed suit.
ProjectObj.GamePlayer.ActivateFunction ProjectObj.Maps("Map1").Specials("Move up")
This part activates the function "Move Up" in Map1. That's just followed by the "Ends" and the three lines that I can only assume is needed in every code.
HostObj.SinkObjectEvents ProjectObj.GamePlayer, "Player"
HostObj.ConnectEventsNow()
ProjectObj.GamePlayer.Play 16
I'm not sure on the first one, the second one kind of puts it all together, and the third one starts the game. So... how'd I do?
Extra credit: Could I leave out all the Dim and Set parts if I changed the SolidTest line to:
If ProjectObj.GamePlayer.PlayerSprite.rDef.SolidTest(Spr.X-1,Spr.Y+31) Then