Skip to content

jeppe9821/HavanaR39

Repository files navigation

Information

Havana is an emulator developed by Quackster/Havana - built for V31 Shockwave from 2009 - with the goal of recreating that era of Habbo. ClassicHabbo was the primary hotel for this project, which had additonal features, the main one being support for the V39 Flash client running in tandem with the Shockwave client

Unfortunately ClassicHabbo closed at the end of 2022 for a variety of reasons (including but not limited to lack of interest in running a retro from Quackster and difficulties putting together a team of people who can help out with hotel management). Quackster thankfully released all the core Havana files for running the V31 client, minus the support for the V39 Flash client and some other CH-specific features

We've restored some of the missing CH features, with some additional features

❗ This repository will not be continuously updated and will be as is

Features

Same as the original project, plus -

Server

  • V39 Flash client (see changelog here)

  • Country badges (CH feature)

  • New rare cycle (for more ease of use)

  • Improvements to the catalogue (ordering, missing pictures and missing text has been fixed to be more true to 2009)

  • user:Username can be used when searching for a specific owner in the navigator search tool

    image

Website

  • Ability to change hotelview to user preference, reflected in the Shockwave client and on me page

  • Discord integration to enable account verification before being able to enable trading

  • API endpoints for the launcher, an all in one executable that allows launching both the Flash and Shockwave clients, when compiled totalling less than 15 MB (the source for which can be found here)

    image

Getting Started

Requirements

Same as the original project, plus -

  • Minerva, required for Habbo avatars and badges to work on the site. You can find the latest version here
  • Chroma, required for furni rendering on the Collectables page to work. You can build it for yourself using the source here

❗ The havana.sql file included in this fork of Havana is different to the one in Quacker's original, as well as the www folder contents which can be found here

Summary

  1. Clone the repository
  2. Download www.zip and copy the contents to tools/www
  3. Import havana.sql
  4. Build and run Havana-Web and Havana-Server in your favourite IDE

Without any changes, Havana will run under localhost/127.0.0.1 and should work out of the box. You can log in using username User and password password. You will also be able to log in using the launcher here

Beginner's guide

Prerequisites

  • Visual Studio Code
  • Extension Pack for Java
  • JDK 11
  • Git
  • MariaDB Server

Steps

  1. Download and install all of the prerequisites. Make a note of the root password you set for MariaDB
  2. Open a Command Prompt window and enter the following command to clone this repository -
git clone https://github.com/JeppsonDev/HavanaR39.git
  1. Download www.zip and extract it to tools\www in the Havana directory
  2. Open MySQL Client (will be a Start Menu entry) and enter your root password
  3. Enter the below command to create the havana database -
CREATE DATABASE havana;
  1. Open a MariaDB Command Prompt (will be a Start Menu entry)
  2. Change directory to tools using the cd command, for example
cd C:\Users\User\Havana\tools
  1. Enter the below command and enter your root password when prompted, this will import necessary tables and data -
mysql -u root -p havana < havana.sql
  1. Open the Havana folder in Visual Studio Code, when prompted select Yes, I trust the authors
  2. After a few minutes, the Java Projects will successfully open. You should see the Java Projects on the left hand pane underneath Explorer
  3. Click the Debug button next to Havana-Web, this will create a webserver-config.ini file - edit this file and change mysql.username to root and mysql.password to your root password
  4. Click the Debug button next to Havana-Server, this will create a server.ini file - edit this file and change mysql.username to root and mysql.password to your root password, as well as server.bind to 127.0.0.1
  5. Click the Debug button next to both to run the web and server together
  6. Navigate to http://localhost in your browser
  7. Log in using the username User and the password password - using this browser you should be able to enter both the Flash and Shockwave clients. You will also be able to log in using the launcher here

Additionally, you will need Minerva mentioned above for badges and avatars to work on the site and Chroma for furni rendering on the Collectables page, however this is not required.

Credits

  • Jeppe#9821 (Main contributor)
  • Parsnip#5170 (Contributor)
  • Sefhriloff#0878 (Help with certain packet structures and information relay)
  • santi13#3433 (Help with certain packet structures and information relay and beta testing)
  • miichi#9867 (Beta testing)
  • oyasumi#7375 (Beta testing)
  • Jerimu // Jeroen#5019 (Beta testing)

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

About

A game server created in Java to emulate the MMO Habbo

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages