The force fields are fun. I actually used one today to kill a lizard creature as he followed me around a 90 degree corner. I just put 3 shots near each other on the wall, and toasted him with reflective shots from the force field.
Yesterday I fixed the water so it matches the level lighting better, and isn't so washed out bright.
Today most of the day I've spent re-working the sound file playing & loading. The original code used a media manager, which was keyed off of sound file name. The downside of this became obvious when there were .ogg file references in the code, and in the entity facets.
Instead, I made a new level of indirection, where all sounds are referenced by tag, and that is used to index into a csv file which contains the actual file name, in addition to other parameters. For instance, I recently added a sense of hearing to the enemies, so they can detect nearby sounds, like gunfire, etc. To support this, the sound csv file has an 'alert' column that contains a scaling factor saying at what relative distance an enemy should become alerted. Right now this ignores the enemies' personality, but that will be added too.
I had the brainless task today of going through the code & data files and switching the .ogg files into tag references instead. Sometimes it's nice to have a brainless task that you know you can accomplish in a given time! ;)
Now the sound designer can swap out sounds during the game, and even add new sounds in some cases, without quitting or re-compiling.
I also plan to add a similar layer of indirection for text messages. This will make it easier to fix them, as well as translate them later on.
Here is a shot of the character using the force field for a temporary bridge :
And as a shield in the thick of battle :