RSSAmplifier

Blog

Home on Golden Syrup Games

Recent content in Home on Golden Syrup Games

goldensyrupgames.comRSS feed ↗25 posts

Latest posts

Yak Shaving

“This will be a nice quick one to implement,” I tell myself. This week, I Was implementing AI for Inventor Simulator Needed the AI to select shelves to look at Was implementing a look-up-table of item->shelves-holding-item to make it faster Wrapped the shelves array in another struct because you can’t directly nest TSets and TArrays in Unreal Engine Added Unreal-Angelscript…

AngelScript Integration Tests

AngelScript is awesome. It’s a C#-like scripting language you can integrate into a C++ game engine, with wicked-fast hot-reloads, so wicked-fast iteration speed. The amazing Hazelight gamedev team integrated it into Unreal Engine and have made it open source. I wrote a longer post here that I’ll copy below. One of its great features is exposing Unreal’s test automation framework…

GOAP and Utility AI in Grab n' Throw

I’m working on a game where you throw stacks of your own team-mates in first-person, in various game-modes. I tried a few different approaches for player AI, but ended up settling on Utility for “what to do” and GOAP (Goal Oriented Action Programming) for “how to do it”. Each of these ( Utility AI and GOAP AI note) are worth watching videos on, they’re extremely…

Monkey Island Painting #1

I painted one of my favourite scenes from Curse of Monkey Island. Not a touch on the existing art style by Bill Tiller, but I had fun. Bigger image

Azure Infrastructure as Code - 2 - Deploying the rest

1 - Intro 2 - Deploying the rest Deploying the rest of the platform landing zone Now that we’ve some code showing infrastructure changes and deploying, lets extend it to include the rest of the core ALZ resources. You can follow along with the code in the repo. The below is written chronologically but you’ll be looking at the completed version of the code. It should still be…

Azure Infrastructure as Code - 1 - Intro

1 - Intro 2 - Deploying the rest Series Overview Say you’re an organisation who’s started their cloud journey, but hasn’t fully dove (doven? dove’st?) in. You’ve got some solid business reasons that mean you now need to lean into it. You know you want to do it properly - you want to move to Infrastructure as Code and set up a modern architecture that will grow with…

BGP on Windows Desktop

I love seeing BGP pushed to the edges of its intended use-case, and I’d been wanting to learn Go for a while. I’d also been frustrated that I couldn’t ingest BGP routes on my Windows desktop - it’s only included in the server OS versions. So I decided that my holiday project would be extending GoBGP to get my network’s BGP routes into my Windows 10 desktop’s…

Devlog - Jazz Hands

Grab n' Throw has reached an important milestone - we now have hands! With the core gameplay features in place it was time to add some GameJuice™. Over the last few months I’ve added visible hands, hand animations, camera animations and more. To make everything more immersive I’ve opted to re-use the same external player model that other players see - you can look down and see your…

Python-automated lightweight BGP lab in GNS3

I was looking to play around with some BGP changes so I set up a topology in GNS3 using FRR docker containers. Once I laid out the topology I didn’t want to manually address it, so I automated the entire lifecycle. Address generation, config application etc. This ended up taking way longer than manually doing it but was also way more fun and is now much easier to reset! BTW: FRR docker…

How to Rename a UE4 or UE5 C++ Class Used by Blueprints

Commit all existing changes so you can cleanly roll back if required Stop the editor Add something like the following to <your game folder>\Config\DefaultEngine.ini, where: <ProjectName> is the official project name UE4 uses in C++ for your project. E.g. the GT in GT_API that shows at the top of class declarations <OldClassName> is the name of the class you&rsquo;re renaming from, with no A, U etc…

Compilers for programming while tired

Strongly typed languages and compilers are wonderful. Especially when my eyes are struggling to stay open and the bed is calling. Usually by this time of night I can&rsquo;t complete a full task, but I can plan and start one. If I&rsquo;m refactoring I might change the parameter type in one function. If I come back a few days later and didn&rsquo;t note exactly where I got to, I press CTRL+B and…

Simple two-way serial between Raspberry Pi Pico and Pi (or PC)

I love Rube Goldberg machines. Love them. So when I wanted to add some physical IO to one, I figured it would be much more thematic and fun to connect my Pico-based Waveshare LCD + buttons to a Pi via serial, instead of simply using a Pi hat directly. I found a few guides around for getting the serial communication going, but none were exactly in the form I needed. I ended up breaking them down…

Devlog - Big Huge Throws

Over the holiday break I prototyped a whole new gamemode and map, which are Hole in One and The Distant Links respectively. They&rsquo;re based on the thought &ldquo;what if I just multiplied all the throw force, sizes, etc by 11?" and it quickly became apparent this is the most fun game mode so far. Even just the basic actions feel good. Check this out: The map is &ldquo;what if a golf course was…

Visual Studio Code - Change inline braces in snippets to newline braces

Situation You&rsquo;re a monster like me and have standardised on newline braces in PowerShell, but the vscode PowerShell extension has used inline braces. Solution Copy the snippets you use from %userprofile%\.vscode\extensions\ms-vscode.powershell-1.5.1\snippets\PowerShell.json Add them to your user snippets for PowerShell (CTRL+SHIFT+P > Open User Snippets > PowerShell) CTRL+F, regex mode Find…

Read Valid Input in PowerShell

Previously, any time I wanted to validate input in PowerShell, I&rsquo;d write custom validation functionality per-script. It turns out that I reuse the same basic methods though, so I&rsquo;ve created and shared a generalised function! This prompts users to enter input that matches a displayed list, then returns their input if successful. This works from VM or object selection, to simple y/n…

Setting up Reaper Backups and Paths

Reaper is the DAW of champions, but even champions are reduced to tears, and a lifetime of pained staring-into-the-distance, by the loss of their entire creative output. Protect yourself from emotional damage by applying the following steps to your recording set-up. As always, adjust it to suit your own workflow, and tweak where you can. Let me know if you&rsquo;ve got your own helpful steps to…

UE4 Pie Graph/Chart Material

(Download link at the bottom) In Tropical Manipulation, I need to display the share of customers that each player will receive, and communicate the price interaction mechanics (a lower price gets more customers, etc). For this I&rsquo;ve created a pie graph/chart material, so that I can add an image widget and use it in UMG. I actually posted an early version of this on the UE4 forums, but it was…

Create A UWidget At Runtime

UE4&rsquo;s built-in blueprint function &lsquo;CreateWidget&rsquo; only allows you to specify UUserWidgets, so to add something basic like a button, border or text at runtime, you have to create a custom UUserWidget to wrap it - very inefficient. Luckily, there&rsquo;s a ConstructWidget() function in C++ that can easily be exposed to blueprints. Make sure you&rsquo;ve got a BP/C++ project, then…

Height Based UE4 Island Landscape Material

For the island used in Tropical Manipulation, I wanted a simple material applied that I could quickly tweak to get a great looking island. I investigated using landscape layers, but found that for what I was using it for (an unchanging backdrop to the game) they wouldn&rsquo;t be necessary. Here&rsquo;s what I wanted from the material: Different areas based on height Beach - sand Flats - sand and…

Set spline point rotation in UE4 blueprints

Skip to the bottom if you just want the c++ code to use. Originally written for 4.9. Updated 2016-09-05 for 4.13 (also maybe .10, .11 and .12) code changes. After following the great tutorials on using splines and spline meshes by DokipenTechTutorials I had a very useable spline_path object, but wanted to extend it a little further. I re-implemented some existing blueprints I was using elsewhere…

About // Contact

About Hi, I&rsquo;m Ben Renninson, an Australian Visio engineer by day, and a game developer currently working on Inventor Simulator. I like games that deliver fun via interacting, interconnected systems, and my goal is to create more of these. I created t2md, an open-source tool to convert Trello to markdown files on disk. I release music as AMERICA BEACH. Contact ben@goldensyrupgames.com

Golden Syrup Dumplings

Ingredients Dumplings Ingredient Amount Self-Raising Flour 2 cups Butter 2 tablespoons Eggs 2 Milk a splash Sauce Ingredient Amount Water 3 cups Golden syrup 4 tablespoons Butter 4 tablespoons Sugar 2 cups Method Rub butter into flour. Add egg.

Grab n&#39; Throw

Distance Powerups Throwing Throw stacks of your own teammates in various first-person multiplayer gamemodes! See full gameplay and wishlist on Steam below:

Inventor Simulator

Inventor Simulator 4 Inventor Simulator 2 Inventor Simulator 3 Craft inventions and sell them to customers, then automate your workbench, workshop and store! See full gameplay and wishlist on Steam below:

Press Kit

Inventor Simulator Images Download images in a .zip file Download cover art layers as PSD 1 is key art 1 background 1 is key art 1 character 1 is key art 1 grid 1 is key art 1 logo 1 is key art 1 sketches