Deprecated: Creation of dynamic property ATTO_PluginUpdate::$license is deprecated in /mnt/storage/stage/www/wp-content/plugins/advanced-taxonomy-terms-order/include/class.atto.plugin-updater.php on line 29
Moneyboys review: 'Gritty gay sex worker drama packs a powerful punch' - Attitude Skip to main content
Deprecated: mb_convert_encoding(): Handling HTML entities via mbstring is deprecated; use htmlspecialchars, htmlentities, or mb_encode_numericentity/mb_decode_numericentity instead in /mnt/storage/stage/builds/streampublishing-attitude-server/latest-1.16.1-1793359797.063729/pugpig-attitude-theme/functions.php on line 974

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 218

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 116

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 132

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 200

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 225

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 236

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 78

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 96

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 87

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 105

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 69

Home Culture Culture Film & TV

Moneyboys review: ‘Gritty gay sex worker drama packs a powerful punch’

Screening as part of this year's BFI FLARE: London LGBTQIA+ Film Festival.

By Jamie Tabberer

Words: Jamie Tabberer; pictures: Provided

There’s a stoicism to Liang, the central character of Moneyboys – a Taiwanese-Austrian drama film about Chinese sex workers playing at BFI Flare: London LGBTQIA+ Film Festival – that’s best exemplified in his simple but agonisingly perfect sense of style.

Whether entertaining sketchy clients in glossy bars, or evading police on the unruly streets of the concrete jungle he calls home, he always looks understated and considered in his ‘work uniform’. Think short-sleeved shirts in sophisticated shades; snug-fitting ankle-barers; glossily gelled, boy band-ready hair that invites light ridicule from another character.

Actor Ko Chen-tung’s beautiful face is also inscrutable, camouflaging a traumatic, rollercoaster life. He’s coolly unresponsive, even, when fielding hostile questions from anti-gay relatives over dinner in the impoverished village he grew up in. His is a performance of great control, which concludes in the final frames with an unexpected burst of energy.

Liang’s fellow-moneyboy boyfriend Xiaolai, meanwhile – played by the brooding J.C. Lin – explodes in the film’s opening chapter, while defending his lover’s honour from a monstrous customer. It’s an eye-wateringly violent scene that differs from the gentle, meditative tone found elsewhere.

The encounter leaves Xiaolai crippled; in the fall-out, Liang is forced to abandon his partner, his home, his life – but not his profession.

Five years later, while visiting his dying grandfather, he reconnects with a younger villager he grew up with, played by the effervescent and luminous Bai Yufan. To Laing’s exasperation, his now aspiring protege follows him back to his high-rise apartment, and becomes increasingly cocksure. The emotional context of what happens next is playfully ambiguous. Is it a forced mentorship? A loving friendship? A potential rivalry? A reluctant romantic relationship? All of the above? 

If Moneyboys makes any observation about sex work, it’s on the myriad ways it can complicate a person’s life. However neatly assembled his outfits and stylish abode, Laing’s relationships, whether family or chosen family, seem unmanageable. His fabulous group of friends and colleagues – adequately fleshed out in just a handful of highly verbose hang-out scenes – appear to lead even more dramatic, unpredictable lives.

Laing’s life is further complicated by the unfortunate state of play for LGBTQ people in China, a country that decriminalised homosexuality in 1997 but introduced a ban on TV depictions of effeminate men last year. (The comparatively liberal Taiwan, which achieved marriage equality in 2019, makes for an effective stand-in).

Exquisite performances anchor a film that this reviewer nevertheless found a tad slow and hard to follow – I missed at least one crucial detail: that Laing is financially supporting his family. Another plot point, involving a reunion between Laing and Xiaolai, is heavyhanded and far-fetched.

Still, when bestowed with your full attention, Moneyboys makes for penetrating, revealing viewing that never feels invasive. More astute observations about the monetistion of the body are made: one quite directly by a character toiling away for a pittance in the service sector, and another – a grand statement that lifts the film to a different plane – via a breathtaking shot of a preternaturally talented street dancer bathed in ethereal light.

Rating: 4/5

Attitude’s new-look March/April issue is out now.