Monday, May 4, 2015

Workaround for bug introduced in Build 1430 with timer triggers that fire in the same instant

Update 3: Build 1432 has resolved all issues related to timers and things seem back to normal.

Update 2: Users are reporting that some of the issues have been fixed, but not all.  Specifically still seeing issues with timers where the total duration is less than a second.

Update: Build 1431 was just announced to revert changes related to timer limitations. A swift and appropriate response.


ActiveWorlds 6.2 Build 1430 was released today and introduced the following change:
  • Timers now have a minimum duration of 1 second and timer-triggers have a minimum interval of 100 ms applied strictly. An attempt to help users and builders not running into heavy lag bombs in worlds.
Which introduced the following bugs:
  • Existing timers that complete under a duration of 1 second are broken -- any lower value is forced by AW to 1 second.
  • Existing looping timers triggers with a total duration of less than 100ms are broken.
  • Triggers scheduled for the same time on the same timer are explicitly ignored. (The workaround below specifically addresses this problem)
  • Remote texturing is broken in many circumstances.
Whoops! These are some really awful bugs and this whole change probably needs to be reverted. The third problem has a pretty simple workaround... simply offset one of the timer triggers.  Note that this only addresses one of the issues introduced today; these bugs have manifested in various ways and this isn't a one-size-fits-all solution to all of the problems created with 1430. This workaround specifically addresses two or more timer triggers that were set to fire at the same instant.

Take two example timers that I found broken today at Fort Masen:

at tm GK 18500, visible reg3 on, visible reg2 off

at tm GK 18500, say "Regina:    Zek'riah!"

I'm not sure how AW determines which trigger gets fired first, but the visible on/visible off one was ignored when I activated the timer to test.  I was able to work around  this very easily, by changing one of the timers to '18510':

at tm GK 18510, visible reg3 on, visible reg2 off

at tm GK 18500, say "Regina:    Zek'riah!"

This is a very small time difference. For timers, 1000 units = 1 second, or 1000 milliseconds.  So 10 units is 10 milliseconds, or 1/100 of a second.  This is probably acceptable for general animations, but I'd still prefer to see this change reverted for more precise timer sequences that need extremely granular triggers.

Interested in hearing further comments from AWI about exactly how this changed timer behavior. More interested in build 1431 reverting these changes. :)

Saturday, April 25, 2015

Southern Highlands Progress for Week of April 20, 2015

So I don't have a creative name for these photo blogs/progress reports of Elkins Beach and the Southern Highlands, but the least I can do is group them by date.

Here's an update on what I've been working on this week:
  • Created a transitional badlands area in the narrow, empty stretch following gutz highway (named for a user that built the highway in 2000, gutz).  This area was previously flat and empty except for groundcover and the highway.  
    • On the side closest to the Southern Highlands raised terrain features, I've added some towering, rocky terrain reminiscent of the work I did at Razorspine Bluff.
    • On the side closest to Elkins Beach, I've added low forests with smaller rocky features and SWI archaeology nodes.
    • In Elkins Beach itself, I've added some rocky terrain features in empty lots to give the impression that the rocky terrain doesn't just abruptly and cleanly end as you enter the town.
  • Capped off some incomplete areas in Rising Glen Retreat. In particular, a house I started in 2008.  It isn't completed inside, but the outside at least doesn't have any floating panels anymore.

Monday, April 20, 2015

Designing Facades with a Minimal Number of Objects

I've been working to fill in some of the geometry placeholders for skyscrapers in Elkins Beach and would like to share a technique I've been using to quickly place believable facades.  I do it because I'm lazy and would like to get these buildings done ASAP, but it may also be useful for conserving cell space.

Designing facades with a minimal number of objects generally follows this pattern:
  • Find an orthogonal object with some depth to it. If you want your facade to have windows, make sure it also has some empty space in the middle.  Door frames, windows frames, primitives, and some furniture sets are good candidates.  
  • Scale this piece so that it is very wide and very tall, but also very thin.  
  • Layer other pieces into or onto your largest piece to give the image of building forms: Beams, posts, frames, etc.
For an example, we can start with a building I completed yesterday in Elkins Beach.  I started by selecting some objects I would like to play with.

For my main building frame piece, I selected Unit04.rwx as it is a cube with some depth.  For some thinner detailing that could make a believable 'wall' and window ceil, I chose wframe01.rwx.  For further detailing, I chose p1rec0100g.rwx for some simple beams in my facade. 

With these objects selected, we can begin scaling them to be very wide, very tall, and very thin, and then attempt to assemble them into a believable facade.  I scaled the Unit04.rwx to match a 10x10 meter space and scaled the wframe01.rwx to fit within that space.  Once I had this scale set, we can begin to see the facade take form:

Done! With these final objects:

# Object         Purpose           Action
2 unit04.rwx     large frames      create scale 5 5 1

2 wframe01.rwx   detail frames     create scale 4.39 3.53 4

3 p1rec0100g.rwx horizontal beams  create scale 0.5 1.85 1

All it needs is some texturing and a window panel... and we can slap it onto a building! I chose a texture theme of topgrey for the panel and ctable2 for the window frames.  There is a building near SW City Town Square Park that features these textures and I really like the colors that come out of it.

Here's an example of it in action.  Not counting windows and other detailing, this is only 7 objects for a 20x10 meter frame! 

 And the completed tower:

Designing facades with a minimal number of objects is all about experimentation.  Some things may work well, others won't. I've found that as long as the object sets I'm attempting to use have some depth, I can usually exploit them by means of scale or shear to look like believable buildings.

For example, I'm not a huge fan of the tan-colored building next to this skyscraper. The tan building uses quite a few flat pieces, which robs it of depth in some critical areas and really makes it look unsatisfying.  In this project I'm going for completion, so I don't mind these imperfections in some filler buildings -- the more important thing is the process and the learning gained for some of the more prominent buildings in the area I would like to work on.

Saturday, April 18, 2015

Sculpture, landscaping, and working around pre-existing content in Elkins Beach

Work in Elkins Beach continues with a lot of landscaping and detailing.  I left this project unfinished years ago, and that was very visible before I started again a few weeks ago.  For example, ground panels were incomplete and floating in the air at various points, there were empty fields alongside busy 4-lane highways, and artificial canals butted up against thin air.

I've spent much of this week 'capping off' the landcover by connecting varying planes, by filling in fields that I didn't intend to build on with trees and rocks, and by placing geometries for buildings that I do intend to complete.

There was one build that I did manage to at least complete initially: a sculpture that I've named "Monolith Rise".  It consists of a grouping of glossy monoliths that increase in height and alternate in texture. The base of the sculpture is lit with a flickering gold light to better distinguish the sculpture from the ambient lighting of the surrounding world. The entire sculpture is surrounded by sheared sidewalk in a park scene:

Note that Monolith Rise is immediately next to the sheared truss bridge that was featured in my last blog about Elkins Beach.  You can find it in-world at "aw" 2680.24S 4071.27E 0.22a 314.

The sculpture sits on a lot that formerly held plans for a cathedral.  I felt that this lot was too narrow so I've scrapped that idea.  Behind the lot was also originally a curved extension of a river that cuts out to the sea.  I've expanded this into a small harbor and removed the curved concrete panels to increase the surface area of the water:

The rest of the work I did was primarily detailing.  A lot of geometries for planned building and some landscaping.  You can see that below:

There was one final area of interest -- I did some detailing around an older build (circa 2005) that was in the area before I was -- a military base built by Jaguar Hahn.  Fun trivia fact: Jaguar Hahn was building a city with me in AWTeen around this time called New Arklay City, but I don't recall him ever sharing many builds in Alphaworld.  Not this one, at least.

I've tried to help integrate into this cityscape that was built up around it by making sure it kept good road access and by trying to respect the airspace near a very short airstrip on the property.  There's an unfortunate concrete fence that may be doing more harm than I am, though. 

Some points about detailing around pre-existing builds:
  • Respect how this build fit into the existing area.  For example, this base connected to an existing road in the area.  When I took the road over, I made sure the base still connected to it well and made sense in the overall scene.
  • Contextual additions make it feel like it fits in better.  One helpful addition I made was to add metal towers with reflectors leading into the airstrip. There are also no trees leading up to the airstrip.  I think this complements the build by demonstrating that it has effects on the surrounding content.
  • Don't be afraid to hide parts of a build when necessary.  The backside of the base is closed off by a fence, so I can't add a road to it or really complement it in any way.  I think the best thing to do here was to add some flora and rocks to obstruct its view from a nearby road that doesn't access it.
I'll probably post another update about Elkins Beach again next week.