Where is the Siege Update?

The short answer, is that the implementation sucked and I wanted to do better. To do better, we need to add more features in, as well as finish another existing feature.
The long answer, is that after getting sieges playable and in testing, no one liked how they felt or how they affected battles. They’re a neat mechanic, and functional, but without implementing more of the changes we want to add to battles, they just suck. And this is after an 80% rewrite of the battle code to accommodate a bunch of new mechanics. Even if we added siege engines to the mix in battles, it’d still be missing something, so I decided to expand this next update significantly in order to get not just sieges updated, but also add in Units, more depth to Battles, Siege Weaponry, Places of Interest, clearer Allegiances, and an overhauled new character arrival system.
In order to make sieges and siege battles feel good, we need a way to not only model where a unit is on the field, but as well which soldier is and is not in combat or in the melee or manning equipment, etc. This is why proper units are getting added: they’ll bridge the gap between your soldiers and your character, allowing you, or more accurately, the lord of their home, to organize units into whatever form they see fit. Their commander, your character, will then be able to determine deployment orders, as well as engagement orders. If this sounds like BM, it’s because I’m shamelessly stealing half of how their combat works.
Only half though. Depending on how damaged the defenses are and what siege weaponry is in use, there will be a number of areas that soldiers can properly clash, or “skirmish”, and the amount of damage versus the size of defenses and armies will determine the size of that clash. The game will track what units are engaged where, detailing combat between only those soldiers. Ranged units can then opt to choose safe targets not in a skirmish, or risk hitting friendlies (but more probably enemies) by firing into a skirmish.
Going more in depth on units, these will be much more automated than before. Lords will be able to create units and then assign them to themselves or someone else entirely, and create standing orders to recruit gradually over time to the units or use the existing recruitment mechanics to create new units or add to units on the fly. Settlements will all have a default “Militia of [Settlement]” unit that will act as a catch-all for units, but you can create others as you see fit. On top of that, while I don’t know if it’ll make it in with this update, it’s already planned to allow soldiers to travel the map on their own in order to reinforce a unit in the field. I’m not entirely sure the full mechanics of this, but it something that I feel should be added.
Due to how units change the soldier assignment system, they basically completely invalidate the system of knight offers we had and I’d like to discourage the creation of a bunch of tiny units to just to lure in knights. In light of this, new characters will now either spawn at a place of entry, usually a realm capital, or at their family home. Knight offers will be rolled into the existing game request system, and will be usable both by the lord or the potential vassal. A lord with extra land could post an offer for a character to take it over, or a knight could simply offer his allegiances directly to a lord. All of this will require both sides to agree though.
At this point, you might be thinking, “how do I get to these offers?” Well, after a lord creates them, they’ll be posted automatically at places of entry in appropriate realms. Characters who arrive in a realm will be part of that realm with only limited access to realm discussions, controllable by the realm leadership.
Which brings us to the next thing that’ll get updated: conversations. No longer will you get access to all realm messages as soon as you arrive, and no longer will you gain access to all realm conversations. A new system will be implemented to make working with conversations on the back-end easier, and this also means that players will be able to configure realm discussions that are limited to certain positions, types of positions, or levels of hierarchy, and the game will manage access automatically, and add or remove people as necessary. It’ll also control who can see what based on when they had access, and also implement the ability to manage private conversations as well. Just remember, what has been sent can never be unsent.
Speaking of hierarchy, characters will now have a primary allegiance. This will usually be to a ruler of some realm or subrealm, but it can also be to another position or even to another lord. The main change is that it will be to a seat, rather than the person in it. Depending on how fast things go, we may also implement proper realm laws in order to do some cool things with how these allegiances work, but given the scope of this update, that’s fairly unlikely. It is also on the list to make it so that you can have positions that elect other positions, and really get into the weeds on how your government works, with only the slight possibility of total anarchy after your government collapses.
Lastly, since I’ve not talked about them much, Places of Interest, will finally be arriving in Might & Fealty. In fact, they’re already functional in my code, and allow me to vastly open up the possibilities of what you can and can’t detail in a settlement, or outside of one. These include Places of Entry (they’re a sub-type of Place) as well as things like Palaces, Family Homes, Monuments, Taverns, Inns, and a number of other things. They can exist either inside the walls of a settlement, or outside it on the map, and I am planning on mechanics to let you replace signposts with places on the fly in order to let you fill in the world. And yes, this means you can actually have a place of entry be outside a settlement, if you’re that sure a bunch of new arrivals will overwhelm your guards.
So, you’re probably wondering at this point, how far along is this update?
Units: 25%
The code understand how to make them and assign them a character but not how they are supposed to work with soldiers or battles.
Messages: 5%
These only exist in concept. I’ve got the database logic all figured out but none of it is implemented. Given these will appear largely the same as the existing system, they shouldn’t be hard to implement. Still not sure how I’ll handle the old messages though.
Battles: ??%
The only thing that needs adding here is Units and Skirmishes. I have some ideas how to make this work but giving a percent isn’t possible. The tricky part is that I’m adding things to the middle of the process, rather than at the start or end.
Character Arrival: 5%
This is mostly still in design phases. The place type is there but there aren’t any rules for it. Also need a realm field for rulers to describe things with, on top of the secondary place field for Entries to do the initial arrival intro scene.
Allegiances: 0%
This is entirely still in design phases.
Places of Interest: 85%
Largely, these are fully functional. The incomplete part is how they’ll interact with new characters as well as Houses.
It may not look like much, but Units went from non-existent to existing and being able to be made inside of a weekend. Top that off with my adding a second, diverse project to switch off to (and I’m switching off about weekly) in order to not get burnt out, I’m fairly hopeful for how fast I can get this update out.
I’m, tentatively, hoping to have all this in play testing in a few months.

The Upcoming 1.1 Update

“Andrew, why haven’t you added more features yet?” you might ask.

Because the next update, the 1.1 build, isn’t called 1.0.5 or for a reason. It’s not small. In fact, it’s the largest single update to Might & Fealty since I’ve taken over coding. It might be the single largest update to Might & Fealty since its launch, save maybe the Lendan towers (but they were later removed).

Yeah, it’d be really easy to make this update just add a way to designate realm capitals. In which case it would’ve been complete like a month or two ago. But I want to add capitals as feature-complete. That means what I want to put into the game, isn’t a staged-release. I want you to see as many of the parts of this update that exist in my imagination now, as possible, as soon as any individual part of it is pushed live. The only exception to that being player complexes, which would probably push this update back a few MORE months.

Continue reading “The Upcoming 1.1 Update”

What’s Next?

So, the server move is done, and while we’ve yet to iron out the last few kinks, we are actively working on things. First and foremost, game breaking bugs. Secondly, bugs we can understand enough to work on. Third, new features and additions. And yes, in that order.

The biggest bugs we encountered was of course the mail issues, which I’ll not cover again. Beyond that, there was a bug we introduced to heraldry where if your character had a spouse that did NOT have a heraldry, it’d prevent you from loading the page to select any. We added a rule to only care about spouse heraldry if said spouse actually HAD heraldry, which fixed that.

There is another error that we believe was introduced by an update to the underlying framework the game runs on (our research indicates Symfony 2.7.33 itself, rather than one of it’s dependencies–for the record, the game used to run on Symfony 2.7.7). This particular error causes a bug in the character sorting functionality for each player.. You should see the fix live in game now.

Beyond that, well, is everything and anything. Continue reading “What’s Next?”

The Last Week’s Efforts

So, the last week or so has been spent trying to smooth out the database import process. When the current M&F database is imported to a different server’s database, the code for the website encounters an error when loading some pages. I’ve worked around this before, but I’ve never gotten a good solid fix down, probably because I’ve never properly documented what I did. I just kept trying things, and eventually it just worked.

My efforts of late have been to document what does and doesn’t work. I’ve got three different sets of instructions that do not resolve the problem. And literally in the middle of typing this, literally between this sentence and the last, I figured out how to fix the major errors I’d been having. I don’t understand why they were a thing, but they’re fixed. Not that it was really a thing that needed “fixing”, it’s more there was a step I didn’t realize I needed. Continue reading “The Last Week’s Efforts”