Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411196 Posts in 69314 Topics- by 58380 Members - Latest Member: feakk

March 19, 2024, 02:57:39 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsA Door to the Mists--[DEMO updated!]--traversal, exploration, puzzles and combat
Pages: 1 ... 4 5 [6] 7 8 ... 32
Print
Author Topic: A Door to the Mists--[DEMO updated!]--traversal, exploration, puzzles and combat  (Read 63414 times)
Thaumaturge
Level 10
*****



View Profile WWW
« Reply #100 on: July 10, 2017, 04:55:12 PM »

Blog post (11th of July, 2017)
Doors, Standing In-Between


Greetings and salutations!

For this week's screenshot, a look at the second section of the "pit" area in the first level, which is now--I believe--complete:





For the most part, the week just past was one of continued building-up of the first- and prologue- levels, although it also included a decision on a technical/level-design issue regarding portal culling:

First of all, I finished reworking the vines in the prologue level; while not perfect, I'm much happier with these than I was with the old vines, I believe!

I also added a small fallen block beneath one of that level's tumbled stones, as the latter looked a little unstable.

On the level-design side, I made the ideogram puzzle encountered in the prologue a little bit easier, removing some of the options available to choose from. As this is a prologue and tutorial, I don't want the puzzles here to be too difficult, I feel! There are still a fair few options to choose between, but I'm hesitant to pare it down much further...

That said, most of the week was, I think, spent in work on the first level. I finally added in proper doors. (It's a little surprising what a difference that makes to the feel of the place!) I tweaked a number of elements, and finished up the shelving.

I mentioned the placement of doors. This followed on, as I recall, from a perhaps-important decision, one that I'm not entirely confident of: how to handle the borders between the cells that divide up the game-world for the purpose of "portal-culling". Let me explain:

In short, the game-world is separated into chunks, or "cells", with "portals" looking from each into those visible from it. When standing in a given cell, that cell's objects, and objects visible through any portals (including portals within cells so viewed), are made visible; objects within other cells are not.

The problem lies at the edges: it's quite easy, it seems, to arrange things such that objects disappear from certain perspectives when placed near cell-borders. Further, I have small gaps between cells, and objects placed in those gaps may be placed in no cell at all, or the wrong cell. It's possible to split static geometry across cell borders, but in some cases that can become tricky, I find.

My solution is, essentially, to allow some things to sit outside of the portal-culling system. In the case of the tombs, these things include doors and door-frames. This means that they should be rendered correctly--but also that they should never be culled by the portal-culling system. Is this a good idea? I'm not sure, but for now, it seems to work. It doesn't entirely solve the problem for objects placed by the player between cells, however, I fear.

(I did ask after this on a few forums, but received no responses, I believe.)

Returning to the contents of the level, I've also been filling out some of the small items to be found around the lower tombs. I had already begun this with the shelf in the first of these tombs, I believe, which aside from the near-omnipresent books holds a knife, a brass box, a sketched portrait, and a wooden box containing some sort of dust or ash. In the week just past I continued, adding in models for a variety of extant items (two types of key and two puzzle-items--a large metal rod and a small one), and creating a few new ones (including some small purple crystals, a little dish of pale stone, and a near-complete model of a game-board.

As per usual, there were a number of small changes and bug-fixes not mentioned explicitly above!

On another note, I began a little side-project, a hobby, I suppose: I've begun Let's Playing. I'm currently playing through Quest for Glory II: Trial by Fire--an old favourite of mine. In addition, the Quest for Glory series provided part of the inspiration for the combat mechanic in A Door to the Mists! You should find my let's play videos on my YouTube channel.

That's all for this week--stay well, and thank you for reading! ^_^
Logged

freank
Level 1
*



View Profile WWW
« Reply #101 on: July 11, 2017, 10:06:25 AM »

the first panda3D game that I see  Panda
Logged

My last game:



Supporter of
Thaumaturge
Level 10
*****



View Profile WWW
« Reply #102 on: July 11, 2017, 10:30:35 AM »

Heh, I believe that it's not the most commonly-used engine, indeed!

It has seen use--even commercial--I believe, although I don't know whether any such projects were posted here.
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #103 on: July 17, 2017, 11:18:59 AM »

Blog post (17th of July, 2017)
Props and Pieces


Greetings and salutations!

For this week's screenshots, a look at some of the new items made during the week just past. The GIF shows a new collectible, while the still-image shows a flat-topped chest and a handful of props (some of which had been made prior to the week just past, I think):





The week just past was largely dedicated to such things as shown above. It was also a bit of a slow week, I feel.

You may note a game-board in the still-image above, and recall that I mentioned it in last week's blog-post. It was finished in the week just past, and the game-pieces (pictured near it above) made to go along with it.

I don't know much about how the game is played, but there are three types of piece: small pieces, which are relatively numerous, and one each (per side) of a cylindrical piece and a (roughly) conical one. Each piece has a splash of paint on its top to denote its side--either white or red. (Alas, little of this is easily-visible in-game: the pieces are a little too small on-screen, it seems. :/)

While some of the new models are shown above--the tall, conical vase; the flat-topped chest with its carven lid; the aforementioned game -board and -pieces; and the collectible coin--three are not: a simple pile of folded cloths designed to fit within the chest, and ropes that bind it--both tied and cut.

The ropes--and in particular the knots--proved a little challenging to model, and more so to UV-map, as I recall; they took longer than I might have expected!

Some instances of these new models have each been added to the level, too--there's a scattering of vases, a chest holding cloths and a potentially-useful item, and a game-board on a shelf, for a few examples. The logic that loads and controls the ropes--which are part of a very simple puzzle--has also been implemented in the level-script.

Finally, and as per usual, there were a few minor changes that don't seem worth mentioning here.

That's all for this week--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #104 on: July 24, 2017, 11:00:50 AM »

Blog post (24th of July, 2017)
A Small Mystery in the Tomb


Greetings and salutations!

For this week's screenshots, two parts of a story to be discovered in the tomb: What happened to this mummy? And why is this neighbouring tomb empty, its shelving thrown to the floor and only scraps of its contents remaining?




As you may gather from the above, the week just past continued to focus on filling out the lower tombs. Let me elaborate:

As with the week before last, I believe, much of my time was spent on modelling various items to be placed around the tomb. Perhaps most notable is the beheaded mummy shown above, but there were a number of less... startling additions: an inkwell, and an ink-stained pen; an articulated figurine, painted brightly; a simple cloth doll; and a few torn pages, some written and some blank.

Now made, I've begun placing these throughout the level, as appropriate.

I also finished modelling a single-curtain (as opposed to the double-curtains used more generally in this tomb). This proved somewhat tricky--indeed, I recall that I had set it aside some time previously as I was having trouble with it.

Part of this is simply the difficulty (for me, at least) in animating a curtain's folds as it's opened and closed, making it curve appropriately and without intersection or sharp corners. Another part came in exporting the curtain for use in the game: I'm not quite sure of where the problem (or problems) lay, but I occasionally found inconsistencies between what I was seeing in Blender and the result in Panda3D. (It's quite plausible that the issue was in my use of Blender, based on certain tidbits of evidence.)

Still, I at last have a model that I'm happy with, and which now hangs before the final goal of the level, hiding it away.

There were also some minor changes: tentative placement of an item, and adjustment to the internal positioning of one pre-existing model.

It's somewhat slow going, but I do feel that the lower tombs are drawing closer and closer to completion...

Otherwise, I did some bug-fixing in the week just past. The primary sources of this were the logic behind using items, and that of "toggling objects" (such things as switches, which have two states). This has proven surprisingly tricky, with various cases proving buggy. At least one issue (that I'm aware of) remains to be attended to--but those dealt with thus far seem to be fixed (I hope)!

That's all for this week--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #105 on: July 31, 2017, 12:03:00 PM »

Blog post (31st of July, 2017)
Many Little Things


Greetings and salutations!

This week's screenshot shows a very-work-in-progress collectible, a magical mirror found in the lower tombs. The colours animate in-game; I intend to post a GIF of that animation once the mirror is done!


(The sequence of colours shown in the glass is one of the things that's still work-in-progress.)

The week just past was perhaps one of work on many little things. Few seem particularly noteworthy by themselves, but together they add up to a fairly productive week, I feel.  ^_^

One of the non level-specific changes made during the week is that game-objects can now have multiple shaders applied to their various parts. This was previously quite possible in level-geometry, but actual game-objects had only the option of specifying a single shader to be applied to their entire model.

The code used to implement this is a little bit hack-y, I will confess, but not egregiously so, I feel.

The magic mirror shown above was the impetus for this change: while the frame uses the standard shaders, the glass itself shows a shifting kaleidoscope of colours.

Another such change is that it should now be possible to have more than one "blob-light" apply to a given node that's lit by the player-light. (Specifically, each node should be able to show up to five, if I recall correctly.) I haven't tested this properly yet; I'm still deciding quite how I want to make use of it, beyond one particular use that I have in mind for the final level...

A third is the addition of labels above the health- and stamina- displays in combat, intended to show which belongs to the player and which to their opponent.

Along with this, I've taken a decision regarding the protagonist: while she's seen in various cutscenes, and we have her thoughts and words, her name never really comes up. And I've decided to keep it that way: for this story, she's simply "The Adventurer", and this title is what's shown above her stats in combat.

As with the past few weeks, I continued to fill out the lower tombs, adding decorations and description-colliders, fixing models, and so on. One addition that might be worth mentioning is that I've placed name-plaques above the main doors into the various tombs, brass plates with engraved letters. Our protagonist doesn't read these letters, but she's been told what to look for in finding the tomb that should hold the book that she's been sent for.

I also fixed a variety of bugs in both the general gameplay logic and the level-specific logic.

One particularly vexing bug, as I recall, had a particular key stubbornly refuse to keep the rotation to which I set it. I would assign its rotation, save the level, and reload to find the key backwards. Attempting to simply reverse the expected rotation didn't seem to help, as I recall.

I eventually tracked the bug to the point at which rotations were saved and loaded. While I'm still not entirely sure of where the offending change to rotation lay, it seems that I hadn't been saving and loading relative to the scene's root-node, and that doing so fixed the problem.

As per usual, that's not all that was done this week; a number of things don't seem sufficiently interesting that they're worth noting here.

That's all then for this week--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #106 on: August 07, 2017, 09:56:13 AM »

Blog post (7th of August, 2017)
Poetry, Magic, and the Week of Awesome V


Greetings and salutations!

Before I begin, an announcement regarding the "and" section of this post's title: The annual "Week of Awesome" game-jam is running on GameDev.net (and this year on a dedicated site, too), and once again I mean to enter.

This means a few things, as I believe was in previous years:

First, I intend to focus on the jam during the week, and thus won't be working on A Door to the Mists. As a result, there will presumably be no blog entry next Monday.

Second, I intend to post daily blog-entries for my entry.

All that said, on to this week's entry!

For this week's screenshots, two things, both found in the lower tombs. The first is a bit of love poetry, found in one of the double-tombs. The second is a magical hand-mirror--completed now--filled with shifting colours, from one of the "private" tombs.





One again, the week just past was focussed on filling out the lower tombs:

First of all, as shown above, I completed the magic mirror that I believe that I mentioned last week. It's a collectible item, and while its function is unclear, it's at least pretty to look at! (I find, at least.)

I mentioned last week that shaders may now be specified for parts of a game-object's model. In addition to this, I've implemented support for certain tags to be similarly observed, allowing me to specify such things as transparency for such parts.

The mirror's "shifting colours" shader has also been applied to the collectible brass bowl found in the prologue level--although here it's rather more subtle. It's a change that I've been wanting to make for some time, as I recall, enabled now by the ability to have shaders and tags loaded for game-objects as well for level-geometry.

(I also touched up the normal-map (and concomitantly, the UVs) used for that brass bowl; the centre of the bowl looks rather better now, I feel.)

Another change can, I believe, be seen in the GIF that shows the mirror: I've flipped the lighting on the majority of the game's UI elements; they are now lit from the upper left, not right. I did this, as I recall, because I encountered an issue with the lighting of said mirror, which led me to discover that the lighting used for viewing inventory items (including collectibles) was inconsistent with that of the UI elements around them.

At first--and I did this not in the week just past, but the one before--I tried flipping the lighting in the inventory, and along with that switching the side on which the player-light was carried; it seemed like the easier option. However, I wasn't satisfied: it felt a little odd (perhaps just because I was used to its previous placement), and didn't fit well with the protagonist being portrayed as right-handed. So in the week just past I instead flipped the lighting of the UI--a tedious but not terribly difficult job--and re-flipped the player-light and inventory lighting.

This means that the inventory lighting, UI lighting, and player-light should now all more or less match up. When outdoors, the UI and inventory may not match the sunlight, depending on the player's orientation, but that doesn't worry me overmuch.

Continuing in the vein of lighting, I've been experimenting with the additional blob-lights mentioned, I believe, in last week's post. I'm not yet quite sure of how I feel about what I have, or quite how I want to use them. My intuition and inclination is somewhat naturalistic, but exposure to a number of less-natural but very cool-looking images has me tempted to do similarly.

As shown above, I did a little writing for the level in the week just past. In addition to the poem in the screenshots, I wrote a journal entry that provides some information on the people interred in the tombs. It hasn't yet been included into the level yet, however.

I also implemented the translation puzzle for the poem, tasking the player with translating a line of the text. As part of this, I made some tweaks to the "lexicon" and grammar used for these puzzles, and fixed--I hope--a bug discovered in a related design-utility of mine.

Speaking of the poem, it prompted me to create a new game-object class that handles the apparently-common case of a document which should be translated before being read, but which is otherwise primarily a legible document. The implementation was fairly quick and easy, as I recall, and this class may prove quite handy to have.

Finally, as per usual there were other changes besides those mentioned above, but which don't seem worth mentioning here--especially as this entry is getting a bit long, I fear!

So then, that's all for this week! Stay well, and thank you for reading. ^_^
Logged

nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #107 on: August 07, 2017, 10:22:13 AM »

I always see your posts in other threads and I swear I've seen this log before, but apparently never subscribed. I'll be following! Especially seeing that you're coding it in Python. Python is the best and I wasn't aware there were workable 3D game engines that use it. Should probably read up on the one you're using!
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #108 on: August 07, 2017, 10:39:49 AM »

Thank you very much! It's heartening to have a new follower, and expression of interest in the game. ^__^

As to Panda3D, I'm rather fond of it--but note that (last I checked, anyway) it does somewhat lack for the sort of tools that come with engines like Unity and Unreal. It's a rather script/code-oriented engine, I suppose. There were a few community-based efforts to create tools for it, as I recall, although I don't know whether they came to full fruition. Nevertheless, if you like Python, I do recommend looking into it, and giving it a try!

As to Python, I recall that I didn't like it overmuch when first I tried it, but I've come to like it very much indeed. It's enjoyably... protean, malleable, perhaps, and has some rather neat features (like list comprehensions). ^_^
Logged

filbs111
Level 0
***


View Profile
« Reply #109 on: August 11, 2017, 09:58:06 PM »

Looks good. In answer to the question about portal culling - i imagine the simple solution is that objects should belong to all cells that they cover. If an object covers two cells, it should be rendered if either cell is drawn.
Logged
Thaumaturge
Level 10
*****



View Profile WWW
« Reply #110 on: August 12, 2017, 10:10:38 AM »

Looks good.

Thank you! ^_^

In answer to the question about portal culling - i imagine the simple solution is that objects should belong to all cells that they cover. If an object covers two cells, it should be rendered if either cell is drawn.

And thank you for responding to this. ^_^

Hmm... I honestly don't know whether this would work with Panda3D's portal-culling system. I was pretty confident that it wouldn't, but in writing this I'm reminded of a case in which an object may have more than one parent node. Perhaps some experimentation is in order once the game jam that I'm currently participating in is done... Thank you again!
Logged

Ian_A
Level 2
**


Indie Artist & Designer


View Profile WWW
« Reply #111 on: August 18, 2017, 08:43:53 PM »

mirror effect turned out real nice!
Logged

CRIMSON KEEP - First Person Action Roguelite
Thaumaturge
Level 10
*****



View Profile WWW
« Reply #112 on: August 19, 2017, 10:14:53 AM »

Thank you--I appreciate that! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #113 on: August 21, 2017, 11:37:45 AM »

Blog post (21st of August, 2017)
Vertex Trouble


Greetings and salutations!

For this week's screenshot, the new backdrop to the lockpicking minigame. (I'm not yet sure of whether this is final; we'll see!)



The week just past was a very slow one, I'm afraid: between recovery from the "Week of Awesome" and hitting some nasty technical issues, not a lot of progress was made. As to what did get done, and the nature of the above-mentioned issues, read on...

The start of the week found me a little drained and tired, as I recall. I took Monday off, spending it relaxing and playing. On Tuesday I returned to work, starting in on polishing the lockpicking minigame: I painted a new backdrop for it (one that I hope conveys the screen-space in which the mechanic takes place), wrote a new set of instructions, and began work on adding a simple example-image to those instructions.

Then some feedback came in regarding my Week of Awesome entry. One of the judges reported that most of that game was pitch-black--something that rather hampered play. The source of this problem at first eluded me--but I believe that I know it now: In Panda3D 1.9, when a shader accesses vertex colours on a model that has none, the resultant behaviour is undefined. It seems that on my machine, and on the other on which I tested my entry, the result is white--which worked well for my entry. On other machines--and I presume that the judge's machine was one such--it may produce something else, likely black.

In Panda3D 1.10, this behaviour has been changed, I believe: it should reliably produce white when a model lacks vertex colours.

But why does this affect A Door to the Mists? Simply put, I use vertex colours, as I recall. (Sometimes for colouring models, but more often, I believe, as control values--indicating how well-lit a vertex is, for example.)

Now, I could re-export all of my models--the Panda3D exporter has an option, as I recall, to force the presence of vertex colours. (I'd guess that it was added for this very reason, perhaps alongside others.)

However, I fear that it would be all too easy to make a mistake and skip over this on some model or another. Since the problem doesn't show up on my machine, I could very easily miss that this had happened.

So, for this reason and others, I've begun the process of moving over to Panda3D 1.10. But 1.10 is an in-development version, and switching to it is not going smoothly thus far: I'm having trouble building a distributable version, and the SDK version renders my level in blood-red, with depth-occlusion apparently not working. :/

Since work on the level is stopped for the moment, in the latter part of the week I turned to working on the cutscene that plays as an alternate ending to the game--an optional conclusion that can be reached from the first level. I think that I have this done, in fact!

That said, I'm getting to the point at which I'm uncertain of quite how much to show. This is an ending, after all, and thus somewhat spoilery! Wink

(Concomitantly, I made a minor change to my cutscene editor: I often have the "escape" key exit such editors, but I kept finding myself intuitively pressing it in attempting to stop a cutscene's playback. This would quit out of the editor, and thus potentially lose work. I believe that I've now changed the editor such that "escape" does what I seem to expect it to do: stop playback, if the cutscene is playing. ^^; )

And as per usual, a few other things were done, I believe, that don't seem worth including here.

That's all then for this week--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #114 on: August 28, 2017, 06:29:10 AM »

Blog post (28th of August, 2017)
Exit Adventurer, Stage Right


Greetings and salutations!

For this week's screenshot, a section added to the first-level cutscene:


The week just past was another slow one, it feels. It was primarily an art week:

In the previous week, as I recall, I worked on the game's alternate-ending cutscene. In the week just past I continued in a similar vein: I added to the first level's introductory cutscene a new segment that I'd had in mind for some time.

This new segment acts as a segue between its scene and the next. As before, our Adventurer hears a conversation from a nearby table, mentioning "Catol" and the mist-door. She looks up. Previously, the cutscene then cut abruptly to her rushing up to the table, demanding information. Now, we first see her dashing off towards stage-right, to enter (as before) from stage left. It should, I hope, provide a bit more continuity between scenes.

Adding this segment called for some minor adjustments to the timing of the cutscene--after all, I was adding in a new action, calling for time in which it might take place. Now, there were two ways (that occurred to me) to achieve this: I could squeeze it into the scene as it stands, moving other elements back to accommodate it, or I could extend the scene a little to allow more time in which it could take place.

Of those, I think that the latter seemed the preferable: it didn't call for manually adjusting the timings of various elements in the scene, timings that I was happy with.

However, while scene timings could be adjusted simply by dragging controls in the editor, this somewhat lacked in numeric feedback, and on top of this the subsequent scenes don't shift automatically to adjust for such changes. This means that it could be somewhat tricky to keep the scenes somewhat consistent when making such adjustments.

To deal with this, I implemented a new minor feature into the editor: it's now possible to numerically alter scene-timings; specifically, one alters the end-time of a given scene, implicitly defining the start-time of the next. This allowed me to simply add a set amount to each scene's end-time, starting at the last and working backwards, keeping them consistent as I extended the relevant scene. It worked fairly well for me, I think!

With that done, I moved on to something slightly different: work on the title screen/main menu. For a while now I've had an idea of what I wanted for the buttons and title, but was rather uncertain of what art I wanted to back it. In the week just past an inspiration came to me, and I began work on it. Indeed, the image itself is perhaps done! That said, I'm not quite ready to show it just yet: I want to complete the main menu first, and show it as a whole.

That, then, is all for this week, I believe--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #115 on: September 04, 2017, 08:38:38 AM »

Blog post (4th of September, 2017)
Misty Buttons


Greetings and salutations!

For this week's screenshot, some progress on the main menu--specifically, mist showing behind the buttons when the player hovers over them. (The buttons themselves are stand-ins.)



The week just past was another slow one, I fear; this was likely at least exacerbated by sleeping issues that resulted in my being rather tired through most of the week.

Still, somewhat did get done! Let me elaborate:

Most of the work done in the week just past went into the main menu, I believe:

To start with, the backdrop image should now be placed as intended. Specifically, I have it such that the image always fits the width of the game-window, with more or less of the image being cut off at the top and bottom according to the window's aspect ratio.

As a result of that last, I extended the backdrop image both up- and downwards: it had been laid out for a wide-screen format previously, meaning that when its width was fitted to a narrower window chunks of blank space appeared above and below it. The new sections don't add much in terms of content: they're simply extensions.

I also reworked a few elements of the image, correcting some issues that I discovered. This isn't quite done, I think: I'm not yet confident that I'm quite happy with the layout.

Perhaps most problematic were the buttons of the menu itself. I've struggled to come up with a design that I find satisfactory: while I've come up with versions that I like in and of themselves, thus far none have felt to me as though they matched the setting and the story. For now this is very much a work-in-progress. (The design shown in the screenshot above is one of those that I tried and set aside, I believe.)

A little more successful has been an effect that I've added behind the buttons: when the player hovers the mouse over one, mist appears behind it, only to dissipate when the mouse is moved away. This currently uses the mist-effect from the game's cutscenes, which seems to do a decent job of it, I think. There are some touch-ups that I may want to make, but overall I'm happy, I believe.

Moving on from the main menu, then, I continued work on getting the engine up and running again. Specifically, I set aside my earlier intention of switching to Panda3D 1.10, instead attempting to back-port the handling of vertex colours that 1.10 provides into 1.9.4. My thanks to Rdb, one of the developers behind Panda3D, I believe, for pointing me to the relevant code!

Thus far this seems to be somewhat successful. That said, there is at least one mysterious issue to chase down, and I'm having some trouble with the "run-time distributable" build--the version that would be used to create a copy of the game that would run on another machine. The former will likely call for investigation on my end, while I'm seeking help on the latter via the Panda3D forums.

Finally, I discovered a bug in the shader that I use for "light flares" (such as one might see when standing in a dark room and looking at an open doorway leading to the bright outdoors). Quite when this bug slipped in I'm not sure--it may have come with changes to the engine, or some earlier change to the game on my part. One way or another, I believe that I have it fixed now!

That's all for this week, then--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #116 on: September 11, 2017, 08:10:08 AM »

Blog post (11th of September, 2017)
On the Menu


Greetings and salutations!

For this week's screenshot, a look at the new main-menu. Additionally, you should find a static screenshot--thus lacking the compression of a gif file--at the end of this post.



The week just past, while still perhaps a little slow, was more productive than the one before, I feel!

To start with, as shown above, the main menu is now complete! This involved work on a number of elements:

I continued reworking the backdrop to the main menu, resulting in the image that you see above. I'm rather happier with this layout, I do believe: I feel that it flows better, is a little better balanced, and better conveys the impression that I had in mind.

I believe that I mentioned last week was that I was struggling to come up with a design for the main menu buttons that I was happy with. In the week just past I found such a design!

The mist effect also saw some changes: it now spreads out a little, and has a slight downward tendency. The implementation isn't perfect--there's at least one "magic number" present, and I'm not sure of quite why it works--but overall I'm happy with the effect, I believe!

As you may see above, this mist effect is used behind the title, too. I had originally planned on using a static image for the title--indeed, the one that I've been using for a while as a header or image-link for the game, perhaps with some touch-ups. However, I decided to try the dynamic mist effect instead, with in-engine text for the title itself, and quite liked the effect. I was a little worried that it would be too distracting, but I think that it works.

Finally, the cutscene "glimmer" shader has been applied to the backdrop--it's somewhat subtle, but if you look carefully at the protagonist and terrain on the left, and the distant light on the right, you should see the light wax and wane a little. It's my hope that this leaves them feeling a little less static than they might otherwise have done.

With the main menu done, I moved on to other matters.

Sticking with menus, I made a change to the options menu: there is now a box to the right of the menu, which displays a brief description of a given option when the mouse-cursor passes over that option's in-menu control. The intention is to give the player a little additional information on each option, perhaps aiding them, if called for, in better choosing the settings that suit them. (This was prompted, as I recall, by critique of other games that had or lacked this feature (by TotalBiscuit specifically, I think it was).)

I'll confess that I found it difficult in some cases to succinctly and clearly describe the options; I think that I've managed in most cases, at least (although some changes may yet be made).



I also continued to work on getting the engine up and running again--and indeed, I believe that I've made progress there. It's not yet done, but at the least I found one source for a problem that I've been having with one particular object. (At time of writing I'm awaiting feedback on that and another issue via the Panda3D forum, I believe.)

And once again, there were changes made that don't seem worth mentioning in this post.

Finally, as mentioned above, a static screenshot of the main menu:



That's all for this week, then--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #117 on: September 18, 2017, 08:45:06 AM »

Blog post (18th of September, 2017)
Puzzles and Lore


Greetings and salutations!

For this week's screenshot, a look at the discovery of some lore in the lower tombs:



The week just past was a very productive one, I feel! :D As a result, let me not attempt to list everything done, but instead just mention a few things that seem particularly salient to me:

First of all, I think that I have the lockpicking minigame nearly done: the pick is properly shaded (and fades out as it "exits the keyhole"), the backdrop has been tweaked slightly, and the pick even makes (stand-in) sounds as it scrapes and taps on the pieces of the lock. I haven't yet implemented sounds for success and failure, and the above-mentioned sound system may well want for some tweaking, however.

Here's a screenshot of the minigame as it currently appears:



I also returned to work on the level itself, and feel that I've made good progress.

As shown above, one of the two lore-threads to be found in the level has been implemented. There are a number of things to be seen in the lower tombs, amongst which are these: a love poem; a beheaded mummy; an empty sarcophagus; and a stack of notes regarding events in the tombs. Should the player examine all of these--which involves solving a puzzle in the case of the poem--they uncover a lore entry telling the story to which these objects hint.

On the subject of lore, and as somewhat shown above, I've made a decision: I now intend to not limit the lore-entries to the protagonist's point-of-view. This means that I can provide more depth in those entries, and that lore-entries provide information beyond what the player has already found in the process of uncovering them. I'm quite happy with the result, I feel!

However, I also feel that this leaves the general entries provided for each level no longer quite fitting--especially as they were written from the protagonist's perspective, and included mention of her objectives in the level, as I recall. I've thus removed those. (It's a little strange to no longer hear the lore-bells sounding when I start a level...)

I also implemented two more translation puzzles, in this case unlocking some journals that I intend to in turn unlock the other lore-entry to be found here.

These puzzles proved somewhat tricky to make: In the translation puzzle, the player "translates" words by matching known "word-roots" to them. Since I don't want to flood the player with such roots, there's a fairly limited set. As a result, it can be somewhat tricky, I find, to come up with an excerpt from the final text that reasonably fits the available roots! (Indeed, I added one more root to the set, meaning "person"--a root that seems likely to be useful to have!)

On the mechanical side, I've reworked how falling "damage" is calculated:

Previously, I examined the player-controller's acceleration to determine this, with higher accelerations above an initial threshold producing more "damage", and accelerations above a second threshold resulting in death. This is, I think, fairly accurate. However, it also proved a little changeable: variations in the time-interval between logic-updates could result in variation in the controller's velocity on hitting the ground, and thus variation in the acceleration applied in stopping the controller, too. This made the results of falling a little less reliable than I'd like, I feel.

What I have now is less accurate, but more reliable, I believe: I simply keep track of the maximum height that the player reaches while jumping or falling, and when the player hits the ground, I calculate how far they've fallen. If this value is greater than one threshold, "damage" is done (the amount depending on how much greater it is); if it's greater than another, higher threshold, the player dies.

Finally, on a minor note, I made a small adjustment to the main-menu backdrop: it was pointed out to me that the protagonist's arm was a bit short, so I lengthened it a little.

That's all for this week--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #118 on: September 25, 2017, 08:12:34 AM »

Blog post (25th of September, 2017)
Becoming Conversant


Greetings and salutations!

For this week's screenshot, a little bit of conversation:

(Cropped and scaled for GIF.)



For a long time now, I've been uncertain of how to handle conversations in A Door to the Mists; in the week just past, I finally found an approach that I think works...

Conversation is somewhat of a rarity in this game; most of it takes place in desolate regions: tombs, ruins, caves, etc. Nevertheless, there are a few occasions on which it does occur.

One possible approach to this might be to have conversations take place in cutscenes. However, the graphic-novel cutscenes that I'm using in A Door to the Mists involve a fair bit of work in painting the various elements, and thus a fair bit of time and effort. Furthermore, entering a cutscene interrupts the gameplay--fine at the start or end of a level, but less desirable in the middle of one, I feel. On the other hand, they do have advantages in portraying characterisation, both on the part of the protagonist and on the parts of the other participants in the conversation. There's a certain potential richness to a cutscene that I feel could be beneficial.

Taking another direction, as it happens I already had a conversation mechanic implemented, a left-over from an earlier iteration of the project that became A Door to the Mists. This was inspired, as I recall, by the old Ultima games: Portraits are shown of the participants, with text in a large box and topics of conversation available to select to one side. However, that comes from a broader design than that of A Door to the Mists; this game's conversations are simpler, with no player-choice involved, and thus no selection of topics. And once again, having this take over the screen seems likely to me to interrupt the gameplay somewhat.

A simplified version of the above might work: just portraits and text-boxes. However, the issue of it taking over the screen remains.

What I settled on is simpler still: the gameplay continues, but speech-bubbles are overlaid on the screen, containing the lines of the conversation. (They can be advanced through rapidly by clicking the "look" button, as with the protagonist's thoughts.) The protagonist's speech-bubbles appear near the bottom, with a tail pointing straight down. The words of any other characters appear a little below the middle of the screen, with a tail pointing towards the character in question. The player can still move and interact during such a conversation, so it feels to me like less of an interruption.

There are still a few issues with the system, but it's pretty much complete, I believe!

Otherwise, a number of assorted changes were made during the week just past. Two that seem mentioning here, in brief:

First, I continued to work on lore-entries--one for the first level, and an expanded version of an entry found in the prologue, along with images for the former.

And second, I finally attended to the remaining murals in the lower tombs (something that I confess that I've been somewhat putting off ^^; ). To prevent this post from becoming over-long, I'll include just two of these below; two others should be available on my Twitter feed (at time of writing), while one more hasn't been shown.




That, then, is all for this week--stay well, and thank you for reading! ^_^
Logged

Thaumaturge
Level 10
*****



View Profile WWW
« Reply #119 on: October 02, 2017, 06:48:43 AM »

Blog post (2nd of October, 2017)
Sounding the Depths


Greetings and salutations!

Most of the work in the week just past went to non-visual things--audio work, bug-fixes, and the like. As a result, this week's screenshot doesn't show anything implemented in the week just past. Instead, it's simply a new image of the lower tombs:



The work of the week just past was somewhat of a miscellany, but I think that most of it involved, revolved around, or was prompted by audio work. Let me elaborate:

To start with, progress continued to be made on filling out the lower level of the tombs. It's close to done, I believe!

I also made some adjustments to the logic of the conversation system: Previously, conversations would be ended by pretty much any "menu" being opened, even the inventory. Now, they should only be ended by the start of combat, the destruction of the player-object (as in loading a save), or, of course, the conversation concluding.

I did make one bug-fix that is perhaps worth mentioning in detail: I had discovered some time ago that, if the player stepped up into a space that wasn't quite tall enough for the character-controller to enter, they nevertheless could. The controller then got caught between ceiling and floor, and while still controllable, as I recall, it jittered in a rather unsightly manner. This didn't happen when climbing up into such a space: there was logic present that detected the lack of space and forced the character-controller into a crouch, I believe.

The problem, then, was what to do about the bug. I didn't think that the aforementioned logic used when climbing would work well here--I think that I was concerned about it firing when the player was simply walking around.

The cause of the problem, I think, was that I have the controller move up smoothly when stepping -up or -down, rather than snapping to the new height. This meant that the controller only encountered the ceiling after stepping up. I could have changed this (having only the camera move smoothly, rather than the controller itself), but wasn't happy with the idea that players would be prevented from entering such spaces unless they climbed.

In the end, what I did was have the controller perform a ray-casting check while the controller moves upwards in this manner (whether as a result of stepping up or otherwise). If it hits something, the controller is forced into a crouch.

I wasn't entirely happy with further complicating the physics of the character controller, and this solution seems likely to have cases in which it doesn't work, but it's relatively simple, and should, I think, work more often than not.

With all of this done, I moved on to audio work, filling out the sounds to be heard in the level. I was surprised by just how many were called for!

I've made decent progress on producing these sounds, I feel, but have a fair few still to be made. As to those that are done, I'm reasonably happy with most, I believe!

Some of these sounds have proven more difficult for me than others. One particular bugbear has been paper, whether for books or pages: thus far I have yet to arrive at a sound that I was quite happy with. Some of this may well fall to my recording equipment--I record most of my sound-effects with my smartphone's internal microphone, via the Android sound-recorder that I believe came pre-loaded on the device. However, I daresay that much is simply my inexperience in sound recording!

In working on these sounds, a handful of new issues were encountered.

Some were relatively simple, such as adding a new, optional sound to "toggling objects" (doors, switches, etc.) to be played when they're moved into their "off" state (in the case of doors, read "closed").

Others were less straightforward, such as discovering that there was a problem with the code-based "default animation" used for keys unlocking "toggling objects". This came down to a particular bone in a particular door's armature turning out to have been rotated, which resulted in the logic of those animations--which occur relative to that bone--being off. As a result, the animation didn't work properly in a door that didn't have that unexpected rotation. (Indeed, it at first appeared that the animation wasn't playing at all--what was really happening was that the key was ending up inside the door, and was thus hidden.)

Nevertheless, I believe that I've fixed all of the issues thus discovered!

And once again, other things were done that don't seem worth further extending this post!

That, then, is all for this week--stay well, and thank you for reading! ^_^
Logged

Pages: 1 ... 4 5 [6] 7 8 ... 32
Print
Jump to:  

Theme orange-lt created by panic