Deathrun default hud not working with me

Okay so im attempting to edit the gamemode hud, and idk if this is the file path or code itself?
If i did do something wrong tell me

File path :

ERROR : [ERROR] gamemodes/deathrun/gamemode/cl_init.lua:80: attempt to concatenate a userdata value

  1. unknown - gamemodes/deathrun/gamemode/cl_init.lua:80



function GM:HUDPaint( )

	local ply = LocalPlayer()
	local ob = ply:GetObserverTarget()
	if ob and IsValid(ob) and ob:IsPlayer() and ob:Alive() then
		draw.AAText( ob:Nick(), "Deathrun_SmoothBig", ScrW()/2, 5, Color(255,255,255,255), TEXT_ALIGN_CENTER)
		ply = ob
	end

	local hy = ScrH() - 140


	draw.RoundedBox( 5, hx, hy, hw, hh, Color( 44, 44, 44, 175 ) )
	draw.RoundedBox( 5, hx + border, hy + border, hw - border*2, hh - border*2, Color( 180, 80, 80, 255 ) )
	local thp = ply:Alive() and ply:Health() or 0
	local hp = thp
	if hp > 0 then
		hp = ( hw - border*2 ) * ( math.Clamp(ply:Health(),0,100)/100)
		draw.RoundedBox( 5, hx + border, hy + border, hp, hh - border*2, Color( 80, 180, 60, 255 ) )
	end

	draw.AAText( tostring( thp > 999 and "dafuq" or math.max(thp, 0) ), "Deathrun_SmoothBig", hx + 5, hy - 3, Color(255,255,255,255), TEXT_ALIGN_LEFT )

	surface.SetFont( "Deathrun_SmoothBig" )
	local rt = string.ToMinutesSeconds(self:GetRoundTime())
	local ttw, _ = surface.GetTextSize( rt )

	local tw = hw/2 + 5
	draw.WordBox( 4, tw - ttw/2, hy - 45, rt, "Deathrun_SmoothBig", Color( 44, 44, 44, 200 ), Color( 255, 255, 255, 255 ) )

	self.BaseClass:HUDPaint()

local ph = hy/1 + 35

	draw.RoundedBox( 5, hx, ph, hw/5+110, hh/1+70, Color( 44, 44, 44, 175 ) )
	draw.RoundedBox( 5, hx + border, ph + border, hw/5+110 - border*2, hh/1+70 - border*2, Color( 0, 61, 245, 255 ) )

    draw.DrawText(" " ..ply:GetVelocity().. " ","Trebuchet18",hx,ph (0,0,0,0) )


end


[editline]25th November 2016[/editline]

(The velocity is not work )


local ph = hy/1 + 35

	draw.RoundedBox( 5, hx, ph, hw/5+110, hh/1+70, Color( 44, 44, 44, 175 ) )
	draw.RoundedBox( 5, hx + border, ph + border, hw/5+110 - border*2, hh/1+70 - border*2, Color( 0, 61, 245, 255 ) )

    draw.DrawText(" " ..ply:GetVelocity().. " ","Trebuchet18",hx,ph (0,0,0,0) )


end 

I know that GetVelocity():Lenght() u need. If this is the issue try it. link for wiki.

[ERROR] gamemodes/deathrun/gamemode/cl_init.lua:80: attempt to call method ‘GetLength’ (a nil value)

  1. unknown - gamemodes/deathrun/gamemode/cl_init.lua:80

cause it’s …:GetVelocity():Length() not …:GetLength() ???

Ye thank you! Got it fixed and used surface.DrawText fixed it