Hat is a GPL licensed engine built on-top of xReaL. It supports scripting via V8 (JavaScript), hot-loading of many aspects of the game, Bullet Physics, OpenAL EFX, and much more.

Post article RSS Related Articles

A Quick "Thank You"

Apparently the demand for Rogue Reborn was much more than I could ever imagine. The number of emails, help, and so on was incredible. A ton of thank you towards Mike, aka Russian39, who has been the backbone in the last four weeks of pushing me to continue the project. It came to my attention that you can not ask for help in a project until you have something to show. So, this news is going to show a lot.



A while back I presented an article on the weapon scripts that I proposed. It was an exact port of the configuration that Rainbow Six: Rogue Spear RSEditor provided. This is a break-down of what the weapon system provides. The video below shows all the scripting below in application.


Specifying models and engine representation on the fly

The core of the weapon script is representing it with a model and a representation that it is bound by in the engine.

javascript code:
var m9 = new weapon.Weapon("M9", {
    model: 'model/weapon/m9/m99.md5mesh',
    engine_representation: weapon.ENGINE_M9,
 

This allows you to configure to provide more precise logic for the weapon as they are represented in the engine. This can be as generic as you want -- Load models in the game on the fly. Edit, continue, and don't worry about recompiling or exiting the game.

Accuracy and attributes

You logically will not be firing at the same accuracy throughout the game. Here you can configure how your weapons handle in a particular movement of the player. You can also configure weapons to support any number of zooms, determine the reticule timing, the encumbrance, the firing modes the weapon has, ammo types, rounds, the rate of fire, even support for a safety if such realism is desired.

javascript code:
    accuracy: {
        stopped: 1.26,
        shuffle: 1.75,
        walk: 5.16,
        run: 7.59,
        walk_fast: 7.59,
        run: 13.44,
        crouch: 0.70,
    },
    attributes: {
        weapon_icon: 'textures/reticule/mp5k.tga',
        zoom: [2.00],
        reticule: 'textures/reticule/m9.tga',
        reticule_time: 0.76,
        muzzle_flash: 0.09,
        muzzle_velocity: 375,
        encumbrance: 2.78,
        empty_sound: 'sound/weapon/m9/m9-sliderelease.ogg'
    },
    default_fire_mode: weapon.SAFETY,
    flags: [weapon.SAFETY, weapon.SEMI_AUTOMATIC],
    ammo: {
        type: weapon.AMMO_9MM_FMJ,
        rounds: 15,
        rate: 160,
    },
 

Animation, sounds, and realism

Animating weapons, providing sounds, and syncing things together takes a long time. RR tries to help developers by providing a system for an easy interface for weapon animations. You define the animation, the time it plays, and any sounds it should play at a per-frame basis. The realism in sounds is just as important as the animation itself.

javascript code:
    animation: {
        reload: {
            animation: 'model/weapon/m9/m9-reload.md5anim',
            time: 2.73,
            sound: [{
                at: 13,
                play: 'sound/weapon/m9/m9-clipout.ogg'
            },
            {
                at: 43,
                play: 'sound/weapon/m9/m9-clipin1.ogg'
            },
            {
                at: 51,
                play: 'sound/weapon/m9/m9-clipin2.ogg'
            },
            {
                at: 63,
                play: 'sound/weapon/m9/m9-sliderelease.ogg'
            }]
        },
        draw: {
            animation: 'model/weapon/m9/m99-draw.md5anim',
            time: 1.56,
            sound: [{
                at: 13,
                play: 'sound/weapon/m9/m9-slideback.ogg'
            },
            {
                at: 20,
                play: 'sound/weapon/m9/m9-sliderelease.ogg'
            }]
        },
        fire: {
            animation: 'model/weapon/m9/m99-fire.md5anim',
            sound: [{
                at: 0,
                play: 'sound/weapon/m9/m9-fire.ogg'
            }]
        },
        firelast: {
            animation: 'model/weapon/m9/m99-firelast.md5anim',
            sound: [{
                at: 0,
                play: 'sound/weapon/m9/m9-fire.ogg'
            }]
        },
        idle: {
            animation: 'model/weapon/m9/m9-idle.md5anim'
        }
    },
});



Ballistics, environment realism, and proper physics is a huge part of any tactical shooter. Rogue Reborn is working to provide you that by integrating the Bullet physics engine. Here is a quick "developer" video showing a bunch of boxes being thrown around. This is a very, very early stage of the engine. It's a wire-frame video, so don't expect craziness.



We wanted to at least show two of the four models that have been ported for Rogue Reborn. All the features described above in the JavaScript weapon setup are being used in the screenshots below.


Demonstrating interaction system, leaning, and reloading.


Showing draw animation and interactions with the player.


An incomplete DE in a single shot fire mode reloading.



There are other miscellaneous happenings that have been going on as well.

  • Chambered reloads - Like real life, if you reload with a round still in the chamber it should be reflected in your total ammunition count.
  • Enhancements to GUI library
  • Enhancements to code-base
Rogue Reborn: Technology Demo (Google's V8 and GUI/Game Scripting)

Rogue Reborn: Technology Demo (Google's V8 and GUI/Game Scripting)

Rogue Reborn 9 comments

Shouldn't scripting/GUI-editing be easy? We want people to mod when Rogue Reborn is released. Here is what we are doing to make that process easy.

Rogue Reborn: RS Interactions (climbing, opening, reloading)

Rogue Reborn: RS Interactions (climbing, opening, reloading)

Rogue Reborn 14 comments

The Rogue Reborn team has implemented a vast portion of the interaction system from Rainbow Six: Rogue Spear. Developer's Blog.

Rogue Reborn: Technology Demo (OpenAL EFX + GLSL)

Rogue Reborn: Technology Demo (OpenAL EFX + GLSL)

Rogue Reborn 8 comments

The last week was a mix of pleasure and pain as we took the sound and renderer into different directions. We are proud to demonstrate a very fun stun-grenade...

Rogue Reborn: Killhouse Two-Story

Rogue Reborn: Killhouse Two-Story

Rogue Reborn 31 comments

Weekly update. Showing off an almost complete Killhouse two-story, various changed to the movement, and the upcoming map. Rogue Reborn is a port of Rogue...

Add game Games
Rogue Reborn

Rogue Reborn

First Person Shooter

Rogue Reborn is a modern port of Rainbow Six: Rogue Spear. The primary focus of this project is to incorporate all the elements of the original R6RS while...

Post comment Comments
LizardGamer
LizardGamer - - 140 comments

Yay, something based off Xreal

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X