Menu
Forums
All threads
Latest threads
New posts
Trending threads
New posts
Search forums
Trending
What's new
New posts
New profile posts
Latest activity
Members
Current visitors
New profile posts
Search profile posts
Upgrades
Log in
Register
What's new
Search
Search
Search titles only
By:
All threads
Latest threads
New posts
Trending threads
New posts
Search forums
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
Server Development
Habbo Retros
Habbo Development
shroom - HTML5 Room Rendering Engine for Retros [ALPHA RELEASE]
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="Johnix" data-source="post: 466774" data-attributes="member: 97825"><p>It basically makes it easy for developers to create their own HTML5 client, without them knowing much about how habbo renders avatars, furniture and rooms. Since flash is dead now, this is a good starting point for developing a new retro client.</p><p></p><h2>Version v0.5.1</h2><p>Since my last post, a few new minor versions were released.</p><p>A lot of new features have been added, and I really can't go into detail for every one.</p><p>Thanks for all the contributions and feedback by the community!</p><p></p><p>I want to highlight one though, which has been released in todays version <strong>v0.5.1</strong>.</p><p>In the new version, an extra command has been added to the CLI. It is called <strong>shroom proxy.</strong></p><p></p><p>This is a utility, so your HTML5 client can talk to your emulator smoothly, without implementing WebSocket handling on the emulator itself.</p><p></p><p>This works by creating a WebSocket server, which forwards and mirrors all connections and messages to the emulator and vice versa.</p><p></p><p>[CODE=bash]shroom proxy --target-port 30000 --port 30003[/CODE]</p><p></p><p>This code would create a WebSocket server for the client at port 30003 and proxies all connections to the emulator at 30000.</p><p>Here a grahic hopefully visualizing a bit how the setup will work.</p><p>[ATTACH=full]11924[/ATTACH]</p><p>You can get this command by running.</p><p>[CODE]npm install -g @jankuss/shroom[/CODE]</p><p></p><p></p><p>Here the rest of the additions, fixes and changes since my last post:</p><p></p><p>[CODE]### Added</p><p></p><p>- `shroom proxy` command: Proxy & translate WebSocket messages to something the emulator will understand</p><p> This enables you to communicate with the emulator through websockets, without making any adjustments to</p><p> the emulator itself.</p><p>- Option to hide tile cursor in a room with `room.hideTileCursor`</p><p>- BaseFurniture now has a onLoad callback, which gets called after the furniture is fully loaded</p><p>- Add `headDirection` option for `avatar.walk()`</p><p>- Add corner stairs (thanks @tuttarealstep)</p><p>- Add `skipCaching` option to `BaseAvatar` to skip unnecessary caching from the AvatarLoader (thanks @somekindadude)</p><p>- Customizable furniture visualizations through `furniture.visualization = /*...*/`</p><p>- Option to not render body when using `BaseAvatar` (thanks @somekindadude)</p><p>- Option to specify `headRotation` for avatars (thanks @somekindadude)</p><p>- Add Avatar placeholder when loading</p><p>- Furniture will now only use valid directions</p><p>- `screenPosition` property for `Avatar`</p><p>- Add `BaseAvatar` for rendering avatars without a room</p><p>- Add `BaseFurniture` for rendering furniture without a room</p><p>- Add `onActiveTileChange` events for detecing hovered tile (useful for furniture placement preview)</p><p>- Add ability to share a shroom instance with multiple applications through `Shroom.createShared`</p><p>- Furniture will now only use valid directions</p><p></p><p>### Changed</p><p></p><p>- Providing no direction in `avatar.walk()` doesn't modify the avatars direction now</p><p>- Improve tilemap parsing to handle carriage return in string</p><p>- Change default wall color to use the original</p><p>- Improve asset dumping behavior (thanks @thereis)</p><p></p><p>### Fixed</p><p></p><p>- Display of furniture with special layer offsets for a direction</p><p>- Fix coloring of clothing when changing the look</p><p>- Avatar displaying behind bed while laying</p><p>- Furniture default coloring not being applied</p><p>- Fix some furniture layers not showing</p><p>- Fix furniture not displaying at all when one asset fails to load</p><p>- Furniture animations getting stuck</p><p>- Avatar zIndex not respected for HitDetection</p><p>- Fix directions for furniture with out of order directions in `visualization.bin`</p><p>- Fix behaviors called before `BaseFurniture` initialized</p><p>- Fix tile cursor displaying above furniture</p><p>- Avatar `onClick` and `onDoubleClick` not firing</p><p>- Wall border hiding for some room models where they shouldn't</p><p>- Fix bug in AvatarSprites when updating without being mounted</p><p>- Fix wall display for some room models</p><p>- Fix alpha for furniture</p><p>- Tile Cursor now shows above flooring items</p><p>- Fix `RoomCamera` drag stopping when going over dom elements</p><p>- Fix `RoomCamera` drag passing through other PIXI elements</p><p>- Fix Avatar hair clipping through hats</p><p>- Fix Avatar sleeves for some T-Shirts because library wasn't detected</p><p>- Fix animations for some furnitures</p><p>- Fix wall border showing for tiles on a higher level than the wall (thanks @tuttarealstep)[/CODE]</p></blockquote><p></p>
[QUOTE="Johnix, post: 466774, member: 97825"] It basically makes it easy for developers to create their own HTML5 client, without them knowing much about how habbo renders avatars, furniture and rooms. Since flash is dead now, this is a good starting point for developing a new retro client. [HEADING=1]Version v0.5.1[/HEADING] Since my last post, a few new minor versions were released. A lot of new features have been added, and I really can't go into detail for every one. Thanks for all the contributions and feedback by the community! I want to highlight one though, which has been released in todays version [B]v0.5.1[/B]. In the new version, an extra command has been added to the CLI. It is called [B]shroom proxy.[/B] This is a utility, so your HTML5 client can talk to your emulator smoothly, without implementing WebSocket handling on the emulator itself. This works by creating a WebSocket server, which forwards and mirrors all connections and messages to the emulator and vice versa. [CODE=bash]shroom proxy --target-port 30000 --port 30003[/CODE] This code would create a WebSocket server for the client at port 30003 and proxies all connections to the emulator at 30000. Here a grahic hopefully visualizing a bit how the setup will work. [ATTACH type="full"]11924[/ATTACH] You can get this command by running. [CODE]npm install -g @jankuss/shroom[/CODE] Here the rest of the additions, fixes and changes since my last post: [CODE]### Added - `shroom proxy` command: Proxy & translate WebSocket messages to something the emulator will understand This enables you to communicate with the emulator through websockets, without making any adjustments to the emulator itself. - Option to hide tile cursor in a room with `room.hideTileCursor` - BaseFurniture now has a onLoad callback, which gets called after the furniture is fully loaded - Add `headDirection` option for `avatar.walk()` - Add corner stairs (thanks @tuttarealstep) - Add `skipCaching` option to `BaseAvatar` to skip unnecessary caching from the AvatarLoader (thanks @somekindadude) - Customizable furniture visualizations through `furniture.visualization = /*...*/` - Option to not render body when using `BaseAvatar` (thanks @somekindadude) - Option to specify `headRotation` for avatars (thanks @somekindadude) - Add Avatar placeholder when loading - Furniture will now only use valid directions - `screenPosition` property for `Avatar` - Add `BaseAvatar` for rendering avatars without a room - Add `BaseFurniture` for rendering furniture without a room - Add `onActiveTileChange` events for detecing hovered tile (useful for furniture placement preview) - Add ability to share a shroom instance with multiple applications through `Shroom.createShared` - Furniture will now only use valid directions ### Changed - Providing no direction in `avatar.walk()` doesn't modify the avatars direction now - Improve tilemap parsing to handle carriage return in string - Change default wall color to use the original - Improve asset dumping behavior (thanks @thereis) ### Fixed - Display of furniture with special layer offsets for a direction - Fix coloring of clothing when changing the look - Avatar displaying behind bed while laying - Furniture default coloring not being applied - Fix some furniture layers not showing - Fix furniture not displaying at all when one asset fails to load - Furniture animations getting stuck - Avatar zIndex not respected for HitDetection - Fix directions for furniture with out of order directions in `visualization.bin` - Fix behaviors called before `BaseFurniture` initialized - Fix tile cursor displaying above furniture - Avatar `onClick` and `onDoubleClick` not firing - Wall border hiding for some room models where they shouldn't - Fix bug in AvatarSprites when updating without being mounted - Fix wall display for some room models - Fix alpha for furniture - Tile Cursor now shows above flooring items - Fix `RoomCamera` drag stopping when going over dom elements - Fix `RoomCamera` drag passing through other PIXI elements - Fix Avatar hair clipping through hats - Fix Avatar sleeves for some T-Shirts because library wasn't detected - Fix animations for some furnitures - Fix wall border showing for tiles on a higher level than the wall (thanks @tuttarealstep)[/CODE] [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
Server Development
Habbo Retros
Habbo Development
shroom - HTML5 Room Rendering Engine for Retros [ALPHA RELEASE]
Top