Website Updates & Releases Soon

This is just a post to update you all on what I’ve been up to over the last few weeks with both the website & some of the asset store assets. Its not been too long since my last post but I did want to update you one the website changes and the progress of the Save Manager mainly.

Website Changes

The biggest and change that you would’ve seen is the new navigation menu setup. I’ve gone ahead and expanded it to have links to all major products currently active. The reason for this was to help indicate to visitors that there were extra pages for assets / games etc. As the homepage doesn’t illude to this too well. The sub menus also include Scarlet Library under the resources section. This being a code library I’m slowly working on for Unity which houses scripts I use between projects. It is well overdue an update when I get the main goals for this year done.

The other main change is more subtle unless you’ve tried to access some of the assets documentation. As the documentation for some assets have been ported to the website, instead of being an embed of a html export from Notion which it was before. The biggest upside to this is the ability to search the documentation! The solution isn’t perfect, as I’d like the option to add a landing page for each docs but otherwise this is much better than the other idea I was trying and mentioned in my last post. Below is a screenshot of the Mutli-Scene docs as they appear on the site now (https://carter.games/docs/multiscene/):

The only other website changes are in the backend, which should improve the sites performance a tad. The site isn’t on an expensive dedicated web hosting provider so it will be a little slower due to that, but its cheap and works which is ideal for me now.

Save Manager

I have good news in regards to the Save Manager, I’ve finally hit a release candidate for the assets version 2.0.0 release. I’ve been spending the last few weeks working out the bugs as best as I can and automating where possible. It’s a good thing I did this as a large chunk of the asset was not working as intended or was fundamentally flawed. Using my side project to test it, I have managed to get it initializing correctly when imported and updating when new save assets are added. On top of this I had to do a lot of trial and error to get the web builds working, but it does thankfully work.

I expect that asset will be out by the end of the month (ish). I’ve still got the write the documentation and check over the code one more time to remove any redundant logic and improve the API for usage where possible. But I should be on track to roughly hit that goal if I keep at it over the next few weeks when I get time.

Build Versions

Some of you may have noticed some minor releases to Build Versions over last week. This was just to fix up some issues the asset was having with getting assets in the resources folder mainly. There is another update coming this week which changes up the date field in the information asset to use a custom class instead of a string, which should help with regional differences with the date. An example of how it looks now:

That’s it for this update. Hopefully more around the end of the month with the Save Manager release!

March General Progress Update

March General Progress Update

So its been about a month since my last update. So its about time I updated y’all on where things are at.

Save Manager

The main progress has been on the save manager, with the code base now being pretty close to being production ready. I’m currently working out some bugs on builds which are been a bit annoying. The editor side of the asset is ready though, with just a few stress tests to do to make sure it works.

I have a few feature changes to the asset, mostly due the amount of work for the amount of use it will get. So the create tab has been removed as the creation of save data is a more modular in this version and should be easy enough to follow without a tool. I may add it again in a future update if its requested or really needed, but for the initial release making data manually will be fine with documentation and videos to aid with that.

Speaking of documentation, I’ve been looking into solutions for that. Annoying there isn’t really any solution I’m 100% happy with, most either are paid which I can’t afford given everything I release is free or doesn’t quite do everything I need it to. I’ve ended up trialling an idea using a website builder & either GitHub pages or similar to host the site on. An example below that I trailed using the Multi Scene docs

I’ve also changed up the path remapping in the asset to be different dependant on the target platform. You can define the path still but using some pre-defined strings rather than selecting the path yourself. There are some caveats such as having the update the path for each platform if you want it to be different etc. But it should work out fine for the first version. You can also press a button to open the directory where the save will be if targeting a standalone platform (PC/Mac/Linux).

I think I’m still good for the April release, but things may crop up that interfere with that, well see.

Audio Manager

The advantage of not doing the Audio Manager before the Save Manager is that I can use what I learn from it in the new version. I’ve recently been testing the early versions for bugs (which there are many) and researching some ideas. This week I was able to make a method chain solution that will change up most of the API I’ve written so far. Currently the setup is similar to 2.x with loads of methods for each use case which gets very hard to maintain. If I went about the chaining solution which I’m planning to now it works, I’d be able to reduce that and make the asset much easier to manage from my end without compromising on features. If you’ve used Linq, String methods or some tween libraries then you’ll know the syntax. An example below of what I’m thinking of doing and what it’ll do:

// Example
AudioManager.Play(Clip.Click01).SetVolume(.5f).SetDelay(.1f);

// What it does:
// Your normal play this clip, clip being the struct system I already have in place.
AudioManager.Play(Clip.Click01) 

// Sets the volume of the clip to play at .5f volume (range 0-1)
.SetVolume(.5f)

// Sets the clip to play with a delay of .1f
.SetDelay(.1f);

Now this is still quite a while off as I’ve only just got my head around how to make this work. I also won’t be working on the Audio Manger 3.x until I’ve finished & published Save Manager 2.x. But this will certainly give me a lot to work on. I do still plan to keep a modular method for the more traditional calls should people wish to use that syntax over this setup.

Personal Project

While I’m working on Carter Games stuff, I’m also taking on a personal project at the same time to give me some variety. Mostly to avoid burnout on one project which I’ve had in the past. In this case I’m making a passion/portfolio project where I attempt to replicate the Person 5 Royal (P5R) combat system & to an extent the look as well. I played the game over the Christmas break and really enjoyed it. So decided to make a project out of it.

The end goal is to at-least have a small custom boss battle which a full party of 4 vs something. With the user being able to use a mini velvet room system to make a persona with the skills available to then use in the fight. I don’t plan on replicating the AI or anything for the players party so it will be direct commands for all party members. The party members will also be custom and not related to the actual P5R ones. At the end of the day I’d like to make a mini-experience out of it, but it will always just be for portfolio, I obviously cannot release it commercially due to copyright etc.

Below is a little video below of how that’s going so far on the UI side, but its still very early days:

If you want to see more on the project then you can see the full project page on my portfolio here:

Its a long project so I’m posting update posts which you can view on that page. The up side of doing a project like this is that I learn even more doing it. I’ve now got a custom UI shape system as well as a basic Google sheets downloader working as well will come in handy in future projects.

That’s about it for this update, I’ll see you in the next one.

Whats coming in Save Manager 2.x?

Whats coming in Save Manager 2.x?

Currently the save manager is the asset with the longest time since its last update & with the most progress on its update. As this is the case I felt like updating you all with what has changed between the old and new versions and how it’s progressing so far.

The bad with the old setup

1.x while stable it has a lot of flaws both in workflow and how adaptable it is to different projects. The setup only allowed for 1 save data class which could easily get bloated and was often a slightly inconvient setup for non serializable types such as vectors. The setup also had no way of editing the save in the editor which is inconvient when debugging issues with projects.

What is the new version offering?

The new version offers a much more modular setup which addresses all of the above and more. This currently includes:


Save Objects & Values


  • Save objects holding a collection of values that can be defined as needed.
  • Can save Vectors & Colors as their normal values. No need for SaveVector2 etc anymore.
  • Can store as many objects as needed.
  • Tool like in 1.x to help make save objects.
  • Easily make variants of data in the save with different save keys.

Save Editor


  • Ability to edit all save data in a window.
  • Changes in values apply to game save when changed.
  • View/hide each save object & save value.
  • Easy reset for objects & values.

Save Profiles


  • Ability to save a copy of the current save data setup in the editor and load back to it when needed.
  • Profiles can also be edited in the normal Unity editor if needed.
  • Changing data structure will reset values in profiles, not ideal but the feature is intended for debugging mostly and struture changes can be worked around.

Saving Icon

The ability to show an icon on a canvas when the game is saving for a defined amoount of time. Handy if you want to let the user know the game is saving and that they should not close the game while it is active. Currently is still a work in progress but the first version is working as of writing.

Faster saving and loading


  • Data stored in dictionaries for better performance.
  • Saving and loading process has additional catches to avoid issues.

What is still to-do?


As of writing there is still a fair amount of work to do on the asset before it reaches a testable version. This includes a load of bug fixes to the current setup & a few features I’ve yet to implement which include:

  • Save Encryption
    • A way to let the user encrypt the save data should they wish to for extra security.
  • Path Remapping
    • Support for the user to remap the save path for the save data outside of the project as well as any editor paths for generates files from the asset such as settings assets & save profiles.
  • Additional Collection Types
    • Support for the normal Lists/Arrays as well as other variants and dictionaries.
  • WebGL Support?
    • A planned feature that 1.x didn’t support. My hope is to find a solution to let this new setup work on Web builds. But I do need to do some more research on this to be sure that it’ll work.
  • Documentation & Tutorial Media
    • The big bad of any asset, the docs. Always a slow process. For 2.x I plan to work find a good solution for the docs to be hosted on that I like, It’ll follow a similar structure to the Multi Scene docs I wrote last year though. With some video tutorials going over the basics of how to use the asset to hopefully help new users with commonly asked questions.

ETA?

I don’t have a firm date for release yet as I need to finish the code first, but I imagine that it’ll be ready by around April at the latest. I’ll post a more exact date when I have one but for now that is the best I can give you.

C.W.I.S Devlog #8 | Prototype Release

Summary

Its been a long time coming but I have finally gotten a build out for C.I.W.S. I will pre-face this as the build is just an early prototype and has a few bugs in it, but I hit burnout on the project again and didn’t want to just abandon it as it was in a good enough place to release something. If there are really game breaking bugs then I’ll give them a fix if reported, but otherwise the game will remain in this state unless there is mass interest in it. There is definetly more that could be done on this project but I needed to move for now.

Where can I get the build?

The prototype build is free to all and can be downloaded from the following pages:

What now?

With the release done, I’ll be moving to the A plan I mentioned here, working on some major updates to some of the tools/systems I’ve released. Both major releases are massive improvements over their older versions and bring them up to standard with what I’d use in a project these days. From there I have a few smaller projects I’d like to do, plus actually playing a few games as well for a bit of fun xD

C.W.I.S Devlog #7 | State of the game

So it’s been a little while since my last post and I’ve been meaning to make an update post for a few weeks now, so here it is. In my last post I went over some of the menu work and missile launcher improvements, since then I’ve been working out what is left to-do and trying to work out what I’d need to change in order to get build out, a thing that has been a goal for quite a few month’s at this point. Sadly, life has meant I’ve been rather busy in the evenings and weekends so I’ve struggled to get the time to work on the project, at least as much as I would’ve liked. Due to how near we are to 2023 and the fact that I have lost the motivation for this project that I once had, I’ll be moving on next year to new things once the first public build is done. I am committing to atleast release the arcade game mode that I planned to and to fixing any bugs that get reported for this project, but I don’t plan to continue it onwards unless it suddenly kicks off.

Some of the last three months I have been working on some of the assets, updating audio manager to 2.6.0 and releasing a much needed update to multi scene in the 0.2.1/2 updates. This took up a fair chunk of the time I would’ve had for C.W.I.S. But I have got some significant stuff done since the last update so here are the main changes:

Game settings system

One of the systems I wanted to get right from the grt go was the settings, as I wanted to be able to use it inother projects inthe future with, little to no changes needed. Atleast that was the plan, it took a bit longer than I planned as all things seem to with setting the resolution & full screen state. I did manage to figure out the resolution problem eventually but the full screen mode still proves to be an issue as of writing, I have left this bug for now to focus on the more pressing gameplay bits that I need to get working soon.

A view of the game settings screen for the video settings in the game so far.

Game save system

The old system I was using was the same slightly modified setup I used in Project Tilly. This in turn being a modified version of the public save manager asset. While this will work just fine it is really hard to debug issues with it. The new setup takes a totally new and modular approach, giving me an inspector view of the save state when needed as well as the option to add or remove values without having to reset the entire save. It works by saving the data in objects instead of the actual type & loading & saving the state from scriptable objects instead of data in code. This will likely become the framework for the next version of the save manager next year once I work out the kinks a little more, but for C.W.I.S it’ll work just fine.

The game settings in the new save setup.

Upgrades layout

The upgrades layout has changed a lot over the lifetime of the project. The new view aims to minimise the on screen space it takes up and make the systema little easier to follow. The new setup has a panel like layout with some of the upgrade types mixed together to lock some upgrades behind others of a different type. All the upgrades do now have icons that somewhat match their purpose as well. This ui is final at this point minus the weird bug when purchasing upgrades that causes the system to reset the display of purchased upgrades to appear not purchased and some of the upgrade implementations not quite working as intended. All of which will be addressed in the coming weeks.

New mechanic (system damage)

A recent development has been the turret damage mechanic. The idea being that turrets that are in sections that get hit by a missile have a change of damaging a nearby system, temporarily knocking it out of action. Damaged turret will not function fully or at all in some cases but will self repair if not hit again. If hit while damaged there is a chance the system is totally destroyed. In the event that a system is destroyed the user can still select it but none of the options will function for the rest of the game. The outline of the system will change colour and there is a UI indicator to signal the change of state to the user.

The UI showing the radar being damaged & repaired.

Radar knockout and lookouts

A new system that works into this setup is the radar lookouts. As having the radar system go down completely would be a little unfair on the user, I’ve added a close range warning system that acts like lookouts on the ship. When a missile is close by there is now some additional UI that appears to give the user some warning when a missile is close to impact. This system will work when the radar is working or not to help with aiming the C.W.I.S when at close range.

Minor bits

Some other minor bits include:

  • Some backend changes to remove the multilayer code I had as it was adding complexity I didn’t need.
  • Some clean up of some of the code to make it easier to manage and work with.
  • Added an upgrade button to the comms array to allow the user to reduce the cooldown for supply drops.

Release date

As I’ve hinted to in this develog I am aiming to release the build before the end of the year. But understand that this may overrun in the Jan 2023. If I don’t manage to get something out by the end of Jan 2023 then I will be leaving it there as I have other projects that do need my attention that are live products. So that is the plan, but I will be pushing for the release as I would like to get a new build out if possible xD