Cyclone - HTML5 Engine [TypeScript, Phaser, React, SocketIO, MultiDB]

Status
Not open for further replies.

Sapphire

Member
Apr 7, 2019
6
43
Completed ArangoDB (Orango) -> GraphQL (Prisma) conversion

Here's a glimpse of the datamodel, this is no where near complete but we've converted everything we had from Arango. We will be fine tuning this along the way.

JavaScript:
enum banType {
    USER,
    IP,
    MACHINE
}

enum banStatus {
    BANNED,
    OVERRULED,
    APPEALING,
    REJECTED
}

type Ban @pgTable(name: "bans") {
    id: ID!@id
    reason: String
    status: banStatus
    type: banType
    user: Int
    ip: String
    machine: String
    by: Int
    createdAt: DateTime @createdAt
    updatedAt: DateTime @updatedAt
}

type Badge @pgTable(name: "badges") {
    id: ID!@id
    code: String!@unique
    description: String
}

type Bot @pgTable(name: "bots") {
    id: ID!@id
    name: String
    motto: String
    inventory: Boolean
    owner: Int
    gender: Boolean
    figure: String
    type: String
    state: [String] @scalarList(strategy:RELATION)
    action:    [String] @scalarList(strategy:RELATION)
    position: [Int] @scalarList(strategy:RELATION)
    messages: String
    chatBubble: Int
    chatAuto: Int
    chatRandom: Boolean
    chatDelay: Int @default(value: 4)
}

type CatalogItem @pgTable(name: "catalog_items") {
    id: ID!@id
    page: Int
    item: Int
    name: String
    price: Currencies
    amount: Int
    limited: Boolean
    maximum: Int @default(value: -1)
    stack: Boolean @default(value: true)
    active: Boolean
}

type Room @pgTable(name: "rooms") {
    id: ID!@id
    name: String!
    description: String
    tag: [String] @scalarList(strategy:RELATION)
    likes: Int
    password: String
    type: Int
    category: Int
    owner: Int
    max: Int
    background: [Int] @scalarList(strategy:RELATION)
    wallpaper: Int
    floor: Int
    landscape: Int
    wallThickness: Int
    tileThickness: Int
    trading: Boolean
    effects: Boolean
    pets: Boolean
    petsEat: Boolean
    hideWired: Boolean
    staffPicks: Boolean @default(value: false)
    createdAt: DateTime @createdAt
    updatedAt: DateTime @updatedAt
}

type User @pgTable(name: "users") {
    id: ID!@id
    name: String!@unique
    email: String
    password: String
    pin: Int
    motto: String
    figure: String
    rank: Int
    vip: Int
    online: Boolean
    verified: Int
    home: Int
    volume: Int
    muted: Boolean
    createdAt: DateTime @createdAt
    updatedAt: DateTime @updatedAt
}

We should have the catalog pages completed by the end of day so be on the watch for those shortly!
 
Last edited:

harambe

Donator
Dec 3, 2018
154
115
Completed ArangoDB (Orango) -> GraphQL (Prisma) conversion

Here's a glimpse of the datamodel, this is no where near complete but we've converted everything we had from Arango. We will be fine tuning this along the way.

JavaScript:
enum banType {
    USER,
    IP,
    MACHINE
}

enum banStatus {
    BANNED,
    OVERRULED,
    APPEALING,
    REJECTED
}

type Ban @pgTable(name: "bans") {
    id: ID!@id
    reason: String
    status: banStatus
    type: banType
    user: Int
    ip: String
    machine: String
    by: Int
    createdAt: DateTime @createdAt
    updatedAt: DateTime @updatedAt
}

type Badge @pgTable(name: "badges") {
    id: ID!@id
    code: String!@unique
    description: String
}

type Bot @pgTable(name: "bots") {
    id: ID!@id
    name: String
    motto: String
    inventory: Boolean
    owner: Int
    gender: Boolean
    figure: String
    type: String
    state: [String] @scalarList(strategy:RELATION)
    action:    [String] @scalarList(strategy:RELATION)
    position: [Int] @scalarList(strategy:RELATION)
    messages: String
    chatBubble: Int
    chatAuto: Int
    chatRandom: Boolean
    chatDelay: Int @default(value: 4)
}

type CatalogItem @pgTable(name: "catalog_items") {
    id: ID!@id
    page: Int
    item: Int
    name: String
    price: Currencies
    amount: Int
    limited: Boolean
    maximum: Int @default(value: -1)
    stack: Boolean @default(value: true)
    active: Boolean
}

type Room @pgTable(name: "rooms") {
    id: ID!@id
    name: String!
    description: String
    tag: [String] @scalarList(strategy:RELATION)
    likes: Int
    password: String
    type: Int
    category: Int
    owner: Int
    max: Int
    background: [Int] @scalarList(strategy:RELATION)
    wallpaper: Int
    floor: Int
    landscape: Int
    wallThickness: Int
    tileThickness: Int
    trading: Boolean
    effects: Boolean
    pets: Boolean
    petsEat: Boolean
    hideWired: Boolean
    staffPicks: Boolean @default(value: false)
    createdAt: DateTime @createdAt
    updatedAt: DateTime @updatedAt
}

type User @pgTable(name: "users") {
    id: ID!@id
    name: String!@unique
    email: String
    password: String
    pin: Int
    motto: String
    figure: String
    rank: Int
    vip: Int
    online: Boolean
    verified: Int
    home: Int
    volume: Int
    muted: Boolean
    createdAt: DateTime @createdAt
    updatedAt: DateTime @updatedAt
}

We should have the catalog pages completed by the end of day so be on the watch for those shortly!
This is sick! Loving the progress.
 

LeChris

https://habbo.codes/
Sep 30, 2013
2,786
1,395
I'll admit that this is the first HTML5 project that seems it may actually go somewhere. The creators are adamant of it and have not only the financial ability to, but the mental mindset to ensure this project continues.

Great progress and cannot wait to see what else may come of this development. Unsure where you are in deciding if this will be open sourced, but I greatly encourage it. The history of this community tends to try to destroy any projects without open source code, even if the users cannot understand a single line.

Don't forget to update your thread
 

Ghost

Legacy, it's all anyone leaves behind.
Jun 8, 2012
1,640
503
Damn if this continues Habbo will be looking to hire y'all, I hope this finishes, alot out there currently have not.
 

LaPatron

Smile, because it confuses people.
Nov 23, 2017
72
155
Thank you everyone for the continuous support, it really is appreciated.

Update Number 0.0.5

Great news, so in the past few weeks we've been working very hard on core issues and having countless discussion on our architecture and this lead to us finding out several issues:
  • Lack of Types in our code
  • WebGL scaling issue with Canvas drawings in Phaser
and messy code in general, so we've spent the last week or so fixing (or atleast figuring out whats going wrong) with these and resolved most of them. The WebGL scaling issue that we were encountering is that drawings were not 1:1 from device to device and browser to browser, i.e. an accurate tile drawn in canvas is different to on Device #1 and Device #2, it's not major but minor - still tho we have identified whats causing the issue, raised an issue on Phaser's Github and in parallel are working on a fix/hack for it - this has taken us a good while to see exactly what and where but we're confident that we can fix it.

On top of this, we would like to welcome the following people to the project:

@LeChris - Contributor for the CMS
Kychloren - Contributor for the UI and Server
@Laynester - Quality Assurance

With the addition of new members comes new needs, so we went back and rewritten everything to have support for Types, instead of switching to Typescript - which would've taken longer due to the learning curve.

We have also decided to create a Furniture converter and downloader, so soon you will NOT have to wait till someone releases the latest furniture from Habbo, it will be automatically downloaded and added to the Housekeeping - where you, set the price and etc. and publish it directly with ease.

NEW: We will be adding support for Gamepads (Controllers) so you can soon use your Xbox, PS4, Wii etc. controllers in the hotel (and possibly on the website too). And hopefully in the long term allow for apps to be package for consoles too! Because its about time Habbo hits the consoles.

Completed
  • Furniture
    • Rotation
    • Static Furniture
    • Animated Furniture
  • Desktop
    • Rewritten for Windows React Native -
  • UI
    • 4K Scaling
    • Hotel View
      • Added Drape
      • Added Action Buttons
    • Mod Tools - STARTED
    • Catalogue
      • Banner Image
      • Dynamically generated from the DB
  • Server
    • Rewritten with better architecture
    • Added types with FlowType
Our sole focus right now would be to complete the furniture in terms of furniture with different states, furniture to go on the wall (as these are the base furniture types) in parallel we are also working on the chat bubbles and habbo avatar imager, so expect those to be complete in the next few weeks.

Static Furniture
unknown.png


Animated Furniture



Furniture Rotation

HABBO in 2K
unknown.png


Cyclone in 2K
unknown.png
unknown.png

Latest hotel view (1080p)
b5af768b96dc745c2d2a875dfbb39356.jpg
 
Last edited:

Platinum

Hello!
Sep 2, 2012
295
282
Are you using Postgres now?

This looks like a project for the sake of high quality engineering, which is really nice to see, good luck!

Yes, it's multi-DB; the supported databases will be MySQL, MariaDB, MongoDB, PostgreSQL and ArangoDB, all thanks to GraphQL and Prisma.

If you have any further questions then feel free to join our server. :)
 

LaPatron

Smile, because it confuses people.
Nov 23, 2017
72
155
Are you using Postgres now?

This looks like a project for the sake of high quality engineering, which is really nice to see, good luck!

Yes, it's multi-DB; the supported databases will be MySQL, MariaDB, MongoDB, PostgreSQL and ArangoDB, all thanks to GraphQL and Prisma.


PostgreSQL will be the primary DB we use for development, however, Cyclone will also be compatible with all of the database engines mentioned by @Platinum above.

Update Number 0.0.6

Cyclarcturus.png



CYCLONE WILL NOW BE COMPATIBLE WITH ARCTURUS SERVER


7z8bhEt.png



What does this mean if you use Arcturus?

It means you can continue to use Arcturus if you decide to take your hotel to HTML5. You will not have to migrate anything from your database because in this case it will be using just the Cyclone client, it will have the complete feature set that the Cyclone server will have, thanks to TheGeneral AKA Wesley.

Will all UIs be supported?

Yes, you can run any of the UIs used in Cyclone, which will be listed at the bottom of this update. This means that you can run a hotel with any amount of UIs so you can have a wide range of players scattered amongst UI's to their liking, for example, one user can be using the R63B UI whereas another user can be on R26.

Of course there will be differences in features such as polls as they will be displayed differently depending on which UI, but clothes, pets and furniture will be completely consistent across all versions, meaning you can have things like horses on the R26 version too!

What about games such as Snowstorm?

We haven't currently gotten to the stage of developing mini-games yet, but the plan is to offer support for these through Arcturus.

So, whats the catch?

This of course means you will be unable to use the Cyclone server, CMS, housekeeping and various other tools that it will be packaged with. The workaround? Using a CMS that supports Arcturus and its database schema. The client (page) will need to be modified to support the new HTML5 client.

This will also restrict you to use MySQL/MariaDB as that is what Arcturus runs on. And just to make it clear, you will be able to use most, if not all of the features available in the client through Arcturus, just not the features available outside of the client scope.

What if I'm using Plus?

We will provide a Plus to Cyclone converter so you can switch all your data (without any of it being lost) to the Cyclone platform. Another alternative would be for you to switch to Arcturus and continue using Arcturus, but do this at your own risk (as we will not provide help for converting from Plus to Arcturus). This would mean you can no longer use Plus for your server.

What about Morningstar and other (custom) servers?

No current information can be provided regarding this as we're still discussing the best way to approach the matter at hand. We're happy to discuss the possibility of integration anytime with any project, so do not be afraid to contact us on our official . (Theoretically anyone can write a server for the client with the APIs.)

With parts of the community being divided and things are seemingly heated between Arcturus and Morningstar, we would like to make it apparent that Cyclone does not condone division amongst the community and therefor from our standpoint, we will provide no further comments on this matter as we will simply disregard any questions relating to this.

More information regarding the usage of Arcturus server will be posted as we reach near the completion of the client, which isn't too far off!

Planned UIs: Mobile Friendly, R63B, R63, R26, R18, Illumina and Destiny. ( )

Also a quick note, due to him having a busy schedule and a lack of time, ex-contributor known as Blidnight will no longer be a part of the Cyclone team, thanks for everything!

If you have any comments, requests, feedback or even just want to say hi, then feel free to join us on our discord - we're neutral and we don't pick sides (proudly have 0 bans):


Right.. now that's out of the way, here's what we will bring in 0.0.6:

Completed Tasks:
  • UI
    • Friend Slots
    • Find Friends
    • Toolbar Toggles
    • Dialog Resize (Handle Design)
    • Room Quiz(/Poll)
    • Progress Bar Component
      • Bonus Bar on the Hotel view
    • Mod Tools 0.0.2
    • Started on R26 UI
    • Started on R63D (Prototype UI)
  • Client
    • Merged with the UI
    • Furniture logic refactored
    • (Basic) Chat bubbles
  • Tools
    • SWF to Cyclone (HTML5) Converter
  • Core
    • Lerna - Seperation into multiple packages ( )
    • Refactor - Types added everywhere (including the client), cleaned up classes etc.
    • Started documentation of all the code on Docusaurus
    • Restructured folders, NPM scripts
    • Started writing Unit Tests with 10% coverage so far (which we're focusing very hard on to get it to atleast 90% in the next few weeks)
Yes, you heard that right! Every single furniture available on Habbo is now available on Cyclone! We've been working very hard on the conversion tool over the past few days and we've learnt a great deal about the furniture logic and it helped us in the refactoring process resulting in better code and performance in the furniture generation. For those using Arcturus or Plus - yes, you will have to replace your SWFs with Cyclone / HTML5 assets.

Without a doubt there is still a ton of work to do but everyday we're getting that extra bit closer and we're continuously proud of it. As promised we will continue working on the generation of wall furniture such as posters very soon, and after that comes the fun part like avatar figures, chat bubbles and much more!

Once again we would like to thank you ever so much for your continued support. :)



unknown.png




Bare in mind, the work displayed is not to a proper standard, we have several refining processes in place so we can ensure quality with multiple quality checks so we don't miss a single pixel - this is just to show you the progress overtime.

Here's quickly another thing worth knowing, we always have someone working on Cyclone - round the clock 24/7, and we've hit just over 350 commits recently!


f044cbddff24352c798d35d2abd8d0cc.png



More updates will be coming soon.
 
Last edited:

Sapphire

Member
Apr 7, 2019
6
43
We will be hosting a pre-alpha (so people can play around and check for bugs etc.) soon for anyone interested please join our discord and PM one of the maintainers, we will select 5-10 people out of random and all quality assurance members are automatically qualified for this. Screenshots and videos will be posted as promised, shortly.
 

LaPatron

Smile, because it confuses people.
Nov 23, 2017
72
155
Update 0.0.6 Continued

Furniture - Furniture works completely different in Cyclone, this is an example of the throne shown above - for those interested, this is how it'd be. We will updating this specific post later today with alot of the screenshots and components etc, so keep your eyes open!


You must be registered for see images attach


JSON:
{
    "frames": {
        "10_throne_throne_64_a_0_0.png": {
            "frame": {
                "x": 1,
                "y": 1,
                "w": 23,
                "h": 40
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 23,
                "h": 40
            },
            "sourceSize": {
                "w": 23,
                "h": 40
            }
        },
        "11_throne_throne_32_a_0_0.png": {
            "frame": {
                "x": 26,
                "y": 1,
                "w": 11,
                "h": 21
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 11,
                "h": 21
            },
            "sourceSize": {
                "w": 11,
                "h": 21
            }
        },
        "13_throne_throne_64_b_0_0.png": {
            "frame": {
                "x": 39,
                "y": 1,
                "w": 63,
                "h": 78
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 63,
                "h": 78
            },
            "sourceSize": {
                "w": 63,
                "h": 78
            }
        },
        "15_throne_throne_32_a_2_0.png": {
            "frame": {
                "x": 104,
                "y": 1,
                "w": 33,
                "h": 42
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 33,
                "h": 42
            },
            "sourceSize": {
                "w": 33,
                "h": 42
            }
        },
        "16_throne_throne_32_b_0_0.png": {
            "frame": {
                "x": 1,
                "y": 45,
                "w": 32,
                "h": 39
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 32,
                "h": 39
            },
            "sourceSize": {
                "w": 32,
                "h": 39
            }
        },
        "1_throne_throne_64_a_2_0.png": {
            "frame": {
                "x": 139,
                "y": 1,
                "w": 63,
                "h": 85
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 63,
                "h": 85
            },
            "sourceSize": {
                "w": 63,
                "h": 85
            }
        },
        "2_throne_throne_64_sd_2_0.png": {
            "frame": {
                "x": 1,
                "y": 88,
                "w": 64,
                "h": 32
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 64,
                "h": 32
            },
            "sourceSize": {
                "w": 64,
                "h": 32
            }
        },
        "3_throne_throne_32_b_2_0.png": {
            "frame": {
                "x": 67,
                "y": 88,
                "w": 15,
                "h": 21
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 15,
                "h": 21
            },
            "sourceSize": {
                "w": 15,
                "h": 21
            }
        },
        "5_throne_throne_64_b_2_0.png": {
            "frame": {
                "x": 84,
                "y": 88,
                "w": 30,
                "h": 42
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 30,
                "h": 42
            },
            "sourceSize": {
                "w": 30,
                "h": 42
            }
        },
        "7_throne_throne_32_sd_2_0.png": {
            "frame": {
                "x": 116,
                "y": 88,
                "w": 32,
                "h": 15
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 32,
                "h": 15
            },
            "sourceSize": {
                "w": 32,
                "h": 15
            }
        },
        "8_throne_throne_icon_a.png": {
            "frame": {
                "x": 150,
                "y": 88,
                "w": 22,
                "h": 30
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 22,
                "h": 30
            },
            "sourceSize": {
                "w": 22,
                "h": 30
            }
        }
    },
    "meta": {
        "version": "1.0",
        "format": "RGBA8888",
        "size": {
            "w": 203,
            "h": 131
        },
        "scale": "1"
    }
}

The basic chatbar component has been complete, we will still need to add a few toggles for it to be fully functional, and the best part is that we've completed the chat bubbles too!
unknown.png


unknown.png


unknown.png




Updated (Hotel View, Catalogue, Resize button, Bonus - and progressbar, Toggle Friends and much more!)
364413586c59b0e6ea328215bc275b33.jpg


Bear in mind all of the UI is in JSX so everything is pretty customizable :)

For those who aren't aware, the project Platinum ( ) no longer exists, and is now a part of Cyclone. We have also been working very hard for the pre-Alpha stage, in which players will be able to load a room with over a 2000 tiles and at least 1000 pieces of furniture for testing purposes, if you still haven't signed up - THERES STILL TIME!

Current roadmap for the Pre-Alpha (Expected: 5 Days | Maximum: 12 Days)

- [ ] Refactor and finish Furniture
- [ ] Habbo Imager
- [ ] Chat flow animation (and states)
- [ ] Multiple chat bubbles
- [ ] ChatHandler in the Server

As you can see we only have a few more steps before we're ready for the pre-alpha so we are very excited
 
Last edited:

Denero

New Member
May 11, 2019
23
6
Update 0.0.6 Continued

Furniture - Furniture works completely different in Cyclone, this is an example of the throne shown above - for those interested, this is how it'd be. We will updating this specific post later today with alot of the screenshots and components etc, so keep your eyes open!


You must be registered for see images attach


JSON:
{
    "frames": {
        "10_throne_throne_64_a_0_0.png": {
            "frame": {
                "x": 1,
                "y": 1,
                "w": 23,
                "h": 40
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 23,
                "h": 40
            },
            "sourceSize": {
                "w": 23,
                "h": 40
            }
        },
        "11_throne_throne_32_a_0_0.png": {
            "frame": {
                "x": 26,
                "y": 1,
                "w": 11,
                "h": 21
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 11,
                "h": 21
            },
            "sourceSize": {
                "w": 11,
                "h": 21
            }
        },
        "13_throne_throne_64_b_0_0.png": {
            "frame": {
                "x": 39,
                "y": 1,
                "w": 63,
                "h": 78
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 63,
                "h": 78
            },
            "sourceSize": {
                "w": 63,
                "h": 78
            }
        },
        "15_throne_throne_32_a_2_0.png": {
            "frame": {
                "x": 104,
                "y": 1,
                "w": 33,
                "h": 42
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 33,
                "h": 42
            },
            "sourceSize": {
                "w": 33,
                "h": 42
            }
        },
        "16_throne_throne_32_b_0_0.png": {
            "frame": {
                "x": 1,
                "y": 45,
                "w": 32,
                "h": 39
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 32,
                "h": 39
            },
            "sourceSize": {
                "w": 32,
                "h": 39
            }
        },
        "1_throne_throne_64_a_2_0.png": {
            "frame": {
                "x": 139,
                "y": 1,
                "w": 63,
                "h": 85
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 63,
                "h": 85
            },
            "sourceSize": {
                "w": 63,
                "h": 85
            }
        },
        "2_throne_throne_64_sd_2_0.png": {
            "frame": {
                "x": 1,
                "y": 88,
                "w": 64,
                "h": 32
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 64,
                "h": 32
            },
            "sourceSize": {
                "w": 64,
                "h": 32
            }
        },
        "3_throne_throne_32_b_2_0.png": {
            "frame": {
                "x": 67,
                "y": 88,
                "w": 15,
                "h": 21
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 15,
                "h": 21
            },
            "sourceSize": {
                "w": 15,
                "h": 21
            }
        },
        "5_throne_throne_64_b_2_0.png": {
            "frame": {
                "x": 84,
                "y": 88,
                "w": 30,
                "h": 42
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 30,
                "h": 42
            },
            "sourceSize": {
                "w": 30,
                "h": 42
            }
        },
        "7_throne_throne_32_sd_2_0.png": {
            "frame": {
                "x": 116,
                "y": 88,
                "w": 32,
                "h": 15
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 32,
                "h": 15
            },
            "sourceSize": {
                "w": 32,
                "h": 15
            }
        },
        "8_throne_throne_icon_a.png": {
            "frame": {
                "x": 150,
                "y": 88,
                "w": 22,
                "h": 30
            },
            "rotated": false,
            "trimmed": false,
            "spriteSourceSize": {
                "x": 0,
                "y": 0,
                "w": 22,
                "h": 30
            },
            "sourceSize": {
                "w": 22,
                "h": 30
            }
        }
    },
    "meta": {
        "version": "1.0",
        "format": "RGBA8888",
        "size": {
            "w": 203,
            "h": 131
        },
        "scale": "1"
    }
}

The basic chatbar component has been complete, we will still need to add a few toggles for it to be fully functional, and the best part is that we've completed the chat bubbles too!
unknown.png


unknown.png


unknown.png




Updated (Hotel View, Catalogue, Resize button, Bonus - and progressbar, Toggle Friends and much more!)
364413586c59b0e6ea328215bc275b33.jpg


Bear in mind all of the UI is in JSX so everything is pretty customizable :)

For those who aren't aware, the project Platinum ( ) no longer exists, and is now a part of Cyclone. We have also been working very hard for the pre-Alpha stage, in which players will be able to load a room with over a 2000 tiles and at least 1000 pieces of furniture for testing purposes, if you still haven't signed up - THERES STILL TIME!

Current roadmap for the Pre-Alpha (Expected: 6 Days | Maximum: 13 Days)

- [ ] Refactor and finish Furniture
- [ ] Habbo Imager
- [ ] Chat flow animation (and states)
- [ ] Multiple chat bubbles
- [ ] ChatHandler in the Server

As you can see we only have a few more steps before we're ready for the pre-alpha so we are very excited

This is moving along very quickly. Great progress.
If there's a place to give donations let me know.
 

LaPatron

Smile, because it confuses people.
Nov 23, 2017
72
155
Sorry for a lack of updates on here, those of you who are available on our discord would realise the project is very much active and alive!

Update 0.0.7 and 0.0.8

So what's new?

Refactoring, ALOT of it! But it doesn't just end there! We've been busy recruiting new members into the team, here is our team as it stands:

@EZC - Lead Maintainer - British
Sapphire - Maintainer - Italian
Kychloren - Maintainer - French
lElectrico - Maintainer - Spanish
Blidnight - Developer - French
TheGeneral - Developer - Dutch
LeChris - Developer - American
ThePapaNoob - Developer - German
Droppy - Contributor - Brazilian
Ovflowd - Contributor - Brazilian
Billsonnn - Contributor - American
Sonay Medoza - Contributor - German
ElBuffador - Contributor - French
Platinum - Head Quality Assurance - British
Laynester - Quality Assurance - Canadian
Deni - German Community Leader - German
Stown - French Community Leader - French

Previous team member(s): Cristoforo58 - Italian Community Leader - Italian

This is a strategic decision we've taken not only to strengthen our skills and to add more experience to our roster but to work on different components of the project in parallel so you should be seeing more progress in a shorter amount of time!


Habbo avatar generation, pathfinding and walking now fully function!

And we completely refactored furniture generation (with full support for Animations), rotation and depth sorting! More videos, information and even code about this will be posted soon.


Postfix

There are still some minor issues with layering, but this is something we'll be fixing over the next few days and post on 0.0.9 (i.e on the fans in the above video) FIXED!

And as if even that wasn't enough, we've got canvas working on the mobile platform making progress there too :)

image1.png


image0.png



It only keeps getting better! (Please bear in mind this video consist of an older build of the client)

Here's whats coming in 0.0.9:
  • Wall furniture
  • Furniture stacking
  • Door
  • Room chat (Chat Bubbles and Chat flow)
  • Multiplayer
  • Navigator (with the ability to create rooms)
  • UI fixes
  • [UI] Information Panel
  • [UI] Room Toggles
  • Group Forums
and last but not least, a whole lot more refactoring as we're aiming to write the best possible code!

Another interesting discussion point is that with Cyclone's CMS you will be write your articles with Markdown! We've taken a step away from the generic alternatives available out there to make the experience of news authors much simpler yet still have all the powerful functionality if need be, and another way to connect retros with the outside world.

In light of these recent updates, our pre-alpha will be slightly delayed than we originally planned, but fear not, the testers will remain the same and the process will be the same just with more stable features, thank you for your patience it is highly appreciated.

Another piece of information that we've forgotten to mention: We've gone full TypeScript and we just love it! this didn't take us longer than 2 days to switch everything over to surprisingly.

We'll also add some new videos once we've patched the minor bugs :) DONE!
 
Last edited:
Status
Not open for further replies.

Users who are viewing this thread

Top