New Screenshot

Rather than continuing to maintain radio silence, I’ll post a new screenshot showing the controls for directing fleets. When you click a fleet, that panel pops down, telling you where the fleet is going. You can adjust the numbers and break portions of the fleet off to a different destination. Clicking the destination and closing the panel works, as does just hitting “Next Turn”. Alternately, you can middle click the destination, which sends the selected ships off then shows the remaining ships in the panel. This is handy when you have several ships and want to send them all to different destinations. It’s subtle, but this screen also shows that star systems within movement range glow blue when you open the fleet panel. The effect is animated and fades in and out. It’s a nice touch.

Fleet Movement

Now I’m working on the backend simulation again. I’ve been fleshing out technologies and linking that in with various aspects of the simulation (range, speed, special abilities) that had been stubs before. Defining the technologies is the fun part of this. I’ve vaguely sketched them out on paper, mostly to brainstorm names and their approximate ordering. Now I get to define them in code. The next major task will probably be the UI for research controls.

Still need to put together some fancier nebula-ridden backgrounds…

5 Responses to “New Screenshot”

  1. Beef Says:

    What libraries are you using for graphics and I/O? lispbuilder-sdl ?

    • funcallgames Says:

      I’m using OpenGL, SDL, SDL_gfx, and libfreetype (not SDL_ttf, because it doesn’t seem to let you disable hinting). I’m not using lispbuilder-sdl or any FFI binding as such, just calling the libraries directly using ECL’s inline C.

  2. funcallgames Says:

    Come to think of it, I’m not using any CL libraries at all, and that isn’t likely to change. 🙂

  3. Beef Says:

    any chance I might see some of your w.i.p. code? I’de like to start on a game project myself using ECL. I went through the sbcl library hell before, and I’de like to see how you use sdl/opengl with ECL.

    • funcallgames Says:

      It’s straightforward, you can use inline C to call any of the SDL and OpenGL functions. Likewise, you can obtain values of any constants or enumerations in the same way. There’s a little glue code defined in .c files rather than inline, but now that I’m comfortable using inline C there’s no reason I couldn’t have done it that way (although there’s just enough code in my freetype glue that I’d rather keep it in a separate C file for ease of editing). I have a few helper macros wrapping ffi:c-inline to cut down the verbosity, and only resort to using ffi:c-inline directly when I want to write a whole block of C code. Maybe I’ll write more about it on my personal blog sometime.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: