Jeune et moins jeune développeur d'AS3, peut-être compilez-vous des animations Flash depuis votre Linux en utilisant la méthode de Tonton Neamar.
Si vous avez décidé d'arrondir vos fins de mois en utilisant Mochiads et son système de leaderboards, vous pourriez être confronté à un petit problème blasant mais simple à corriger.
Petit problème, car sa résolution tient en quelques lignes.
Blasant, parce que le message d'erreur n'aide absolument pas à comprendre l'origine du problème.

Tout d'abord, le problème tel qu'il peut vous tomber dessus :

TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.
at mochi.as3::MochiServices$/stayOnTop()
at mochi.as3::MochiScores$/showLeaderboard()

Il faut reconnaitre que l'API fournie par Mochimedia est concise et efficace... à condition de savoir s'en servir. Le code par défaut fonctionne peut-être pour les heureux possesseurs de l'IDE d'Adobe, mais pour ceux qui utilisent le compilateur AS3 de Flex il faut louvoyer entre les nids de poule pour afficher ces satanées publicités et panneau de meilleurs scores.

La définition du problème tient en deux mots : objet dynamique. Pour fonctionner, les objets de Mochi doivent être placés dans un objet d'affichage dynamique, ce qui n'est pas le cas de la majorité des classes (et de Sprite en particulier).

Pour la publicité, le message d'erreur est assez explicite et on pense rapidement à créer un MovieClip et à le passer dans le paramètre clip :

var Pub:MovieClip = new MovieClip();
addChild(Pub);
MochiAd.showInterLevelAd( { clip:Pub, id:"XXX", res:"800x600", ad_started:new Function(), ad_finished: startGame } );

Dans l'ordre : fournir le conteneur (un objet dynamique forcément, un MovieClip fait l'affaire mais vous pouvez aussi créer une sous classe héritant de Sprite avec l'attribut dynamic pour profiter des fonctions de Sprite), l'ID du jeu (normal, c'est documenté chez mochi), la fonction à appeler quand l'afifchage de la pub commence (ici, je ne m'en sers pas et je mets donc un objet inutile) et la fonction à appeler qui reprend le contrôle une fois la pub terminée (startGame dans mon cas). Ces lignes viennent assez facilement en lisant les messages d'erreur renvoyés par Mochi, je ne m'attarderai pas dessus.

Ce qui m'importe ici, c'est l'erreur pour les leaderboards, ces systèmes que vous connaissez sûrement qui affichent les meilleurs scores d'un jeu (vous trouverez un exemple ici). En effet, contrairement à la publicité l'erreur est beaucoup moins claire !
mochi.as3::MochiServices$/stayOnTop() at mochi.as3::MochiScores$/showLeaderboard()
Et pourtant, c'est exactement le même problème que pour la publicité : il faut fournir un cadre dynamique.

Remontez dans votre code à la connexion aux services de mochi, et ajoutez en deuxième paramètre un objet dynamique :

var Score:MovieClip = new MovieClip();
addChild(Score);
MochiServices.connect("XXX", Score);

//Et pour l'afifchage des highscores :
MochiScores.showLeaderboard( { boardID: boardID, onClose: gotoMenu, res:"800x600" } );

//Et pour l'affichage des highscores en enregistrant un nouveau score dans le tableau :
var score:int=8888;
MochiScores.showLeaderboard( { boardID: boardID, onClose: gotoMenu, score:score, res:"800x600" } );

Bon code à vous !