[Java] Shark - Habbo Hotel V13 Emulator [Netty][Hibernate][MySQL]

Status
Not open for further replies.

Adil

DevBest CEO
May 28, 2011
1,276
714
Shark - A Java emulator written for the v13 client
What is Shark?
Shark is a FUSE environment emulator, written to target the v13 client. It is written in Java, using:
  • Netty - For scalable, event driven and non-blocking network IO
  • Hibernate - For enterprise level persistence of database objects
  • BoneCP - For efficient MySQL connection pooling
  • Log4j - For solid and well tested logging

Shark uses Netty for scalable network connectivity. Netty has been written to solve the c10k networking problem, a common problem many face when writing client-server applications.

Shark is based around a server core, with habbo components added in, giving it a modular feel and design. You can easily switch out components as you please.

Screenshots

bf9361ed4294258b1aa0c47dd70568cd76834a48ff.png


bf9361ed420602741120257d9a6abf110f3d7813a6.png


fcKw


fcKC


MailCatcher
fg3w


hgb2

hgba


Code Snippets

Code:
package net.adil.shark.habbo.message.outgoing.user;
 
import net.adil.shark.habbo.game.GameSession;
import net.adil.shark.habbo.message.ClientMessage;
import net.adil.shark.habbo.message.IMessageEvent;
import net.adil.shark.habbo.message.ServerMessage;
 
import org.apache.log4j.Logger;
 
public class UserParams implements IMessageEvent 
{
 
public void invoke(ClientMessage cMessage,GameSession session)
{
session.send(new ServerMessage(5)
.appendString(session.getHabbo().getID().toString())
.appendString(session.getHabbo().getUsername()) //c'mon dude
.appendString(session.getHabbo().getFigure()) //figure
.appendString(session.getHabbo().getGender().toLowerCase()) //gender
.appendString(session.getHabbo().getMotto()) //motto - do .getMotto() here
.appendWireInt(100) //tickets - do .getTickets()
.appendString("") //pool figure - .getPoolFigure()
.appendWireInt(0)); //film - .getFilm()
 
session.send(new ServerMessage(139)
.appendString("Hello, "+session.getHabbo().getUsername()));
}
 
}


FAQ
Q: Will this be complete?
A: I can't guarantee anything, but I'll complete it to the best of my ability.

Q: Will this be open source?
A: Sometime soon, probably.

Q: Are you using Github or any other version control system?
A: Yes.

Q: What features are currently implemented?
A: Everything up to navigator.

Q: Will Shark have support for games & the camera?
A: Yes, I do plan on achieving these. If anyone has packetlogs, that would be a massive help!



Notes
Rolecall:
James
Nillus (Woodpecker)
Audun (Chop V2)
Jordan (some help)
Dom (some help)
Alex (some packet stuff)


More info:
I've written a remote service system which will allow you to send data to your server from remote locations. This stream will be securely encrypted, and use request checks to validate the data.



Hopefully, I'll be updating soon with more stuff!

Thanks,
~Adil
 

Kaz

BooYah
Staff member
Nov 16, 2010
3,064
1,025
Thread approved, good luck with development.

Will this be using mysql connections? or as the older versions of old school did and be flat file?
 

Adil

DevBest CEO
May 28, 2011
1,276
714
Thread approved, good luck with development.

Will this be using mysql connections? or as the older versions of old school did and be flat file?
MySQL w/ Hibernate. :p 
Uservoice:
 
I've migrated from Hibernate (using a simple MySQL class now), so I have more flexibility when accessing the database.

 

Sab

I love milfs.
Jun 25, 2011
1,212
136
Hope this doesn't go to waste, looks pretty neat. Good luck.
 

Sledmore

Chaturbate Livestreamer
Staff member
FindRetros Moderator
Jul 24, 2010
5,195
3,905
Good luck Adil, you always manage to start a nice project, I'll follow this one :D.
 

Adil

DevBest CEO
May 28, 2011
1,276
714
Ok, I've been making some changes to the database schema (it goes crazy if you try and input invalid data (fk's all over the place)), and I've been editing the server a bit. I'm doing navigator atm.
 

Sledmore

Chaturbate Livestreamer
Staff member
FindRetros Moderator
Jul 24, 2010
5,195
3,905
Thread closed due to lack of recent updates from the thread creator, contact me for the thread to be re-opened.
 
Status
Not open for further replies.

Users who are viewing this thread

Top