NeoHabitat: Difference between revisions

From Reno Project
(Created a page for NeoHabitat and wrote a brief blurb about the Hackathon in 2014. Included is a follow up email from Randy on the Habitat mailing list discussing what had happened.)
 
(Filled out the NeoHabitat article with some rough info about the open sourcing period and a little about the hackathon. Also included an image of the first time the team were able to get a region to load.)
Line 8: Line 8:


This is a work in progress, come back soon! Check out the rest of the wiki too.
This is a work in progress, come back soon! Check out the rest of the wiki too.
=Open Sourcing=
Fujitsu purchased the Habitat intellectual property in 1993, with Chip Morningstar and Randy Farmer helping to broker the deal between themselves and what was then LucasArts. In 2013, Alex Handy from the Museum of Art and Digital Entertainment made plans to setup an exhibit about LucasArts at the 2014 Game Developers Conference in San Francisco, CA. Whilst doing research for this, Handy contacted Chip Morningstar to see if he had any Habitat assets he could share that would be used in the exhibit. Chip replied back to Alex by sending him the entire Habitat client and server source code. According to Alex, Chip sent him the source as a joke because he didn't think he could do anything with then 26 year old code <ref>Habitat for humanity: how a classic MMO got a second life, https://www.theverge.com/23025168/habitat-for-humanity-mmo-game</ref>. It was at this point that Alex asked Chip what it would take to get the code building again.
Around this time, Alex contacted Fujitsu and got in touch with the right department who would be able to sign off on open sourcing Habitat. Once the approval came through, a hackathon was planned to get things working again.


=Development=
=Development=


==Hackathon==
==Hackathon==
[[File:HackathonFirstImage.png|thumb|An image of the first region brought back online after a successful hack day]]
A Hackathon was held on September 28th, 2014 at The Museum of Art and Digital Entertainment in Oakland, CA to restore Habitat to a working state. Notable attendees included Chip Morningstar, Randy Farmer and others. A Stratus machine from the time period Habitat operated was donated by Stratus to help with the effort and was brought to the museum by Stratus employee Paul Green. The Stratus didn't end up being used due to Quantum Link source code being missing which the Habitat server code needed to compile. Instead, a "wafer thin" server was created which would send a handcrafted packet to the client containing a basic region and avatar. This goal was reached by the end of the night and after 20 years, Habitat was alive again in some form.
A Hackathon was held on September 28th, 2014 at The Museum of Art and Digital Entertainment in Oakland, CA to restore Habitat to a working state. Notable attendees included Chip Morningstar, Randy Farmer and others. A Stratus machine from the time period Habitat operated was donated by Stratus to help with the effort and was brought to the museum by Stratus employee Paul Green. The Stratus didn't end up being used due to Quantum Link source code being missing which the Habitat server code needed to compile. Instead, a "wafer thin" server was created which would send a handcrafted packet to the client containing a basic region and avatar. This goal was reached by the end of the night and after 20 years, Habitat was alive again in some form.


Line 40: Line 47:
Thanks again for everything! It was awesome.
Thanks again for everything! It was awesome.
Randy
Randy
 
</nowiki>
 
var hatchery = Buffer([0x55, 0xFA, 0x00, 0x01, // Header "U" + Small Forced Reply: #message_DESCRIBE to Region Object
            // (4) Region/System Variables
            0x5d, 0x55,    // terrain_type
            0x5d, 0x55,    // light_level
            0x20,        // region_depth
            0x5d, 0x55,    // region_class
            0x01,        // Who_am_I (NOID)
            0x5d, 0x55, 0x5d, 0x55, 0x5d, 0x55, 0x5d, 0x55, //bank_account_balance
            // (20) Contents List
            0x01, 0x01,    // Avatar
            0x02, 0x24,    // Ground
            0x03, 0x50,    // Wall
            0x04, 0x7f,    // Head
            0x05,  23,    // Door
            0x06,  56,    // Short Sign
            0x5d, 0x55,    // EOL
            // (34) Contents state vars, in list order, starting with the Avatar
                0x5d, 0x55,    // Style
                0x54,        // X
                0x90,        // Y
                0x02,        // Orientation
                0x5d, 0x55,    // Ani state
                0x5d, 0x55,    // Contained by (NOID)
                0x92,        // Avatar: Activity
                0x92,        // Avatar: Action
                0x5d, 0x55,    // Avatar: Health
                0x5d, 0x55,    // Avatar: Restrainer
                0x02, 0x34,    // Avatar: Customize
            // (51) Ground:             
            0x01, 0x5d, 0x55, 0x04, 0xe4, 0x5d, 0x55, 0x5d, 0x55,
            // (60) Wall:
            0x04, 0x5d, 0x55, 0x5d, 0x55, 0xc4, 0x5d, 0x55, 0x5d, 0x55,
            // (70) Head
            0x01, 0xc8, 0x24, 0x10, 0x01, 0x5d, 0x55,
            // (77) Door
            0x5d, 0x55, 0x80, 0x21, 0x88, 0x5d, 0x55, 0x5d, 0x55,
            0x5d, 0x55, 0x5d, 0x55, 0x5d, 0x55, // Door State and Key 0,0,0
            // (91) Short Sign
            0x04, 0x18, 0x88, 0x8c, 0x5d, 0x55, 0x5d, 0x55,
            32, 84, 104, 101, 32, 77, 65, 68, 69, 32,  // " The MADE "
            0x5d, 0x55,    // EOL
            0 ]);          // EOP (113)</nowiki>

Revision as of 19:35, 7 April 2023

NeoHabitat
NeoHabitat.png
Developer(s): Randy Farmer
Platform(s): Commodore 64, Windows, Mac, Linux
Released: 2018

This is a work in progress, come back soon! Check out the rest of the wiki too.

Open Sourcing

Fujitsu purchased the Habitat intellectual property in 1993, with Chip Morningstar and Randy Farmer helping to broker the deal between themselves and what was then LucasArts. In 2013, Alex Handy from the Museum of Art and Digital Entertainment made plans to setup an exhibit about LucasArts at the 2014 Game Developers Conference in San Francisco, CA. Whilst doing research for this, Handy contacted Chip Morningstar to see if he had any Habitat assets he could share that would be used in the exhibit. Chip replied back to Alex by sending him the entire Habitat client and server source code. According to Alex, Chip sent him the source as a joke because he didn't think he could do anything with then 26 year old code [1]. It was at this point that Alex asked Chip what it would take to get the code building again.

Around this time, Alex contacted Fujitsu and got in touch with the right department who would be able to sign off on open sourcing Habitat. Once the approval came through, a hackathon was planned to get things working again.

Development

Hackathon

An image of the first region brought back online after a successful hack day

A Hackathon was held on September 28th, 2014 at The Museum of Art and Digital Entertainment in Oakland, CA to restore Habitat to a working state. Notable attendees included Chip Morningstar, Randy Farmer and others. A Stratus machine from the time period Habitat operated was donated by Stratus to help with the effort and was brought to the museum by Stratus employee Paul Green. The Stratus didn't end up being used due to Quantum Link source code being missing which the Habitat server code needed to compile. Instead, a "wafer thin" server was created which would send a handcrafted packet to the client containing a basic region and avatar. This goal was reached by the end of the night and after 20 years, Habitat was alive again in some form.

Here is a follow up from Randy Farmer to the Habitat mailing list after the event

Randy Farmer <randy.farmer@pobox.com>
Sep 30, 2014, 6:05 PM
to habitat

I wanted to thank everyone who participated in the Habitat Hackithon on Sunday...
Though we didn't meet all our goals, we did get several things set up so that we will be able to do this in the foreseeable future.

We confirmed that VICE will run Habitat/Club Caribe all the way to rendering the region while serving IO traffic, unmodified! (Win!)
We have a working Stratus of the correct vintage up and on the network.
We discovered that we need more original QLink header (and ideally actual code) to get the full server up on the Stratus.
We were right on the cusp of having an extension to Qlink Reloaded that would mutliplex game traffic between a Habitat server and the client.
We have a "Waffer Theen" Fake Habitat Server that I whipped up for Node.JS, which provided the data used to confirm the client working...

What we need to do in short order:
1) Finish the QLR gateway code - MacMartin and Steve were very close, but there's nothing on the wiki so that we can pick up where they left off.
2) We need Paul's and Chip's comprehensive list of what's missing for the QLink build, and a strategy to get it (I think Alex said he'd lead this effort.)

There's a lot of little other tasks, but these two are the burning ones.

BTW, I whipped up another, more interesting "hatchery" contents vector, below. It is hand-crafted isn't confirmed to be working. Perhaps someone using Michael's hack can test it out? There's one more change I want to make to it (put the head on the avatar's shoulders), but only after I know it works.

Thanks again for everything! It was awesome.
Randy

  1. ^ Habitat for humanity: how a classic MMO got a second life, https://www.theverge.com/23025168/habitat-for-humanity-mmo-game