Back to the Future

Now that Cults is out, I’m shifting back to work on Brimstone. I’m fixing bugs here and there for a follow on 1.07a but thankfullly most of them are not crash bugs and the few that are have been the result of very rare confluences of events…..stuff you would see 1 in 1000 games maybe. But I return to Brimstone not having been poking around the code for a while and it’s both refreshing and daunting. Design patterns are something that software engineers use to great effect. They are templates for approaching specific problems that can be reused over and over. I’ve established a bunch of design patterns during my work on Armageddon Empires and that is proving to be a tremendous help for Brimstone.

Since Brimstone was first a boardgame that I designed, its rule set is nowhere near as complex as AE’s. That’s not to say that the decision space is less rich or challenging… it’s not. But from a programming stand point implementing the rules is proving to be much easier. Simultaneous turns is a big help. Here the biggest challenge is offering the player the ability to construct orders that are stored/executed sequentially. You don’t have to worry about another player interrupting the order at any point. The player needs access to the game data and a menu system that lets him build the correct order. Say you want to move an agent across the map. You can select move agent from a list of orders and then select the agent from a list and then view the map and click on each hex you want to move the agent into. An arrow tracks the progress of each click and paints a movement track. Or instead of initiating the movement from a general orders list you could just click on the agent’s symbol on the map and select “March Legion” from a list of other possible orders.

Once this order has been created you have to also offer the player the ability to review it and cancel or modify it. I’ve come up with an interface pattern that I am calling a universal viewer. It’s a fixed dialogue box of dimensions 800 by 600 pixels. The fixed resolution means that I can offer multi resolution support more easily. The info viewer will always be the same size but more or less of the map can be displayed according to the resolution that is being supported. 800 by 600 fits nicely into the smallest resolution supported for the game in full screen namely 1024 by 768. Tabs run across a tob bar that allow you to select what type of information you want to view or actions you want to take. The bottom bar contains buttons for actions that are contextual based on which tab is selected. I’m hoping this all plays out as very intuitive. Here is the really bad placeholder art that I am using for the top tab bar….remember this is place holder art that I made in photoshop. The real bar will be quite ornate and lovely.

Universal Viewer Tab

Comments are closed.