Game
JICE

2 years ago

Devlog - Toaster starts cooking


Recently I finished the enemy robot rework I was planning to do. It was successful, the first type of robot is mostly finished, and the other types can be more easily added later, now that I got the basic framework down.

The old enemy was a lot simpler but had its downfalls. Due to its 3d model it only allowed the full-body animations, without any separate moving parts. Its audio system spawned sounds at the location, which meant they wouldn't travel with the robot if it moved after saying a voice line.

Traveling itself was very limited too. Robot would move between 3 hard-coded points in space when there was nothing else to do and would not chase player during an attack task. In general, task following was done through some state checks and would be hard to test and maintain on a larger scale. This and other things basically made the old robot into a training dummy with no character and very basic interactions.

In comparison, new robot Toaster gets a lot of improvement, and there opens up a potential for new enemy types down the line. Toaster now has a different type of 3d model that allows it to have a wider range of animations. Its audio system is more complex: some voice lines take precedence over others and will always interrupt any other voice line. Any spawned sounds now travel with the robot and get a chance to be skipped on repeated tasks.

13-01-23-5.gif

Movement is less restricted - idling is now completely random within boundaries. Each robot gets its own small area where it can move between any randomly chosen positions. Moreover, robots can now recoil after taking damage and get temporary invulnerability (with a subtle visual cue) to prevent them from getting kebab'd with bullets. And to top it off, they get the ability to dash around after shooting their shots and continue to chase player if that one dares to run away.

Task following is now done through a mix of behavior trees and states. It is much easier to debug and extend functionality for any potential new entities. Overall, Toaster is much more defined character-wise. This is the first type of robot to meet the main character and, while it might seem dangerous at first, is more of a menace to itself and other robots than to the player.

This is reflected in its special ability during which Toaster "breaks": it becomes inactive temporarily and starts shooting harmful energy bursts, dealing damage to itself and everyone around it.

For now, this is all I wanted to do with the enemies for the demo version (besides polishing the changes, of course). Next thing I'm planning to do is reworking player abilities - I had a lot of time to think through my ideas for those and take into account players' feedback.



0 comments

Loading...

Next up

Some more level design of the Depot level. Spreading the rubble, moving the boxes around, putting some lights up.

Ditched baked lighting, trying lumen now. Surprisingly, it doesn't seem like it takes up that much more performance compared to the previous setup - with a few tricks for optimization, at least.

A little side project - a game I've started during a game jam and decided to work on it a bit more. It is kind of a survivors-like, but every upgrade you pick up is a choice between two. And whatever you don't choose upgrades your enemies instead

omagaaaDD gd 3d (EXPERIMENT VISUAL 5)

Not much to show, because I've been fighting with baked lighting again.. Thinking of turning to the dark side (using global illumination)

A bit more design of the second part of the Depot level, now with lighting. Needs additional jellies..

Will add a bit more lighting, but for now finished with this section of the Depot level.

Spent some time to fix metal containers' UVs. Here are before and afters. Gives the scenes a bit more cleaner look!