Daily Post Image from Upsplash

July: 06

2024

Items

For now, we should focus on getting the items to pull from the json and then save them on into the localdb. We can do this quickly, as I push the static api route up into the production.

Equipment

The equipment aspect of the game will be a bit tricky to render right this second, but we could still handle it within the text mode? Here is what I am thinking we would do for the interface:


export interface IEquipment extends IObject {
  type: 'head' | 'body' | 'legs' | 'feet' | 'hands' | 'weapon' | 'shield' | 'accessory';
  bonuses?: {
    armor?: number;
    intelligence?: number;
    health?: number;
    mana?: number;
    [key: string]: number | undefined;
  };
  durability?: number;
  weight?: number;
}

We can work with that for now and then extend it out later on. Next we will add an action for the IObject.

export interface IObjectAction {
  itemId: string;
  itemObject: IObject;
  actionEvent: 'consume' | 'equip' | 'unequip' | 'discard' | 'view';
  actionPerformedAt: number;
  performedBy: string;
  actionDetails?: string;
}

The equipment test casing seems to be throwing some errors, that might have to do with the fact that we did not yet add items to be equipped. I am going to take a break on this area and maybe come back around when we have more items to test case.

UI

For the game’s UI/UX, we will have to maintain a submenu system that can be extended and utilized across this game and maybe even future games? Right now, we have this seperated from the laser library, I think it would be best to keep it isolated because different games will have different UI elements. There was a bug where the tooltip did not display exactly where the user had clicked, which seems a bit weird of a bug, but I was able to adjust the client’s x and y to help with that. In the future, we could add some extra options to help with this customization, maybe different settings for offsets and things of that nature.

Build

We can setup the build pipeline to push to Itch with the Electron / NWJS wrapper, I will start to write that action out on the side, while building more of the game out.

2023

  • 9:30am - Quick coffee trip before sitting down for a meeting and programming session. My general go to breakfast is some egg-form sandwich, coffee and sugar free red bulls!
  • 10:00am - Looks like a minor update came out for Astro! Going to read through that and then update the website. I am thinking I might also go back and migrate the RareIcon.com website from the general node package manager to yarn.
  • 11:25am - Saving the minor updates to RareIcon.com, I need to extend out the general typescript paths and condense the components into a smaller form factor that I can reference easier. I believe that pathing / dynamic routing will be next on the update sheet!
  • 11:27am - The next couple hours I will begin looking back at the Unity async loading problem and see if I can figure out a better way to load the components. The next step was to use vContainers with unitask, so that the loading would be a bit faster between the scenes.
  • 2:30pm - Got the basic of the stream up and running! It has been such a long time since I had it online, I think it will be a solid edition to have within the KBVE eco-system. I will try to live stream my coding sessions more often.
  • 4:45pm - Setting up the Vuplex javascript library on KBVE.com, so that we can reference it inside of Unity. The current plan is to use a JWT session between the Vuplex instance and the Unity instance, but that can change later down the line, depending on how we move forward with it.
  • 5:30pm - Going to make some issue statements regrading on-going errors, updates or concerns with the stream. This might be a good way to keep things organized, so that we can keep everything organized and not all over the place.
  • 10:00pm - Before I forget, I have to create an issue ticket regarding the notification system. We will want to extend this out to RJ and our future games, as well as the future websites that we build.
  • 11:50pm / EOD - This follow passage was from the hand written notes, doing my best to write it out and save it for future reference. Making a large list of the functions and concepts that we could render and then call from would be useful. The idea here would be that we have to extend out each of those renders, i.e functions. I suppose that is like nested cloud functions, it could be interesting. Gelling to this point will require increasing the number issue tickets that we can generate / find including those outsides of the current main repository and migrating them all into just one? So we would have a different repository for each cloud function, but try to keep the issues within just the main repository, this way we could keep track of the functions and their issues but also keep to a hybrid-style source code management. This is because some of the cloud functions will remain behind a private wall, to avoid direct copying or abuse, while keeping some of the cloud functions public. In addition, we could create a mermaid style graph for each of the interpolation that we reference within the nested functions. ‘The written notes go further into the game plan design but writing them out seems a bit pointless as of right now’

Quote

The greatest way to live with honor in this world is to be what we pretend to be. — Socrates


Tasks

  • Async Unity Loading