JoeCraft

Personal

Progress Update

by on Jul.06, 2014, under Battle for Polaris, Personal

It’s been a few months, so I thought I’d post a progress update. I’ve been rather busy on the personal and work side of things, but have managed to work on some behind-the-scenes improvements in the meantime. Here’s a summary of what I’ve done over the last few months:

Battle for Polaris

I’ve finished the first set of major restructures and refactors I wanted to do. This included updating the codebase to work with latest OGRE and CEGUI, which was a job and a half in itself. I’ve also done some general tidy-up, and changed the project’s folder structure to separate header and source files. Since I’m trying to move towards having BfPEngine be a reusable framework, this made sense to me.

The main thing left to do in terms of refactor is the phasing out of OGRE code. I’m not particularly happy about depending on OGRE for simple things such as singletons, logging, string/real types, and so forth; I’ve worked quite a bit with logging systems – particularly Python’s nice logging system – since I did this, so I think I can do much better now. These plans are, however, on short-to-medium-term hold, since it feels like it’s been too long since I’ve worked on improving the meat of the gameplay and AI.

I’ve been reading back on my original plans from this project, from way back in my University days. I’ll be revisiting the old roadmap and writing up specific documentation as I go along, but the high-level summary of where I want to take the game AI is as follows:

  • General improvements to gameplay, and unit/group AI. Already summarised in my older (recently-updated) roadmap.
  • Use of probabilistic reasoning with Bayesian Networks in the high-level AI. Initially this would be to predict the player’s ship and sector positions, as a form of inferred influence map.
  • High-level AI that learns a player model over time, e.g. learning the player’s ship preferences. This already has a design, but may need revisiting after gameplay changes.
  • Investigate reinforcement learning AI. This is of academic interest, but in terms of practicality may need a more pragmatic hybrid approach.

I would like to further document this on the blog, so will be putting up posts with diagrams and overviews as I revisit and improve each section of the game code.

Interactive Fiction

This is still in the ideas stage. I would like to do something visual and gamey with this, but it has to work around my lack of artistic talent. I hope to draw up a proper design of this when I have a chance, though BfP is the priority at the moment.

Leave a Comment more...

Ongoing projects

by on Jan.06, 2014, under Personal

Ha, you thought I was serious when I said I’d be posting more often. Excuses aside, I’m just going to post a “brief” summary of what kind of things I’m wanting to work on and at what kind of stage they are. Again, this is largely for my own benefit.

Battle for Polaris

It’s been so long since I did anything major with this project, at least in terms of adding features. I’m still mired in refactoring it to make it compatible with latest versions of OGRE/CEGUI/etc, mainly so that I can have a nice CMake project and build it across different IDEs and OSs.

After that, I want to revisit and possibly revise the roadmap. There’s still an overwhelming amount of stuff I want to do with this project.

Die Evil Rocks (project codename!)

This is a 2D game project using pygame that I’ve been working on a bit. Since I’m a Sci-Fi nerd who can’t draw people or animate, it’s naturally another space game.

As usual, I have mega-ambitious ideas for this project. I don’t want to go into too much detail on it yet, but suffice to say that I’m being greatly influenced by an all-time favourite Star Control 2 as well as the glut of indie Metroidvania-style games we’ve been seeing.

I have a more sensible and achievable (in the shorter term) prototype/demo that involves showing off the flight controls and combat in a more limited explorable environment.

A lot of of the base game engine framework is down, and I’m working on getting a decent side-scrolling spaceship control system working. Again, this is more a matter of iterating over and tweaking a design, since obviously the controls are a massively important aspect of a combat/exploration game. I have in mind a weighty but not awkward physics-based flight system for the controls; Defender and Lunar Lander are both points of inspiration and not anywhere near what I want; Aquaria is probably the closest thing to the weighty but intuitive movement I have in mind for my game that I can think of.

The code is on my BitBucket, but I’m not going to make it public until I’ve got something worth showing – at least some nice controls and basic visuals.

Roguelike

This is on hold, pending a proper (initial) design, as well as a decision on what language/framework I want to use. I started off with Python and libtcod, but might end up going with C/C++. This is partly for performance reasons, and wanting to implement interesting things like lighting and line-of-sight myself. Back burner for the time being though.

Roguelikes are one of my favourite genres, and I’ve always wanted to make a classic-style ASCII one of my own. Unfortunately I’m currently just more excited about Die Evil Rocks and Battle for Polaris.

Fiction

The novel is at about 70-80% completion of the first draft – most of the story is done, but I’m busy working another perspective into it that should tie the narrative together better.

Also, one of these weekends I’m going to sit down, pick out a short story idea from the bucket, and bash something out. In the mean time, I’m looking into putting up some of my old short stories here, if I deem them not to be too embarrassing.

Interactive Fiction

I’ve recently become aware of interactive fiction – not that I didn’t know it existed before, but you know what I mean – and I’m quite interested in putting my hand in there. Current plan is:

  1. Research the interactive fiction engines/frameworks out there – either find one to use, or thing about implementing it myself.
  2. Come up with a decent premise or story, or adapt an existing one to the plan
  3. Make the bloody thing
Leave a Comment more...

Still around.

by on May.09, 2011, under Personal

I haven’t updated the site in quite a while, I know. between work, family, Dragon Age and other distractions, I’ve somewhat neglected this blog and site, and I felt pretty bad about it, so I thought I’d check in.

I have been investigating a few things with Battle for Polaris that has caused a bit of a roadblock; partly on what design direction it should take, and to extent what involvement OGRE should have in its future development. I’m playing around with some additions that would move it in more of a sandbox adventure (think Elite and its offshoots) kind of direction.

There is also a new project in the pipeline, currently also in the planning / messing around stages. Years ago I wrote a little rogue-like game as part of a university project in Java, and although the original code is a hideous spaghettified mess, I’ve always wanted to make an attempt at my take on the genre. In my professional life I’ve taken a liking to Python – not just in a Stockholm syndrome way, either – and, paired with libtcod, it looks like the way to go.

I’ll hopefully be updating more often from this point, on my progress in these projects as well as possibly some inane personal stuff.

Leave a Comment more...

Hello world!

by on Sep.08, 2009, under Personal

Well, here’s the first post for my blog. My plan is to use this website primarily as a semi-professional blog for my own game development work and related interests. Here you will also find a portfolio of many of the projects that I have undertaken over the years.

What to say.. Well, I’ve just recently finished a 12-month MSc course in “Computer Games Engineering” at Newcastle University. After handing in my dissertation and taking a short break, I’ve now begun to undertake the long-overdue task of setting up my own professional blog; the plan is to put my work up here for anyone interested in seeing it. I’m considering putting the more personal spiel on a separate site for professionalism’s sake, but relevant games and tech-related posts such as reviews and what-not will be seen up here too. In any case there’s not much here for the moment, while the site is under construction.

Leave a Comment more...