I was playing hollow knight and a character said "愛されし王のために", i searched and found out that し is a conjugation of an aulixiary that means past and it was used in classical japanese, but i asked a japanese friend about it and he said that it means 愛されている王のために, and し is an old way to say ている, which one is right？or しhas this two meanings？
Theし is indeed 連体形 (pre-noun form) of the auxiliary き, meaning past. The phrase means 愛された王のために in modern version, which is literally the king who was loved or the loved king, the latter of which in turn can be translated as 愛されている王.
So grammatically you are correct. 愛された or 愛されている is a matter of translation. 愛された sounds like the king is dead or the fact of being loved is past (like the king who used to be loved.