Comment modifier un fichier python sur BF2142.

Comment modifier un fichier python sur BF2142. - Python - Programmation

Marsh Posté le 25-10-2009 à 02:29:03    

:??:  
 
Bonjour,
 
Voila je tiens un serveur sur BF2142 et je souhaiterais qu'il soit ranked sans devoir payer eliot ness.
J'ai trouver ce fichier, ce pendant je ne comprends pas grand chose à ce type de language.
Je voudrais par exemple qu'a 50 points le joueur passe au rang n°1, à 150 au rang n°2....
Je suppose que je dois changer le dernier paragraphe, non?
Je pense également que je dois "initialiser" ce fichier, il a un fichier nommé init.py qui est vide, je pensais mettre :
 
import rank
 
rank.init()
 
Mais bon je suis un gros noob en cette matière.
Merci pour vos éclaircissements!
 
# rank upgrades
 
import host
import bf2.PlayerManager
import bf2.Timer
from bf2.stats.constants import *
from bf2 import g_debug
 
 
 
def init():
 # Events
 
 if bf2.serverSettings.getUseGlobalRank():
   host.registerHandler('PlayerConnect', onPlayerConnect, 1)
  host.registerHandler('PlayerStatsResponse', onStatsResponse, 1)
 
 host.registerGameStatusHandler(onGameStatusChanged)
 
 # Connect already connected players if reinitializing
 for p in bf2.playerManager.getPlayers():
  onPlayerConnect(p)
 
 if g_debug: print "Rank module initialized"
 
   
 
def onGameStatusChanged(status):
 if status == bf2.GameStatus.Playing:
  pass
 else:
  if g_debug: print "Destroyed timer"
 
 
 
def onUpdate(data):
 for p in bf2.playerManager.getPlayers():
  if p.isAlive():
   checkRank(p)
 
 
 
### Event hooks
 
def onPlayerConnect(player):
 #id = player.index
 if player.score.rank == -1:
  player.score.rank = 0
 
 # request rank
 if bf2.serverSettings.getUseGlobalRank():
  if player.getProfileId() > 2000:
   success = host.pers_plrRequestStats(player.index, 1, "&mode=base", 0)
  else:
   if g_debug: print "Player %d had no profile id, can't request rank" % player.index
   
 
 if g_debug: print "Added player %d to rank checking" % (player.index)
 
 
 
def onStatsResponse(succeeded, player, stats):
 if player == None:
  playerIndex = "unknown"
 else:
  playerIndex = player.index
 
 if not "rnk" in stats:
  if g_debug: print "rank not found, aborting"
  return
 
 if g_debug: print "Rank received for player ", playerIndex, ":", host.pers_getStatsKeyVal("rnk", player.getProfileId())
 if not player: return
 
 
 value = int( host.pers_getStatsKeyVal("rnk", player.getProfileId()) )
 if g_debug: print "Player",player.index,"Rank:", value
 player.score.rank = value
 player.stats.rank = value


Message édité par LeNarvalo le 25-10-2009 à 12:24:06
Reply

Marsh Posté le 25-10-2009 à 02:29:03   

Reply

Marsh Posté le 25-10-2009 à 02:44:09    

1/ Change le titre
2/ utilises la balise [code=python]
3/ tu veux tricher en fait ?


---------------
Nos estans firs di nosse pitite patreye...
Reply

Marsh Posté le 25-10-2009 à 12:30:19    

Non je veux pas vraiment tricher je veux juste que ce soit mon ordi qui héberge les rangs des joueurs et donc éviter de payer eliot ness qui ne fait que profiter du système.
Je connais un modder qui essaye en ce moment de faire cette modif, je crois qu'il est en passe de réussir.
Je pense pas que ce soit illégale?
 
Pour information ce n'est que la démo du jeu, plusieurs servers sont déjà ranked sur la démo alors que c'est censer être impossible.
 
Cdt,

Reply

Marsh Posté le 20-05-2010 à 21:45:08    

Bonsoir,
Ben j'ai le script si quelqu'un le veut, contactez moi.
Au revoir.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed