SugarMill v0.2 Available Now

SugarMill v0.2 is here. In this article, I explain and lay out the improvements and additions to this new version of the game.


Hi, mates!

Excited to announce that SugarMill ver 0.2 is here. The game has being improved a lot ever since launched, 16 weeks ago. Many things have been added or fixed in the game. Mainly based on players input and always leaning toward its final destination.


-New features 

-Graphics (new 3d assets and textures are being added or replaced on game. The image itself of the game camera it’s being enhanced too)

-Night and day cycle (Now the game features a night and day cycle. The citizens will do their normal activities but after sunset, they won’t go out anymore)

-Quest system: The game has a quest system that guides you thru it. It helps you and teach you to master the game and also prizes you with money at the end of each quest

-Products specs: Now on the bulletin window you are able to see how to produce each product, the inputs needed and where to produced. Also, you can see the price on them.

-Budget: You are able to see each year’s budget. The budget is broken down in expenses and income.

-Exports: A breakdown of what each export was about. Including date, building, product, amount and transaction value.

-Roads: Now you can build roads. They were just introduced in the latest patch so I’m looking forward to hearing the community reactions on it.

-GUI: The game is showing a brand new GUI. This time is more compact and pushed towards the corners of the screen so the user can see more in the middle of the screen.


– Video

A nine minutes gameplay video. Right in the beginning, I will start with the creation of a small square.



I have been working to get the roads done for a while. There are always being there but I never liked what I did. This week I end up doing piece by piece manually in 3d. Then I randomize them manually too. This was all done pretty much one by one. I picked different colors for the UV mapping and scaled some of them too. I end up with 7 different variations for inside roads cells and 3 differents for each side. The corner cell is always the same but rotated.

Above are all the differents parts that are used to create a Road in the game. In game, I found which one I will use based on the tiles surrounding one.


-Unity implementation of the Night and Day cycle 

The cycle is quite simple I have a directional light(sun) moving thru six points and always facing the middle sphere.

So the cube on the lower right represents the dawn and the one in the lower left the sunset. The ones in the top will be noon. It works like a charm and was quite simple to put together. I also change the environmental color and sunlight color at night, sunset and down.

The cycle works with 3 scripts. I called them DayCycleManager.cs, ColorManager.cs, and StageManager.cs.

Also, I have another 2 directional lights. One from West to East, and another one from East to West. While the day cycle is happening I change the intensity of this 2 lights.

The implementation of it was easy and maybe I completed on an afternoon but was mainly because I had all the idea conceived and more importantly I sat down and sketched the system for 5 min and also wrote some pseudo code to help me. I have come to realized and learn the more you do sketching and pseudo code the quicker and more effective you get done a specific task.


A lot of things have being added and improved on the game. Still more things to come to SugarMill. Keep the tune pal!


SugarMill : Dec 15th : Early Access

Hi folks.

This Thursday Dec 15th, I will be releasing the game on Steam (Early Access). Mark in your calendar

Below I layout the main features on this initial version.

Main Features:

Products expiration: Just like in real life, in this game every product expires. Some food items expire sooner than others.

Thirst: People need to drink water to survive. One of the challenges of the game is to keep their thirst quenched. (In real life we can only survive 3 days without water)

Measurements: No more 10 units of wood and 5 of iron to build a building. Be ready to gather 300KG of wood, and 10KG of nails to build a shack. Can you guess how much is needed for a brick house?

Horse Carriages: As the game has real measurements people can carry only so much. That’s when horse drawn carriages come into place. They carry a lot more, as a result your economy gets boosted. A person in their best years might carry around 15KG, a wheelbarrower closer to 60KG, but the smaller cart can carry 240KG.

Usage of goods: Crates, barrels, wheelbarrows, carts, tools, cloth, crockery, furniture and utensils are all needed to do the traditional activities of a town. As these goods get used, they diminish, as a result a person won’t carry anything if there are no crates. Keep an eye on that 😉

Happiness: People’s happiness is influenced by various factors. How much money they have, food variety, religion satisfaction, access to leisure, house comfort and education level. Also if a person has utensils, crockery and cloth will influence their happiness.

Port reputation: You can perform traditional trade activities such as importing and exporting any product. This indicator identifies how often ships come to your port.

Pirate threat: Pirates were still around. This indicator identifies the risks of suffering a pirate attack. If that happens your game is over. You can decrease this by constructing military buildings.

Views/Camera: The game has the traditional city building camera and also allows you to go to ground level and get a closer look at your people.

Buildings: Over 50 different buildings to construct. House model’s randomly select their textures.

Products: Over 80 different products.

Line production: To make a simple nail you need to mine ore, in the foundry melt the iron, and finally in the blacksmith make the nail. Or you can cheat if you got enough money, you can always buy the nail directly from a ship.

Resources requirement:

This is a complete detailed analysis of how much material is needed for a simple shack: 4960KG of wood and 2.4KG of nails. (This same analysis will be done for each building on the game)

To conclude I want to thank everyone that has supported me on this awesome journey that has just reached a new milestone. Sugarmill will be on Early Access this Thursday.

Thanks all!

Dev Log 10

Hi all.

The first 6 weeks of full dev are gone and I only have 8 weeks left to publish the game on Steam. Plus I will spend the last two weeks only working on the Launch, so basically it leaves me only with 6 weeks of full development.

When I think about that it gives me a mix of emotions. I feel excited and so many different things.

Launch Date:

So Steam does not support weekend sales. So if you planning on doing that, change your mind and find a week day. I decided then the game is coming Thursday Dec 15th.

First findings on the Beta Testing:

I want to thank all the Beta Testers, you guys are helping me a lot finding the issues in the game. I am really grateful for all your invaluable help.

I few things have being detected by the very few first beta players. First thing is that the game need some more documentation and help. I added a mini helper explaining how to assign workers to buildings and many other stuff. I also explained a few concepts of the game.

Size of the project:

I am not proud of it but is growing. Trying to code as lean as possible but at the same time need to get the things done in a day. Today for example I have 15 points to finish. I will say most of them were light that’s why I put so many. In an usual day I find myself doing anywhere between 6-8 points. My pass teacher of project management told me that 6 points a day is a good number. He actually told me too that you could split them in 3 for the morning and 3 for the afternoon. He also mentioned that we need rest, exercise and get some distraction too. This last weekend for the first time I rested for 2 days in a row. I was impressed how quick my mind was working this Monday. Anyways, I will say whenever you can rest more than a day a week, is totally worth it. I am the person that was working 7 days a week but is unproductive.

The project is huge and keeps growing. Actually I will advice keep an eye on your Unity project and don’t let it grow infinitely. Yesterday I added 300MB worth of assets. Unity got so stuck that would not even build the .EXE file. I restarted the computer and tried many different things. The only thing that work was to undo the new things added.

The project is has now 28300 LOC, weights 5.24GB, and has 51,500 files. I could clean up a bit, but that takes time and effort something indie developers don’t have at all.


If you want to be an entrepreneur you need to have some self discipline. You need to have a schedule and go by it. Do not be too hard. Do not be so soft. Be realistic and set your points of the day with the best judgment.

I was naming the folders of every new build ‘10.01’ for Oct 1st for example. However that brought a bug that took me an 1 hour to find. The problem was that I was splitting an absolute path base in dots. So I was making an array based in the dots. Once a new dot was in the path it broke. So in the future either do not talk to absolute path or be very specific for the way you name your files.

Visual Basic Scripts:

I read in a older article things you could do to make your life easier as a indie game developer. One was of automating everything you could around you and that is what I did. I have a few VBs scripts that I run to help me. I soon as I start my PC I run one that open all the softwares I need to work. Have another one that copy the .zip files to my Back Up hard disk. The most important one prepares every new build. That one copies all the files needed so the game runs smoothly every time is open. So I don’t have to copy files manually, the script will never forget one.

Ever since I change the naming convention of my builds I was not able to play the older builds. I needed to run the build from the day before and I could not do it and pissed me off. Then I created a point today to get it done with, because as a developer you want to be able to go back and see how your builds work like in previous versions.

New Logo:

The game is showing a new logotype. I ended up changing it after so much thoughts. In the end I like the new one better. With the new logo there are a few elements in representation of the main aspects of the game.

The diamond shapes on the ‘g’ and ‘a’, and the ones underneath the ‘M’ and the ‘i’ represent sugar crystals. In the last two ‘ll’ also you can see some addition of this in the top. Representing two chimneys that are linked to the Sugar production also. In the middle of the words ‘Sugar’ and ‘Mill’ there is a piece of a dented wheel, representing various things. The first represents how important the dented wheel was at that time, also representing the bridge that the Sugar industry created between the New World(Americas) and the Old World(Europe). The dot with the cross in the ‘i’ is representing the power and presence of the Catholic church on the conquer and colonization of the new world.

The new logo brings a new and renewed image to the game and also is more representative of the game. Is indeed more clean and easy to identify. As consequence I also have updated my Press Release Kit with the new Logo.

Project History:

I want to clarify that I am have been working on the game for nearly two years but it has not been in full time development for two years. I just finished my College degree this past August, a three year program at my community College, and three weeks later resumed working on the game full time again. I started the project somewhere in November 2014 but I have being working full time on the project only for 46 weeks now.

As a piece of advice never start with a big project like this one. If you are starting a new project and it’s your first, make sure that its small, doable and that at the end you can publish it somewhere. I can’t stress that enough. Because a game half done in your computer never exists beyond you, and the people that you showed to. If you are able to publish it, you will feel better about it and also feel accomplished.

New art:

Finally found an awesome 3d artist, and from now on he will be taking care of the game’s art. His name is Ronny Perez and he works in 3dsMax, Maya and other 3d tools. At the time he is only working with Maya. He is incredible efficient when it comes to polygons and vertices. All this models below are well under 5000 polygons.

There is some new art to the game. Here is a peak:

Bricks Factory:

In this building ,with clay, water and combustion element, such as wood or coal you will be able to output: bricks, roof tiles, floor tiles. This is a really important building as you will need a lot of bricks to create many structures.


Here with wood and iron you will be able to produce: tools, wheelbarrows, crates, buckets and barrels. Extremely important building. When you play the game you will learn why.


Here the Sugarmillers gather and cut wood from the forest.


Fishing Hut:



Sounds and Music:

Yesterday and today I have being implementing the Sounds and Music on the game. The sounds have been a bit of a challenge but now they are fine. I certainly can fine tune a few things and will certainly do so. It’s hard to combine all the sounds seamlessly.

The music was added today and is pretty awesome. I have to say that the work of Joshua Snethlage from Mixed Media has been incredible.

Surprise added:

I was really hesitant to add new heavy stuff on the game for many reasons. Number one because it’s a lot of work and deviates me from the main purpose that is polish and finish the game. Number two that new things sometimes get out of control in code and turn out to take a lot of more than expected. Anyways, despite above reasons I decided to add a new building to the game that actually changes the dynamics of the game completely.

The new building is so far a secret one and will only be shown a few weeks prior release. The art is not done but its working like a charm. I wish I could show it but it’s one of the surprises of this game.


Once again thanks to all of you for showing support and enthusiasm with SugarMill. The game is going to be as solid as possible to release, and I will make sure it’s fun enough too.

Eight weeks is less than two month. So it’s unbelievable to me but the game will be out then.

I will keep working on the game, making it awesome for the Launch date: Dec 15th

Thanks all for your time!


SugarMill : Release Date : Dec 17th 2016

Hi folks

First of all I want to say thank you to all the fan base of SugarMill. The only purpose of a creator is to delight and please its public. About a month ago I finished my college education and now I am going to focus full time in SugarMill development again. I have 14 weeks to work full time and I have used up the first one already. Regardless I am really pumped and excited about it, especially seeing the way players are expecting the game and asking about it.

Also want to thank all the players that have volunteered or somehow accepted to participate on the Beta test on Steam. Thanks all.

Steam Release:

Finally guys we got a date down. Mark it on you Calendar : Saturday December 17th 2016 is the date the game will be available on Steam. Really excited about it. The game at the moment is really solid and works well. Certainly the input of many users around the world, will help to make it better. I started working on this project Nov 2nd 2014, so at publishing date it will have surpass the 2 years mark of development.

Youtubers and Game press:

I have had a few Youtubers and review websites that have reached out to me, and the list will be too long to mention all of them. But I want to say thanks to all of you.

Incorporate or not?

For the longest time I was undecided on whether to go ahead and do this or not. Steam does not really care if you are incorporated or not but other companies do. So after some paperwork and few fees, the company is now incorporated, the name of the corporation is Aatlantis Code Inc.

What is coming to SugarMill:

A few new important features are coming into the game. They will be available on the final release only. I am not able to disclose them because they will be a surprise.


I’m delighted to announce that finally, closed a contract with Joshua Snethlage. The best and most talented musician I have encountered in this 5 years of making indie games. By chance I was in a park near my place and met him. Then fell in love with his music. His is going to be producing 60 minutes of music, exclusively tailored for SugarMill. He also will take care of all sound effects as well.

Other platform:

SugarMill is coming to PC, Linux and OS on Steam. We are also evaluating the idea of publishing in other platforms.

The Visual Studio Project:

By surprise I found that we are now sitting at 26,500 lines of code. It’s unbelievable to me. Can’t believe how this project has grown over time. At this pace I have written more than 2,000 lines of code monthly but again, I had times in where the activity on the project was minimum or none.


The things I will cover in this 14 weeks are:

  • Art (Animations, 3d Models)
  • Terrain
  • GUI
  • Game Services (Logs, Feedback, Bug report)
  • Kill minor bugs
  • Performance
  • Languages
  • Steam Integration (Achievements, Cards)
  • Launch

So I have scheduled this way:

Seven weeks of programming, five weeks of art and the final two weeks will be only dedicated to the launch of the game.

Wrap up:

To conclude, now I am into polishing the game overall, and making a few additions to the current content so the SugarMillers around the planet enjoy the experience throughout.

The most important thing is that SugarMill is coming to Steam Saturday December 17th 2016.

SugarMill : Dev Log 8 : 20 weeks

Hi everyone

Roughly 20 weeks ago I announced I began working on SugarMill full time. Here I am 20 weeks later with the game pretty much done. Have been working with a lot of stuff and this is a short summary of the things I addressed:

  • Performance
  • Bug Correction
  • New Art
  • Greenlight Campaing
  • New Routing System
  • Trading System
  • Ships

Past Fears

The things I feared the most was the performance of the game. I initially wanted to put 10 000 citizens in the game, each with their daily routines, works, schedules, church time, relax time etc. But I ended up making a test with 1000 that was inconclusive and then 500. The game can accommodate 500 citizens at 60FPS HD no problem in my PC. My PC is 3 years old, hopefully majority of people can play it at 60FPS.

I could certainly keep working on performance and stretch it to 1000 and maybe into 1500. However time is something we don’t control, and its gone now. I spent 3 weeks improving performance of the game and learned alot.

Slowly understood that I only had 16.66 ms for each frame to target the 60 FPS, it was a learning curve that I am more than happy to explain. Understanding the Unity Profiler completely took me for a ride also. I have to say that is awesome and does help a lot. Thanks to the Unity Team one more time for their awesome job.


At the moment the game has 9 different professions. They all inherit from a base class that is Profession.cs and they all work alike.


The builders ask to BuilderManager.cs if there is something to build. BuilderManager will give something that already has been greenlit by the game. This means that all the resources are available and all citizens check their routes and updated them consequently if needed. This is to avoid citizens walking inside buildings and so on. Once BuilderManager give a string:MyId they will look up the building in Registro.cs and will route there. They work in a building called Masonry.


They are really like the Builders, the only difference is that they ask class Dispatch.cs what is up so they can work. Dispatch will return to them an object of the type Order, and Order is composed of an OriginKey and DestinyKey, an amount and a product. Then they can route there, pick the object go back and drop it at the Destiny. I must say that wheelbarrowers can carry up to 4 times what a normal worker does and they do use their wheelbarrows. Once you run out of them you need to produce more wheelbarrows at the Carpentry, otherwise they will not carry as much.


This class is really simple as it doesn’t need to do any routing since the farming work is done within the boundaries of the farm. Once they are in there they create a random route inside the farm. Once they are in the last point they play the ‘isHoe’ animation and spawn a hoe too.

FisherMan, SaltMiner:

This class is really the same as a farmer. They work exactly in the same way.


By far the profession I have spent more time in. As each tree is in a different place and they have to replant the trees, its quite fun being the forester. At the moment it’s working perfectly. Foresters in SugarMill are really important as the wood is a basic need for everything in the game.


Really complicated class. As all classes drop their produced items in the storage what brings they back to Home is the Homer.cs object. Every call from the profession objects is done in a different way.


The easiest class by far. This class is for all the professions that work inside a building such as an Foundry worker, Teacher, Carpenter, etc. It is as simple as let the time run a bit while the citizen is inside the building and before leaving produce the good based in various factors.

Routes Cache

Really important caching expensive computed objects. TheRoute.cs is the object I finalize each route and they do have a few properties but the more important are the CheckPoints. Each CheckPoint has a few attributes:

public class CheckPoint
    private Vector3 _point;
    private Quaternion _quaterniRotation;//this is the rotation needed to be in the exact good position
    private Quaternion _quaterniRotationInv;
    private bool _inverseWasSet;
    private float _speed = 1f;

    public Vector3 Point
        get { return _point; }
        set { _point = value; }

    public Quaternion QuaterniRotation
        get { return _quaterniRotation; }
        set { _quaterniRotation = value; }

    public Quaternion QuaterniRotationInv
        get { return _quaterniRotationInv; }
        set { _quaterniRotationInv = value; }

    public bool InverseWasSet
        get { return _inverseWasSet; }
        set { _inverseWasSet = value; }

The position is the world-position of the Point, the QuaternionRotation is the rotation of the person and the QuaternionRotationInv is for the return trip through the same route. InverseWasSet marks if the inverse rotation is being defined or not.

At the moment the Project is scoring 24 000 LOC. I have being working on this for so long that I can’t remember how I started.

The progress of the game through the last 1.5 Years

Date: April ‎14, ‎2015

Date: ‎October ‎5, ‎2015

Date: Mar 12, 2016

What I wanted to get done and couldn’t

I did want to have it on Early Access on May 5th. However I want to make sure the game is playable and as bug free as possible for the that. I prefer to have it completely bug free when release on Early Access and that’s my personal goal.

The art might still need a lot of work, most likely the game will be missing a lot a features but I want to make sure that all bugs I know off or can detect will be corrected.

The good

I have learned a lot about Unity and C# I could say I know more now that when I started and I still have so much to learn. However if you are reading this and think you want to become an indie developer go for it. I would recommend to start with a simple project so you can learn the basics of the Engine and some programming as well, the most important thing is that at the end you publish your game somewhere.

Once more thanks all. I was astonished when saw it took less than 2 weeks to pass Greenlight. Thanks seriously all.

SugarMill is heading to Early Access sooner than later. Keep the tune.

Thanks for reading and have an awesome week!

Happy mothers day!

Sugarmill : Dev Log 7

Hi everyone

First thing: SUGARMILL IS GREENLIT!!! I’m really pumped, excited and happy about it. I’m overwhelmed with the worldwide support and enthusiasm about the game. The trailer and gameplay of the game has been featured or published in over 10 different Youtubers and more are coming.

In the near future I will announce the date that SugarMill will become available on Steam Early Access.

This week on Thursday while I was working, checked my email during my lunch break and found the email I was hoping for! The email from Valve saying the game was Greenlit!

I want to take the opportunity to express my thanks to all the people that helped me. All around the world. I got a chance to talk to people from all over and actually made some friends during these past two weeks.

In the future, look for a post that I am planning on publishing about ‘How to get Greenlit in less than 2 weeks!’.

This week I worked on quite a few things for the game. Basically polishing bugs, also created a tool that helps align the buildings and the road system is now perfect. Each different tile is a ‘SmartTile’ and its looks for changes around him. If something changes the tile will change also!

Code Snip of the SmartTile:

    private bool beAlert;
    private void CheckIfNewRoadIsBuilt()
        if (BuildingPot.Control.CurrentSpawnBuild != null && BuildingPot.Control.CurrentSpawnBuild.HType==H.Road)
            beAlert = true;

        if (beAlert && BuildingPot.Control.CurrentSpawnBuild == null)
            //so updates material    

Also want to mention that SugarMill made it into the IndieDB Steam Collection of games.

I can’t imagine make a game like this without Unity! Below you can see how the main animator looks like now. Each person has one of this attached.

Thanks for reading