Aller au contenu
Forma Roblox

Rechercher dans la formation

Module 07 · Leçon 5 sur 6

Fixer ses prix et monétiser éthiquement

Choisis des prix cohérents, découvre les outils officiels de test de prix et respecte les règles de Roblox sur les promotions et les objets aléatoires payants.

  • ⏱️ 35 min
  • 📝 Quiz de 6 questions
  • 🔄 Vérifié le 24 octobre 2026
Sur cette page

🎯 Dans cette leçon, tu vas apprendre à…

  • Choisir des prix cohérents et une gamme de prix adaptée
  • Connaître les outils officiels de prix régionaux et de test de prix
  • Distinguer cosmétique, confort et pay-to-win
  • Appliquer les règles de Roblox sur les promotions et les objets aléatoires payants

Tu sais maintenant créer et vendre un Game Pass, un Developer Product et un abonnement. Reste une question délicate : à quel prix, et jusqu’où aller ? Sur Roblox, beaucoup de joueurs sont mineurs. Monétiser éthiquement n’est pas seulement une question de morale : c’est aussi une question de règles que Roblox impose, et de confiance de tes joueurs.

Fixer un prix cohérent

Il n’existe pas de « bon prix » universel, et Roblox ne publie pas de grille de prix idéaux. En revanche, sa documentation donne des principes solides.

Un objet doit avoir une valeur claire

Le guide officiel « Monetization foundations » le résume : quand un joueur achète un objet, il doit y trouver de la valeur et comprendre facilement à quoi il sert dans le jeu. La page officielle « Monetization » ajoute que les offres doivent être présentées de façon transparente et honnête. La boutique doit aussi donner du contexte : un prix seul, sans comparaison avec les autres offres, ne dit pas au joueur ce que vaut l’objet.

Une gamme de prix plutôt qu’un seul prix

La page officielle sur les statistiques de monétisation conseille de proposer des objets à plusieurs niveaux de prix : certains joueurs ne dépenseront qu’un petit montant, d’autres davantage. Elle suggère aussi des offres de bienvenue pour les premiers achats, afin de réduire la barrière de la première dépense. Si tu en proposes une, garde-la honnête et sans pression (pas de faux compte à rebours, voir plus bas) : ton objectif n’est pas de faire dépenser le plus possible, mais que chaque achat laisse un bon souvenir au joueur.

Pour l’Obby des Nuages, cela pourrait donner :

  • « Passer l’étape » : un petit prix, car on peut l’acheter plusieurs fois ;
  • « Traînée dorée » : un prix moyen, pour un avantage permanent mais purement cosmétique ;
  • l’abonnement « Nuage+ » : seulement s’il apporte quelque chose de nouveau chaque mois.

Les montants exacts sont ton choix. Observe les jeux similaires au tien, puis ajuste avec tes propres statistiques (module 9).

Prix régionaux et tests de prix : les outils officiels

Managed Pricing

Au moment de la rédaction (octobre 2026), Roblox regroupe deux outils sous le nom de Managed Pricing, dans Monetization › Managed Pricing du Creator Hub :

  • Regional pricing (prix régionaux) : Roblox ajuste le prix selon la « localisation économique » du joueur (pouvoir d’achat, taux de change, habitudes de dépense). Le prix régional reste entre 30 % et 100 % de ton prix par défaut. Il est activé par défaut pour les passes (désactivable pass par pass) et appliqué automatiquement, sans possibilité de le désactiver, aux abonnements en Robux.
  • Price optimization (optimisation des prix) : Roblox répartit automatiquement tes joueurs en groupes qui voient des prix différents, mesure les achats, puis te recommande les meilleurs prix. Un test dure environ 3 semaines, et les nouveaux prix ne sont appliqués que s’ils augmentent le revenu total.

Les tests de prix ne concernent que les Game Passes et les Developer Products : les abonnements en Robux sont régionalisés automatiquement, mais exclus des tests. Et la documentation prévient : pour un test de prix fiable, il faut en général au moins 60 000 transactions sur les 30 derniers jours. Un premier jeu en est souvent loin, et c’est normal.

Le prérequis : des prix lus dynamiquement

Tous ces outils, ainsi que les réductions Roblox Plus, supposent que ton interface lit le prix depuis Roblox. La documentation fournit même un outil, Dynamic Price Check, qui affiche de faux prix à des comptes de test pour repérer les prix écrits « en dur ». Voici enfin le bouton « Passer l’étape » annoncé à la leçon 3, avec un prix toujours exact. Comme pour la traînée dorée (leçon 2), crée un TextButton BoutonPasserEtape dans InterfaceObby › Boutique › Liste, puis un LocalScript ScriptBouton dedans, et remplace 0 par l’ID de ton Developer Product (dans ton projet Rojo : src/StarterGui/InterfaceObby/Boutique/Liste/BoutonPasserEtape/ScriptBouton.client.luau, que Claude Code peut écrire avec le prompt de l’encadré plus bas) :

-- LocalScript dans le TextButton « BoutonPasserEtape »
-- (StarterGui > InterfaceObby > Boutique > Liste > BoutonPasserEtape)
local MarketplaceService = game:GetService("MarketplaceService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")

local ID_PASSER_ETAPE = 0 -- l'ID de ton Developer Product
local bouton = script.Parent :: TextButton
local remotes = ReplicatedStorage:WaitForChild("Remotes")
local demanderPasserEtape = remotes:WaitForChild("DemanderPasserEtape") :: RemoteEvent

-- Lit le prix réel (régional, réduit ou en test) depuis Roblox
local function afficherPrix()
	local ok, infos = pcall(function()
		return MarketplaceService:GetProductInfoAsync(ID_PASSER_ETAPE, Enum.InfoType.Product)
	end)
	if ok and infos.PriceInRobux then
		bouton.Text = "Passer l'étape (" .. infos.PriceInRobux .. " Robux)"
	else
		bouton.Text = "Passer l'étape" -- mieux vaut aucun prix qu'un prix faux
	end
end

bouton.Activated:Connect(function()
	demanderPasserEtape:FireServer() -- le serveur vérifie puis ouvre la fenêtre d'achat
end)

afficherPrix()

Cosmétique, confort ou pay-to-win ?

On peut classer ce qu’on vend en trois familles :

  • Cosmétique : change l’apparence, pas le jeu (la traînée dorée). Aucun joueur n’est désavantagé s’il ne paie pas.
  • Confort : fait gagner du temps sans écraser les autres (« passer l’étape » dans un obby où l’on ne joue pas les uns contre les autres).
  • Pay-to-win (« payer pour gagner ») : l’argent donne un avantage décisif sur les autres joueurs, par exemple une arme surpuissante dans un jeu de combat.

Les recommandations de Roblox vont dans ce sens : pour les anciens avantages Premium, la documentation conseillait de ne pas donner d’avantage tactique face aux joueurs non payants. Et elle déconseille les minuteurs qu’on paie pour raccourcir, très impopulaires auprès des joueurs.

Les règles de Roblox à respecter

Ces règles viennent de la documentation officielle et des Community Standards. Les enfreindre peut entraîner la modération du jeu.

Présenter honnêtement ses offres

Selon la page officielle « Monetization » (octobre 2026) :

  • une réduction doit être authentique (pas toujours « en promo » au même prix) et équitable (pas limitée à un délai très court pour presser l’achat) ;
  • interdit de prétendre qu’un objet est presque épuisé ou disponible peu de temps si c’est faux ;
  • interdit d’afficher un compte à rebours inexact ou qui redémarre pour le même objet ;
  • les joueurs ne doivent jamais être trompés, embrouillés ou poussés à acheter ce qu’ils ne voulaient pas.

Roblox donne même des exemples de formulations à éviter avec les mineurs : remplace « GET IT NOW » (« Achète-le maintenant ») par « View Item » (« Voir l’objet »), et « LAST CHANCE, ACT NOW » par « See Price » (« Voir le prix »).

Les objets aléatoires payants (loot boxes)

Un objet aléatoire payant est une récompense au hasard obtenue, directement ou indirectement, avec des Robux : tourner une roue, ouvrir un coffre, faire éclore un œuf, mais aussi les potions de chance qui modifient les probabilités. Payer des Robux pour acheter des gemmes qu’on dépense ensuite à la roue compte aussi.

Les règles officielles (octobre 2026) :

  • Afficher toutes les issues possibles et leurs probabilités chiffrées, avant l’achat, en pourcentages dont la somme fait exactement 100 % (un arrondi est permis avec une mention).
  • Si la liste est longue, elle peut être dans une fenêtre ouverte par un bouton portant un mot comme « Info » ou « Détails » : une simple icône (i) ne suffit pas.
  • Les objets qui modifient les chances (potion de chance, canne à pêche magique) doivent expliquer chiffres à l’appui leur effet, et les probabilités affichées doivent se mettre à jour quand ils sont actifs.
  • Une récompense aléatoire gratuite (trouver une clé dans le jeu pour ouvrir un coffre) n’exige pas d’afficher les probabilités.

PolicyService : obligatoire

Selon les pays et l’âge, certains joueurs n’ont pas le droit d’utiliser des objets aléatoires payants. Roblox fournit PolicyService:GetPolicyInfoForPlayerAsync(player), et sa documentation précise que tu dois l’intégrer. Le champ ArePaidRandomItemsRestricted vaut true pour les joueurs concernés. Pour eux, tu dois appliquer une solution officielle : chemin gratuit pour obtenir l’objet, ordre des récompenses fixé et annoncé, vente directe de l’objet, retrait de l’offre, message d’indisponibilité, ou éloignement de la zone concernée.

-- Script (côté serveur) dans ServerScriptService, nommé « Politiques »
-- Exemple si ton jeu proposait un coffre payant (l'Obby des Nuages n'en a pas)
local PolicyService = game:GetService("PolicyService")
local Players = game:GetService("Players")

Players.PlayerAdded:Connect(function(player)
	local ok, politique = pcall(function()
		return PolicyService:GetPolicyInfoForPlayerAsync(player)
	end)
	-- En cas d'erreur, on choisit l'option la plus prudente : pas de coffre payant
	local autorise = ok and politique.ArePaidRandomItemsRestricted == false
	player:SetAttribute("CoffresPayantsAutorises", autorise)
	-- Le serveur doit AUSSI refuser l'achat si l'attribut est faux (module 4)
end)

Le même service indique aussi si un joueur peut échanger des objets payants (IsPaidItemTradingAllowed), voir des publicités immersives (AreAdsAllowed) ou acheter un abonnement (IsEligibleToPurchaseSubscription, vu à la leçon 4).

La checklist éthique de ta boutique

Avant de publier une offre, pose-toi ces questions :

  1. Le joueur comprend-il exactement ce qu’il achète, pour combien, et pour combien de temps ?
  2. Le prix affiché est-il lu depuis Roblox ?
  3. Un joueur qui ne paie jamais peut-il quand même finir le jeu et s’amuser ?
  4. Mes promotions sont-elles vraies (prix, durée, stock) ?
  5. Mes textes évitent-ils la pression (« DERNIÈRE CHANCE ! ») ?
  6. Si j’ai du hasard payant : probabilités affichées avant l’achat et PolicyService intégré ?

Ce qu’il faut retenir

  • Un prix se justifie par une valeur claire ; propose une gamme de prix plutôt qu’un seul niveau.
  • Managed Pricing regroupe prix régionaux (30 à 100 % du prix par défaut) et tests de prix, ces derniers demandant en général au moins 60 000 transactions sur 30 jours.
  • Lis toujours les prix avec GetProductInfoAsync pour afficher le prix réel.
  • Interdits : fausses promotions, fausse rareté, comptes à rebours trompeurs, pression sur les joueurs.
  • Objets aléatoires payants : probabilités en pourcentage avant l’achat et intégration obligatoire de PolicyService (ArePaidRandomItemsRestricted).

Sources et pour aller plus loin

Quiz : vérifie tes acquis

6 questions · réussite à partir de 70 % · valide chaque réponse pour voir l’explication

  1. Question 1Vrai ou fauxAfficher « PROMO -50 % » sur un objet qui est en réalité toujours vendu à ce prix est autorisé, tant que le prix est correct.
  2. Question 2QCMTon jeu vend des œufs mystère contre une monnaie achetable avec des Robux. Que dois-tu faire ? (plusieurs réponses possibles)

    Plusieurs réponses possibles : coche toutes les bonnes.

  3. Question 3QCMPourquoi la plupart des petits jeux ne peuvent-ils pas utiliser l’optimisation des prix (price optimization) de Roblox ?
  4. Question 4Trouve le bugCe script doit afficher le coffre payant uniquement aux joueurs autorisés. Où est le bug ?
    local PolicyService = game:GetService("PolicyService")
    local Players = game:GetService("Players")
    
    Players.PlayerAdded:Connect(function(player)
    	local ok, politique = pcall(function()
    		return PolicyService:GetPolicyInfoForPlayerAsync(player)
    	end)
    	local autorise = ok and politique.ArePaidRandomItemsRestricted == true
    	player:SetAttribute("CoffresPayantsAutorises", autorise)
    end)
  5. Question 5Vrai ou fauxUn compte à rebours « Offre spéciale, plus que 10 minutes ! » qui recommence à zéro à chaque connexion est une technique autorisée pour encourager les achats.
  6. Question 6Améliore ce promptTu demandes à Claude Code le bouton « Passer l’étape » de la boutique. Quelle version du prompt respecte à la fois la technique et l’éthique de cette leçon ?
    Le prompt de départ
    fais un bouton pour vendre passer l'étape qui donne envie d'acheter

    Choisis la meilleure version de ce prompt.