Emulators are looking good now (after my hibernation of 7 years). Chapeau!
Emulators are looking good now (after my hibernation of 7 years). Chapeau!
I am using Morningstar since it came out, and its great.
The overall Support and the Work that is being made to the Git daily are awesome.
I can only recommend this Emulator to everyone who wants a up-to-date Emulator.
Cheers. 2.1.0 RC-1 Will be released soon, here's the changelog so far:
[NEW FEATURES]
- New Achievements Coded, see Achievement Updates for more Information
- Pets can now swim
- Saved Searches in the navigator
[ACHIEVEMENT UPDATES]
- Added MusicPlayer Achievement
- Added RoomDecoFurniTypeCount Achievement
- Added Guild Forum Moderation Achievements
- Added Game Related Achievements
- Added Ice Tag Achievements
- Added Bunny Tag Achievements
[FIXES]
- Optimization on Wired Teleport
- Reset state on creation for special interactions
- Fix Banzai game not ending on all tiles locked
- Fix Timers running twice
- Added walking onto InteractionInformationTerminal
- Fixed Deleting photos
- Removed unnecessary NuxAlertComposer from InteractionInformationTerminal (is done clientside)
- Added animation delay to WiredEffectTeleport
- Fixed all users able to modify guild furniture states
- Make Battle Banzai Teleports work like habbo
- Remove dancing status when walking onto a bed or chair
- Unidle users when WIRED:Show Message is triggered
- Remove user rights when a group is created in the room
- Fixed wrong guild furni extradata
- Added unidle when clicked to walk to any spot
- Send correct amount of pending group members
- Fix Pet stay command, pets now only 'stay' for 120 seconds.
- Added GiveUserClothing RCON command
- Fixed Pet ActionPlayFootball
- Added missing Statuses to RoomUnitStatus
- Fixed users walking to the correct tile on beds
- Fixed MySQLDataTruncation in HabboItem
= Fixed bots waving while greeting a user
- Made users not 'unidle' when turning
- Fixed saving room settings with password locked Rooms
- Added my friends category to my world in navigator
- Make Popular groups show in 'top hotel' Rooms
- Fixed Pet Scratch to give happiness instead of experience
- Fixed pages on group members
- Fix 'navigator loading' after deleting a room with it open
- Fix Bot naming
- Prevent 'too big' z positions
[OTHER]
- Updated Netty. Fixes "event executor terminated" error
- Major refactoring of the sourcecode.
I hope y'all really understands how the original Habbo camera works. So well, let's go on over this, and let uncle Claudio explain how the camera system works.
Basically in the moment you take the "Selfie" the Habbo Client sends a packet containing a jSON. This jSON basically describes all the assets that together create the final image. The jSON will contain information of each sprite, including position (X, Y, Z), colours, wallpapers, Habbo's, and etc.
Working with the jSON generation, it's more secure, since it totally makes scripting impossible, in the meaning of defacing and adding unintentional or not related content. Of course, you can change the pieces of the jSON to make a custom image, but that's it. And that's not an exploit, you're just sending different arguments toe the script.
The script works in the following way:
1. The jSON contains the Room Id, Timestamp and User Id
2. The jSON also contains information of all the sprites and their positions and variations.
3. The image is generated by combining all those pieces.
4. An image is saved by using the combination of the Timestamp and Room Id.
5. The Script returns to the Server the final file name.
Why this method is harder to make it succeed? Like everything, you had to reverse engineering Habbo's Camera Server, by making different combinations of the jSON.
Also you would have to extract all the assets from the Habbo.swf and the hof_furni folder. Also you had to extract them in a very specific file naming.
So, basically that's a hell of a work. It's literally more easier modding the Habbo.swf to send in the packet a PNG/JPEG stream containing the final result. And the reason is obvious, security. By allowing to the Emulator/Server to receive any kind of PNG/JPEG chunk/stream in the Packet, you're able to literally send any kind of image. It's basically impossible to do filtering or validation on these scenarios. Of course, I'm not giving the possibility that you would add some TensorFlow libraries and add some MachineLearning and Image pattern recognition on your Emulator, because, well. That's using Mjolnir (Thor's Hammer) on a little ant.
So that's why Habbo created this way. The jSON one. As far I remember I was the only one that actually created a successful implementation of it. But if I recall correctly, Wesley also created his own Habbo Camera Server in Java, for Arcturus. He never shared. But his implementation was literally amazing. Since he could use the advantages of Java Image manipulation libraries.
On my side, I was doing it with PHPs builtin image manipulation libraries, that suck. Since I wanted to make an easy library that anyone could use. If I added Imagick for example as a requisite, almost no one would have used that script. Since it requires custom installation and PHP library installation.
Sorry for the big off-topic. Here's an invisible potato.
About this release. Great work for the team. I hope the project goes on indefinitely and brings back the nostalgia of collaboration and open source.
- - - Updated - - -
TL;DR: PNGCamera it's not a good thing. But still a lot more easier.
Thanks for the heads-up. I really thought the camera wasn't a big deal to make but I can understand why PNG camera stuff is made. I still am against using work-arounds out of laziness (if I can call it that) of reverse engineering. Thus, I really hope somebody would someday take time to reverse engineer it and create a safe...-r camera system.
Of course, I still have hopes for this project. As long as the rest is implemented the right way I think we can't complain as community.
Thanks for your thoughts. Actually I made that. But it's lot on the internet, since the original repo was deleted.
It seems that I found one of the old versions here: https://github.com/scottstamp/habbo-camera-server
Thanks Scott, for having a mirror of it :)
- - - Updated - - -
This script is almost 4 years old. Still has a good engineering and math effort on it :)
- - - Updated - - -
Here's an example of the jSON send by the Habbo Client (SWF): https://jsonblob.com/caf46b7c-8332-1...9-75bd405ad830
Its apain in the ass to code. I dreaded to make it but too many people requested it hence why I was like: Okay I make it but you gotta give me something in return for the nightmares this caused.
Mine is okay ish. There is still a lot to improve but I really cannot make it more extended without killing performance. Floors are just a pain in the butt I havent figured out yet. I know what needs to be done to have it render properly but I still cant quite get it right.
As for scripting protection yeah it is easier to protect compared to a regular picture via pngcamera.
I've never taken a look in it (properly), I've seen the JSON a bit before somewhere but that's all; I do understand though how annoying it can be to figure out. I do have mad respect for those who are able to (reverse engineering isn't my strong point, neither is it my biggest interest). Yeah, performance is essential, though it depends on how much things wouldn't go right when creating an image without those improvements. It's a matter of picking between performance and completeness, and then it all depends on the performance (lets say it would take more than 5 seconds longer I can understand, but barely 1 second isn't worth to not improve over).
Anyways, @ all moderators; sorry for going off-topic (IF this is considered off-topic); I thought this is still in a way related to the topic.
Shaving off 10ms is worth improving when you get about 10 requests per second.
any specific reason why the compiled server keeps setting my rank back to 1?
Hello, great to read this topic,
I have been impressed since the introduction.
Does this mean that the emulator is Open Source, is the PNG Camera working? I dont have great experience with a Emulator update, is it easy to update? Finally, which CMSs are working with this emulator?
Kind regards,
Last edited by Rickzo; 03-06-19 at 12:49 PM.
They could pass a cms for this emulator, Thanks a great greeting.
Good evening, thank you for the project, I'm using my hotel.My doubts are as follows:I put the plug in the source and I got a camera, but that's a mistake in that part:
and in the emulator, this error appears:
otherwise, the camera works normally. I look forward to any help ...
otherwise, the camera works normally. I look forward to any help ...