Milo van Pelt - Tools Programmer

Tools Programmer

Duckside of the Moon

Created in Year 2 with a team of student at Breda University of Applied Sciences.

Duckside of the Moon is a survival game about Doug, a talented duck astronaut, who gets sent up into space for a research expedition. On his journey, he gets sucked into a wormhole, and he is transported to a mysterious galaxy. His ship has reset, and he's stuck.


This brave duck must find resources to improve his gear and fix his spaceship, so that he can return home to his friends and family. While doing this, he must overcome dangerous environments as he realizes that he might not be the only one up here...

Gameplay/Tools programmer

10 Devs

32 weeks

Unreal Engine 4, Blueprints

Released on Itch.io

Responsibilities:

  • Dialogue Management Tool for for designers to create new narrative for characters in different zones.

  • Dialogue camera transition for Npc's in the world

  • Zone Effect Tool. Which can be set-up to apply effects on the player (Poison, Oxygen, Health, etc.).

Dialogue Management Tool

I developed a tool tailored to give the narrative designer a way to create dialogue and choose in which zones these take place, as we had different environments for our NPC's.

Skills Developed
  • Unreal Interaction system: Learned to work with the interaction system to trigger dialogue.

  • Collaborative Development: Worked together with designer to align tool with creative goals.

Features

Zone-based Dialogue Creation

For the designers it was important to create dialogue and for each dialogue to set where it would take place.

NPC_ID

Conv_ID

Line_ID

Dialogue

Location

The data table I created and was used by the narrative designer has a ID per npc, the conversation, and the lines within a conversation.
Designers could also type in the dialogue line and for what location each dialogue was set for

You could choose the dialogue location on each npc to play the correct dialogue

Zone Effect Tool

The zone effect tool was created using blueprints, and was used to give designers control over gameplay zones with effects. The system consists of Pocket Containers that manage Pockets (zones) with customizable behaviour.

Skills Developed
  • Blueprint Scripting: Developed a tool to spawn, update and manage effect-driven zones.

  • Collaborative Development: Worked with designers to ensure the tool met theuir needs and was eay for them to use.

Features

Pocket Containers -- Managing Zones

The pocket container acts as a parent object that spawns and manages Pockets with specific effects.

Effect assignment: designers can assign and update effects of pocket containers (and thus Pockets).

Dialogue Camera Transition

Implemented camera transition for NPC Dialogue, ensuring smooth visual focus and enhancing player immersion. I used Unreal's interaction system to trigger dialogue, when interacting with NPC's. This will also trigger the camera transition

Dialogue is used in-game and shows different dialogue, depending on location. The NPC also gives different upgrades, depending on where you talked to them.

As well as choosing what dialogue wopuld be unlocked for talking to each NPC.

Visibility control: Toggle pocket visibility

Pocket - Manage Zones

Pockets are gameplay zones that can be cuztomized to fit the level design needs

Create Pockets: designers can create pockets on the Pocket Container.

Shape Customization: Switch between box and sphere shape to fit any area.

Scalability: Adjust pocket size for coverage of level section

Visual Feedback: Designers can toggle on/off VFX for all pockets on a pocket container for clarity during testing.

The Pocket Container has a details panel with a button to spawn a Pocket

When you add a tag to the Pocket Container and spawn a pocket it will also give a certain color (which can be set up in the blueprint). As a visual aide. The pocket below has a radiation effect.

As shown above, a pocket can be spawned with an effect. But the effect can also later be updated or changed on the Pocket Container. This will update any Pocket under the Pocket Container to have a different effect.

Updating tag on a pocket container, changes color and effect on pocket as well

Visibility can be toggled on or off for pocket, when clicking on the "Toggle Pocket Visibility" button

Each individual pocket can be selected. Selecting a pocket would show an option. To toggle if the pocket was a sphere shape or not