Wednesday, September 11, 2013

Tworenas Snapshot 09

It's snapshot time! Actually, this snapshot was pretty much done on Sunday and I wanted to package it it on Monday, but on Monday I had a particularly hard day of physical training. It wasn't as bad after just finishing the session, but after a few hours I became all sore and stiff and I actually went to sleep as soon as I got home and slept for almost 16 hours.

I also wanted to do a post about the new physics features, but since I didn't have time for neither, I will mix them together here under a new shorter version. The object descriptors now have a bunch of new properties, like singular and plural name:



Of course, you don't want to have all object display their name. Imagine a cave with hundreds or even thousands of meshes, all having mouse over labels and most of them being "rock" or "cave wall". So I added a new boolean property that controls if an object should have a mouse over label or not. Most objects shouldn't have one, only import ones, like doors, containers, objects of interest, loot, activatable objects, etc.

Another new property of objects is one that controls if they can be picked up. Here is a pot that has a text descriptor and it is set to display a label:


Now the same object, with the "pick-up" flag set to true:


The label will inform you that the object can be taken. Once ownership is added, the label will be able to say "steal" when appropriate. The it will inform you about a few basic properties, like weight and value. Finally, I make the text and interaction more readable:


The final and most important property is the "stickiness" which controls where the object can be placed and on what surfaces. This is in its primordial stages, but works quite good. The problem is the if you can have a sticky surface for item placement, that can be anywhere and is no longer guaranteed to be so flat or well behaved like terrain.

So I needed a brand new physics subsystem that manages placement and clipping detection and avoidance. Brand new equations that can handle a lot more situations gracefully:


In this video you can see only static items placed, but If I were to repeat the test with the column and the placement of the pot on the top corner but with a mobile mesh, it would initially have the same position, but immediately proceed to fall down under the effects of gravity.

Because of the new physics resolver I bumped up the version number. There are also a ton of bug-fixes, most of the being the system mode crashing due to it lagging behind the vast changes in the module format.

So I said that for snapshot 10 I'm going to do something cool. I am no longer going to do that since I realized that the engine is already pretty cool . This is very subjective, but I'm liking it more and more and I think it has great potential. So snapshot 10 won't be lacking implicitly on the coolness factor whatever I decide to do. What I'm lacking in general is polish. So snapshot 10 will be a polish snapshot, focusing on the user interaction. Snasphot 11 and 12 will be maintenance version for snapshot 10. So I hope that snapshot 12 will have a pleasant enough interface that anybody can pick it up and use it, including a controls list.

BY AGREEING TO DOWNLOAD THIS SOFTWARE, YOU TAKE TOTAL RESPONSIBILITY FOR ANY CONSEQUENCE RESULTING FROM THE USE OR MISUSE OF THE SOFTWARE. I AM NOT TO BE HELD RESPONSIBLE FOR ANY POSSIBLE HARM THAT CAN BE CAUSED BY THE SOFTWARE NOR DO I GUARANTEE THAT IT IS FIT FOR ANY PARTICULAR PURPOSE OR THAT THE INTEGRITY OF THE SOFTWARE WILL BE PRESERVED WHILE BEING TRANSFERRED ON ANY AND ALL MEANS OF COMMUNICATION.

ALL RESOURCES INCLUDED FALL UNDER MY COPYRIGHT AND ARE ORIGINAL CREATIONS, EXCEPT FOR THE TERRAIN, GRASS AND SKYBOX TEXTURES, WHICH WILL BE REPLACED SOON WITH ORIGINAL OR OWNED CREATIONS. FULL LIST OF BORROWED ASSETS:
  • data\textures\bush: grass01.c.dds, grass02.c.dds, grass03.c.dds, grass04.c.dds
  • data\textures\terrain: region1.c.dds, region1.n.dds, region2.c.dds, region2.n.dds, region3.c.dds, region3.n.dds, region4.c.dds, region4.n.dds
  • data\textures\skybox: clouds-back.c.dds, clouds-front.c.dds, clouds-left.c.dds, clouds-right.c.dds, clouds-top.c.dds
Link: Snapshot 009

PS: The snapshot are getting pretty big. By snapshot 20 I'll probably be at least at about half a CD's worth of data per snapshot, so I need to figure out a better way to distribute these.

Ideally situation: registering a domain, creating a site with forum and repository and adding an incremental packer to the game distribution that updates you to the latest version. I'll look into this, but don't expect it too soon. It will probably be both hard and expensive to do. I'll keep you up to date.

And speaking of expensive, I forgot to show the textured shelves:


The texturing is not done yet, it is temporary and currently in the seam reduction phase. But it is still included in the snapshot. This is the outsourced asset of the week. The asset made by me is the pot. I'll continue with the two assets per week approach, even if they don't get to be included in their final form.

But with one payed asset per week, the cost will quickly add up. I don't mind working for free while developing the engine because I really like what I'm doing and the way the engine is shaping up. I am also staring to see the game slowly emerge from the engine which is quite motivational. And I don't mind spending my personal funds on a few dozen of assets. A good investment in my mind. But I do mind spending my personal funds on the hundreds of assets that will eventually be needed. Two assets per week is way to slow. At least 5 would be needed. So I'll need to find a way to monetize the game after I'm done with the current snapshots plan.

No comments:

Post a Comment