Author Topic: The 1.1 Update Topic  (Read 376 times)

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
The 1.1 Update Topic
« on: September 30, 2017, 08:07:33 AM »
So, I need a place to keep my thoughts and work on this straight, and figured, why not do it publicly.

Here goes. Originally, this started at making palaces a thing. Then it expanded to making enterable features a thing. Then I thought, if I'm doing that, lets make customizable buildings (Places) a thing. And after that I realized that to make enterable features new types of settlements, which meant adding superior/inferior relations to settlements. Around that time I was thinking about how to build a new settlement, and figured, why not make it an inventory item. So I started working on adding inventories. In short, this update will be freaking huge.

Anyways, what I've got thus far:

Controller Changes:
  • ConstructionController - Minor Settlement Worker count variable passing to twig logic added to /buildings route.
  • PlaceController.php - New.
Doctrine Changes:
  • BuildingType.orm.xml - Add built_in, maps to SettlementType allows field.
  • Character.orm.xml - Add updated_places, maps to Place updater field.
  • Description.orm.xml - New file, tracks all relational data for Descriptions. Id, associated entity, text, timestamp, cycle, active, previous/next.
  • EventLog.orm.xml - Add place field, to allow places to have event logs.
  • FeatureType.orm.xml - Add upgrades_to one-to-many relation to SettlementType
  • GeoData.orm.xml - Add places relation.
  • Place.orm.xml - New, tracks name, type, description, location, associated settlement, and assigned soldiers.
  • PlaceType.orm.xml - New, tracks different place types.
  • Realm.orm.xml - Add capitals, maps to Settlements.
  • Settlement.orm.xml - Add capital_of, maps to Realms. Add superior/inferiors, maps to self. Will allow subordinate settlements. Add type, maps to SettlementType, will control what buildings can be built. Add places, maps to settlement on Place. Added description, updater (character), updated_on.
  • SettlementType.orm.xml - New, tracks allowed types of settlements. New fields for name, many-to-one relation on which features they upgrade, enabled boolean for turning new ones on or off, subtype string to tie into later roving clan system. Many-to-many field for tracking what buildings can be built where, homed off BuildingType table.
  • Solder.orm.xml - Add relation for soldiers being in Places
DataFixture Changes:
  • LoadBuildingData.php - Added BuiltIn logic for new settlement types, added following buildings: Warehouse, Dockyard, Apothecary, Guild Square, Guild District, Empty Moat, Filled Moat, Quarry
  • LoadFeatureData.php - Added new feature types, added logic for adding new ones
  • LoadPlaceData.php - Add place types
  • LoadSettlementData.php - Add settlement types. Not sure if these'll be used now.
Entities:
  • Place.php - Shell File
  • PlaceType.php - Shell File
  • SettlementType.php - Shell File
  • Settlement.php - Added functions for finding minor settlement worker counts and percentages.
  • User.php - Added isVeryNewPlayer logic for quickly finding if a user is under 7 days old.
Services:
  • DescriptionManager.php - New file, for processing new descriptions.
  • Dispatcher.php - New logic for entering/exiting settlements button. New logic for entering and exiting places, and all the checks to see if you can.
  • Economy.php - Update building conditions.
  • Geography.php - New findNearestPlace function, required for the Dispatcher.
Symfony Files:
  • services.yml - Told Symfony2 how the DescriptionManager is supposed to interact with things. Will require further updates to tell other things that the descmgr is a thing.
Translations:
  • communication.en.yml - Added event.description.update.stuff entries.
View Changes:
  • Construction/buildings.twig.html - Added in logic for displaying minor settlement building worker counts on building construction page.
  • Character/start.twig.html - It is now no longer possible to start on the map as a brand new player.
TODO:
  • Feature building form updates so it knows when something is available in inventory for placing. On hold for now.
  • Construction form updates so it knows that only certain things can be built in certain settlement types.
  • Logic for converting a building to an inventory item to a settlement/place -- Palaces will not be traditional buildings. This should include monuments, plazas, etc. On hold for now.
  • Logic for managing population between settlements in same region. Canceled.
  • Logic for Regional Lords to manage appointment of sub-lords. (Settlement law system, or Realm law system? Both?) Canceled.
  • Controller for Places? Or should we just build this into the existing Settlement Controller? Definitely a separate controller for places.
  • Update BuildingTypes with settlement type info. Completed.
  • Determine settlement types. Completed.
  • Update Doctrine config for building types to add type field. Completed.
  • Update Building DataFixture to load in new types. Completed.
  • Add separate logic for troops garrisoned other than cities/villages. All resource concerns should be routed through the primary settlement.
  • Add conditions for construction of dockyards and filled moat. Dockyard on hold for now. Other conditions completed.
  • Add resource data for new buildings. Completed.
  • Add logic for Sublords? Perhaps with individual translation strings depending on what type of settlement it is. Canceled.
  • Add additional permissions for settlements about which buildings are usable and what information can be available in them.
  • Add logic for the game to understand not all settlements will have resources, and that many resource requests need to be routed through the superior settlement. Canceled.
  • Add permissions system to places.
  • Add permission to settlements to allow creation of places by other players.
  • Add logic for restricting certain place types.
  • Do we want places to build off the existing features system? This would bypass the requirement to modify the existing map viewer to display them. We'd have to modify how feature workers are handled though, and maybe even how they're displayed in order to make sure that places also display. Do settlements display as features if we assign them an icon? That's an interestingly related question, as settlements are TECHNICALLY map features. Hm.
  • Add logic for places being deactivated and inaccessible, so if, for instance, a capital was destroyed by one realm then later rebuilt, you can dig up records on the old on.
  • Add a service for descriptions. Completed.
« Last Edit: December 10, 2017, 03:18:29 PM by Andrew »
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #1 on: October 05, 2017, 12:21:01 AM »
Figured a way to do this without inventories, which should cut down the implementation time.
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #2 on: October 08, 2017, 08:59:09 AM »
Got some more work done on this. Rebalanced about half of the building defense bonuses in order to add in a few new types without making settlements even harder to crack.

Hopefully, what I've got done thus far will work as is, but all this will be hard to test without it all being there, so this will probably involve a LOT of fixing once everything is there and we start plugging it into the test server.
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

De-Legro

  • M&F Dev Team
  • Sr. Member
  • *****
  • Posts: 3109
  • Karma: +105/-54
    • View Profile
Re: The 1.1 Update Topic
« Reply #3 on: October 08, 2017, 11:57:39 PM »
Why do we need more fortification types?
He who was once known as Blackfyre

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #4 on: October 10, 2017, 06:02:43 AM »
If memory serves, I added moats and apothecaries. I may remove the defense bonus from apothecaries and give the full 10 back to alchemists.

As to why moats, because they're a real thing?
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

De-Legro

  • M&F Dev Team
  • Sr. Member
  • *****
  • Posts: 3109
  • Karma: +105/-54
    • View Profile
Re: The 1.1 Update Topic
« Reply #5 on: October 10, 2017, 09:32:40 AM »
If memory serves, I added moats and apothecaries. I may remove the defense bonus from apothecaries and give the full 10 back to alchemists.

As to why moats, because they're a real thing?

Alchemist aiding defense was always weird to me anyway.
He who was once known as Blackfyre

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #6 on: October 10, 2017, 09:43:09 AM »
I always thought of it as the addition of burning oil and stuff or provide salves for wounds.
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

Cipheron

  • Full Member
  • ***
  • Posts: 186
  • Karma: +7/-4
    • View Profile
Re: The 1.1 Update Topic
« Reply #7 on: October 10, 2017, 10:45:49 AM »
As well as burning oil poured on defenders, alchemists could also create Greek Fire type concoctions which could coat arrows, or poisons which could coat swords. Perhaps describing some of the things the alchemist does in the building description would make sense.

De-Legro

  • M&F Dev Team
  • Sr. Member
  • *****
  • Posts: 3109
  • Karma: +105/-54
    • View Profile
Re: The 1.1 Update Topic
« Reply #8 on: October 10, 2017, 11:18:36 AM »
As well as burning oil poured on defenders, alchemists could also create Greek Fire type concoctions which could coat arrows, or poisons which could coat swords. Perhaps describing some of the things the alchemist does in the building description would make sense.


So things that improve troops in general, attack and defence really. Then again modern science can't actually replicate Greek Fire and it wasn't developed by the Greco-Roman Egypt alchemist who's practise involved large amounts of spiritualism and the concept of purification. Indeed none of the effects listed required "alchemist" poisons having been used to coat arrows and assassin blades by pretty much every culture known, and also being largely useless in battle due to the fact the poison simply doesn't remain on a blade long during battle conditions. Fire arrows likewise are trivial, generally need to be fired from close range due to their propensity to extinguish and are of arguably greater value to the sieging army. Even then their utility is argued about and many consider them to be a weapon of terror rather then actually useful.


If we want to make alchemist the "fantasy" chemist that they became in the 12th century once medieval europe had access to Islamic scientific text all well and good, but then they should be the pre-requisite for allowing settlements to produce defensive (and perhaps offensive) equipment that is consumed during a siege, not some weird over all defensive bonus.
He who was once known as Blackfyre

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #9 on: November 01, 2017, 02:35:04 PM »
So, I've thought about this for a bit now, and I think I'm going to go with the original plan of things outside the main settlement, still being a settlement of sorts.

It'll be a bit of a hassle to get the game code to a state where it'll properly understand things, but when we do it opens the potential for players changing the primary settlement, as well as down the line making it far easier to create new settlements altogether.
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

De-Legro

  • M&F Dev Team
  • Sr. Member
  • *****
  • Posts: 3109
  • Karma: +105/-54
    • View Profile
Re: The 1.1 Update Topic
« Reply #10 on: November 03, 2017, 11:45:08 PM »
So, I've thought about this for a bit now, and I think I'm going to go with the original plan of things outside the main settlement, still being a settlement of sorts.

It'll be a bit of a hassle to get the game code to a state where it'll properly understand things, but when we do it opens the potential for players changing the primary settlement, as well as down the line making it far easier to create new settlements altogether.


I would simply rename the container item in the code. An estate house, village, farm, settlement are all simply build-able locations. Exactly what can be built and what actions/options there are can be attached to the generic holder for each case.
He who was once known as Blackfyre

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #11 on: November 10, 2017, 11:15:23 AM »
Heh, I figured this would've been a faster update than it's been. It's been a month and a half now. It's getting closer though, but I've not gotten into actually creating the player options that'll enable a lot of it.
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #12 on: November 23, 2017, 03:14:54 PM »
Well, I've made a lot of headway tonight. No more sub-settlements, because that'll be a literal pain in my ass to code (as in, it will hurt from the many hours I'll have to sit here to do it).

That said, places are being fully implemented as quasi-settlements. They'll be buildable locations, semi-garrisionable locations, that will be enterable, and have description histories. May give them their own event logs too, not sure now.
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

Andrew

  • Game Master / Lead Developer
  • Administrator
  • Sr. Member
  • *****
  • Posts: 1797
  • Karma: +75/-7
  • Mildly Amused
    • View Profile
    • Lemuria Community Fan Site
Re: The 1.1 Update Topic
« Reply #13 on: November 23, 2017, 03:18:06 PM »
Oh, I've also added logic for restricting new players to only knight offers or with family, so we can steer them towards player interaction.

Furthermore, I'm adding a proper description table into the game, that will track the various descriptions used for settlements, artifacts, places, etc., over time. This will allow us to see how things change over time.
Standing for the creation of interesting things since Year 1, Week 5, Day 4.
Favorite cold beverage: Strawberry Shake
My hobbies: Fixing computers, video games, anime, manga, some other stuff, sleep (in no particular order)

Demivar

  • Full Member
  • ***
  • Posts: 134
  • Karma: +1/-0
  • Purveyor of cunning plans.
    • View Profile
Re: The 1.1 Update Topic
« Reply #14 on: November 23, 2017, 03:47:28 PM »
Oh, I've also added logic for restricting new players to only knight offers or with family, so we can steer them towards player interaction.
Thatís a good idea, generally speaking, but thereís actually more to it than that. I personally consider it to be a matter of players adding value to each other, and the importance of history to provide context. I had the good fortune of starting amidst a group of players within Ascalon, and whilst we did a lot of stuff amongst ourselves, the interactions that happened as a result of the Princeís County being in the same court as other players were good because it meant that people talked and argued to a broader range of people in a good general context, which is great.

Itís completely understandable that people want to do their own thing because it seems appealing, but in reality, itís unwise. Players add value to each other through interaction, and Iíll admit that I donít see enough of it happening, and a lot of times itís difficult to chat with your neighbour without seeming like youíre only talking because you need their resources or whatever. Inter-realm diplomacy can be good, but itís too infrequent and a lot of people tend not to play ball when theyíre approached by something interesting from abroad, but perhaps thatís as a result of the bunker mentality entrenched in the oldest realms whose core players somehow managed to keep playing the game after so much time without development. As they still exist, we can all hope that a bit of nudging alongside some good and appealing updates might draw some more good players out of hiding.

Still though, itíd be nice to see what else we can do in the future to give new players a better introduction to the game.
« Last Edit: November 23, 2017, 04:26:08 PM by Demivar »
22:34 - Roran Hawkins: Radovid's like you
22:34 - Roran Hawkins: but then insane
22:34 - Roran Hawkins: Dijkstra is like you