Project Cortex

Page 6 of 15 FirstFirst 1234567891011121314 ... LastLast
Results 76 to 90 of 223
  1. #76
    Proficient Member KittyChloe is offline
    MemberRank
    Jul 2019 Join Date
    162Posts

    Re: Project Cortex



    I noticed that for larger room models, where the nodes would reach several hundreds if not thousands with each and every factor included, the frame rate would suffer by a couple of frames each time. I've since repaired this issue by only rendering each and every tile & wall once and saving it as a static image, using it as a "background" kind of. Changing the tiles/wall width/style causes the "background" to be re-generated. This all saves a lot of processing.

    I've also added avatars to the rooms; they're synced through the server with all room users. (The lag displayed below is NOT real-time. Only reason it buffers is because of the screen recorder ,_, everything works within milliseconds)


  2. #77
    Project CortexProject Cortex pel is offline
    MemberRank
    Jan 2012 Join Date
    Munich, GermanyLocation
    384Posts

    Re: Project Cortex

    Are you sending the payload as JSON?
    I'd rather see if you can find a different format since json has a lot of unneccesary characters which will bloat the payload.

    Otherwise cool work

  3. #78
    Developer Quackster is offline
    DeveloperRank
    Dec 2010 Join Date
    AustraliaLocation
    3,470Posts

    Re: Project Cortex

    Quote Originally Posted by KittyChloe View Post


    I noticed that for larger room models, where the nodes would reach several hundreds if not thousands with each and every factor included, the frame rate would suffer by a couple of frames each time. I've since repaired this issue by only rendering each and every tile & wall once and saving it as a static image, using it as a "background" kind of. Changing the tiles/wall width/style causes the "background" to be re-generated. This all saves a lot of processing.
    Awesome, it's cool to read about optimisation techniques like this. If it does the same thing but only faster, then why not?

  4. #79
    Proficient Member KittyChloe is offline
    MemberRank
    Jul 2019 Join Date
    162Posts

    Re: Project Cortex

    Quote Originally Posted by pel View Post
    Are you sending the payload as JSON?
    I'd rather see if you can find a different format since json has a lot of unneccesary characters which will bloat the payload.

    Otherwise cool work
    Everything's handled in JSON objects, yes. I don't feel like JSON has a lot of unneccesary stuff that will decrease the bandwidth speed enough to make the smallest difference. Either way, cons and pros considered, I'll be sticking to JSON objects for now.

    It also doesn't make sense to switch to another format since JavaScript has JSON integrated by default and I'd need to translate the server message into a JSON object either way. Adding another format from server to client would just increase the processing for reading the messages on the client and making use of them.

    Update



    With the very first few basics in place after some few couple days of hard work, I rewarded myself by returning to the interface. Rooms now have a box on the bottom left with like, zoom, settings and chat history buttons. Right now only the settings button is functional. The settings button opens up the room information dialog (yeah, misleading, blame Habbo) and on the information dialog, the room settings button and camera icon only appears if you're the owner of the room. Pressing the camera button brings up the room thumbnail camera (it's just the normal camera textures, but resized appropriately because... well... Habbo went cheap with just a normal dialog that doesn't even look good, yuck.


    Yeah, yuck.

    Taking a picture, renders the room canvas onto the canvas on the thumbnail camera as a sprite (it only render 110x110 pixels at the source offsets depending on where the camera is placed on the screen). The client then converts that canvas into a base64 URL, sending the url to the game server which then sends it to a PHP API which confirms that the web client is the game server, it's a valid image, and finally, it saves the base64 data as a PNG image on the web server. Yes, it can be abused, easily, however, this all falls into the "have the server render the room?" versus "just trust the client and ban the abusers" discussion that RageZone had a while back with the camera was a hot topic. The thumbnails are saved after the unix timestamp the web server receives the request. Why? It's better performance wise than looping through the files in the thumbnail folder to get the next available ID. The unix timestamp won't ever be the same.
    Last edited by KittyChloe; 28-03-20 at 09:33 PM.

  5. #80
    Apprentice Holyfuture is offline
    MemberRank
    Jul 2014 Join Date
    GermanyLocation
    16Posts

    Re: Project Cortex

    Keep up the good work. Really looking forward to see more from you :)

  6. #81
    Proficient Member KittyChloe is offline
    MemberRank
    Jul 2019 Join Date
    162Posts

    Re: Project Cortex



    Room navigator got some work done. Thumbnail type added, room information box, added a scrollbar and the expand button now actually shows the full list of rooms (max 10 when not expanded).



    Walking is now implemented into rooms. Client sends a request to navigate to a coordinate in the room, server received the request and checks if the client is in a room and that a path (generated through the A* algororithm) exists, if it does, the server stacks the path up with the room user object on the server, reducing it by 1 node each 500 milliseconds (15 frames) to sync the users properly up with someone just now entered the room. The client reads the path and if the avatar is set to already have a path, if it does, it saves the current node and stacks the new path up on it. Server does this too.

    The animations are not perfect and obviously gonna change, the arm sleeve issue is also gonna be fixed, it's got to do with a very specific asset which I'll find my way around. Stairs are also gonna be counted for when I get to that.



    (again, the delay only occurs because my computer is put on 100% CPU because of the screen recorder, everything runs smoothly when off)

    Update



    Stairs are now counted for. Arm sleeves fixed too.


    Update



    Very minimal work begun on furnitures, taking some time to set up a proper converter that utilizes all the data given in the flash binary files and then rendering it all up properly (assets, layers, visualization, logic, etc, etc). It's a tough process but I'm happy to dig my head into this and fight it! Right now, what you see above is a very basic furniture, obviously, a divider, single tile, single sprite. However, it uses nothing but what's given in the flash file to make the process of converting flash files into portable nodes as automatic as it can be.

    Generating SHORT but beautified paths for the furnitures is still a question mark for me, I'll look into what I can do about it as an automated process as I'm using Path2Ds. I'm going to be spending a lot of time in the furniture rendering to ensure it's as optimized as my scripting abillities allow.

    I'd like to take a quick moment to thank everyone who constantly views the topic, leaving comments, leaving likes, leaving feedback and even criticsm. It really boosts my motivation for this and I'm looking forward to see what I can produce for you guys! Thank you.
    Last edited by KittyChloe; 31-03-20 at 04:32 AM.

  7. #82
    CHIBRE ! pipitt05000 is online now
    MemberRank
    Feb 2009 Join Date
    FranceLocation
    337Posts

    Re: Project Cortex

    Do you use your own server ?

  8. #83
    Proficient Member KittyChloe is offline
    MemberRank
    Jul 2019 Join Date
    162Posts

    Re: Project Cortex

    Quote Originally Posted by pipitt05000 View Post
    Do you use your own server ?
    As in server code, yes, I code my own C# server.

    As in public/local host, no, it's ran on my computer and not a virtual host.


    Update



    Further work has been done to furniture rendering! All data used to render the furnitures are generated through the flash files. Images are packed into a spritesheet. See example of the sofa above:





    Animations are now being logged too, still early phases of it all but it's coming together.
    Last edited by KittyChloe; 31-03-20 at 04:39 PM.

  9. #84
    Member Rubber is offline
    MemberRank
    Apr 2015 Join Date
    ValkenburgLocation
    91Posts

    Re: Project Cortex

    Keep up the good work!
    Love to see this in real

  10. #85
    Proficient Member KittyChloe is offline
    MemberRank
    Jul 2019 Join Date
    162Posts

    Re: Project Cortex



    I converted a set of random furnitures and placed them in a room through the database. This is the live render.



    Room thumbnail captured through the room thumbnail camera.

  11. #86
    Novice Shinzuh is offline
    MemberRank
    Dec 2014 Join Date
    2Posts

    Re: Project Cortex

    Keep it up, you're one of the pillar of the sustainability of this game now !

  12. #87
    Proficient Member KittyChloe is offline
    MemberRank
    Jul 2019 Join Date
    162Posts

    Re: Project Cortex



    Furnitures now have collisions, if they're set to be "walkable" (in the server database), you'll be able to walk through them, otherwise they'll act as if the tile is blocked. One furniture blocks off all the tiles it covers (in width and height, even if rotated).



    Liking a room is now synced with the database.



    Liked rooms now appear in the my world tab.



    Animations are now live!
    Last edited by KittyChloe; 01-04-20 at 06:33 PM.

  13. #88
    Member Snorlax is offline
    MemberRank
    Oct 2009 Join Date
    62Posts

    Re: Project Cortex

    Quote Originally Posted by KittyChloe View Post


    Furnitures now have collisions, if they're set to be "walkable" (in the server database), you'll be able to walk through them, otherwise they'll act as if the tile is blocked. One furniture blocks off all the tiles it covers (in width and height, even if rotated).



    Liking a room is now synced with the database.



    Liked rooms now appear in the my world tab.



    Animations are now live!


    This is the most promising HTML5 project I've seen to date, I'm excited for this, following heavily.

  14. #89
    Proficient Member KittyChloe is offline
    MemberRank
    Jul 2019 Join Date
    162Posts

    Re: Project Cortex



    Room inventory is synced with the game server which is synced with the database. Stacked furnitures does not include furnitures of the same type placed in the rooms that they are not in the same ones as. If furniture alpha is in room charlie and furniture bravo is in room david, furniture alpha and bravo will not be stacked together.



    Playing furniture animations in the inventory display is now working. Clicking on the canvas loops through all the animations it can have until it doesn't have any more and resets it to 0 (off).
    Last edited by KittyChloe; 03-04-20 at 06:41 AM.

  15. #90
    Project CortexProject Cortex pel is offline
    MemberRank
    Jan 2012 Join Date
    Munich, GermanyLocation
    384Posts

    Re: Project Cortex

    Really promising looking project. Keep it up. Maybe covid19 was all that habbo needed lmao



Advertisement