Python script to generate Brainfuck that prints strings with multi-byte characters:

string = "Hi 😊"

for b in bytes(string, 'utf-8'):
 print(b)
 print("+" * b + ".>")

A shorter one for bytes that are close to each other

string = "Hi 😊"

last = 0
for b in bytes(string, 'utf-8'):
 diff = b-last
 last = b
 print("-+"[diff>0] * abs(diff) + ".")

Constants