2025-12-17 19:39:53 +00:00
2025-12-17 19:39:53 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 18:27:10 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 19:06:58 +00:00
2025-12-17 18:27:10 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00
2025-12-17 16:47:48 +00:00

Aya
===

    0. Overview
    1. Documentation
       1.1. Overall documentation
       1.2. Project structure
    2. Noteworthy changes

0. Overview
-----------

    Aya is a robust, customizable, and otherwise heavily modified fork of the
    Roblox client codebase which was leaked to the public internet around March
    2016. Relative to the original codebase, Aya contains numerous improvements,
    enhancements, and other features, all of which are listed in the CHANGELOG.

    Aya was created with the aspiration to foster positive change and further
    innovation in the legacy Roblox community. It is our hope that every use of
    Aya aligns with this vision.

    Please read all the provided documentation files to get a full grasp on how
    to use Aya. This file contains a glossary of all relevant information,
    whereas INSTALL contains information how to fully set up and use Aya.
    You should definitely read LICENSE, as it describes the relevant terms for
    using Aya, as well as key legal information you need to know if you choose
    to use Aya.

1. Documentation
----------------

1.1. Overall documentation

    README.txt                This file
    docs/API.md               Aya custom API reference
    docs/INSTALL.md           Installation/compile instructions for Aya
    docs/CHANGELOG.md         Full list of changes from the original 2016
                              Roblox source code

1.2. Project structure

    client                   Implements the Aya game, delivered to end-users
    client/app               Universal Svelte app UI for Player/Studio/Server
    client/core              Foundational code used across the client apps
    client/player            Aya Player, used to connect to multiplayer games
    client/studio            Aya Studio, used to edit and test levels
    client/server            Aya Server, used to host multiplayer game sessions
    client/web-helper        Aya CEF integration
    client/thumbnail-helper  Call with regsvr32 on Windows for .ayal thumbnails
                             in the Windows File Explorer
    client/updater           Aya auto-updater for instances

    engine                The underlying engine that the client applications
                          rely on. This is a heavily modified version of the
                          Roblox game engine source code leak, dated 3/16/2016
    engine/app            The heart of the engine
    engine/core           Fundamental components used throughout the engine
    engine/gfx            3D rendering
    engine/network        Multiplayer component of the game engine

    docs                  Documentation on how to use and install Aya
    resources             Static resources such as images that are used in Aya

    third-party           Third party dependencies accessible as Git submodules


1. Noteworthy changes
---------------------

    Aya contains many significant changes relative to the original codebase.
    Here is a list of some of the more noteworthy ones that are important to
    know when using Aya.

      - Most of Roblox's anti-cheat measures have been removed or stripped
        out of the codebase entirely, including:

          * The real-time program memory checker (NetPmc) as well as the
            golden hash checker. The justification for this is because it is
            too difficult to port to non-x86 Windows systems as a lot of the 
            functionality relies on fundamental properties of the Microsoft 
            Visual C++ compiler and the PE file structure.

          * VMProtect integration has been removed entirely. Unlike other
            proprietary libraries, there is no alternative put in its place.
            However, you may want to tackle obfuscating code during the
            compilation stage with projects such as obfuscated-llvm so that
            the control flow of the application is obfuscated to the point that
            it is near-impossible for malicious actors to exploit.
    
      - All proprietary or otherwise closed-source dependencies have been
        removed entirely and replaced with open source alternatives.
    
      - The client applications have been almost entirely rewritten with the
        goal of being as lightweight as possible as well as having equivalent
        functionality across all platforms (in particular, Windows and Linux).

      - All dependencies have been updated to their newest versions.
Description
Engine
Readme 116 MiB
Languages
C++ 54.4%
CSS 25.3%
TeX 8.8%
Lua 5.8%
C 4.8%
Other 0.7%