Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: ReeveEngine  (Read 846 times)

Araph

  • Bay Watcher
    • View Profile
ReeveEngine
« on: February 04, 2016, 01:50:55 am »

A few weeks ago, I started a project (then ran into a pain-in-the-ass-problem, put it on the backburner (translation: forgot about it), and have only now just picked it up again). That project is a game under the working title of 'Reeve'.

What's the idea of the game?
The idea of the game is fairly straightforward: you control the titular reeve - a man who manages a medieval town. Your objective is to handle your settlement's finances and other administrative work, which means deciding who gets what percentage of the income from trade and taxes. However, this requires you to keep an ear to the ground: every guild and organization has their own demands that are sometimes mutually exclusive.

The way the story progresses depends on where you spend your time. Did you meet with the Stonemasons' Guild today? Great, you now know that the northern wall needs repairs, which the masons will handle if you pay them. Unfortunately, you missed hearing the merchants complaining about their caravans getting waylaid by brigands. Unless you were lucky enough to somehow guess that the guards need money for extra patrols, your income will suffer later on.

As cool as it would be to have this sort of game be procedural, I'm planning on making it scripted (along with providing tools for players to create their own campaigns). For reference, check out the game Papers, Please, which has influenced how I picture gameplay working. It's not entirely scripted, but the times for the additional events and rules are preset.

Okay, but ReeveEngine?
This isn't just any old game, though (I'm lying, it pretty much is just any old game). This is a game written from scratch, in C++, in a cave, with a box of scraps (also SFML, a set of libraries for basic graphics and audio). Unlike previous projects (Warden) which were written with either JavaScript or C# in Unity, Reeve will have a relatively simple 2D engine built from the ground-up - creatively called ReeveEngine.

What do you have done so far?
At the present time, the foundation of the engine is underway, but it's not particularly impressive. The scene manager and UI managers are working, which means that I can easily create scene layouts that can be loaded via clicking on buttons. It might not sound like much, but the way it works under the hood is a big step forward for me. I'm trying to stretch myself with this and make the code be as organized and clean as possible, which means all kinds of things: more elaborate file structures, being as object-oriented as possible, separating classes into namespaces, and so on. It's going a bit slower than some other things I've written, but I'm happy with how it's turning out (particularly given the language it's being written in).

What's next?
Adding more functionality to the UI system (adding text fields and dialogue boxes), using the scene manager to create basic menus, and beginning experimenting with some gameplay ideas (how reports and requests for money will be handled, how the overworld that lets you choose who to talk to will be handled, and so on).
Logged