Friday Facts #154 - Challenge us

Posted by kovarex on 2016-09-02, all posts

Hello, we are in the phase of finishing the bug report stream, we expect to smoothly transition from the bug fixing phase to the work on 0.15 in the upcoming weeks.

Team production challenge

We talked about the idea in the fff-152 and the first version is working now. We tested it in the office, and I found it pretty fun to try outperform the other team, restart, and try to optimise tactics. We have decided to test it publicly now when the 0.14.3 release is out. Just search for the Team production challenge on the matching server and hope to get there before it crashes. Some of us will be there playing it, do you dare to challenge us? :)

To make it more practical to host and spread scenarios, we made it possible to host custom scenario directly when hosting a multiplayer game, and also, whenever you load a save game that is a scenario, the original scenario of the game will be saved in your scenario folder, so you can host and spread it further.

Automation of creation of automated tests

Big part of the pain when writing automated test in C++ is to have to guess the positions of entities correctly when building a setup to test, especially if they interact (rails, inserter, belts, etc). This is why Michal made an internal mod to generate the C++ code that generates entities based on setup in the game. We can just selected it like this:

And the scripts generates the C++ code to create the entities, which we copy in the code and work with.
Rail* curvedRail1 = scenario.addEntity("curved-rail", RealPosition(2, -4), Direction::SouthEast);
Rail* straightRail1 = scenario.addEntity("straight-rail", RealPosition(-1, -5), Direction::East);
Rail* straightRail2 = scenario.addEntity("straight-rail", RealPosition(1, -5), Direction::East);
Rail* straightRail3 = scenario.addEntity("straight-rail", RealPosition(3, -5), Direction::East);
RailSignal* railSignal1 = scenario.addEntity("rail-signal", RealPosition(-1.5, -3.5), Direction::West);
Rail* straightRail4 = scenario.addEntity("straight-rail", RealPosition(5, -1), Direction::NorthEast);
RailSignal* railSignal2 = scenario.addEntity("rail-signal", RealPosition(3.5, -1.5), Direction::NorthWest);
It has saved us a lot of frustration already.

The high res pack (for 0.15)

We shown the high res graphics almost 2 years ago in fff-64. We have been busy with other things since then, but we finally found manpower (thanks to Vaclav) to go back and improve some of the existing graphics. This is the comparison of the old and new belts, the difference might not be so clear to see on the first sight as they are moving fast, but once I zoomed in and compared to some other low res entities in game, I suddenly wanted everything to be high res.

    

As always, let us know what you think on our forums.