• Register
Post news RSS A Bit of Carpentry

In which a rollover-sound issue is fixed; an opening sound is added to minigames; level two sees some fixes; a new scene is added to level two, and some interaction along with it; a demo is in the works--but has hit a stumbling block; and the side-game editor continues to progress.

Posted by on

Greetings and salutations!

This week's screenshot shows some new props (and one new inventory item) intended for use in a new scene within level two. (Albeit that the colour of the wooden elements has not yet been adjusted.)

Screenshot from 2019 06 24 18 43

The week just past saw bug-fixes, level-cleanup, and the addition of a new puzzle to level two:

I mentioned last week, I believe, that I had a problem with the rollover sounds that I was using for my UI. Specifically, I found that in certain menus swift mouse-movements could result in an unpleasant electric "burr" appearing in the sound.

With aid from both the TIGSource and Panda3D forums, I believe that I found the problem:

As it turns out, there was one type of control in which I was inadvertently providing only a single sound-object for all of a list of (sub-)controls: the drop-down menus. These automatically construct buttons to fill their menu-lists, with the styling of said buttons is uniformly applied from a set of keyword-parameters passed in to the construction of the class. As such, only one sound-object is loaded, and all menu-buttons share that object! And indeed, on examination it does seem that it was only in the drop-downs that the "burr" appeared.

At first this looked tricky to deal with, as I recall. After all, the item-buttons are constructed by the drop-down menu class, not by me.

But then I realised that I was already sub-classing the "drop-down menu" class--and indeed, even overriding the method in which the item-list is set! As a result, I could simply iterate over the new item-buttons in that method, and give each of them a separate sound-object.

This seems to have worked, with no more unpleasant "burr"-sound detected! ^_^

Sticking with audio, I had realised that I didn't have a sound to play when starting a minigame. So, in the week just past I set about fixing that.

The approach that I've taken is fairly simple: I've made a two-beat drum sound-effect, which is now played at the start of all minigames.

I'm not yet sure that I'm happy with the sound itself, as I have yet to test the most-recent iteration in-game.

Level two also saw a bit of work in the week just past:

To start with, I'd discovered an oversight: a certain (important) building had some missing collision-geometry, and seemed to have been passed-by when I attended to fixing certain texture-alignments. These were fairly quickly fixed, I'm glad to say!

Perhaps more interestingly, however, I decided to add something new to the level: a new scene to discover, and a new bit of interaction associated with it.

Near the end of the level was a place where a small wooden ramp allowed the player to progress.

That ramp has now been broken, with only a piece left lying on the ground for the player to find. The player is tasked with extending that piece, and so constructing the ramp. Doing so is enabled via the new scene: a nearby carpenter's workshop, providing wood and tools.

The workshop itself is only partly done; the tools shown above (and likely some clutter) have yet to be added to the level. Similarly, the relevant inventory items and at least some of their interactions have yet to be implemented.

Some time ago, I mentioned a desire to put out a demo, I believe. I've begun work towards, I hope, completing that demo. I've cleaned up the list of collectibles. I've removed superfluous print-statements. I've made some changes in how I handle output-logging.

Unfortunately, I've hit a stumbling-block: the most-recent distributable version of Panda3D has a crashing-bug in the above-mentioned "drop-down menu" class.

I could use a pre-release build (and may well do that for a small test that I have in mind)--but that build is unoptimised, I'm told, which doesn't seem like a good idea for the game's first demo. I could also perhaps drop back to a previous version of the engine--but then I'd lose some potentially-useful bug-fixes made in the new version.

Right now I'm somewhat waiting-and-seeing, as well as being active on the Panda3D forum. After all, I do still have the new scene and interactions to finish first, as well as the above-mentioned small test to run. So we'll see what happens...

And along the way a few other things were dealt with that don't seem worth mentioning here!

As to my side-project, that continues to make slow progress. The tile-editor can now apply ceiling-textures, has a grid overlay, allows one to set some area-specific data, and has the start of support for placing characters. (And perhaps other changes that I'm forgetting offhand!)

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

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.