Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Habbo V7 - Dcrs + Gamedata + Emulator base + Header list + Empty.cct (RC4 Cracked)

Status
Not open for further replies.
Custom Title Activated
Loyal Member
Joined
Oct 26, 2012
Messages
2,357
Reaction score
1,086
Hello, today I release one of the most legendary versions, V7. It had forced encryption, just like V5. It's a version the most of us forgot about, but.. It's gold.

PHP:
Many furni items de-branded and changed (Mountain Dew Sofa, Infobus poster, and more)
New badge system: Changing badges and making them visible and invisible.
Furni shadow added, this will stay in the current location of a furni item while moving it. (This feature was removed).
Ability to stand on stacked furniture, after removing a chair from it.
"Ignore" button added.
New rare furniture

Lingo RC4 bypass (auto decipher, thanks sweet AmyIsBored :3, also thanks to her for the DCRs and header list):

PHP:
  _player.debugPlaybackEnabled = true
   if voidp(gHasCompleted) and member("RC4 Class").number > 0 then
      gHasCompleted = 1
      member("RC4 Class").scriptText = "on setKey me, k" & RETURN & "put " & QUOTE & "setKey() called." & QUOTE & "" & RETURN & "end" & RETURN & "" & RETURN & "on encipher me, data" & RETURN & "return data" & RETURN & "end" & RETURN & "" & RETURN & "on decipher me, data" & RETURN & "return data" & RETURN & "end" & RETURN & "" & RETURN & "on createKey me" & RETURN & "return " & QUOTE & QUOTE & "" & RETURN & "end"
   end if
end

Emulator snippet (RC4 is no longer needed, but key is still generated how it would be in the old one):

PHP:
            var key = Utils.HabboHexRC4.GeneratePublicKeyString();
            
            this.fuseResponse = new serverMessage("@A");
            this.fuseResponse.AddString(key);
            this.SendResponse();

            this.Session.Encrypted = true;
            this.Session.Key = key;

PHP:
while (pos < data.Length)
            {
                int length = HabboEncoding.decodeB64(new string(new char[] { data[pos++], data[pos++], data[pos++] }));
                string header = new string(new char[] { data[pos++], data[pos++] });

                char[] content = new char[length - 2];

                for (int i = 0; i < content.Length && pos < data.Length; i++)
                {
                    content[i] = data[pos++];
                }

                Program.Writer.PrintLine("RECV", string.Concat(@"Client ", Id, @" received [ID:", header, "]: ", new string(content)));

                HabboMessages.TryHandle(header, new clientMessage(content), this);
            }

Real V7 dcrs (protected, you can unprotect + edit with recover_cct):

PHP:
https://anonfiles.com/file/8b7bfb2784723a5fc98979c8ca02893d

Header list (B64 decoded):

PHP:
TRY_LOGIN = 4,
CHK_VERSION = 5,
SET_UID = 6,
GET_INFO = 7,
GET_CREDITS = 8,
GETAVAILABLEBADGES = 157,
GET_PASSWORD = 47,
LANGCHECK = 58,
MESSENGER_INIT = 12,
MESSENGER_SENDUPDATE = 15,
MESSENGER_C_CLICK = 30,
MESSENGER_C_READ = 31,
MESSENGER_MARKREAD = 32,
MESSENGER_SENDMSG = 33,
MESSENGER_SENDEMAILMSG = 34,
MESSENGER_ASSIGNPERSMSG = 36,
MESSENGER_ACCEPTBUDDY = 37,
MESSENGER_DECLINEBUDDY = 38,
MESSENGER_REQUESTBUDDY = 39,
MESSENGER_REMOVEBUDDY = 40,
FINDUSER = 41,
INFORETRIEVE = 7,
APPROVENAME = 42,
REGISTER = 43,
UPDATE = 44,
AC = 46,
COPPA_REG_CHECKTIME = 130,
COPPA_REG_GETREALTIME = 131,
PARENT_EMAIL_REQUIRED = 146,
VALIDATE_PARENT_EMAIL = 147,
SEND_PARENT_EMAIL = 148,
UPDATE_ACCOUNT = 149,
CREATEFLAT = 29,
ROOM_DIRECTORY = 2,
GET_ADV = 11,
ADVIEW = 236,
GETDOORFLAT = 28,
ADCLICK = 45,
CHAT = 52,
SHOUT = 55,
WHISPER = 56,
QUIT = 53,
GOVIADOOR = 54,
TRYFLAT = 57,
GOTOFLAT = 59,
G_HMAP = 60,
G_USRS = 61,
G_OBJS = 62,
G_ITEMS = 63,
G_STAT = 64,
GETSTRIP = 65,
FLATPROPBYITEM = 66,
ADDSTRIPITEM = 67,
TRADE_UNACCEPT = 68,
TRADE_ACCEPT = 69,
TRADE_CLOSE = 70,
TRADE_OPEN = 71,
TRADE_ADDITEM = 72,
MOVESTUFF = 73,
SETSTUFFDATA = 74,
MOVE = 75,
THROW_DICE = 76,
DICE_OFF = 77,
PRESENTOPEN = 78,
LOOKTO = 79,
CARRYDRINK = 80,
INTODOOR = 81,
DOORGOIN = 82,
G_IDATA = 83,
SETITEMD84A = 84,
REMOVEITEM = 85,
CARRYITEM = 87,
STOP = 88,
USEITEM = 89,
PLACESTUFF = 90,
DANCE = 93,
WAVE = 94,
KICKUSER = 95,
ASSIGNRIGHTS = 96,
REMOVERIGHTS = 97,
LETUSERIN = 98,
REMOVESTUFF = 99,
GOAWAY = 115,
GETROOMAD = 126,
GETPETSTAT = 128,
SETBADGE = 158,
SCR_GINFO = 26,
SCR_SUBSCRIBE = 50,
SCR_EXTSCR = 51,
GETAVAILABLESETS = 9,
SBUSYF = 13,
SUSERF = 16,
SRCHF = 17,
GETFVRF = 18,
ADD_FAVORITE_ROOM = 19,
DEL_FAVORITE_ROOM = 20,
GETFLATINFO = 21,
DELETEFLAT = 23,
UPDATEFLAT = 24,
SETFLATINFO = 25,
NAVIGATE = 150,
GETUSERFLATCATS = 151,
GETFLATCAT = 152,
SETFLATCAT = 153,
GETSPACENODEUSERS = 154,
REMOVEALLRIGHTS = 364,
GETPARENTCHAIN = 156,
GETUSERCREDITLOG = 127,
REDEEM_VOUCHER = 129,
GDATE = 49,
PICK_CRYFORHELP = 48,
CRYFORHELP = 86,

Header list (outgoing, B64 decoded)

PHP:
UPDATESTATS = 166,
DISCONNECT = -1,
HELLO = 0,
SECRETKEY = 1,
RIGHTS = 2,
LOGINOK = 3,
USEROBJ = 5,
ADV = 11,
ERROR = 33,
USERBANNED = 35,
REGISTRATIONOK = 51,
EPSNOTIFY = 52,
SYSTEMBROADCAST = 139,
CHECKSUM = 141,
MODALERT = 161,
AVAILABLEBADGES = 229,
BUDDYLIST = 12,
MYPERSISTENTMSG = 13,
MESSENGERREADY = 15,
MEMBERINFO = 128,
BUDDYADDREQUESTS = 132,
CAMPAIGN_MSG = 133,
MESSENGER_MSG = 134,
REMOVE_BUDDY = 138,
NOSUCHUSER = 147,
AVAILABLESETS = 8,
NAMEAPPROVED = 36,
NAMEUNACCEPTABLE = 37,
ACR = 164,
UPDATEOK = 211,
REREGISTRATIONREQUIRED = 167,
NAMETOOLONG = 168,
COPPA_CHECKTIME = 214,
COPPA_GETREALTIME = 215,
PARENT_EMAIL_REQURED = 217,
PARENT_EMAIL_VALIDATED = 218,
UPDATE_ACCOUNT = 169,
FLATCREATED = 59,
CLC = 18,
OPC_OK = 19,
CHAT = 24,
USERS = 28,
LOGOUT = 29,
OBJECTS = 30,
HEIGHTMAP = 31,
ACTIVE_OBJECTS = 32,
STATUS = 34,
FLAT_LETIN = 41,
ITEMS = 45,
ROOM_RIGHTS = 42,
FLATPROPERTY = 46,
IDATA = 48,
DOORFLAT = 62,
DOORDELETED = 63,
ROOM_READY = 69,
YOUAREMOD = 70,
SHOWPROGRAM = 71,
REMOVEITEM = 84,
UPDATEITEM = 85,
STUFFDATAUPDATE = 88,
DOOR_OUT = 89,
DICE_VALUE = 90,
DOORBELL_RINGING = 91,
DOOR_IN = 92,
ACTIVEOBJECT_REMOVE = 94,
ACTIVEOBJECT_UPDATE = 95,
STRIPINFO = 98,
REMOVESTRIPITEM = 99,
STRIPUPDATED = 101,
YOUARENOTALLOWED = 102,
OTHERNOTALLOWED = 103,
TRADE_COMPLETED = 105,
TRADE_ITEMS = 108,
TRADE_ACCEPT = 109,
TRADE_CLOSE = 110,
PRESENTOPEN = 129,
ROOMAD = 208,
PETSTAT = 210,
HEIGHTMAPUPDATE = 219,
USERBADGE = 228,
SLIDEOBJECTBUNDLE = 230,
SCR_SINFO = 7,
SCR_SOK = 23,
SCR_NOSUB = 22,
SCR_ASU = 21,
FILM = 4,
FLAT_RESULTS = 16,
FLATINFO = 54,
NOFLATSFORUSER = 57,
NOFLATS = 58,
FLATPASSWORD_OK = 130,
NAVNODEINFO = 220,
USERFLATCATS = 221,
FLATCAT = 222,
SPACENODEUSERS = 223,
CANTCONNECT = 224,
SUCCESS = 225,
FAILURE = 226,
PARENTCHAIN = 227,
PURSE = 6,
DATE = 163,
CRYFORHELP = 148,
PICKEDCRY = 149,

Header list (incoming, B64 encoded):

PHP:
ROOM_DIRECTORY="@B"
TRY_LOGIN="@D"
CHK_VERSION="@E"
SET_UID="@F"
INFORETRIEVE="@G"
INFORETRIEVE="@G"
GET_CREDITS="@H"
GETAVAILABLESETS="@I"
GET_ADV="@K"
MESSENGER_INIT="@L"
SBUSYF="@M"
MESSENGER_SENDUPDATE="@O"
SUSERF="@P"
SRCHF="@Q"
GETFVRF="@R"
ADD_FAVORITE_ROOM="@S"
DEL_FAVORITE_ROOM="@T"
GETFLATINFO="@U"
DELETEFLAT="@W"
UPDATEFLAT="@X"
SETFLATINFO="@Y"
SCR_GINFO="@Z"
GETDOORFLAT="@\"
CREATEFLAT="@]"
MESSENGER_C_CLICK="@^"
MESSENGER_C_READ="@_"
MESSENGER_MARKREAD="@`"
MESSENGER_SENDMSG="@a"
MESSENGER_SENDEMAILMSG="@b"
MESSENGER_ASSIGNPERSMSG="@d"
MESSENGER_ACCEPTBUDDY="@e"
MESSENGER_DECLINEBUDDY="@f"
MESSENGER_REQUESTBUDDY="@g"
MESSENGER_REMOVEBUDDY="@h"
FINDUSER="@i"
APPROVENAME="@j"
REGISTER="@k"
UPDATE="@l"
ADCLICK="@m"
AC="@n"
GET_PASSWORD="@o"
PICK_CRYFORHELP="@p"
GDATE="@q"
SCR_SUBSCRIBE="@r"
SCR_EXTSCR="@s"
CHAT="@t"
QUIT="@u"
GOVIADOOR="@v"
SHOUT="@w"
WHISPER="@x"
TRYFLAT="@y"
LANGCHECK="@z"
GOTOFLAT="@{"
G_HMAP="@|"
G_USRS="@}"
G_OBJS="@~"
G_ITEMS="@"
G_STAT="A@"
GETSTRIP="AA"
FLATPROPBYITEM="AB"
ADDSTRIPITEM="AC"
TR68E_UNACCEPT="AD"
TRADE_ACCEPT="AE"
TRADE_CLOSE="AF"
TRADE_OPEN="AG"
TRADE_ADDITEM="AH"
MOVESTUFF="AI"
SETSTUFFDATA="AJ"
MOVE="AK"
THROW_DICE="AL"
DICE_OFF="AM"
PRESENTOPEN="AN"
LOOKTO="AO"
CARRYDRINK="AP"
INTODOOR="AQ"
DOORGOIN="AR"
G_IDATA="AS"
SETITEMD84A="AT"
REMOVEITEM="AU"
CRYFORHELP="AV"
CARRYITEM="AW"
STOP="AX"
USEITEM="AY"
PLACESTUFF="AZ"
DANCE="A]"
WAVE="A^"
KICKUSER="A_"
ASSIGNRIGHTS="A`"
REMOVERIGHTS="Aa"
LETUSERIN="Ab"
REMOVESTUFF="Ac"
GOAWAY="As"
GETROOMAD="A~"
GETUSERCREDITLOG="A"
GETPETSTAT="B@"
REDEEM_VOUCHER="BA"
COPPA_REG_CHECKTIME="BB"
COPPA_REG_GETREALTIME="BC"
PARENT_EMAIL_REQUIRED="BR"
VALIDATE_PARENT_EMAIL="BS"
SEND_PARENT_EMAIL="BT"
UPDATE_ACCOUNT="BU"
NAVIGATE="BV"
GETUSERFLATCATS="BW"
GETFLATCAT="BX"
SETFLATCAT="BY"
GETSPACENODEUSERS="BZ"
GETPARENTCHAIN="B\"
GETAVAILABLEBADGES="B]"
SETBADGE="B^"
ADVIEW="Cl"
REMOVEALLRIGHTS="El"

Header list (outgoing, B64 encoded):

PHP:
HELLO="@@"
SECRETKEY="@A"
RIGHTS="@B"
LOGINOK="@C"
FILM="@D"
USEROBJ="@E"
PURSE="@F"
SCR_SINFO="@G"
AVAILABLESETS="@H"
ADV="@K"
BUDDYLIST="@L"
MYPERSISTENTMSG="@M"
MESSENGERREADY="@O"
FLAT_RESULTS="@P"
CLC="@R"
OPC_OK="@S"
SCR_ASU="@U"
SCR_NOSUB="@V"
SCR_SOK="@W"
CHAT="@X"
USERS="@\"
LOGOUT="@]"
OBJECTS="@^"
HEIGHTMAP="@_"
ACTIVE_OBJECTS="@`"
ERROR="@a"
STATUS="@b"
USERBANNED="@c"
NAMEAPPROVED="@d"
NAMEUNACCEPTABLE="@e"
FLAT_LETIN="@i"
ROOM_RIGHTS="@j"
ITEMS="@m"
FLATPROPERTY="@n"
IDATA="@p"
REGISTRATIONOK="@s"
EPSNOTIFY="@t"
FLATINFO="@v"
NOFLATSFORUSER="@y"
NOFLATS="@z"
FLATCREATED="@{"
DOORFLAT="@~"
DOORDELETED="@"
ROOM_READY="AE"
YOUAREMOD="AF"
SHOWPROGRAM="AG"
REMOVEITEM="AT"
UPDATEITEM="AU"
STUFFDATAUPDATE="AX"
DOOR_OUT="AY"
DICE_VALUE="AZ"
DOORBELL_RINGING="A["
DOOR_IN="A\"
ACTIVEOBJECT_REMOVE="A^"
ACTIVEOBJECT_UPDATE="A_"
STRIPINFO="Ab"
REMOVESTRIPITEM="Ac"
STRIPUPDATED="Ae"
YOUARENOTALLOWED="Af"
OTHERNOTALLOWED="Ag"
TRADE_COMPLETED="Ai"
TRADE_ITEMS="Al"
TRADE_ACCEPT="Am"
TRADE_CLOSE="An"
MEMBERINFO="B@"
PRESENTOPEN="BA"
FLATPASSWORD_OK="BB"
BUDDYADDREQUESTS="BD"
CAMPAIGN_MSG="BE"
MESSENGER_MSG="BF"
REMOVE_BUDDY="BJ"
SYSTEMBROADCAST="BK"
CHECKSUM="BM"
NOSUCHUSER="BS"
CRYFORHELP="BT"
PICKED_CRY="BU"
MODALERT="Ba"
DATE="Bc"
ACR="Bd"
UPDATESTATS="Bf"
REREGISTRATIONREQUIRED="Bg"
NAMETOOLONG="Bh"
UPDATE_ACCOUNT="Bi"
ROOMAD="CP"
PETSTAT="CR"
UPDATEOK="CS"
COPPA_CHECKTIME="CV"
COPPA_GETREALTIME="CW"
PARENT_EMAIL_REQURED="CY"
PARENT_EMAIL_VALIDATED="CZ"
HEIGHTMAPUPDATE="C["
NAVNODEINFO="C\"
USERFLATCATS="C]"
FLATCAT="C^"
SPACENODEUSERS="C_"
CANTCONNECT="C`"
SUCCESS="Ca"
FAILURE="Cb"
PARENTCHAIN="Cc"
USERBADGE="Cd"
AVAILABLEBADGES="Ce"
SLIDEOBJECTBUNDLE="Cf"
DISCONNECT=""

Database (my emulator):

PHP:
-- phpMyAdmin SQL Dump
-- version 3.5.2.2
-- http://www.phpmyadmin.net
--
-- Machine: 127.0.0.1
-- Genereertijd: 31 mei 2013 om 19:30
-- Serverversie: 5.5.27
-- PHP-versie: 5.4.7

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";

--
-- Databank: `oldskool`
--

-- --------------------------------------------------------

--
-- Tabelstructuur voor tabel `flats`
--

CREATE TABLE IF NOT EXISTS `flats` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL,
  `owner` varchar(100) NOT NULL,
  `state` int(11) NOT NULL,
  `maxusers` int(11) NOT NULL,
  `description` text NOT NULL,
  `category` int(11) NOT NULL,
  `showowner` tinyint(1) NOT NULL,
  `wallpaper` varchar(3) NOT NULL,
  `floor` varchar(3) NOT NULL,
  `model` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Gegevens worden uitgevoerd voor tabel `flats`
--

INSERT INTO `flats` (`id`, `name`, `owner`, `state`, `maxusers`, `description`, `category`, `showowner`, `wallpaper`, `floor`, `model`) VALUES
(1, 'Josh''s Room', 'Josh', 0, 25, 'Josh has entered the building!', 0, 1, '0', '0', '');

-- --------------------------------------------------------

--
-- Tabelstructuur voor tabel `habbos`
--

CREATE TABLE IF NOT EXISTS `habbos` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(100) NOT NULL,
  `password` varchar(100) NOT NULL,
  `email` varchar(100) NOT NULL,
  `dob` varchar(100) NOT NULL,
  `coins` int(11) NOT NULL,
  `tickets` int(11) NOT NULL,
  `film` int(11) NOT NULL,
  `rank` int(11) NOT NULL,
  `figure` varchar(100) NOT NULL,
  `motto` varchar(100) NOT NULL,
  `gender` enum('M','F') NOT NULL,
  `consolemotto` varchar(100) NOT NULL,
  `ssodebug` varchar(100) NOT NULL COMMENT 'Only for V13+',
  `expired_clubdays` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

--
-- Gegevens worden uitgevoerd voor tabel `habbos`
--

INSERT INTO `habbos` (`id`, `username`, `password`, `email`, `dob`, `coins`, `tickets`, `film`, `rank`, `figure`, `motto`, `gender`, `consolemotto`, `ssodebug`, `expired_clubdays`) VALUES
(3, 'Josh', '123', 'alphastudios@anonyops.nl', '23.05.1997', 1000, 0, 0, 1, '1300118001280013000125501', 'Hello <3', '', '', '', 0);

-- --------------------------------------------------------

--
-- Tabelstructuur voor tabel `habbos_club`
--

CREATE TABLE IF NOT EXISTS `habbos_club` (
  `userid` int(11) NOT NULL,
  `started` datetime NOT NULL,
  `expire` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Tabelstructuur voor tabel `roles`
--

CREATE TABLE IF NOT EXISTS `roles` (
  `minrank` int(11) NOT NULL,
  `role` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Gegevens worden uitgevoerd voor tabel `roles`
--

INSERT INTO `roles` (`minrank`, `role`) VALUES
(1, 'fuse_login');

Empty.cct:

PHP:
http://www.mediafire.com/?e9ayyqgf4cs40ic

Emulator (it's a base, you need to make all packets except of VERSION_CHECK yourself, however, it already contains some voids since this is the same base as I used for my V36):

PHP:
http://www.mediafire.com/?j5rv87lwtz1ke74

Credits (IMPORTANT!):

PHP:
Tha - coding server, uploading empty.cct
AmyIsBored - uploading dcrs, giving RC4 bypass hax, giving header list
office.boy - making the HabboHexRC4 class while having a large penis because v7 was so epic

Everything is free to use, as long as you respect and give credits.

Bai bai :3
 
Last edited:
Experienced Elementalist
Joined
Mar 13, 2011
Messages
275
Reaction score
106
Nice release Josh, i hope this will be the start of try to emulate V7 and some people interested will also help. :rolleyes:
 
Experienced Elementalist
Joined
Sep 19, 2011
Messages
240
Reaction score
35
Goodshit wouldn't this be easier learning c# instead of r26+?
 
Newbie Spellweaver
Joined
Oct 23, 2012
Messages
16
Reaction score
29
You've basically just reposted what I posted, and included a non-functional server. Why? o_O

EDIT: Also, the RC4 encryption is not cracked, it's just bypassed.
 
Custom Title Activated
Loyal Member
Joined
Oct 26, 2012
Messages
2,357
Reaction score
1,086
You've basically just reposted what I posted, and included a non-functional server. Why? o_O

It DOES function, you only need to code packets, but MySQL + packet reading and good stable sockets are already included :)
Also, I posted what you posted in a new thread because it deserves an own thread.

@Offtopic:

Everybody received a free like and reputation up :)
 
Newbie Spellweaver
Joined
Oct 23, 2012
Messages
16
Reaction score
29
It DOES function, you only need to code packets, but MySQL + packet reading and good stable sockets are already included :)
Also, I posted what you posted in a new thread because it deserves an own thread.

@Offtopic:

Everybody received a free like and reputation up :)
ONLY packets? You need to handle every feature in the game! That's much more work than a database connection and simple socket handling.
 
Experienced Elementalist
Joined
Sep 19, 2011
Messages
240
Reaction score
35
I'm just interested into learning c# or another emulator language as I'm tired of getting spoon feed and a lot of developers are leaving.
 
Newbie Spellweaver
Joined
Oct 23, 2012
Messages
16
Reaction score
29
I'm just interested into learning c# or another emulator language as I'm tired of getting spoon feed and a lot of developers are leaving.
v7 might not be the best version to start with, there are a few protocol differences to v9 which makes it harder. Probably the easiest version to start with is v1.
 
Newbie Spellweaver
Joined
Mar 1, 2012
Messages
95
Reaction score
67
It DOES function, you only need to code packets, but MySQL + packet reading and good stable sockets are already included :)
Also, I posted what you posted in a new thread because it deserves an own thread.

@Offtopic:

Everybody received a free like and reputation up :)
Yeah Amy are you dumb? you only have to code the whole thing, god! :D:
 
Custom Title Activated
Loyal Member
Joined
Oct 26, 2012
Messages
2,357
Reaction score
1,086
v7 might not be the best version to start with, there are a few protocol differences to v9 which makes it harder. Probably the easiest version to start with is v1.

Actually, calculating length with a decoded char array / byte array / string is much easier than the length calculation of V1, since it uses lots of checks for macintosh and it's really hard if you have no clue. All V1 servers in C# are quick coded without good length calculation.

In my opinion, the easiest version to start with is R34-R63 (NOT post-shuffle) since the packets are quite easy to understand.

Also, I know it needs everything coded, but I didn't said I just leave this, I'm still busy with it. And, I gave you credits, so why are you so mad at me :(
 
Newbie Spellweaver
Joined
Mar 1, 2012
Messages
95
Reaction score
67
But especially for a learner v1 is nice with no forced encryption and a human readable protocol - HELLO, SECRET_KEY etc are all pretty self explanatory.

I will say don't start with a server. Learn the language and do a few small projects first. A server is pretty tough with 0% experience and a good one especially as most game servers will probably cover a lot of language features. It's the reason there are so many dead projects imo - people don't know what they're getting themselves in for.

If you wanna work with habbo why not try messing around with the API, parsing information from habbo homes etc
 
Custom Title Activated
Loyal Member
Joined
Oct 26, 2012
Messages
2,357
Reaction score
1,086
But especially for a learner v1 is nice with no forced encryption and a human readable protocol - HELLO, SECRET_KEY etc are all pretty self explanatory.

I will say don't start with a server. Learn the language and do a few small projects first. A server is pretty tough with 0% experience and a good one especially as most game servers will probably cover a lot of language features. It's the reason there are so many dead projects imo - people don't know what they're getting themselves in for.

If you wanna work with habbo why not try messing around with the API, parsing information from habbo homes etc

Hehe:

int msgType = header[0] + header[1];
int msgLength = ((header[4] - 128) + ((header[3] - 128) * 128) + ((header[2] - 128) * 16384));

Good luck <3

In R63, the only thing to do is check if the first byte is < or @, if is <, send policy, if is @, progress packet. Then decode the next 2 bytes for getting message length, then decode next 2 bytes for getting the header. No hard macintosh read poop..
 
Ask me about Daoism
Loyal Member
Joined
Nov 6, 2010
Messages
1,560
Reaction score
393
This is the kind of attitude everyone should have! :)

True, but I guarantee that he's just trying to kiss butt. If he wants to prove me wrong, he'll go do it.

Anyways nice release. I didn't know we had so many uncracked releases.

Did we have as many Shockwave revisions as R63 revisions?
 
Custom Title Activated
Loyal Member
Joined
Oct 26, 2012
Messages
2,357
Reaction score
1,086
True, but I guarantee that he's just trying to kiss butt. If he wants to prove me wrong, he'll go do it.

Anyways nice release. I didn't know we had so many uncracked releases.

Did we have as many Shockwave revisions as R63 revisions?

Count these lines:



And then:



But only where it contains RELEASE63. You can now know how many revisions it differents.
 
Ask me about Daoism
Loyal Member
Joined
Nov 6, 2010
Messages
1,560
Reaction score
393
Count these lines:



And then:



But only where it contains RELEASE63. You can now know how many revisions it differents.


I realize THAT but I didn't know if people didn't archive as many then, lol :p


EDIT:

Woah, list has expanded! :p
 
Status
Not open for further replies.
Back
Top