Mind the bump and double post, but I have the multiplayer hotfix. I will update this with the board vehicle and animations so you no longer have to make them, unless you want to improve on my sucky animations.
Here's the hotfix:
Code:
(script startup Jay_is_very_lazy
    (object_create_anew board1)
)


(script continuous no_random_collision
    (object_set_collideable board1 false)
)

(script continuous hijack_attaches
    (objects_attach ghostie1 "frame hull" board1 "frame hull")
    (objects_detach ghostie1 board1)
)

(script continuous hijack_Ghostie1_empty_player0
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 0))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 0)))
    )
)

(script continuous hijack_Ghostie1_full_player0
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 0))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 0)))
    )
)

(script continuous hijack_Ghostie1_empty_player1
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 1))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 1)))
    )
)

(script continuous hijack_Ghostie1_full_player1
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 1))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 1)))
    )
)

(script continuous hijack_Ghostie1_empty_player2
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 2))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 2)))
    )
)

(script continuous hijack_Ghostie1_full_player2
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 2))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 2)))
    )
)

(script continuous hijack_Ghostie1_empty_player3
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 3))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 3)))
    )
)

(script continuous hijack_Ghostie1_full_player3
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 3))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 3)))
    )
)

(script continuous hijack_Ghostie1_empty_player4
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 4))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 4)))
    )
)

(script continuous hijack_Ghostie1_full_player4
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 4))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 4)))
    )
)

(script continuous hijack_Ghostie1_empty_player5
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 5))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 5)))
    )
)

(script continuous hijack_Ghostie1_full_player5
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 5))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 5)))
    )
)

(script continuous hijack_Ghostie1_empty_player6
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 6))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 6)))
    )
)

(script continuous hijack_Ghostie1_full_player6
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 6))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 6)))
    )
)

(script continuous hijack_Ghostie1_empty_player7
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 7))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 7)))
    )
)

(script continuous hijack_Ghostie1_full_player7
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 7))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 7)))
    )
)

(script continuous hijack_Ghostie1_empty_player8
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 8))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 8)))
    )
)

(script continuous hijack_Ghostie1_full_player8
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 8))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 8)))
    )
)

(script continuous hijack_Ghostie1_empty_player9
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 9))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 9)))
    )
)

(script continuous hijack_Ghostie1_full_player9
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 9))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 9)))
    )
)

(script continuous hijack_Ghostie1_empty_player10
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 10))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 10)))
    )
)

(script continuous hijack_Ghostie1_full_player10
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 10))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 10)))
    )
)

(script continuous hijack_Ghostie1_empty_player11
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 11))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 11)))
    )
)

(script continuous hijack_Ghostie1_full_player11
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 11))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 11)))
    )
)

(script continuous hijack_Ghostie1_empty_player12
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 12))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 12)))
    )
)

(script continuous hijack_Ghostie1_full_player12
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 12))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 12)))
    )
)

(script continuous hijack_Ghostie1_empty_player13
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 13))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 13)))
    )
)

(script continuous hijack_Ghostie1_full_player13
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 13))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 13)))
    )
)

(script continuous hijack_Ghostie1_empty_player14
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 14))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 14)))
    )
)

(script continuous hijack_Ghostie1_full_player14
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 14))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 14)))
    )
)

(script continuous hijack_Ghostie1_empty_player15
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) false))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 15))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 15)))
    )
)

(script continuous hijack_Ghostie1_full_player15
    (sleep_until (if (vehicle_test_seat ghostie1 "driver" (unit (vehicle_driver ghostie1))) true))
    (sleep_until (if (vehicle_test_seat board1 "driver" (unit (list_get (players) 15))) true))
    (begin
        (unit_exit_vehicle (unit (vehicle_driver board1)))
        (unit_exit_vehicle (unit (vehicle_driver ghostie1)))
        (vehicle_load_magic ghostie1 "driver" (unit (list_get (players) 15)))
    )
)