Sanctimonia Updates: Littoral Updated and New Videos

Kevin Fishburne sent me an email to announce a couple of new developments in his project, Sanctimonia:

I modified Littoral so that it now creates gradations of elevations for each layer instead of using a single layer depth (screenshot attached). All the elevation range and layer depth values are specified in inches.

And here would be that screenshot:

[singlepic id=861 w=560 h=394 float=center]

Layer cakey!

I can actually think of a few situations this would be useful in, not the least of which is my own worldbuilding efforts for Ultima Return; I find that the terrain just looks that much better when I create a quick “layer cake” layout of elevations and then smooth it all to its final state once I’ve placed most of the other assets in the scene.

But I digress. Kevin had something else to say in his email, which is a really interesting new feature that he has almost got worked out:

I also made a primitive implementation of excavation/digging, one of the central gameplay features. It looks a little weird because the alpha tiles and elevation shading aren’t yet finished. When they are the sense of depth will be much more realistic. I also plan to add particle effects per layer so you can actually see the vegetation/soil/snow/etc. flying to its destination. Eventually the player will be able to choose which tile (or object) the excavated material will be placed on to allow for more intelligent digging. I’m also about 30 minutes of work away from letting the player trample vegetation as it’s walked over, allowing for natural dirt path formation.

He included the link to this video, which demonstrates the digging system in its present state. It’s…actually really cool.

[youtube http://www.youtube.com/watch?v=Ks8f51u6A5A&w=560&h=349]

Dig, Lord Blackthorn! Dig!

And finally, for those of you who can’t get enough of fair Britannia (which I assume is all of you), he also sent along a link to this video. It’s a quick sprint by Lord Blackthorn from Britanny Bay to Cove, using a map scale of 4096×4096. The final map of Sanctimonia should be on the order of sixteen times larger, so this should give at least some sense of the scale of the game. It also shows off how the game handles elevation over longer distances.

[youtube http://www.youtube.com/watch?v=xyFjBvABb9c&w=560&h=349]

Going for a swim!

I’m gonna go with: awesome!

11 Responses

  1. Sanctimonia says:

    @WtF: Thanks for the post.

    Update: I finished a rough draft of the alpha tiles and got the sub layers working decently, so I took a few screenshots. I then got bored and put together this video for fun:

    http://www.youtube.com/watch?v=wJXr6kn6iQQ

    The screens near the end show two new features: landscape sub layers and a decent implementation of the alpha tiles. You may also find those specific screenshots here:

    http://www.eightvirtues.com/sanctimonia/images/Sanctimonia_Alpha_Tiles_1.png

    http://www.eightvirtues.com/sanctimonia/images/Sanctimonia_Alpha_Tiles_2.png

    http://www.eightvirtues.com/sanctimonia/images/Sanctimonia_Alpha_Tiles_3.png

    Things are moving forward at a disturbingly quick pace, and it makes me a bit nervous as to what to do next. I think I should probably refine the existing “features” before moving onward, but any opinions are welcome.

    Things that aren’t done are:

    1) Server telling clients when other clients are near them so that they may be rendered (premise of an MMO).

    2) Flora, or vegetation objects placed on the landscape.

    3) Landscape layer persistence. The server needs to authenticate and save changes to the landscape layers.

    4) Proper gamepad input processing and implementation of player orientation, mass, acceleration, velocity and maximum velocity for player physics.

    5) You name it, it’s there. :/

  2. Al Riddoch says:

    Can anyone suggest a good source of map files for Brittania in a format that can be fairly easily be read? I’d really like to try importing the terrain shape into WorldForge at a coarse level, and see how well we can support it.

  3. Sanctimonia says:

    I have some stuff here:

    http://www.eightvirtues.com/sanctimonia/artwork/Map/

    The template pictured above is here:

    http://www.eightvirtues.com/sanctimonia/artwork/Map/Littoral%20Map%20Templates/ultima_5_littoral_template_high.png

    It started as an 8192×8192 blow-up of the Ultima V cloth map, overlaid with the tile map from Ultima V. I manually traced both at the same time to achieve a hybrid. That was for my old u5tes3 mod, now dead.

    This version was modified specifically for my new project and is only 4096×4096. Choose the color picker in GIMP or whatever you use and pick the color at the center of a river. While not easily visible to the eye you’ll see that it’s one shade off from the surrounding shore water. I’d adjust the contrast or values as you like for WorldForge, otherwise the rivers may appear too bloated. In Littoral one shade of gray equals 21 feet of elevation.

  4. darren says:

    I really like the idea of characters affecting the landscape as they walk through it.

    • WtF Dragon says:

      Yeah, that’s a really neat idea, one I would actually like to see creep into a lot more games — AAA and open source alike.

      With all due and appropriate credit given to Sanctimonia and its hella-talented developer, of course.

  5. Sanctimonia says:

    Thanks all for the comments. That is one thing that is really starting to irritate me about AAA (or any, actually) games. Can I cut down a f-ing tree? Will it grow back? Will vegetation grow over the entire town if people don’t do something about it? These are all pretty normal things that humans deal with every day. Even if Sanctimonia outright sucks and no one likes it, at least it will have made a powerful statement about what you can do in a game if you put your mind to it.

    Some good news regarding the project…I got particles working pretty decently over the last two days. Kdenlive is ripping up four 3.5 GHz cores rendering it as I type. Still a bit buggy, but not bad for two days if I may say so. 🙂 I’ll post it on YouTube with a link it less than 30. So far the parameters supported include: Alive, Lifespan, Age, Bitmap, x Start, y Start, x Position, y Position, x Velocity, y Velocity, Terminal Velocity, HasGravity, Gravity, Slide On Landing, Friction and LeavesCorpse. I still need to incorporate color gradients over time to simulate burning stuff, particle scaling, etc. My particle bitmaps kinda suck too…

    • WtF Dragon says:

      Obviously, more power is needed to render than to play the final version, but is there any word yet on what Sanctimonia will need in order to run on a system?

  6. Sanctimonia says:

    Good question. I was rendering a webm video in Kdenlive, so it needs all the power it can get. So far the game client is running at 14 fps at 1280×720 unless I disable some of the effects (hill shading, components of the water). I’m working with the lead dev of GAMBAS, Benoît Minisini, to improve the rendering efficiency of the various graphics components of GAMBAS. So far he’s been very receptive and has been invaluable to the graphical progress of the game. For example, he created the DrawAlpha method (which FEARYOURSELF backported to GAMBAS 2) that allows the interconnective alpha tiles and the water to be drawn properly. I asked for it, I got it; amazing in both instances.

    Ultimately I’d like several versions of the client app to exist so that different platforms may run it. A beefy Linux PC could run the full version, a lighter client could work with Android on mobile devices or tablets. Once it’s in full swing I’d like to hire some programmers to port the client with my vigilant oversight to “friendly” platforms. I may also convert it to SDL or OpenGL at some point, as software rendering has its limits.

    As it stands the app is single-threaded, so any decently fast system, even with a crappy video card, could run the client. I recommend a 2.8 GHz CPU at least with 512 MB RAM, but the game’s highly unoptimized in its current state. Eventually the full client will probably require 2 – 4 GB of RAM.

    And here’s the video, it all it’s flawed glory:

    http://www.youtube.com/watch?v=WtD7gQS4NGM

    Video notes:

    New features include decent interconnective alpha tiles, landscape sub layers and particles (wisps). The soundtrack is NOT original music for the game. I thought I’d let the uninitiated feel the power of Ys II for PC Engine CD, as it has a soundtrack for the ages.

    Technical: The particle buffer is cleared when the player exits a cell (disappearing dead particles). Also because digging currently transplants landscape layer data from the current tile to the right tile, vegetation is dynamically “rebuilt” on the right tile. Makes for some odd-looking behavior sometimes. Work in progress, as they say.

    Also keep in mind that all the landscape data (map) is coming from a server, so while not yet multiplayer, everything is in place.

  7. Sanctimonia says:

    Just re-ran the client at 640×480 (yeah, I know; shit), and it runs at 30 fps. So on a normal SD TV it would run fine even in its current unoptimized state.

    • WtF Dragon says:

      Neat. Good to know! And here’s hoping you can further optimize it. (FWIW, I’m a big fan of offloading stuff to the hardware wherever possible; if you can go that route, it’d probably be better.)