GDR Forum Index
Podcast Podcast
Dev Dev Logs
Search Search
RSS RSS
Register Register
Log in Log in
Reply to topic GDR Forum Index -> Game Developer's Refuge -> Development Log - Kingmaker Page 1, 2  Next
View previous topic :: View next topic  
Author Message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Sat Aug 27, 2011 3:08 am    Post subject: Development Log - Kingmaker Reply with quote

Ok, I guess it might not hurt to create a devlog afterall. My idea is still in an embryonic stage and it might take a while before I have anything to show.

I intend to write down my idea in a more complete form but basically I want to create a dynastic turn-based strategy game in a fantasy-medieval setting. Think Crusader Kings meets A Song of Ice and Fire :)

I'll leave you with that for now!
View user's profile Send private message
yodhe
Member

Joined: 12 Nov 2010
Posts: 99

PostPosted: Mon Aug 29, 2011 10:57 pm    Post subject: Reply with quote

I tend to like these sort of games, I hope you follow through with your intentions, and at some point in the future I get to play your creation.
View user's profile Send private message Visit poster's website
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Tue Aug 30, 2011 1:23 am    Post subject: Reply with quote

My ideas are currently a bit all over the place, I have to be wary of feature creep I guess so the project doesn't get overly complex.

The basic raw game I envision is basically this:

You play as a ruler of a dynasty. You rule over provinces and can have a liege and/or vassals. As in Crusader Kings, the only real end-game condition is when your dynasty is no more, so taking care of that is important. Other than that the game is a sandbox game kinda, with no set goals except the ones you set for yourself. Even though there will be basic economic and trade management the micromanagement concerning provinces should be kept to a minimum, the important part is that it's fun to do, if it ever becomes a tedious job then I'm probably going to drop it (this is probably especially important in the late phase of the game). There will also be warfare but also at a pretty general, abstract way - it's grand strategy that's important and not battle tactics. The meat of the game is basically creating and nurturing relationships with other nobility, be it in your own court or with other kingdoms/provinces. So far my description os pretty much Crusader Kings except that I'm aiming for a turn-based game (which would make it easier for eventual development of multiplayer, but that's faar away). The key difference in my mind is that the amount of actions one can do and complexity of the relationships are going to be on a more detailed level. Basically, the player has two choices, either play as the current ruler in such a way as to fulfill a grander strategy or roleplay the ruler as is fit with his/her personality. Somehow I have to make this fun and interesting too - the GUI will be very important. It should be easy to see relationships and who's who in the courts and whatnot. There will be both parts of a character thats predecided (genetically) like certain personality traits, but some traits can also be gained during one's life either through random events or choices that you as a player decides. For example, taking inspiration from a certain book you could for example at your son's wedding feast murder someone who is becoming a nuisance.

I don't know if this description made it any clearer of what I actually intend to create. And I know the complexity of the endeavour is kinda huge, but one step at a time I guess. To my benefit, the simulation of personalities doesn't really require me to try to model a good enough AI - however it makes it harder to create a fun game perhaps, I imagine a lot of absurd situations coming up from people acting in ways I didn't really predict.

The game will have placeholder art to begin with, but I kinda want a retro look to it, think Civ I for the Amiga. There will be no real historical content (even though scenarios could be made I guess) and the maps (aside from premade scenarios) will be procedurally generated.

So, the ideas (or well, the mechanics) are not set in stone or even written down yet. Things will change a lot I guess. I still haven't decided on what I I think of introducing different kind of religions and what effect that would have on the game. I'm not so sure about naval warfare either. Or the extent of fantasy elements I want in the game - not really aiming for the classical elves, dwarves, orcs stuff nor impossible magics. Might scrap it altogether and just go with medieval/feudalism setting.
View user's profile Send private message
yodhe
Member

Joined: 12 Nov 2010
Posts: 99

PostPosted: Tue Aug 30, 2011 2:40 am    Post subject: Reply with quote

This might be of inspiration to you

http://en.wikipedia.org/wiki/Gormenghast_%28series%29

Intrigue and politics, in a dark gothic setting, without the trappings of "high fantasy"
View user's profile Send private message Visit poster's website
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Mon Nov 21, 2011 4:08 am    Post subject: Reply with quote

A small update to show I'm not dead :)

Thanks for the inspirational tips, I will definitely get to reading them books sometime.

I'm still designing the game mechanics, trying to find the balance between simulation and fun. But I got distracted by other small projects that are fun to start making but seldom get further than a prototypical prototype. I also got interested in component-based entity systems and tried to come up with an ultimate solution which was of course futile. I still very much like the idea though and might expand upon it through first making a simplish game, something along the lines of a space invaders clone, and then transform it into using an entity system structure. Could be fun.

I haven't lost sight of Kingmaker though. Basically I want to combine a feudalistic simulation with grand strategy where decisions and course of events are in the vein of the book series A Song of Ice and Fire that I'm sure most of you must have heard of. It's hard to chisel out exactly what features should be in the game though in order for it to be fun and to avoid stuff that merely makes the experience tedious. I guess I have to be pretty open about design choices though, as often it's hard to see on paper what actually will be fun when actually trying it out in-game. Still, I must decide on a few basic components that should be crucial enough to stay static during the entire development phase.

Next year should allow me to dedicate more time into actually creating something tangible. So, my next order of business is to decide what core elements the game should have and describe a few awesome scenarios that should happen in the game and try to imagine how they would play out in-game. From these scenarios it should be more clear to what needs to be in the game and how it should be presented. I have a vision, but it's still kind of blurry. It's very important that the game ends up being fun to play and engaging in such a way that you really feel you're commanding a dynastic line of rulers. The word I'm looking for is probably: atmosphere. This can be achieved through many means, but good looks can only take you so far I guess (and hope heh).

Ok, done venting!
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Tue Nov 22, 2011 5:51 am    Post subject: Reply with quote

Wait there's more.

I sat down and started thinking about core features and how they would affect other gameplay elements, and my imagination started spinning and now I'm really excited again about the possibilities of this game that I see in my head. All kinds of cool stuff pertaining to medieval backstabbery and alliance-forging and other epic shit. Again though, how this is all to be played out is not clear from a long shot. So, don't get yer hopes up I guess heh. Anyway, I have a rough idea of the core elements so the next order of business is to make them happen. The biggest challenge thereafter is how to "simulate" lords and vassals and keeping track of all the various relationships and opinions out there, and somehow connect it to the components of the game that builds up the grand strategy part of it all, e.g. the economy, trade, espionage, diplomacy, war, etc etc.

Ok, I'm gonna relax a bit on what I plan to do, and instead report on the stuff I actually do.
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Tue Nov 22, 2011 5:58 am    Post subject: Reply with quote

Oh oh, I forgot I have a question.

Even though my game might be hard for you to visualize, what is your opinion of randomly generated worlds vis-a-vis a pre-created one with an actual story/setting. I guess replayability is greater with the former, but the latter allows for a more immersive connection I think. The thing is though, that even though a set world with a defined cast won't matter much when the game is about dynasty, so the characters found at the start of the game will soon be forgotten (how soon that is I'm not sure of yet however). So, I'm a bit undecided.
View user's profile Send private message
Alex
Developer

Joined: 05 Sep 2005
Posts: 1159

PostPosted: Tue Nov 22, 2011 11:40 am    Post subject: Reply with quote

maybe you can mesh both somehow? like how some game have generated caves while everything else is precreated. Your game sound pretty technical with all the different balancing things involved, I hope it works out because it seems like it would be interesting if I understand it correctly.
View user's profile Send private message Visit poster's website
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Fri Nov 25, 2011 1:54 am    Post subject: Reply with quote

Yeah, I suppose I could. But for now I'll aim for a pre-created one. The benefit of this is immersion I guess and a more tangible goal. Imagine a continent ruled by 5-7 powerful Houses, perhaps right after the fall of an united kingdom, and the turmoil it has created. This would also fall in line with the name of the game that ultimately the player is trying to unite the kingdom - with an added spin that it doesn't really have to be his own dynasty that rules the kingdom in the end, as long as the dynasty lives on. But this might complicate things, could be easier to just go for the old "conquer all, become king" angle.

This also lets me avoid focusing on procedural generation of maps and whatnot, getting me closer to the real stuff. I still have to tend to not so exciting stuff such as implementing a GUI. Speaking of that, anyone know any minimal libraries or interesting articles dealing with that? I haven't really done much GUI stuff before (other than basic game menus and such). I'm using Allegro 5 for this project and its event system I'm thinking would be a good.

Now I just need a good name for the Realm :)
View user's profile Send private message
yodhe
Member

Joined: 12 Nov 2010
Posts: 99

PostPosted: Fri Nov 25, 2011 3:57 am    Post subject: Reply with quote

Having spent three years looking into procedural generation of maps, my advice would be go for the procedural route first, against a predetermined map...

i) It will improve your coding knowledge to be able to implement various algorithms like perlin noise, BSP maps, carcassone style neighbour aligned tiles etc.

ii) With a procedural game you will forced to make a decent AI, and improve your coding skills again, as you will have to have opponents who adjust to different scenarios/terrain etc.

iii) Once you have got the procedural world generation and AI done, you can then very easy pick and tweak a predetermined map, if you want to create a specific campaign/story mode. Doing it the otherway is funkton of work in my experience.

iv) You can re-use the procedural generation methods you create in other projects. Same with the AI. ;)

Though it certainly is more work, someday you are going to have to deal with this stuff, if you are serious/sincere about coding/programming so you might as well start today.

All my 2p.
View user's profile Send private message Visit poster's website
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Sat Nov 26, 2011 9:55 pm    Post subject: Reply with quote

Those are all excellent points I must say, and worth considering. It's just that right now I'm leaning away from tile-based maps to something more "cartographic". I'm not sure how to implement that using procedural generation though. The style I'm aiming for is something like this:



And in my game the important part for the AI is not so much using the landscape as it is about handling relationships with nobles. When your army is eventually raised and ready for war a lot of the outcame has already been decided depending on how you have played out things in the court - trustworthy vassals, alliances with other powerful lords, etc. This is where the AI really has to shine, and will be the toughest part to get right. Every lord can betray you, but if there is too much random elements then the game will feel like a game of dice which isn't right either.

So, considering this, I'm not sure the procedural generation of the worldmap brings much to the game itself.


Sirocco - edited the post to fix broken link. I guess Lemon64 doesn't like hotlinking.
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Sun Nov 27, 2011 5:59 am    Post subject: Reply with quote

Gah! Looked a bit on the devlogs of Crusader Kings II and what they wrote about Plots, which seems like an ingenious idea aptly fit for my game with some modifications. And then one thought led to another, and soon the task felt overwhelming again. I really need to focus on the basics, which I will do now :)

I'm currently considering the right amount of Lords in the Kingdom (being a Lord meaning you rule a province). I don't want the player to be overcumbered with having to keep track of too many Nobles from a zillion different Houses. I'm thinking the game should start with say 5 really powerful houses with a bunch of Houses already in vassalage, perhaps with a few here and there undecided and up for grabs. That would make about 50 provinces give or take, which feels like a reasonable number. Late in the game it might getting close to becoming tedious, but in order to crown a king one doesn't have to have vassals in every province on the map, a majority should suffice for winning the game. So, this leaves us with vassals, and allies and foes of a good manageable size. However, the world would be quite barren with just these folks. I intend to kind of simulate the people of lesser Nobility somehow, so that lesser Houses get their chances of perhaps becoming a Lord themselves. Each province will have a number of Knights (the basic feudal title) and are handy assets in battle. Some of these knights might be more powerful than others, rising in ranks and whatnot, even challenging the Lord of a province when he appears weak. So where Lords will be simulated through an intricate system of attributes and traits, the knights need to be handled differently - otherwise the complexity will again become a problem and the balancing of game mechanics a nightmare I'd reckon. It should fit with the feel of the game too, being a powerful lord why would you even care about Knights with no actual power, they would be nobodies even! It's when they do something extraordinary that they catch your attention. Well, perhaps your Master of Whispers could scout out some interesting prospects so they can become a useful tool before they become an irritating nuisance (that "Office" is not set in stone, sounds cool though). I'm getting sidetracked though, back to basics as it were!

edit: thanks for the edit above, got my own photobucket account now, so it won't happen again
View user's profile Send private message
yodhe
Member

Joined: 12 Nov 2010
Posts: 99

PostPosted: Mon Nov 28, 2011 1:04 am    Post subject: Reply with quote

*cough* Even irregular tiles are still tiles, and your AI is still going to need to get from A->B. Having written quite a few Axis and Allies style games over the years, the same principles still apply imho. It doesn't matter how you abstract your variables, underneath the words and images its still calculus, whether its determining whether a lord will side with you or which tile space to move an army into depending on environmental factors. *cough*
But being a huge fan of strategy games I look forward to hopefully playing your game at some point in the future.
View user's profile Send private message Visit poster's website
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Mon Nov 28, 2011 4:45 am    Post subject: Reply with quote

Yes, true enough, I agree with the sentiment wholeheartedly. It seems like the smartest thing to do, especially consdering portability to other projects as you mentioned. But on the other hand, I really want to get into the interesting parts as soon as possible even if it's only to see if they even work as a gameplay element, and the sooner I do that the sooner I have something to show here :)
View user's profile Send private message
yodhe
Member

Joined: 12 Nov 2010
Posts: 99

PostPosted: Mon Nov 28, 2011 11:25 am    Post subject: Reply with quote

In my experience I found the quickest way to prototype these type of games is to use pencil and paper, to come up with some simple rules and play test to game either on paper, and/or use pieces/the board/rules from a game like "Kingmaker" or "Blood Royale", and maybe rope in a couple of friends, to act as AIs/other players.
I found going the traditional route not only kept in the element of fun and play, but that it provided a rapid template on which to code the game.
But this is all just my 2p and isn't meant to distract you from your motivation, and being in your zone. Keep at it, stay enthused, and maybe make a list of the things you enjoy the most in those sorts of games.
Also it might worth taking a look at some similar games, such as Albion, Kings and Kingdoms for which there is a free PC version out there.
View user's profile Send private message Visit poster's website
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Wed Nov 30, 2011 12:07 am    Post subject: Reply with quote

Another round of thinking. It feels like this devlog might be a lot about the game design before I have anything real to show, but better to design now than later heh.

I've been thinking about how to simulate nobility and is a subject for its own post. In short, I'm leaning away from heavy simulation of personalities, to a somewhat more simplistic "board game" type of system, both to make it more fun and easy to get into. Example: a vassal has the trait "Loyal" (this is known to the player because of general gossip throughout the kingdom and in the court, and also through indirect espionage, a noble can also gain traits throughout his life). This means a) he won't be easily convinced to betray his Lord, and b) if we get him to our side (be it through event unknown to him that make him severely dislike his Lord or whatever) we can be more confident that he will be of great use to us. A vassal known as "Backstabber" is more easily convinced (which can be good in stressful times), however he might stab us in the back at any given moment. This makes it even more clear that the REAL resource out there is the people of the nobility, especially the Vassals who are not really our rival Lords (however, they might someday have the ambition to become Lords of their own). It's all a game of people and politics, but there will be other resources of interest too of course, but they will not be as important as the nobles.

Another concern is vassalage. Again I don't want to make things difficult just because of it or because of a strive for "realism". I'm already astray from trying to accurately simulate real feudalism because of my fantasy setting to begin with. Hence, there will only be one layer of vassalage. Meaning a vassal can only become a vassal of a lord who himself is not a vassal. Lords (rulers who are independent) are what makes up the competition, each independent lord makes up a Faction, and it will be the competition between factions that decides who the eventual King of the reunited kingdom will be. This got me thinking about being a vassal. Being a vassal is very constricting, you cannot really do much without your Lord's permission (unless you mean to side with another Lord, or become independent). So, being a vassal as a player will be very boring indeed, thus it won't be an option. You opt for vassalage you lose the game (see it as retiring from the big game politics). This might lessen the "sandbox" feel of the game, but when you play a game of thrones it must be the throne that matters and nothing else. This helps to give the game an end goal, which is where I have to back down: ultimately the point of the game is to bring prosperity to your dynasty so that one day one of your kin can become King. Total domination is one way, but I want to avoid the situation where the player is clearly winning and where the end game is only about crushing the last few remaining stubborn Lords who won't give up. There must be some other options which could give an extra flavour.

Lastly, the other resources available will mainly be about the provinces. Some provinces might be more important (for now) than others, so it's important to have control over these in order to further your agenda. There will be upgrades, research and whatnot, but these are costly and most be used in the long-term perspective. Starting to invest in a pretty useless province might be of great benefit say three generations from now and become a key province for further dominance.
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Fri Jan 06, 2012 6:35 am    Post subject: Reply with quote

Not much has happened. I'll be going down the procedural generation route though, so the first order of business right now will be to generate some nice maps. I have found some nice resources that should help me on the way. I've changed my mind regarding the art direction too, the retro feel will be replaced with a more stylized, clean, polygonal style reminding of board games in general (no hexagonal tiles though), think hearts of iron 3. Should be easier to accomplish for one not so accomplished within the noble art of l'Art.
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Sat Jan 07, 2012 4:47 am    Post subject: Reply with quote

Ugh. Voronoi diagram and Delaunay triangulation make head hurt.

Here is an excellent post on generating polygonal maps though: http://www-cs-students.stanford.edu/~amitp/game-programming/polygon-map-generation/

Here, have some random points in a plane:
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Tue Jan 24, 2012 1:11 pm    Post subject: Reply with quote

I gave up on trying to implement Voronoi diagrams using Fortune's algorithm. The math is way over my head, and even if I someday can overcome that obstacle there is the matter of implementing it too. Even attempts at converting the as3 code to c++ became too much in the end. It's just so complex.

Luckily though, I came upon a more straight-forward, easier, albeit more costly, solution somebody wrote using Processing. I think it's using the incremental algorithm, but don't quote me on that.

If everything goes as planned, I should have a map of some sort to show in a week or two in all its procedurally generated glory!
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Sun Jan 29, 2012 12:04 pm    Post subject: Reply with quote

It didn't go as planned. I managed to convert a lot of code to C++, but in the end it didn't work and its too complex to try to figure out where the problem lies. Lots of fiddling with pointers and stuff. Thus, I have decided I have to go back to the hard route, doing it myself. I will stay away from advanced algorithms though. Basically, I need to construct a convex hull from a bunch of random points. From this hull I'm going to create a delaunay triangulation using the incremental algorithm. As the delaunay triangulation is a dual graph of a voronoi tesselation it should be pretty straightforward to finally arrive at a voronoi graph. This depends a lot of what kind of data structures I use of course.

The first step is done. Behold the convex hull of random points using the Graham's scan:


That part was pretty easy. It's the next part that will suck :)

When I finally have my voronoi diagram, I can refine it using some of the techniques mentioned on the website I posted above. I won't go too far though, making the cells more uniform and adding some color that depicts elevation. It should be fairly trivial to implement A* for troop movement by creating nodes from the voronoi diagram as the delaunay triangulation will correspond directly to how units should move between cells. But I'm getting ahead of myself. The next real step is to make cells clickable so you can select a province and go from there.
View user's profile Send private message
Alex
Developer

Joined: 05 Sep 2005
Posts: 1159

PostPosted: Sun Jan 29, 2012 12:50 pm    Post subject: Reply with quote

wow, that link is pretty interesting, too bad you couldn't implement it. regardless, I'm looking forward to seeing your progress with this.
View user's profile Send private message Visit poster's website
Sirocco
Moderator

Joined: 19 Aug 2005
Posts: 9454
Location: Not Finland
PostPosted: Sun Jan 29, 2012 1:38 pm    Post subject: Reply with quote

If you wanted to get really fancy (perhaps simulating drunken soldiers marching around with poorly drawn maps) you could use the points as control nodes for a spline, and use that as your path ;)
_________________
NoOP / Reyn Time -- The $ is screwing everyone these days. (0xDB)
View user's profile Send private message Visit poster's website
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Tue Jan 31, 2012 10:19 am    Post subject: Reply with quote

I hope I won't disappoint :)

The spline idea is not a bad one, however I might apply it to the actual borders to create even more unique provinces. Might be too fancy though heh, we'll see.
View user's profile Send private message
arvidsson
Contributor

Joined: 13 Jun 2011
Posts: 109
Location: Sweden
PostPosted: Thu Feb 02, 2012 9:57 am    Post subject: Reply with quote

When googling for other techniques of creating irregular tiles through procedural generation, I often find this thread as the first result. Shit :)

I have not given up on voronoi, but I question if I'm not overcomplicating things.
View user's profile Send private message
PoV
Moderator

Joined: 21 Aug 2005
Posts: 10892
Location: Canadia
PostPosted: Thu Feb 02, 2012 11:25 am    Post subject: Reply with quote

Yeah, maybe all you really need is to triangulate your point cloud. I remember Blender has a function you can run on some geometry that generates nicer edges ... the name escapes me though (beautify?). It's probably doing this internally.

Another option might be to start with a single triangle and randomly extrude a new vertex a random distance from the center of every outside edge. And maybe if an edge is ever crossed by your newly added vertex, you disregard the vertex and close the edge. Just an idea. I have no idea if this actually works in practice.
_________________
Mike Kasprzak
'eh whatever. I used to make AAA and Indie games | Ludum Dare | Blog | Tweetar
View user's profile Send private message
Reply to topic GDR Forum Index -> Game Developer's Refuge -> Development Log - Kingmaker Page 1, 2  Next

Use this link to get a Sign-On Bonus when you get started!

All trademarks and copyrights on this page are owned by their respective owners. All comments owned by their respective posters.
phpBB code © 2001, 2005 phpBB Group. Other message board code © Kevin Reems.