For (1), here's the German rule for forming the perfect tenses (or really, two actual rules - and what you happen to want here is present perfect tense, which is one of the three 'perfect tenses'):
Use 'haben' as the auxiliary (helping) verb (you used 'habe' and you used it correctly!) to form the present perfect tense with MOST verbs in German. This is almost identical to how it's done in English.
Use 'sein' as the auxiliary (helping) verb when the verb does NOT take a direct object; when it indicates motion (=a change of location), or a 'change of state or condition'. These include far fewer verbs in German than the ones that take haben as its auxiliary. Included here are verbs like 'gehen' (to go, to walk) which clearly is a motion verb, and 'werden' ('ich bin ... geworden = I have become) which clearly is a 'change of state' verb. There are a couple of important exceptions to 'motion' and 'change of state' -- like 'sein' itself ('ich bin .. gewesen' = I have been.)
You have 'played Ping-Pong.' Ping-Pong/table-tennis is the direct object of 'to play'. So use 'haben' there - first and main rule above.