Sean Tilley

Sean Tilley at

Random thoughts about making a Free Software adventure game

I've been wanting to get back into game development as a hobby for a while - I used to do it years ago, but can no longer rely on Adventure Game Studio as a tool, due to the editor being windows-only with little chance of a port happening anytime soon.

Image/photo
No One Likes You, an unfinished game that I lost the data to years ago.

I have been looking at the Godot game engine, which is Free Software and has many powerful capabilities for 2D games. I've played a number of game demos with it, and I believe that it could be just the system I need. It's very different from what I'm used to, and will take a long period of practicing tutorials and building stupid demo games before I start making any real progress anywhere.

I really, deeply, truly love adventure games in the style of the #Sierra titles that I played as a kid - these include King's Quest, Space Quest, and most notably, Quest for Glory. I have spent a lot of time attempting to better approximate the visual styles and the type of gameplay that these older titles used to offer.

I recently had an idea about implementing different cursor modes in a Godot engine. Although I know very little of how Godot's internal code system works, I believe that I could effectively create different interaction cursors by declaring global variables. Something like:



def cursorMode {
cursorMode() = c

function cycleCursor() {
  if cursorMode(c) = 0 & RightClick {
  setCursorMode(c) + 1
}

else if cursorMode(c) > 5 & RightClick {
  setCursorMode(c) = 0
}



Mind you, I've never been a particularly great coder, so there are probably some conventions that I am missing here in one form or another.

The main idea is that you have cursor modes 0-5, which covers Walking, Looking, Interacting, Talking, and Inventory. If a player right clicks on the final cursor mode, the mode variable is reset to the first one.

You could then define interactions with objects in their relative scripts, such as this:


// Rock
object Rock {

if cursorMode(c) = 1 {
  display("You see a rock.");
  }

if cursorMode(c) = 2 {
  display("You touch the smooth, cold surface of the rock.");
  }
}


Obviously, I will need to crack open some books to better understand the semantics, especially in relation to #Godot syntax, but I would be very interested in figuring out how to put these fundamental building blocks together.

sazius, Christopher Allan Webber likes this.

You might be interested in the multiplayer interactive fiction / MUD system I'm working on for the Lisp Game Jam.

Christopher Allan Webber at 2016-05-09T22:14:18Z

Sean Tilley likes this.

If anything, it might give me some good practice in putting some game logic together. I tend to bite off more than I can chew with far more complex titles.

Maybe I can finally get around to mapping There Is No Outside into an RPG format. I was originally trying to write a series of short stories revolving around the concept, but perhaps a game format would make world-building much easier.

Sean Tilley at 2016-05-09T22:37:42Z