working on cave server functionality