Monday, August 22, 2016

Sea Trading Game- City Personality

It's been a slow week, but it happens. I've been making good progress towards my city personality definition. While I'm at it, I've improved pretty significantly the goods generation process, as well as the consumption process. They both are working much better.

Goals for the coming week are to distribute the city personalities, and work on spreading the demand from neighboring cities. I'm also planning on overhauling the contract management.

Monday, August 15, 2016

Sea Trading Game- City needs, consuming goods, land based navigation

This was a very productive week, which allowed me to accomplish most of the goals I had set for the week. I was able to create generalized city needs, consume goods, and even start update to the mission profiles such as land based navigation.

The biggest thing was working on City Needs. A City Need is defined as a fundamental need of a city, namely those that can be transported. These include things like food, water, clothing, building materials, and even non-needs like luxuries. Each good is set such that it will satisfy one or more of these needs. Demand then is not for a specific material, but rather a "need". I will likely set some specific "needs", most likely for things like drugs, but otherwise it will be more general.

A city can now consume these goods. Consumption of goods will increase the happiness of a city. Failure to meet the needs will result in the people being unhappy. I might even add in a death connection, I haven't figured out all of the details.

I'm working towards connecting all of the cities, keeping a list of the distance between each city. I haven't yet optimized this list generation, it can take considerable time, but I'm getting there, slowly. The rewards for missions is now more in line with the rest of the system.

I also added a super secret invisible dev panel, to assist in debugging things. For instance, I've added a calculation of global supply/demand, as seen below. Note that is tells me that balance is required, as there are too many of some materials (gold, silver, rum, tobacco), and not enough of others (water, good, wool). Of course, I haven't even yet tried to arrange the material generation in a more logical manner.

Lastly, I wanted to show how being at a marginal demand can affect price. Here's an example of the price changes for a material, as one purchases most of the good, the price goes up.

This week I'm hoping to do some work on flushing out a personality profile for a city. These will include things like how much storage of an item do they require, how willing are they to try new things, do they value people's happiness more than money, and related attributes.

Monday, August 8, 2016

Sea Trading Game- Price based on Supply/ Demand!

Modeling supply and demand is proving to be quite difficult, but I am most certainly making progress. This week I was able to increase/decrease the price based off of the supply and demand, including the short term future supply/demand! This actually took considerably more effort than expected. Previously, I had code to estimate a year's worth of supply and demand, to determine what goods to work on. This was relatively easy. What was far more difficult was to determine the average supply and demand for a sliding window of time. Just that feature took me far longer than expected, and in fact, took almost the entire week. In fact, if you compare my to-do list with last time, you might notice a slight increase in the number of items. The good news, these should be quicker things to complete than what I finished this week.

Aside from that, I was able to use this feature to adjust the price based off of the supply and demand. The price will adjust somewhat, so purchasing a large block of goods or selling a large block of goods can affect the price and be adjusted for accordingly.

Lastly, I was able to add in a "rot" feature, where a good will go bad if sitting in storage for some period of time. There are a few more things that I want to add to this calculation, including thievery, reduced rotting if properly stored, and quite a bit of balancing, but it's coming along slowly.

On the table for this week is a problem I've long debated, and have been unable to find a suitable answer yet. There are many types of food, grains, meats, etc. I don't want to particularly care what type of food is eaten, although I want to store the type of food individually, at least to some extend. For instance, Sheep and Wheat will have very different behaviors, and I want to model that. The question then becomes how do I determine how much food to eat, and of what type? I have a few ideas that I'm going to play with this week, we'll see what happens.

Lastly, a bit of a note about references. For those of you long term followers of this blog, you will know that originally I was planning a 17th/18th century time frame, the age of colonization. As time progresses, I'm shifting that time-frame earlier. The start of the game now is planned for something shortly after Columbus sailed to the United States, perhaps most of a 1530 starting time-frame as opposed to 1610 that I previously considered. A big part of this was an excellent book that I have read called 1493, by Charles C Mann. It has inspired me to change the focus somewhat of the game to the Colombian Exchange, where before Columbus arrived in the Americas, diseases, plants, animals, and even cultural references were very regional, while after the entire world began to exchange these items.

Friday, August 5, 2016

What things are purchased with my Amazon Affiliate Link

I have an Amazon Affiliate link. Most of the links are for specific products, however, people end up buying all kinds of stuff using this link. This is a list of some of the more interesting things that people have bought so far this year using my affiliate link. This is a small collection of the things that have been purchased, still, they are among the more interesting ones. Note that if you don't see the images below, you might have an ad blocker enabled, you might want to disable it for this post.


Thanks to everyone who has helped support this site by using my affiliate links, no matter what odd things you purchase. You guys are awesome!

In case for some reason you can't see the images, here's the text list.

Monday, August 1, 2016

Sea Trading Game- Supply now determined by demand

This week was a slower week than many, but I did still make progress. As in previous weeks, I've been working on supply/demand, and figuring out how to get it. This week much of my time was spent supporting an Android app I made for Amateur Radio operators, Ham Finder. It took longer than expected, but it was necessary, and now I can focus on what I really want to work on, my Sea Trading Game!

Each city now automatically determines what the supply/demand requirements are for a given turn. Each city does this by estimating it's yearly requirement for a given good, and making goods accordingly. It's still not perfect, but it's good enough for early testing. It works now, although the system is quite primitive. I'm going to eventually add in more logic, some kind of behaviors. The behaviors will determine how much goods to stockpile, if the city wants to make money, be self-sufficient, or other such things. That of course will take time, I'm hoping to still get to it by the end of the month.

On my plate for this week is determining the price based on Supply and Demand. I have an idea of what I want to do for that, that will take in to account the current supply/demand, the short term future supply/demand, and what is the intrinsic value of an item at a particular location.

If I get that to where I want it, then I'm going to do a few other things, including have supplies consumed by the people, probably rotting with time, and hopefully "Good Families", where demand is for a family of goods, like food, as opposed to a specific type of item, like grain, meat, etc. I haven't thought exactly through what I want to do with that, but I'm getting there.

Lastly, I showed you my list of things to do last week. Compare that to this week's list, and you'll see that I am in fact making progress! Note that most of the things on the bottom of the first list are to refine things that I started this week.

Sunday, July 31, 2016

Ham Finder 2.2.12 Upgrading to Android Studio and Android 6+

I know recently I've been doing far more game development than Amateur Radio stuff, but I figured this deserved a blog post. I've been working on upgrading a lot of the internal guts to Ham Finder, specifically updating to the latest APIs. What this means is there should be prompts for permissions, for example. It should be more stable, and be overall faster. Here's what it took to do that:

  1. Import in to Android Studio- When I last touched Ham Finder, it was built using Eclipse.
  2. Update all of the API calls to the latest versions, getting from Gradle where possible.
  3. Go through almost every file fixing issues that Android Studio detected. One of the most common issues has to do with preferences, these are now all done asynchronously, so it should be a bit faster. The same goes for maps, it should be somewhat smoother.
  4. Update Spatialite- Spatialite is the core library that allows for the offline county, country, state, dxcc, etc testing. In upgrading the Android build, the old Spatialite stopped working. I was able to resolve this, with quite a bit of work.
  5. I discovered a few minor issues along the way that were resolved.
 This sounds easy enough, but I actually spent quite a bit of time getting all of this to work right. The bottom line is, Ham Finder should run smoother than before. I did keep a list of a few issues I'd like to resolve that I found when working through it, but as you might have noticed, my unnamed Sea Trading Game is taking quite a bit of time. If I see enough interest, I will make some of these updates. In fact, part of the reason why I did this round of updates is because of generous purchasers buying upgrades over the last month. Thanks guys! If I see sales continue to climb, that will be a good sign that there is still interest in this product. That especially holds true if I see some of the more obscure in app purchases being bought, such as the French offline maps.

The new version should be released by August 1st, although it might take another week if I find some critical issue at the last minute. It is currently available for beta testing, which you can opt in to via this link.

Monday, July 25, 2016

Sea Trading Game- Modeling Supply, and a path forward!

This week as in recent weeks has been a week of figuring out some core gaming stuff that doesn't easily translate in to progress, but is really essential to getting the game to work correctly.

The main focus of the week was on creating supplies. Like the demand before it, I set up a series of modifiers that can be added to a good that determine exactly how a supply is managed. The most interesting of these was to require "tools" and "seeds".

A tool is an item that is required that isn't consumed to make a new product. For instance, an ax will make wood production easier than it would be without one.

A "seed" is something that is required to make something else. For instance, you have to plant a bit of food to grow new food. A seed could even be making a resource out of another, using iron to make an ax, for instance.

Of course, most of this modeling will be semi-transparent to the user, but what will be seen is that you will be able to change the world through your trading. There might be a continent that has never seen potatoes, for instance. You bring a load of potatoes, and someone plants them. Then all of the sudden that new continent has potatoes growing there.

Another similar thing to "seeds" is "skills". A skill is required to make something. These skills will be propagated by moving people around. If a continent has never seen black smithing, and a black smith is brought there, then that new skill will begin to be used, and spread throughout the continent slowly.

The effect of all of this will be that you, as a lowly trader, can change the world in profound ways. I'm starting to see this as a real possibility, and excited to see how it all comes together!

The last thing of importance that I did was to get my upcoming path figured out much more smoothly than I have been recently. For the last 3 weeks, my task was "Figure out Supply/Demand". That's it... Now I've broken down what's left into more manageable chunks, which always helps my productivity.

Top of the list is to add a bit more logic to supply management, and then start figuring out how the pricing structure will work from supply/demand. I'm not quite sure how this will work out in the end, but this is a really crucial step to the game, and when it's done, I really think it will feel like a smoother game overall! I expect to have most of this accomplished by mid-August, and from there to start adding more goods and working on balancing the game.