Stalkeie-nos ou converse conosco no Gitter! [Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
About
Nome do Desenvolvimento Yupi
Tipo de Projeto HH Emulator
Sob Licença MIT
Desenvolvedores Felix (@thedoct0r11), Claudio ([Tens de ter uma conta e sessão iniciada para poderes visualizar este link]), Kessiler (@Kessiler)
Agradecimentos
Antiga Azure Team - For Editing Mercury Emulator;
@Maritnmine - For Creating Butterfly Emulator;
[Tens de ter uma conta e sessão iniciada para poderes visualizar este link] - For Editing Butterfly Emulator;
@AKIIX - For Editing Mercury Emulator;
[Tens de ter uma conta e sessão iniciada para poderes visualizar este link] - For Editing Plus Emulator;
@Sir Jamal - For Editing Plus Emulator;
@Joopie - For Creating Habbo Encryption;
@Spot ify - For Editing Mercury Emulator;
@Tyrexfr - For Helping a lot in Azure Camera Core;
And a lot of other users/contributors!
Specs
Disponível para Compilações com Mono (branch linux)
testado com: OS X el-capitan, Ubuntu 14.04, Mono running at CodeClimate
Disponível para Compilações com Windows (branch nio)
testado com: Windows 7 Enterprise, Windows 10 Pro
Totalmente Open Source
Usando C# 6.0 Roslin
Hospedado no GitHub
Usando bibliotecas Nuget
Usando o sistema de tomada de reativo e assíncrona, com vários adaptadores, estando disponível:
Você pode escolher usar DotNetty ou SuperSocket
O núcleo está sendo reescrito por completo
Com base no Azure Emulator 1.0 (baseado no Butterfly Emulator)
Seguindo Padrões de Software Design Patterns, como Factories e Generators.
Usando Log4Net como sistema de logs
O emulador será capaz de receber atualizações através GitHub, você também poderá iniciar e parar o emulador sem a necessidade de uma estreita o meio ambiente.
Ready for Proxy Servlets
Motor de Recebimento de Pacotes Dinâmico
Uso do Algoritmo A-Star como Mapeador de Caminhos, planejado usar o algoritmo IDA-Star
Usando Path Finder cognitiva, com mapeamento de nós fluídos.
Sistema de Plugins Nativos
Motor de movimentação do usuário Asincrono.
Sendo escrito um novo sistema de persistência com o banco de dados, usando conceitos herdados de BigData (grande volume de dados) para a inferência
Uso do Manual de Referência de Estilo de Código da Google para C++
Estrutura de Banco de Dados, hábil para banco de dados míxos (No-SQL & SQL) (Sendo escrito)
Desenvolvimento por versionamento utilizando o modelo de gerência de software SCRUM.
Mais..
To-Do
Conclusion of Milestone A
Conclusion of all Milestone A issues
Veja a Lista de To-Do clicando aqui
Source Code
Repositório no GitHub Click Here
Banco de Dados Click Here
Lista de Bugs Click here
Alterações Atuais
Last Changes: Today (04/19/2016)
Current Version: dde7849
Following Milestone Nº: A
Agradecimentos
Obrigado, se você gostou! Deixe um comentário..
Se quiser nós ajudar, leia o README e faça uma doação
Lembrando que sem o MartinMine, criador do Butterfly, nada disso seria possível!
Reserved to OP. (Thread Updates) the date-time above is in day/month/year
Change Log
10/12/2015
Started Documentation rewrite and Header Writings
Continued Core Refactoring
Rewrited Output of Executables and Variables
Started using Nuget for Packages
Fixed some Perfomance Leaks
Cleaned other things
Remove all Database Adapters except MySQL
Other things
11/12/2015 - A
Fixed Variables Path
Added Correct Database.sql
Fixed little xitties.
11/12/2015 - B
Started Pet Rewriting
Pets are now Dynamic
Improved some leakes
Rewrote PetCommandHandler
Changed things in Database (pets_commands)
Improved some Models and Interfaces
Improved Browser (Navigator)
More
14/12/2015
Started Database Cleaning
Finishing Pet Rewrites
Started Group Forums Rewrite
Cleaned some things
Removed duplicated Group Forum Terminal message.
15/12/2015
Continued Database Cleaning
Continued Pet Rewrites
Fixed Casting Problems
Entering Hotel, Entering Room, Buying Item Fixed
Started DatabaseManager refactoring
Started Catalogs Refactoring
Started Purchase Items Refactoring
Started Navigator Refactoring
Removed Crappy and horrible codes
Continued Cleaning
Disabled Quests And removed all quests code
Cleaned Configuration Files
16/12/2015
Continued Database Cleaning
Fixed Wrong Packet Structures from some packets.
Fixed Create Forum Thread/See Thread/Answer Thread
Fixed Change Forum Settings
Fixed Some other bugs.
17/12/2015
Continued Database Cleaning
Fixed Foreign Key when creating room (relation with groups)
Fixed GetString in Query Adapter. Object cannot be directly converted to string. (i will put an ?)
Discovered some Fixed Items
Created new Issues, see issue list.
Injected Pull Request 2.
07/01/2016
Continued Database Rewrite
Pets rewrite 90% done
Can see Pets in Catalogue
Pets Identification can be configured dynamically trough database
Can buy pets
Pets races is dynamic
Pets commands are now dynamic (not totally done, need see how the Command Box Command Id ordering works)
Pets Speeches System improved
Starting Rewriting AI
Starting coding Pets Interactions
Hungry, Thirsty
Want to play
Want to sleep
Sad or angry because owner ignore him
Sad or angry because owner say same commands
Happy feeling
Not Tested:
Pets Bear/Terrier Breeding
Monster Plant Buy
Monster Plant commands/compose/fertiliser/etc
Horse saddle
Horse saddle types
Horse jumping/training
Bugs:
Enter on Hotel again and you can give him respect again..
Not Coded:
Other Pets Breeding
New Pets from Habbo
New Pets Races
Improved more BotAI and Bot System
Unlinked Pets from Bots table (doesn't make sense and is bad)
Pets have now unique table for they
Fixed SSO, room creating, group creation, reloading room errors (basically all they was casting error)
Uploaded to github clean database
Started Catalogue Rewrite
Cleaned more code
Added more Composers and cleaned more the voids
Continued code rewriting/cleaning/refactoring
And more.
09/01/2016
Coded to show message when has invalid SSO
Added pet types
Configured configuration files to work exactly with server camera
Fixed little issues
Other fixes
10/01/2016
Some Fixes
11/01/2016
Continued Pet Rewriting
Improved a lot of Codes
Improved Server Logs
Improved Configuration Data
Improved Database Manager
Removed all Query Chunk System
More
12/01/2016
Improved HandlePurchase
Fixed Some Queries
Fixed Monster Plant Planting
Fixed Some Pet Speeches
Continued Database Cleaning
Started Pet Breeding Rewriting
Continued Pet Rewriting
Cleaned more Code
Continued core Refactoring
14/01/2016
Fixed Password Hash for SHA-512
15/01/2016
Updated README, and added more Informations
17/01/2016
Fixed Trade Packet (not sure)
Updated README
19/01/2016
Added Refresh Bots and Pets Commands Command
Added Refresh Pets Speeches Command
Fixed a weird Bug from ServerCPULowPriorityWorker
20/01/2016
Fixed Group Deleting (Database)
26/01/2016
Improved some codes directly from Github
27/01/2016
Fixed Multiple Room Thread Crashes
Fixed Database Pooling
Rewrote Database Connection Manager
Improved Checkings
Fixed Database.sql
Improved Database
Improved Foreign Keys
Fixed Refresh Catalogue Command
Fixed 76% because Youtube Manager
Removed Useless Classes
Added MySQL Event for Daily Respects
Fixed Proxy Connection
And more
29/01/2016
Fixed Database Pooling
Improved Performance
Fixed A lot of Database/DataReader Issues
30/01/2016 (A)
Fixed Room Crashing
Fixed Error in Saving Chatlog, Saving Inventary
Fixed Shutdown/Restart by Inventary
Fixed Pet OnCycle
30/01/2016 (B)
Improved Furniture Saving
Improved some voids/things
Now finally i think Save Inventory is Fixed
Really massive improvement in inventory saving
01/02/2016
Fixed Saving Inventory
Improved Code
Removed Abort() in thread
Improved Things
Removed Useless Code.
02/02/2016
Switched to log4Net
Improved More Database Adapter
Removed useless classes/code
Improved some codes/classes
Fixed log4Net Errors
Fixed a lot of Exceptions
And |Now| sadly log4net isn't logging :/
03/02/2016
Rewrited Logging System
log4net now is Asynchronous
Improved all Error Reporting / And Messages
Removed Useless Classes
Improved some Codes
Improved a little and cleaned a little Rooms.cs (Message Handler Library)
Changed to FileAppender as base to Asynchronous FileAppender, RollingFileAppender is bad.
04/02/2016
Added MySQL Assynchronous Appender, and Improved Logging System
Improved Error Log System
Fixed RelationShip Bugs
Fixed Add new Item to Inventory Bug
Fixed Latency Bugs
Improved DatabaseManager
Surrounded More Locks, improved Dictionary Checking System
Added Pooling System with Assynchronous Queues
Improved Room Chat System
Fixed Bugs when Chat and is Publicist other Hotels
Improved some Codes
Removed some Xitties
05/02/2016
Improved LowCpuPriorityWorker
Fixed DestroyFriendship, Load Items Bugs
Improved Banning System
Improved Check User is Banned
Improved OnCycles
Added Log4Net.Assynchronous Library
Improved Message Logging
Fixed a lot of Bugs
Fixed a lot of NullReference Errors
Improved User Check
Added MachineBan command and Improved UserInfo Command
Added Injection Filtering in AddParameter in Prepared Statement, because Azure Emulator putted Vulnerable Variables in setting Parameter Name! Like (AddParameter("something_" + Variable, value + OtherVariable); Weird..
Other things.
06/02/2016
Working Around MySQL.Data 6.XX Issue, MySQL.Data Garbage Collect Disposes DataReaders and Connections in plenum Execution! Added Lambda Checks (?) And Forced More Locking the Connections Usage.
Trying to Understand why MoveBall from Soccer.cs use Async with Await to Sync Root ball with user. Stupidly, and using Task.Delay that can Crash Main Game Loop. (I will think in a solution)
Changed weird IEnumerables to .ToList() in GroupManager SerializeGroupMemberList, i will start working in clean and improve GroupManager, since is really messy and weird!
As Azure Emulator uses Skeletons to avoid bugs, and i removed a great part of these Skeletons (try/catches) now getting a lot fo NullRefference! Started to do Null Checks and Really Fix the Issues and not Try to Avoid they!
Fixed Some Bugs related from Serialize User Data
Improved Security checking if AuthTicket is Empty, or If User doesn't exists.
Removed Log Not Attached SSO Key, since doesn't make sense, log this Data. Only if the Hotel Owner doesn't know how link SSO with User.
Fixed other Bugs
Removed Useless Nuget Packages.
More.
07/02/2016
Improved DatabaseManager
Continued Fixing Things
Fixed Some Bugs in RoomSerialization
Removed LatencyTest because is getting bugged.
Fixed other Bugs
Improved Codes
08/02/2016
Improved DatabaseManager
Improved SearchResultList
Now i will start Converting Navigator Categories Configurable Dynamically in Database
Fixed PublicRooms Data Update
Fixed Room Settings in Floor and Wall Thickness
Added LowPriorityWorker into Try/Catch.
09/02/2016
Added Assynchronous Database Manager
Added Basic Database Manager, Basic Query Reactor, Base Database Client
Started Writing Dynamic Navigator Categories (That will spend some time..)
Already the basic of dynamic navigator categories are done.
You can configure the default size and state of each category (main)
Navigator sub categories ;)
Improved Some Checkings and Code
Removed Useless Namespace Usages
Improved Database
Added Pixar Hotel Big Suppa Catalogue
Removed useless Foreign Keys
Changed some Tables to InnoDB
Added Internal Relations (Database)
Fixed other Crashes/Bugs
Other things.
10/02/2016 to 17/02/2016
Rearranged Yupi Emulator Folder Structure
Removed Entirely Encryption System
Rewrited Socket System
Improved a Lot of Performance Issues
Improved Yupi Emulator StartUp
Removed Useless Classes
Improved Logging
Improved Entirely Connection System
Added Asynchronous in Connections
Using Azure/DotNetty (Microsoft Azure)
Cleaned Folders
Fixed Some Security Issues
Improved a Little GameClient System
Added More Configuration Settings Entries
18/02/2016
Improved Socket System.
Socket System finally Ready for Usage.
Improved GameClient
Removed Useless Code
Improved Messaging System
Cleaned Some Codes
Continued Core Refactorement.
22/02/2016
Improved Connection Manager
Rewrote "DoS" Block System
Fixed Multiple Users/Different Users Connection
Improved Codes
Improved Security
Improved Settings Configurations
Cleaned Code?
01/03/2016
Started Messaging Rewrite
Started Yupi Console Design and UI Rewrite
Started Coding Yupi Console Tools
Coded Yupi VCS UPDATES.json Integration
Started Browser (Navigator System) Rewrite
Started Room System (Only Room Data, and Related things)
Started Groups Rewrite
04/03/2016
Continued Browser Rewrite (60% done)
Continued Room Classes Rewrite (40% done)
Continued Messaging System Rewrite (Will Remove Library/PacketLibrary.cs removing Delegate usages, adding Asynchronous Invokes (Improve Speed for Packet Handling for that user, using Asynchronous BeginInvoke and EndInvoke to Avoid useless Invokation Exceptions)
Started Packet Files Cleaning (Removing Useless Variables from .library,.outgoing,.incoming)
Started Handlers Files Cleaning (Removing useless Voids and Things)
Started Composite Integration (Removing all Outgoing Composers Directly from Handlers files, creating "Composers" classes for Each Packet Association in respective Folder (Rooms, Items, Users, Browsers, etc)
Cleaned some Database Stuff
Improved some Classes
Removed useless files removed from Solution but was still on git
Other things
01/04/2016
Improved DotNetty Implementation
Started Mono Compatibilities
Fixed Paths
Added AppVeyor
Added Logging System
Supressed UTF-8 Encoding
Added Object Pooling
Started SuperSocket Implementation
02/04/2016
Cleaned Code
Fixed Bugs
Created Protocol Library
Continued SuperSocket Implementation
Created Net Library (That ables choose DotNetty or SuperSocket)
Removed HabboEncoding
Started new Packet Handling and Composer System
Removed useless Files
04/04/2016
Continued Refactoring
Continued Handlers/Composers Refactoring
Created Buffers, Composers and Protocols Library
Completed Router System
05/04/2016
Moved More Composers
Improved more Code
Continued Packet System Refactoring
Linux Implementation is basically Ready
06/04/2016
Moved Catalogue Message Handlers
Fixed code Access Level (Visibility and Inheritance) of basically entire Project.
07/04/2016
Updated README.md
08/04/2016
Moved Support Handlers and Composers
Moved Messenger Handlers and Composers
Started Navigator Handlers and Composer
Moved "Others.cs" Handlers and Composers
Updated Readme.md
18/04/2016
Started Moving Group Handlers
Fixed AppVeyor Badges
Continued Working in Group Handlers
Known-Issues
Described on Issues
More?
Releases
No Stable Global Release
Branches
NIO branch
NIO branch is "stable" to use, (i mean you can build and test it, but isn't ready for local usages nor production nor development usages)
LINUX branch
Is not stable even for build, is the branch where we are rewriting actually the message system, so doing build will give a lot of errors. Don't worry, we will finish soon as we can.
[Tens de ter uma conta e sessão iniciada para poderes visualizar este link] O usuário [Tens de ter uma conta e sessão iniciada para poderes visualizar este link] foi advertido em +1 infração por postagem inútil.
[alerta=[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]] Usuário: Albert1136 Motivo: Postagem inútil. Não será punido por ser novato! Leia Nossas Regras![/alerta]