Posts

Showing posts from February, 2024

Saving & Loading for Hexwave.

Hello! Today we're going to be talking about how Saving & Loading works in Hexwave! If you don't know, Hexwave is my Interactive Film Engine (in C++) that I'm working on as part of my University assignment (and I'll continue to work on after).   Hexwave originally used CSV (comma separated values) to save projects, like so: ahhhh,woah!,1 test,testing!,1 teste,testing again,1 Whilst this worked for initial testing, I very quickly realised that it would break if people tried to use commas (I could fix that by using " ", but I wanted to move away from CSV) so I decided I needed to rewrite it to use JSON. I'm very familiar with JSON as I PR Review for D++ (which is a Discord Bot library) so we deal with JSON from Discord's API. It's also extremely common for storing data (if you're not using a database) so it's just the most logical option. If you're not familiar with JSON, it looks something like this : {     "testing":     {

The idea behind making Hexwave.

Image
About three weeks ago, I started my second semester (in second year) in university. This semester involves a module called "Industry Portfolio Development". The assignment for this module is to put together a Portfolio and make a new piece of work for it (along with showing 2 previous pieces of work). Now, as the totally sane programmer I am, I decided to make an Interactive Film engine in C++. Now, you may be asking the question: "Archie, what is an Interactive Film Engine?" and that would be an absolutely great question! An Interactive Film Engine is something pretty new (I'm not even sure there's an actual engine to only make these), but it's an engine that allows you to make Interactive Films like "Markiplier: In Space", "Black Mirror: Bandersnatch", or like the project I worked on called "Volition". However, if you've looked at my portfolio, you may have noticed a project called Stornaway. If you haven't seen my