Jump to content
×
×
  • Create New...

Search the Community

Showing results for tags 'question'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • inshare
    • Forum Announcements
    • inshare coffee
    • Suggestions
  • Jeux Vidéos
    • Discussions
    • Minecraft
    • Grand Theft Auto
    • Call of Duty
    • Rocket League
    • Fortnite
    • Apex Legends
    • Jeux de simulation
    • MMORPG
    • Autres jeux
  • Développement
    • Discussions
    • Tutorials
    • Release
    • Discord
    • Team Building
    • Services
    • Development support
  • Graphisme
    • Discussions
    • Tutoriels
    • Services
  • Plateforme
    • Informatique
    • Consoles
    • Smartphone
  • Génération Développement's Template - Cms
  • Génération Développement's Information
  • Génération Développement's Demande de Aide
  • Génération Développement's Script Habbo & Hors Habbo
  • Génération Développement's Cours de Développement
  • Génération Développement's Graphisme & Graphiste
  • La famille inshare's Sujets

Calendars

There are no results to display.

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Localisé:


Interêts


How did you hear about the forum?


Phrase perso


Je suis


Facebook


Twitter


Instagram


Snapchat


Skype


Youtube


Discord


Site web


Playstation


Xbox


Steam


Origin

  1. Bonjour à tous !j’espère en ce beau week vous vous amusez et que la reprise était bonne.Alors aujourd’hui, je vous écris ce sujet afin d’avoir quelques réponse à ma question.J’ai un projet en tête depuis quelques temps maintenant, c’est de faire un réseau social ou un site de rencontre.Tout le monde me dit, non c’est pas tellement bien comme projet, il y a des énormes concurrences tout ça.Certes il y a de la concurrence, mais dans la vie faut ce donner les moyens de les détrônés ( chose sûrement infaisable)Fin bref, donc du coup c’était l’un des deux.Bien sûr je vais apporter des choses nouvelles si je parviens à crée ce projet ( réseau social ou rencontre ) afin d’être au dessus de certain site.j’aimerais avoir vos point de vue, j’accepte tout les critiques…Ce projet me tiens énormément à cœur, je voulais vos avis pour être sûr que le projet est faisable et que les autres avait tord.Si des personnes par hasard serait chaud pour rejoindre le projet, je vous laisse me contacter en privée.A vos claviersBonne journée/soirée à tous
  2. Bien le bonjour à tous, je voudrais me lancer dans une nouvelle aventure, créer un rétro habbo. J'ai déjà tout ce qu'il faut sauf le client... Je suis donc à la recherche d'un développeur ou bien d'une personne qui s'y connait pour me mettre un client nitro et pourquoi pas mettre l'application aussi. Si travail sérieux, le tout sera rémunéré. Merci à vous Discord : a2stro#2084
  3. Bonjour, peut importe le cms habbo que je met cela m'affiche toujours une page blanche...
  4. Salutations! Nouvelle catégorie, autant y commencé! Quel système d'exploitation utilisez-vous ? Et pourquoi? Personnellement, j'utilise actuellement Linux Mint 19.3 édition cinnamon. Je trouves assez jolie quand on le modifie, simple d'utilisation léger et fluide. Je n'ai pas vraiment besoin de plus pour l'utilisation que je fais. Puis les logiciels windows pour le peu qu'il me faut, ils sont compatible avec Wine. (Application linux permettant de faire fonctionné quelques applications Windows).
  5. Bonsoir a tous! Etant actuellement en pleine emploie saisonnier, Je voudrait votre avis sur quoi prendre entre la ps5 et la xbox serie x. Sachant que sa sera pour fifa et surtout compétition fortnite.
  6. Bonjour la communauté InShare. Aujourd’hui, j’aimerais poser quelques questions au sujet du refund. Mais qu’est ce que le Refund ? le refund touche tout ce qui est le remboursement sur les sites internet, en quelques sortes une arnaque... ( à ne pas reproduire hihi) Donc voilà je suis débutant dans ce domaine, j’aimerais voir quelques personnes afin de peut être m’aidez + afin de réussir à 100% mais refund. Pour le moment je suis à 10/10 donc 100% sur mes remboursements, plutôt pas mal n’est ce pas ? J’ai énormément d’Ebook tout ça, j’ai juste peur d’échouer sur de grosse sommes, j’ai déjà rembourser pour 1200€ sur Amazon, mais on ne sait jamais. par hasard, si il y aurait des personnes cool pour m’aidez bien sûr je rémunère, pour éviter ce genre de chose c’est pas contre ! Pour me contacter : Sois mp mon discord : Trashr#8998 ( ça serait cool de me laisser un message pour me dire qui vous êtes car j’ai + de 100 demande d’ami ) ou en dessous de l’annonce ! ps : je fais tout ça pour aidez les personnes qui on pas spécialement d’argent et qui souhaiterais s’offrir des choses et que malheureusement, pas assez d’argent pour la fin du mois. je prendrais une commission bien sur, qui ne sera pas énormément. fin bref pas pour maintenant sur ce. Cordialement, Fly.
  7. Hello, Un petit sujet pour en savoir plus sur vous! Quel casque / écouteur avez-vous ? Pour ma part, en casque pour jouer, j'ai le Turtle Beach Elite Atlas Aero. Et pour ce qui est d'écouter de la musique, regarder des vidéos... j'utilise mes écouteurs JBL T110bt qui sont toujours au meilleur de leur forme après 2 ans d'utilisation! Et quand je n'ai plus de batterie, j'utilise tout simplement les écouteurs basique samsung.
  8. Bonjour, Je ne suis pas futé en javascript, et une petite aide ne serait pas de refus. Alors voilà : un système de level existe sur mon serveur agario, je souhaiterai qu'il soit afficher devant le pseudo d'un joueur, par exemple: [LVL10]Kas A savoir, que lorsqu'un joueur est gradé, on peut y voir afficher [ADMIN] ou encore [MODER] (src\packet\ChatMessage.js) function ChatMessage(sender, message) { this.sender = sender; this.message = message; } module.exports = ChatMessage; ChatMessage.prototype.build = function (protocol) { var text = this.message; if (text == null) text = ""; var name = "SERVER"; var color = { 'r': 0x9B, 'g': 0x9B, 'b': 0x9B }; if (this.sender != null) { name = this.sender._name; if (name == null || name.length == 0) { if (this.sender.cells.length > 0) name = "An unnamed cell"; else name = "Spectator"; } if (this.sender.cells.length > 0) { color = this.sender.cells[0].color; } } var UserRoleEnum = require("../enum/UserRoleEnum"); var BinaryWriter = require("./BinaryWriter"); var writer = new BinaryWriter(); writer.writeUInt8(0x63); // message id (decimal 99) // flags var flags = 0; if (this.sender == null) flags = 0x80; // server message else if (this.sender.userRole == UserRoleEnum.ADMIN) flags = 0x40; // admin message else if (this.sender.userRole == UserRoleEnum.MODER) flags = 0x20; // moder message writer.writeUInt8(flags); writer.writeUInt8(color.r >> 0); writer.writeUInt8(color.g >> 0); writer.writeUInt8(color.b >> 0); if (protocol < 6) { writer.writeStringZeroUnicode(name); writer.writeStringZeroUnicode(text); } else { writer.writeStringZeroUtf8(name); writer.writeStringZeroUtf8(text); } return writer.toBuffer(); }; et lorsque je suis connecté grâce à la commande '/account status', il est affiché le niveau actuel du joueur sur 'src\modules\PlayerCommand.js' (account:) var Logger = require('./Logger'); var UserRoleEnum = require("../enum/UserRoleEnum"); function PlayerCommand(gameServer, playerTracker) { this.gameServer = gameServer; this.playerTracker = playerTracker; this.roleList = []; this.SCInterval; } module.exports = PlayerCommand; PlayerCommand.prototype.writeLine = function (text) { this.gameServer.sendChatMessage(null, this.playerTracker, text); }; PlayerCommand.prototype.skinchanger = function () { var self = this; this.SCInterval = setInterval(function() { var rSkin = self.playerTracker.socket.packetHandler.getRandomSkin(); self.playerTracker.setSkin(rSkin); for (var i in self.playerTracker.cells) { var cell = self.playerTracker.cells[i]; var Player = require('../entity/PlayerCell'); var newCell = new Player(self.gameServer, self.playerTracker, cell.position, cell._size); self.gameServer.removeNode(cell); self.gameServer.addNode(newCell); } }, 10000) // Every 10 seconds } PlayerCommand.prototype.executeCommandLine = function(commandLine) { if (!commandLine) return; if (!this.parsePluginCommands(commandLine)) return; // Splits the string var args = commandLine.split(" "); // Process the first string value var first = args[0].toLowerCase(); // Get command function var execute = playerCommands[first]; if (typeof execute != 'undefined') { execute.bind(this)(args); } else { this.writeLine("ERROR: Unknown command, type /help for command list"); } }; PlayerCommand.prototype.parsePluginCommands = function(str) { // Splits the string var args = str.split(" "); // Process the first string value var first = args[0].toLowerCase(); // Get command function var execute = this.gameServer.PluginHandler.playerCommands[first]; if (typeof execute != 'undefined') { execute(this, args, this.playerTracker, this.gameServer); return false; } else return true; } PlayerCommand.prototype.userLogin = function (username, password) { if (!username || !password) return null; for (var i = 0; i < this.gameServer.userList.length; i++) { var user = this.gameServer.userList[i]; if (user.username != username) continue; if (user.password != password) continue; return user; } return null; }; PlayerCommand.prototype.createAccount = function (username, password) { var fs = require('fs'); if (!username || !password) return null; for (var i in this.gameServer.userList) { var user = this.gameServer.userList[i]; if (user.username == username) { this.writeLine("That User Name is already taken!"); return false; } } var user = {username: username, password: password, role: 1, name: "Local User", level: 0, exp: 0}; this.gameServer.userList.push(user); json = JSON.stringify(this.gameServer.userList); var file = '../src/enum/UserRoles.json'; fs.writeFileSync(file, json, 'utf-8'); this.gameServer.loadFiles(); return true; }; var playerCommands = { help: function (args) { var page = parseInt(args[1]); if (this.playerTracker.userRole == UserRoleEnum.ADMIN || this.playerTracker.userRole == UserRoleEnum.MODER) { if (isNaN(page)) { this.writeLine("Please Enter a Page Number!"); return; } if (page == 1) { // 10 Fit per Page this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); this.writeLine("/skin %shark - change skin"); this.writeLine("/kill - self kill"); this.writeLine("/help [page #] - this command list"); this.writeLine("/id - Gets your playerID"); this.writeLine("/mass - gives mass to yourself or to other players"); this.writeLine("/merge - Instantly Recombines all of your cells or other players cells"); this.writeLine("/rec - Toggles rec mode for you or for other players - MUST BE ADMIN"); this.writeLine("/spawnmass - gives yourself or other players spawnmass - MUST BE ADMIN"); this.writeLine("/minion - gives yourself or other players minions"); this.writeLine("/minion remove - removes all of your minions or other players minions"); this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); this.writeLine("Showing Page 1 of 3."); } else if (page == 2) { this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); this.writeLine("/userrole - Allows you to give User Role to a player ID - MUST BE ADMIN"); this.writeLine("/userrole list - Lists all the people you have given a Role - MUST BE ADMIN"); this.writeLine("/kick - Kicks a Player ID to make them lose their Temporarily Role"); this.writeLine("/addbot - Adds Bots to the Server - MUST BE ADMIN"); this.writeLine("/change - Allows you to Temporarily change the config of the Server! - MUST BE ADMIN"); this.writeLine("/reloadconfig - Reloads the config of the Server to the gameServer.ini file - MUST BE ADMIN"); this.writeLine("/shutdown - SHUTDOWNS THE SERVER - MUST BE ADMIN"); this.writeLine("/restart - RESTARTS THE SERVER - MUST BE ADMIN"); this.writeLine("/status - Shows Status of the Server"); this.writeLine("/gamemode - Allows you to change the Game Mode of the Server. - MUST BE ADMIN"); this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); this.writeLine("Showing Page 2 of 3."); } else if (page == 3) { this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); this.writeLine("/popsplit - Gives you the ability to do perfect popsplits (within reason)"); this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); } } else { this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); this.writeLine("/skin %shark - change skin"); this.writeLine("/kill - self kill"); this.writeLine("/help - this command list"); this.writeLine("/id - Gets your playerID"); this.writeLine("/account - Allows you to manage your account"); this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); } }, id: function (args) { this.writeLine("Your PlayerID is " + this.playerTracker.pID); }, skin: function (args) { var skinName = ""; if (args[1]) skinName = args[1]; if (skinName == "") { this.playerTracker.setSkin(skinName); this.writeLine("Your skin was removed"); } else if (skinName == "c" || skinName == "changer") { this.playerTracker.skinchanger = !this.playerTracker.skinchanger; if (this.playerTracker.skinchanger) { this.writeLine("You now have a skin changer!"); this.skinchanger(); } else { this.writeLine("You no longer have a skin changer"); clearInterval(this.SCInterval); } } else { this.playerTracker.setSkin(skinName); for (var i in this.playerTracker.cells) { var cell = this.playerTracker.cells[i]; var Player = require('../entity/PlayerCell'); var newCell = new Player(this.gameServer, this.playerTracker, cell.position, cell._size); this.gameServer.removeNode(cell); this.gameServer.addNode(newCell); } this.writeLine("Your skin set to " + skinName); } }, account: function (args) { var whattodo = args[1]; if (args[1] == null) { this.writeLine("Do /account stats or /account status to get your account level and spawnmass! - MUST BE LOGIN IN FIRST!"); this.writeLine("Do /account create [username] [password] to create a account! - MUST NOT BE LOGINED IN!"); return; } if (args[1] == "create" && this.playerTracker.userRole == UserRoleEnum.GUEST) { // Creating an account try { var username = args[2].trim(); } catch (error) { this.writeLine("ERROR: Missing Username Argument!"); return; } try { var password = args[3].trim(); } catch (error) { this.writeLine("ERROR: Missing Password Argument!"); return; } var test = this.createAccount(username, password); if (test) { this.writeLine("Successfully Created your Account!"); this.writeLine("Do /login [User Name] [Password] to login in!"); } } else if (args[1] == "status" || args[1] == "stats" && this.playerTracker.userRole != UserRoleEnum.GUEST) { this.writeLine("Level: " + this.playerTracker.level); this.writeLine("Exp: " + parseInt(this.playerTracker.exp).toFixed()) var exp_to_next_level; if (this.playerTracker.levelexps[this.playerTracker.level + 1] - this.playerTracker.exp < 0 && this.playerTracker.level < 99) { exp_to_next_level = "You can level up. Just respawn!"; } else if (this.playerTracker.level > 100) { exp_to_next_level = "You have achieved the highest level"; } else if (this.playerTracker.level == 100) { exp_to_next_level = "You only have one level left!"; } else { exp_to_next_level = (parseInt(this.playerTracker.levelexps[this.playerTracker.level + 1] - this.playerTracker.exp)).toFixed() } this.writeLine("Exp to next level: " + exp_to_next_level); } }, kill: function (args) { if (!this.playerTracker.cells.length) { this.writeLine("You cannot kill yourself, because you're still not joined to the game!"); return; } while (this.playerTracker.cells.length) { var cell = this.playerTracker.cells[0]; this.gameServer.removeNode(cell); // replace with food var food = require('../entity/Food'); food = new food(this.gameServer, null, cell.position, cell._size); food.setColor(cell.color); this.gameServer.addNode(food); } this.writeLine("You killed yourself"); }, mass: function (args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN && this.playerTracker.userRole != UserRoleEnum.MODER) { this.writeLine("ERROR: access denied!"); return; } var mass = parseInt(args[1]); var id = args[2]; var size = Math.sqrt(mass * 100); if (isNaN(mass)) { this.writeLine("ERROR: missing mass argument!"); return; } if (id == null) { this.writeLine("Warn: missing ID arguments. This will change your mass."); for (var i in this.playerTracker.cells) { this.playerTracker.cells[i].setSize(size); } this.writeLine("Set mass of " + this.playerTracker._name + " to " + size * size / 100); } else { for (var i in this.gameServer.clients) { var client = this.gameServer.clients[i].playerTracker; if (client.accountusername == id || client.pID.toString() == id) { for (var j in client.cells) { client.cells[j].setSize(size); } this.writeLine("Set mass of " + client._name + " to " + size * size / 100); var text = this.playerTracker._name + " changed your mass to " + size * size / 100; this.gameServer.sendChatMessage(null, client, text); } } } }, spawnmass: function (args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } var mass = parseInt(args[1]); var id = args[2]; var size = Math.sqrt(mass * 100); if (isNaN(mass)) { this.writeLine("ERROR: missing mass argument!"); return; } if (id == null) { this.playerTracker.spawnmass = size; this.writeLine("Warn: missing ID arguments. This will change your spawnmass."); this.writeLine("Set spawnmass of " + this.playerTracker._name + " to " + size * size / 100); } else { for (var i in this.gameServer.clients) { var client = this.gameServer.clients[i].playerTracker; if (client.accountusername == id || client.pID.toString() == id) { client.spawnmass = size; this.writeLine("Set spawnmass of " + client._name + " to " + size * size / 100); var text = this.playerTracker._name + " changed your spawn mass to " + size * size / 100; this.gameServer.sendChatMessage(null, client, text); } } } }, minion: function(args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN && this.playerTracker.userRole != UserRoleEnum.MODER) { this.writeLine("ERROR: access denied!"); return; } var add = args[1]; var id = args[2]; var player = this.playerTracker; /** For you **/ if (id == null) { this.writeLine("Warn: missing ID arguments. This will give you minions."); // Remove minions if (player.minionControl == true && add == "remove") { player.minionControl = false; player.miQ = 0; this.writeLine("Succesfully removed minions for " + player._name); // Add minions } else { player.minionControl = true; // Add minions for self if (isNaN(parseInt(add))) add = 1; for (var i = 0; i < add; i++) { this.gameServer.bots.addMinion(player); } this.writeLine("Added " + add + " minions for " + player._name); } } else { /** For others **/ for (var i in this.gameServer.clients) { var client = this.gameServer.clients[i].playerTracker; if (client.accountusername == id || client.pID.toString() == id) { // Remove minions if (client.minionControl == true) { client.minionControl = false; client.miQ = 0; this.writeLine("Succesfully removed minions for " + client._name); var text = this.playerTracker._name + " removed all off your minions."; this.gameServer.sendChatMessage(null, client, text); // Add minions } else { client.minionControl = true; // Add minions for client if (isNaN(add)) add = 1; for (var i = 0; i < add; i++) { this.gameServer.bots.addMinion(client); } this.writeLine("Added " + add + " minions for " + client._name); var text = this.playerTracker._name + " gave you " + add + " minions."; this.gameServer.sendChatMessage(null, client, text); } } } } }, userrole: function(args) { // Temporarily changes the User Role of a player until that player leaves the server. if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied"); return; } var id = args[1]; var role = args[2]; if (id == null) { this.writeLine("Please specify a valid player ID or User Name!"); return; } else if (id == "list") { if (!this.roleList.length) { this.writeLine("You have not given anyone a Role!"); return; } this.writeLine(" ID | SCORE | NICK"); for (var i in this.roleList) { var client = this.roleList[i]; var id = client.accountusername; var nick = client._name; var score = Math.round(client._score); this.writeLine(id + " " + score + " " + nick); } return; } else { if (role != "moder" && role != "user" && role != "guest" || role == null) { this.writeLine("Please specify a valid Role!"); return; } if (this.playerTracker.pID.toString() == id || this.playerTracker.accountusername == id) { this.writeLine("You cannot change your own Role!"); return; } for (var i in this.gameServer.clients) { var client = this.gameServer.clients[i].playerTracker; if (client.pID.toString() == id || client.accountusername == id) { if (client.userRole == UserRoleEnum.ADMIN) { this.writeLine("You cannot change Admins Roles!"); return; } if (role == "moder") { client.userRole = UserRoleEnum.MODER; this.writeLine("Successfully changed " + client._name + "'s Role to Moder"); this.gameServer.sendChatMessage(null, client, "You have been temporarily changed to MODER."); // notify this.roleList.push(client); } else if (role == "user") { client.userRole = UserRoleEnum.USER; this.writeLine("Successfully changed " + client._name + "'s Role to User!"); this.gameServer.sendChatMessage(null, client, "You have been temporarily changed to USER."); // notify this.roleList.push(client); } else { client.userRole = UserRoleEnum.GUEST; this.writeLine("Successfully changed " + client._name + "'s Role to Guest!"); this.gameServer.sendChatMessage(null, client, "You have been temporarily changed to GUEST."); // notify this.roleList.push(client); } } } } }, kick: function(args) { var id = args[1]; if (this.playerTracker.userRole != UserRoleEnum.ADMIN && this.playerTracker.userRole != UserRoleEnum.MODER) { this.writeLine("ERROR: acces denied!"); return; } if (id == null) { this.writeLine("Please specify a valid player ID or User Name!"); return; } // kick player var count = 0; this.gameServer.clients.forEach(function (socket) { if (socket.isConnected === false) return; if (id !== 0 && socket.playerTracker.pID.toString() != id && socket.playerTracker.accountusername != id) return; if (socket.playerTracker.userRole == UserRoleEnum.ADMIN) { this.writeLine("You cannot kick a ADMIN in game!"); return; } // remove player cells for (var j = 0; j < socket.playerTracker.cells.length; j++) { this.gameServer.removeNode(socket.playerTracker.cells[0]); count++; } // disconnect socket.close(1000, "Kicked from server"); var name = socket.playerTracker._name; this.writeLine("Successfully kicked " + name); count++; }, this); if (count) return; if (!id) this.writeLine("Warn: No players to kick!"); else this.writeLine("Warn: Player with ID " + id + " not found!"); }, addbot: function(args) { var add = parseInt(args[1]); if (isNaN(add)) add = 1; if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } for (var i = 0; i < add; i++) { this.gameServer.bots.addBot(); } Logger.warn(this.playerTracker.socket.remoteAddress + " ADDED " + add + " BOTS"); this.writeLine("Added " + add + " Bots"); }, status: function(args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN && this.playerTracker.userRole != UserRoleEnum.MODER) { this.writeLine("ERROR: access denied!"); return; } // Get amount of humans/bots var humans = 0, bots = 0; for (var i = 0; i < this.gameServer.clients.length; i++) { if ('_socket' in this.gameServer.clients[i]) { humans++; } else { bots++; } } var ini = require('./ini.js'); this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); this.writeLine("Connected players: " + this.gameServer.clients.length + "/" + this.gameServer.config.serverMaxConnections); this.writeLine("Players: " + humans + " - Bots: " + bots); this.writeLine("Server has been running for " + Math.floor(process.uptime() / 60) + " minutes"); this.writeLine("Current memory usage: " + Math.round(process.memoryUsage().heapUsed / 1048576 * 10) / 10 + "/" + Math.round(process.memoryUsage().heapTotal / 1048576 * 10) / 10 + " mb"); this.writeLine("Current game mode: " + this.gameServer.gameMode.name); this.writeLine("Current update time: " + this.gameServer.updateTimeAvg.toFixed(3) + " [ms] (" + ini.getLagMessage(this.gameServer.updateTimeAvg) + ")"); this.writeLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); }, merge: function(args) { // Validation checks if (this.playerTracker.userRole != UserRoleEnum.ADMIN && this.playerTracker.userRole != UserRoleEnum.MODER) { this.writeLine("ERROR: access denied!"); return; } var id = args[1]; if (id == null) { this.writeLine("Warn: Missing ID arguments. This will merge you."); if (this.playerTracker.cells.length == 1) { this.writeLine("You already have one cell!"); return; } this.playerTracker.mergeOverride = !this.playerTracker.mergeOverride; if (this.playerTracker.mergeOverride) this.writeLine(this.playerTracker._name + " is now force mergeing"); else this.writeLine(this.playerTracker._name + " isn't force merging anymore"); } else { // Find client with same ID as player entered for (var i = 0; i < this.gameServer.clients.length; i++) { if (id == this.gameServer.clients[i].playerTracker.pID.toString() || id == this.gameServer.clients[i].playerTracker.accountusername) { var client = this.gameServer.clients[i].playerTracker; if (client.cells.length == 1) { this.writeLine("Client already has one cell!"); return; } // Set client's merge override client.mergeOverride = !client.mergeOverride; if (client.mergeOverride) { this.writeLine(client._name + " is now force merging"); var text = this.playerTracker._name + " Caused you to merge!"; this.gameServer.sendChatMessage(null, client, text); // notify } else { this.writeLine(client._name + " isn't force merging anymore"); var text = this.playerTracker._name + " Stopped your mergeing" this.gameServer.sendChatMessage(null, client, text); // notify } } } } }, gamemode: function (args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } var mode = parseInt(args[1]); if (isNaN(mode)) { this.writeLine("Invalid Game Mode Selected!"); return; } if (mode > 8 || mode < 0) { this.writeLine("Invalid Game Mode Selected!"); return; } var GameMode = require('../Gamemodes'); var Command = require('./CommandList'); var gamemode = GameMode.get(mode); // Reset this.gameServer.gameMode.packetLB = gamemode.packetLB; this.gameServer.gameMode.updateLB = gamemode.updateLB; Command.list.reset(this.gameServer, args); this.gameServer.loadFiles(); // Load Config In case Previous Gamemodes changed them this.gameServer.gameMode = gamemode; gamemode.onServerInit(this.gameServer); Command.list.reset(this.gameServer, args); // Just in Case this.writeLine("Successfully Changed Game Mode to: " + this.gameServer.gameMode.name); Logger.warn("GAMEMODE CHANGE FROM " + this.playerTracker.socket.remoteAddress + ":" + this.playerTracker.socket.remotePort + " AS " + this.playerTracker.socket.userAuth); for (var i in this.gameServer.clients) { var client = this.gameServer.clients[i].playerTracker; var text = this.playerTracker._name + " Changed to Game Mode to: " + this.gameServer.gameMode.name; this.gameServer.sendChatMessage(null, client, text); } }, rec: function(args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } var id = args[1]; if (id == null) { this.writeLine("Warn: Missing ID arguments. This will give you rec mode."); this.playerTracker.rec = !this.playerTracker.rec; if (this.playerTracker.rec) this.writeLine(this.playerTracker._name + " is now in rec mode!"); else this.writeLine(this.playerTracker._name + " is no longer in rec mode"); } // set rec for client for (var i in this.gameServer.clients) { var client = this.gameServer.clients[i].PlayerTracker; if (client.pID.toString() == id || client.accountusername == id) { var client = this.gameServer.clients[i].playerTracker; client.rec = !client.rec; if (client.rec) { this.writeLine(client._name + " is now in rec mode!"); var text = this.playerTracker._name + " gave you rec mode!"; this.gameServer.sendChatMessage(null, client, text); // notify } else { this.writeLine(client._name + " is no longer in rec mode"); var text = this.playerTracker._name + " Removed your rec mode"; this.gameServer.sendChatMessage(null, client, text); // notify } } } }, popsplit: function (args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } var id = args[1]; if (id == null) { this.writeLine("Warn: Missing ID arguments. This will give you popsplit mode."); this.playerTracker.perfectpopsplit = !this.playerTracker.perfectpopsplit; if (this.playerTracker.perfectpopsplit) this.writeLine(this.playerTracker._name + " is now in popsplit mode!"); else this.writeLine(this.playerTracker._name + " is no longer in popsplit mode"); } // set popsplit for client for (var i in this.gameServer.clients) { var client = this.gameServer.clients[i].playerTracker; if (client.pID.toString() == id || client.accountusername == id) { client.popsplit = !client.popsplit; if (client.popsplit) { this.writeLine(client._name + " is now in popsplit mode!"); var text = this.playerTracker._name + " gave you the ability to do perfect popsplits!"; this.gameServer.sendChatMessage(null, client, text); // notify } else { this.writeLine(client._name + " is no longer in popsplit mode"); var text = this.playerTracker._name + " Removed your ability to do perfect popsplits!"; this.gameServer.sendChatMessage(null, client, text); // notify } } } }, change: function(args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } if (args.length < 3) { this.writeLine("Invalid command arguments"); return; } var key = args[1]; var value = args[2]; // Check if int/float if (value.indexOf('.') != -1) { value = parseFloat(value); } else { value = parseInt(value); } if (value == null || isNaN(value)) { this.writeLine("Invalid value: " + value); return; } if (!this.gameServer.config.hasOwnProperty(key)) { this.writeLine("Unknown config value: " + key); return; } this.gameServer.config[key] = value; // update/validate this.gameServer.config.playerMinSize = Math.max(32, this.gameServer.config.playerMinSize); Logger.setVerbosity(this.gameServer.config.logVerbosity); Logger.setFileVerbosity(this.gameServer.config.logFileVerbosity); this.writeLine("Set " + key + " = " + this.gameServer.config[key]); Logger.warn("CONFIGURATION CHANGE REQUEST FROM " + this.playerTracker.socket.remoteAddress + " as " + this.playerTracker.userAuth); Logger.info(key + " WAS CHANGED TO " + value); }, reloadconfig: function(args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } this.gameServer.loadFiles(); Logger.warn("CONFIGURATION RELOAD REQUEST FROM " + this.playerTracker.socket.remoteAddress + " as " + this.playerTracker.userAuth); this.writeLine("Configuration was Successfully Reloaded!"); }, login: function (args) { try { var username = args[1].trim(); } catch (error) { this.writeLine("ERROR: you have to type in a username!"); return; } try { var password = args[2].trim(); } catch (error) { this.writeLine("ERROR: You have to type in a password!"); return; } var user = this.userLogin(username, password); if (!user) { this.writeLine("ERROR: login failed!"); return; } var PlayerTracker = require("../PlayerTracker"); var Packet = require("../packet"); PlayerTracker.prototype.joinGame = function(name, skin) { for (var i in this.levelexps) { if (this.levelexps[i + 1] < this.level) continue; if (this.exp > this.levelexps[i] && this.level < 101) { this.level++; this.exp = this.exp - this.levelexps[i]; this.onLevel(); } } if (this.cells.length) return; if (skin) this.setSkin(skin); if (!name) name = "An unnamed cell"; // 4 = Admin 2 = Mod if (this.userRole == UserRoleEnum.ADMIN) name = name + "ᴬᴰᴹᴵᴺ"; else if (this.userRole == UserRoleEnum.MODER) name = name + "ᴹᴼᴰᴱᴿ"; // Perform check to see if someone that isn't admin has a check if (this.userRole != UserRoleEnum.ADMIN && this.userRole != UserRoleEnum.MODER) { for (var i in name) { name = name.replace('ᴬᴰᴹᴵᴺ', ''); name = name.replace('ᴹᴼᴰᴱᴿ', ''); } } this.setName(name); this.spectate = false; this.freeRoam = false; this.spectateTarget = null; var packetHandler = this.socket.packetHandler; if (!this.isMi && this.socket.isConnected != null) { // some old clients don't understand ClearAll message // so we will send update for them if (packetHandler.protocol < 6) { packetHandler.sendPacket(new Packet.UpdateNodes(this, [], [], [], this.clientNodes)); } packetHandler.sendPacket(new Packet.ClearAll()); this.clientNodes = []; this.scramble(); if (this.gameServer.config.serverScrambleLevel < 2) { // no scramble / lightweight scramble packetHandler.sendPacket(new Packet.SetBorder(this, this.gameServer.border)); } else if (this.gameServer.config.serverScrambleLevel == 3) { var ran = 10065536 * Math.random(); // Ruins most known minimaps (no border) var border = { minx: this.gameServer.border.minx - ran, miny: this.gameServer.border.miny - ran, maxx: this.gameServer.border.maxx + ran, maxy: this.gameServer.border.maxy + ran }; packetHandler.sendPacket(new Packet.SetBorder(this, border)); } } this.gameServer.gameMode.onPlayerSpawn(this.gameServer, this); }; PlayerTracker.prototype.checkConnection = function() { // Handle disconnection if (!this.socket.isConnected) { // Wait for playerDisconnectTime var pt = this.gameServer.config.playerDisconnectTime; var dt = (this.gameServer.stepDateTime - this.socket.closeTime) / 1e3; if (pt && (!this.cells.length || dt >= pt)) { // Remove all client cells while (this.cells.length) this.gameServer.removeNode(this.cells[0]); } this.cells = []; this.isRemoved = true; this.mouse = null; this.socket.packetHandler.pressSpace = false; this.socket.packetHandler.pressQ = false; this.socket.packetHandler.pressW = false; return; } // Check timeout if (!this.isCloseRequested && this.gameServer.config.serverTimeout) { dt = (this.gameServer.stepDateTime - this.socket.lastAliveTime) / 1000; if (dt >= this.gameServer.config.serverTimeout) { this.socket.close(1000, "Connection timeout"); this.isCloseRequested = true; } } }; Logger.info(username + " Logined in as " + user.name + " from " + this.playerTracker.socket.remoteAddress + ":" + this.playerTracker.socket.remotePort); this.playerTracker.userRole = user.role; this.playerTracker.userAuth = user.name; this.playerTracker.accountusername = user.username; this.playerTracker.accountpassword = user.password; this.playerTracker.level = user.level; this.playerTracker.exp = user.exp; this.playerTracker.spawnmass = (this.gameServer.config.playerStartSize + (2 * (Math.sqrt(user.level * 100))) < 500) ? this.gameServer.config.playerStartSize + (2 * (Math.sqrt(user.level * 100))) : 500; // 2500 Spawnmass is wayy too much this.writeLine("Login done as \"" + user.username + "\""); return; }, logout: function (args) { if (this.playerTracker.userRole == UserRoleEnum.GUEST) { this.writeLine("ERROR: not logged in"); return; } var username = this.playerTracker.username; Logger.info(username + " Logged out from " + this.playerTracker.socket.remoteAddress + ":" + this.playerTracker.socket.remotePort); this.playerTracker.userRole = UserRoleEnum.GUEST; this.playerTracker.userAuth = null; this.writeLine("Logout done"); }, shutdown: function (args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: access denied!"); return; } Logger.warn("SHUTDOWN REQUEST FROM " + this.playerTracker.socket.remoteAddress + " as " + this.playerTracker.userAuth); process.exit(0); }, restart: function (args) { if (this.playerTracker.userRole != UserRoleEnum.ADMIN) { this.writeLine("ERROR: acces denied!"); return; } Logger.warn("RESTART REQUEST FROM " + this.playerTracker.socket.remoteAddress + " as " + this.playerTracker.userAuth); process.exit(3); } }; Merci pour votre aide
  9. Bonsoir, je rencontre un petit soucis technique avec les permissions d'appart sur mon rétro. Je vous explique le problème : Lorsqu'on accrédite quelqu'un chez soit et qu'il pose un mobilier, celui-ci ne lui appartient plus et ne peut le récupérer. Je souhaiterais que quelqu'un puisse m'aider à résoudre ce problème et faire en sorte que quand un joueur pose un mobis chez un autre joueur, il puisse le récupérer. Ou alors que si le propriétaire (de l'appart) ne veut plus ce mobis dans son appart alors il pourra kick le mobis afin qu'il retourne dans l'inventaire du propriétaire (du mobis) . En attente d'une réponse de votre part. Merci à ceux qui prendront le temps de répondre à cette demande.
  10. Bonjour a tous et a toutes ! Aujourd'hui j'ai décider de venir vers vous, pour pouvoir avoir votre avis sur un sujet/projet ! La question est la suivant : Aimeriez vous revoir un rétro R63A fonctionnel ? Le serveur serait stable accessible via le navigateur Maxthon ou bien aussi via une application téléchargeable. Peu être que sa rassemblerait les plus anciens, nostalgique de cette époque ? Ou bien sa pourrais permettre de découvrir au nouveau l'ancienne version mythique de Habbo. En espérant avoir votre retour assez rapidement ! Cordialement Rodope
  11. Bonsoir, j'aurais besoin d'information concernant les attaques DDOS du type QUIC. J'ai un serveur dédié qui me sert à faire fonctionner l'un de mes serveurs de jeu et je reçois énormément d'attaque de ce type par des personnes malveillantes. Comment puis-je les contrer ? Merci d'avance !
  12. Bien le bonjour moussaillon, ce message s'adresse aux admins @ Thomas ou @ Solife d'Inshare :
  13. Juste une question. Comment feront nous pour crée nos rétros après que flash n'existe plus ? Moi sa me fais un peu ch*er quoi..
  14. Salut tout le monde! Quels sont vos parcours scolaires et que voulez vous faire plus tard ou que faites vous actuellement ?
  15. Bonjour, sur mon rétro, la commande :setz 0 marche correctement sauf, pour les sols et quand il s'agit du z 0, je ne peux pas les tourner ou les sols passent au dessus du mobis, j'ai l'impression que ça vient des swf
  16. Bonjour à tous. Après avoir fouillé dans mes ftp et ma db, je trouve pas comment changer les écritures cms (j'ai réussit a changer que le logo) ainsi que les lien de la page d'accueil (lien discord etc) Je vous remercie d'avance pour les réponses -Le R
  17. Bonjour/Bonsoir, Je cherche un vendeur de lingots Habbo fiable, là pour le moment il m'en faudrait que 10-12 mais par la suite je prendrais par 50. J'achète au prix de 2€ le lingot maxi. Je paye par Paypal en envois proche uniquement et pour la transaction on fait 1 par 1, c'est long mais ça évite les grosses arnaques. Si jamais des vendeurs honnêtes cherchent un client régulier, voici mon Discord, Mowgli#4543 Bonne journée/soirée.
  18. Salut a tous. Voilà j'ai créé mon rétro Habbo et tout, et j'aimerai savoir comment se déroulerait avec la Beta HTML5. Si il va falloir des nouvelles choses a télécharger, et tout le tralala. :)
  19. Salut a tous. Je connais quelque petite base pour crée un rétro Habbo R63C mais je n'en sais pas plus ^^ J'aimerai savoir si il y a un tutoriel d'actualité pour pouvoir crée mon propre rétro Habbo ! (Je sais que ces payant, VPS, base de donnée, et Hébergement WEB). J'aimerai également trouver un CMS, des SWF, tout se qu'il faux pour un rétro ! Merci beaucoup !
  20. Bonjour, Je vien vers vous pour s'avoir comment et surtout est-ce que c'est possible de changer de navigateur et de catalogue sur plusemu, avoir le catalogue et le navigateur des nouvelles production sur une ancienne, car j'ai commencer à modifier mon emu, j'ai bien avancer mais il me manque ça
  21. Zedr

     question Aide

    Quelqu'un pourrait me dire comment ouvrir un émulateur en java ? Merci beaucoup !
  22. Salut, je suis un vieux joueur et à l'époque je m'étais fait pas mal de bons potes sur des rétros. J'ai retrouvé un ancien pote et j'aimerais bien qu'on puisse en retrouver d'autres, par contre, on sait pas quels sont les rétros avec le plus de co. Quelqu'un pourrait nous aider ? Merci
  23. Bonjour, je voudrais crée mon rétro. J'ai toujours voulu en faire un malheureusement plus petit je n'avais pas les compétences requises. Cependant je fouille sur votre forum je tombe sur énormément de tutos. Cependant je suis sur Macintosh alors que je vois qui des logiciel des emulateurs ect sous windows.. je voulais savoir si en étant sur Macintosh je pouvais quand même me lancer dans l'aventure ? Cordialement.
  24. Bonjour comment supprimer le capatcha à l'inscription de mon rétro ? Merci de m'aider