Como se proteger de macros e bots em seu jogo utilizando: SetWindowDisplayAffinity
O jogador vê o jogo, mas o programa de macro (ou qualquer gravador de tela como OBS/Discord) vê uma tela preta — você precisa utilizar recursos de Proteção de Conteúdo do Sistema Operacional. Essa é a mesma tecnologia que a Netflix , a Udemy e aplicativos de banco usam para impedir que você tire print ou grave a tela. Aqui estão as abordagens para implementar isso no seu jogo: 1. A Solução "Mágica": SetWindowDisplayAffinity (Windows) No Windows, existe uma API nativa feita exatamente para isso. Se você configurar a sua janela com essa flag, o Windows remove a imagem da janela do fluxo de composição que é enviado para softwares de captura. O que acontece: O jogador vê o jogo normal. O Python (mss, pyautogui), o OBS e o Discord veem uma janela preta. Como implementar: Você precisa chamar uma função da user32.dll . Se o seu jogo é feito em Unity (C#) , o código seria algo assim: C# using System; using System.Runtime.InteropServices; using UnityEngine; public class A...