[verb た-form] + り + [verb た-form] + り + する
[i-adj 〜い → 〜かった] + り + [i-adj 〜い → 〜かった] + り + する
[na-adj] + だったり + [na-adj] + だったり + する
[noun] + だったり + [noun] + だったり + する
Note: The final する conjugates for tense/politeness (します, した, etc.). At minimum two たり are typical, but one たり + する is also possible.
The たり~たり pattern is used to list actions as non-exhaustive examples, similar to saying "do things like A and B" in English. It implies that the listed actions are representative – there may be other actions not mentioned.
The pattern is formed by changing the verb to its た-form and adding り. The sentence typically ends with する (or its conjugated forms), which ties the listed actions together.
Take the た-form of a verb and add り:
You can list two or more actions with たり, and the sentence ends with する:
Even listing just one action with たり is possible when you want to imply "among other things":
The final する can be conjugated to match tense, politeness, or negation:
Past: たり~たりした
Polite: たり~たりします
Negative: たり~たりしない
たり~たり can also express alternating or contrasting states, such as something happening on and off: