I am new to German. I came across these two words. I am curious to know if these two share same roots.
die Schlacht (engl: battle) (noun)
New High German (NHG) »Schlacht« was before (Middle High German = MHG) »slaht« and even before (Old High German = OHG) »slahta«. This OHG noun was derived from the OHG verb »slahan« which later became MHG »slahen« and now (NHG) is »schlagen« (to strike, knock, punch, beat, hit, ...)
But OHG »slahta« has an even older protogermanic root, and when both, English and German grew from this common root, this verb became »to slay« in modern English. So the German noun »die Schlacht« and the English verb »to slay« are relatives.
schlecht (engl: bad) (adjective)
The NHG adjective »schlecht« was both, MHG and OHG »sleht« and is a sibling of the Old English word »sliht«, from which the modern English word »slight« derived. But it had a very different meaning in those days. It meant »flat, smooth«. The German verb »schleichen« (engl: to creep, sidle, skulk, weasle, sneek, ...) also derives from this root, also the German adjective »schlicht« (simple, plain).
Over many centuries this word changed its meaning:
flat & smooth → plain & simple → worthless → bad.
DUDEN Das Herkunftswörterbuch (Duden Band 7) 3. Auflage, 2001, ISBN 3-411-04073-4
No. Those were separate on their vowel in Old High German already.
And there's also schlicht and die Schlucht, should you wonder. Also not related.