Website Faviconnotations

Notations and some important data structures used in Habbo Hotel

View the Project on GitHub Habbianos/notations

notations

Table of Contents

Areas CoveredBack to top

This repository documents various notations and data structures used in Habbo Hotel, including:

And many more to come: automatic closing gates (battle banzai pyramid), furni that change clothes (santa teleport, fotball gate, etc), freeze tile&block, bunny pole, skate rail, horse accessories, snowboard patch, hoppers, pet baby boxes, cannons, traps, etc!

Each section provides a comprehensive overview of the respective notations, including syntax definitions, examples, and processing models.


Notations vs Data StructuresBack to top

This project includes both notations and data structures, each serving different purposes and design philosophies:

Note

In simpler cases, such as a comma-separated list of parameters, the format may still be considered a data structure, even if it lacks explicit metadata, as long as it doesn’t define its own complex or symbolic syntax. The key distinction lies in whether the format invents a new encoding scheme, not merely in the presence of labels.


VersioningBack to top

We follow a versioning strategy similar to Semver, where a version is defined as v[FORMAT].[EXTENSION].[REVISION]. Changes are applied as follows:

This means that for referencing a notation, using only the v[FORMAT].[EXTENSION] version number is enough. Additional suffixes may be appended to indicate context-specific adaptations of the specification (e.g., unofficial extensions or environment-specific versions).

Note

Translated versions of a specification do not influence versioning. Fixes or updates made solely to improve translations/localizations, such as correcting grammar, rewording for clarity, or aligning formatting, do not trigger a change in the document version or its changelog. These documents are expected to faithfully mirror the structure and intent of the original version.


LifecycleBack to top

Specifications evolve through several lifecycle stages, representing their maturity and readiness for implementation:

  1. Exploratory: The initial phase where ideas are collected, the scope is investigated, and relevant references are gathered. The document may be incomplete or unstructured. No implementation or formal review is expected at this stage. Purpose: Define intent, explore feasibility, and shape the problem space.
  2. Draft: A structured and developing version of the specification. The core features, syntax, and processing rules are being written and revised. Community feedback is encouraged, but the content is still subject to significant change. Purpose: Begin formalization of ideas into a working specification.
  3. Candidate: A mature draft that is believed to be complete and internally consistent. It is now ready for experimental or real-world implementation and review. Only minor refinements are expected before finalization. Purpose: Encourage testing and validation before final release.
  4. Stable: The specification is finalized, with confirmed implementations and no expected major changes. This is the recommended version for production use. Purpose: Mark the specification as reliable and complete.
  5. Obsolete: The specification is no longer recommended for use. It may have been replaced by a newer version or deprecated due to lack of relevance. Purpose: Inform users that the document is outdated or superseded.

ContributionsBack to top

This project acknowledges contributors using the CRediT taxonomy, a standardized system that defines specific roles in the development of scholarly and technical content. Each contributor’s role may be described using one or more of the following categories:

People InvolvedBack to top

⬆️ Back to top

✏️ Edit this page on GitHub