Personal blog by Carim A, I occasionally write about the stuff I'm making

The Legend of the Usable UI Library

February 3, 2017 • 2 min read

Finding the Solution to a Consistent Gripe

There are a lot of things to love with MonoGame (and by extension, C#). Interfacing is not one of them. By that, I mean, there is absolutely nothing that MonoGame provides to deal with it, you must make use of an interfacing library or roll your own code...except, there are actually very few interfacing libraries for C# and the ones that do exist are either needlessly complex or completely lacking (but odd design choices make them difficult to extend to your needs).

For some time, I found relative success with Squid, a blackbox library where you provide the rendering implementation and gave it inputs and it would take care of the logic, and it sortof worked, but I met 2 issues:

Continue reading The Legend of the Usable UI Library

Project Structure & Network Considerations

February 2, 2017 • 3 min read

Let's Begin Development!

Like any old programming project, we have to start from actually...making a project! Now, because Unnamed will be an online game, we'll need more than one project. There are three projects in total:

  1. The client: effectively a view for taking data from the server and passing input back.
  1. The server: the thing that the game logic will actually run on, alongside storing player data and islands.
  1. The core: functionality that is shared between the client/server and can function interoperably so a client with different specifications could possibly be made at any time.

You can see that some stuff is done already: I write these things at the end of the day, you know!

Continue reading Project Structure & Network Considerations

Elevator Pitch

February 1, 2017 • 2 min read

It Begins...

I've finally started the game development module of my course and have until the 17th of May to design and release a game!

The pre-requisites are pretty simple; the game must have a GUI, must implement the MVC design pattern (not really sure how this is applicable to games, but eh), consider ethical/security implications and make use of at least one of

  • Online Gameplay
  • a Physics Engine
  • Collision Detection
  • Multithreading
  • Artificial Intelligence

The project that I've decided on is one that I've had plans for quite a while now, and it seems like a good way to kick myself into getting a prototype out there.

Continue reading Elevator Pitch

The Making of Icy Blog

January 27, 2017 • 4 min read

Alternative Title: Why Does PHP Still Exist (I promise, this isn't a PHP complaint article.)

Shortly before making Icy Blog, I took a good look at Glaciate. It was stagnant with little (if any) content and half of the systems that I had painstakingly wrote were broken during a web host transfer. I wasn't ever really happy about nothing happening.

I thought hard about what I wanted it to be. Or rather, what I wanted to use to get it to be what I wanted it to be. My requirements were simple:

  1. It had to be something I could actually understand to make changes to. This ruled out anything PHP-based, as frankly, I don't want to think of a single hilarity that goes on with that thing.
Continue reading The Making of Icy Blog

Glaciate 2017 - Moving On

January 18, 2017 • 1 min read

Time for something new...

It's been a while, huh? Well, Welcome to the new face of Glaciate! In a newfound attempt to keep myself up-to-date in both writing skills and web development, I decided to write my own blogging system from the ground-up.

I've decided to call this blogging system Icy Blog (creative, right?). Made with NodeJS, but nothing fancy going on with posts: everything is stored in git, and all of the posts are formatted as Markdown (with a JSON segment that allows me some flexibility later on for features such as tagging). Commenting is powered by Disqus, and I'll certainly open-source it when I'm happy with it.

Continue reading Glaciate 2017 - Moving On