ID:2114135
 
oh my god, those are a lot of errors.
loading ACTUAL.dme
loading Interface.dmf
Procs.dm:14:error: HP: undefined var //from procs.dm
Procs.dm:15:error: DeathCheck: undefined proc //from procs.dm
verbs.dm:18:error: src.dir: undefined var //from verbs.dm
verbs.dm:19:error: src.Str: undefined var //from verbs.dm
verbs.dm:19:error: M.Def: undefined var //from verbs.dm
verbs.dm:20:error: viewM: undefined var //from verbs.dm
verbs.dm:20:error: M: undefined var //from verbs.dm
verbs.dm:23:error: src.HP: undefined var //from verbs.dm
verbs.dm:25:error: src.MaxHP: undefined var //from verbs.dm
verbs.dm:28:error: Exp: undefined var //from verbs.dm
verbs.dm:34:error: HP: undefined var //from verbs.dm
verbs.dm:35:error: usr.DeathCheck: undefined proc //from verbs.dm
Procs.dm:13:error: TakeDamage: undefined proc //from procs.dm
verbs.dm:16:error: Attack: undefined proc //from verbs.dm
verbs.dm:22:error: DeathCheck: undefined proc //from verbs.dm
verbs.dm:33:error: TakeDamage: undefined proc //from verbs.dm
ACTUAL.dmb - 16 errors, 0 warnings (7/10/16 12:28 pm)

to elaborate, i am using falacy's tutorial that was made a few years ago, and i'm stumped-- why are so many things undefined? in the tutorial, i didn't think they would need to.
the code that the compiler takes me to is as follows:
procs.dm
mob/proc
LevelCheck()
if(src.Exp>=src.Nexp)
src.Exp=0
src.Nexp+=10
src.Level+=1
src.MaxHP+=rand(1,5)
src.HP=src.MaxHP
src.Str+=1
src.Def+=1
src<<"You feel stronger... You are now Level [src.Level]!"

TakeDamage(var/Damage,var/mob/Attacker)
HP-=Damage
DeathCheck(Attacker)


verbs.dm
mob/verb
Say(t as text)
view()<<"[src] says: [t]";
World_Say(t as text)
world<<"<b>[src]:</b> [t]"
Who()
var/counter=0
for(var/mob/Player/M in world)
counter+=1
usr<<"([M.Level]) [M]"
src<<"<b>[counter] Players Online"

mob/verb
Save()
src.SaveProc()
Attack()
flick("Attack",src)
for(var/mob/M in get_step(src,src.dir))
var/Damage=max(0,src.Str-M.Def)
viewM<<"[src] hit [M], Dealing [Damage] Damage!"

DeathCheck(var/mob/Killer)
if(src.HP<=0)
world<<"[Killer] Killed [src]!"
usr.HP=src.MaxHP
usr.loc=locate(5,5,1)
else
Killer<<"<b>You Killed [src] for [Exp]"
Killer.Exp+=usr.Exp
Killer.LevelCheck()
del src

TakeDamage(var/Damage,var/mob/Attacker)
HP-=Damage
usr.DeathCheck(Attacker)


Indentation is key.
mob
// Belongs to /mob
var mob_var

proc/MobProc()
// Belongs to MobProc(), but not /mob
var proc_var

child_of_mob
// Belongs to /mob/child_of_mob, but not /mob
var child_var
proc/ChildProc()


// Doesn't belong to mob
var global_var
proc/global_proc()
w-what?

could you elaborate?
In response to FreeFallProtocol
For example, you have this:
mob/verb
Save()
src.SaveProc()
Attack()
flick("Attack",src)
for(var/mob/M in get_step(src,src.dir))
var/Damage=max(0,src.Str-M.Def)
viewM<<"[src] hit [M], Dealing [Damage] Damage!"

DeathCheck(var/mob/Killer)
if(src.HP<=0)
world<<"[Killer] Killed [src]!"
usr.HP=src.MaxHP
usr.loc=locate(5,5,1)
else
Killer<<"<b>You Killed [src] for [Exp]"
Killer.Exp+=usr.Exp
Killer.LevelCheck()
del src

TakeDamage(var/Damage,var/mob/Attacker)
HP-=Damage
usr.DeathCheck(Attacker)

where it should be this:
mob/verb
Save()
SaveProc()

Attack()
flick("Attack", src)
for(var/mob/M in get_step(src, dir))
var/Damage = max(0, Str - M.Def)
view(M) << "[src] hit [M], Dealing [Damage] Damage!"

DeathCheck(mob/Killer)
if(HP <= 0)
world<<"[Killer] Killed [src]!"
HP = MaxHP
loc = locate(5, 5, 1)
else
Killer << "<b>You Killed [src] for [Exp]"
Killer.Exp += Exp
Killer.LevelCheck()
del src

TakeDamage(Damage, mob/Attacker)
HP -= Damage
DeathCheck(Attacker)

I recommend reading the DM Guide. Start from chapter 1.