Since the release, I've received many emails about train navigation ideas and some of you have reported issues or sent me pictures where the train decided to go by wrong path of even caused some deadlocks.
Thank you all for this help, ideas and bugreports.
Based on this, I've recently reworked pathfinding and I am quite satisfied with the result ;) There are several new features:
Better pathfinding
Trains are now able to find its way also by turning around. Each direction change has some penalty, so train prefers straight paths, if there is any. This feature is especially useful when depots exit leads to one way track. It can be also easily utilized to turn around train when magic flip is switched off.
Avoid going through the station
Train that doesn't need to stop at the station prefers an outer way around. This can prevent from some deadlocks or overloaded stations. The train prefers outer way only up to specific additional distance. If it is too long, it goes through directly the station instead.
Train stops when lost
When the train cannot find the way at all, it stops and let you know about it. In previous version, train used the heuristic to guess which tracks leads to the closest neighbourhood of the destination, which combined with oneway track usually ended up having train far from its route and blocking another path.
Next destination path prediction
The train predicts the next destination and chooses the right platform! This feature has been requested by community several times and I was always looking forward to have it in Mashinky game.
Aside from these features, several pathfinding bugs has been fixed (at least 3 of them were that kind of bug: "How could it ever work before the fix?" :) )
The development getting speed again, but today, I want to share with you something different, it is my excitement about "unlocking" another achievement:
Two days ago, Mashinky scored a huge success: The special jury evaluated the game in The Czech Games of the year 2017 as the Winner of two categories:
The Greatest hope
The Best game design
We've also got nomination for
The greatest technological improvement
It is a big honor to my and for the whole team, since this jury was full of game development veterans and well known press professionals.
Map Editor is out for few days already and I've spent most of the time fixing bugs that has been reported by you.
Thanks all of you who helped me finding these bugs and by sending also save files, you made it easier for me to fix it quickly.
These bugs were mainly freezes (either caused by old save files on when unlocking second era). Everything should be ok now, sorry again for inconvenience and thanks for helping me!
Changelog:
05/20/2018
Fixed: Loading of old saves
Fixed: Missing humidity when random map generated(edited)
05/21/2018
Fixed: Missing humidity when random map generated
Fixed: Freeze when starting 2nd era
Fixed: Town buildings generating + optimized
Removed: Trace dump disabled until proper switch implemented
Fixed: Another freeze when unable to place buildings
Editor Change log
I've promised you to share change log and here you can see what I was doing those few months. It was not easy, but I've learned a lot and next time, I will keep you updated and share some versions and new content meanwhile.
Here you can see each internal build with changelog. Sorry it is quite long and not very readable, but at least you can get an insight of how the development of editor looks like ;)
02/02/2018
Added: Support for save/load/delete scenarios
Added: Support for start new game from saved map (scenario with erased artificial infrastructure)
Added: Support for start new game from saved scenario
Added: Possibility to load and save Heightmaps and masks
Added: Planting trees based on density
Added: Saving height map
Added: Recompute humidity (grass color)
Added: Place towns according to latitude/longitude
Modified: Brush paints also when moving mouse over GUI windows
Modified: Properly initialized GPU heightmap after editor start
Modified: Intensity of some filters
Modified: Filter tab UI polishing
Modified: Tuned Filter tab in Terrain tools
Modified: Mult / Div filter - now it ignores underwater terrain and scale down/up not to zero, but to sea level
Modified: Splash screen shows Including Editor
Fixed: Deadlock in async generation when staring new game
Fixed: Compile time switch for terrain brushes
Fixed: Water erosion when generating new map
Fixed: Filters sometimes caused wrong results
Fixed: Loading screen freeze until mouse moved
Fixed: Runtime brush update
Fixed: Whole map filters
Fixed: Brush issue (streaks across the whole map) on first use
Fixed: Wrong map shape when generate new map
Fixed: Brush in construction mode
Fixed: Map reset when restart editor
Removed: Brush no more change its color according to brush amount
03/05/2018
Added: Texture initialization supports more formats
Added: One param for each filter (it can be used for specifying filter function)
Added: "Set" filter able to draw specific altitude
Fixed: Device lost Cleared whole map
Fixed: After load file into editor, editing cleared the map
Fixed: Wrong tooltip after each brush application
Fixed: Vertical scale of heightmap after load
Fixed: Right bottom corner of map issues after using some filters
Fixed: Brush wrongly applied when clicking on UI
Fixed: Lowering map when painting using some filters
Fixed: New map generating
03/09/2018
Added: New brush able to copy height from where painting started
Modified: Hidden year in editor
Added: Reset year when new game
Added: Scrollbar in map selection in new game
Fixed: Corrupted file when add industry in editor and save / load
Fixed: erasing map in editor after load
03/13/2018
Fixed: Loading of textures having non power-of-2 size
Fixed: Height scale when loading heightmap is 0-255 again
Added: Autosave in editor
Fixed: Buttons enlarge in non-town building window
Fixed: Using buldozer on buildings in editor
Added: Industries from other than 1st era are removed from custom map when starting new game
Added: Custom industries are placed in each era, if not possible (due to not-empty space), placed within 20 tiles distance, if not possible, at least randomly
Added: Undo (5 steps atm, using adaptive CPU mem. allocation)
Modified: Undo has 10 steps
Added: Undo UI, visualize num steps cached
Added: Rivers brush
Fixed: Crash when load heightmap, change map size, erase
03/16/2018
Added: Persistent per brush setup
Modified: Brush strengths and default params
Fixed: Loading flat heightmap
03/20/2018
Added: Plant brush (disabled - wip)
Added: Script function IndustryGetType (returns hash of given industry object)
Fixed: Watermark when loading map into editor
04/02/2018
Added: New brushes
Modified: Switch versioning repository
04/11/2018
Added: Internal possibility to test load (reads only some basic info about the file without applying it)
Fixed: Paragraph line
Modified: Refactored town growing (building budgets)
Added: Possibility to force building facing to road, including corners
Modified: Editor map has always high sea level
Modified: New game - custom maps window
Added: Second stage of town buildings (WIP)
Fixed: removing of bigger buildings
Modified: Town growing improvements (upgrading buildings, roads)
Added: Wind sound switch
Modified: Improved town generating
Modified: Recovery from some savefile coruptions
04/12/2018
Fixed: number of town buildings generating
Removed: Asserts from release (without VC it caused crashes instead)
Modified: Mods moved from media to mods directory
Added: Possibility to use also directories inside mods as a mod
Fixed: Erasing of towns when generate
Modified: Erasing all buildings when changing map size
Fixed: Towns 1x1 generating when used for the second time in editor
Fixed: Industry generating when start new game
04/15/2018
Added: Optimized processing of UI add item list
Added: Limit brush / filter to either under /above water
Added: Map seed
Fixed: Heightmap loading for the second+ time
Fixed: Scaling heightmap when loading
Fixed: Packages loading
Fixed: Corupting save files by saving
Added: Some test for save files error recovery
Fixed: Random numbers generator (master vs slave logic fixed)
Fixed: limit brushes to underwater / above water
Fixed: bug with repeating of keystrokes
Fixed: Baking textures
04/18/2018
Fixed: New game produces only 1/4 of a map
Fixed: Far ambient BBoxes computing
Modified: Switched positions Flatten and Set brushes
Modified: Another iteration of steam workshop implementation
Fixed: Town growing in editor
Fixed: consistency of random numbers
Fixed: When maximized, do not remember window size (keep one from normal window state)
Fixed: Mods loading from zip, also switching every path to lower case
Fixed: reusing of map cache (performance ~5% improvements)
04/20/2018
Fixed: unpacked mods
Fixed: icon
Modified: Improved custom map window
Modified: steam workshop iteration
04/22/2018
Added: After terrain brushes, all affected map objects are tested and removed if not suitable terrain
Modified: Speedup main menu
Added: Map Size Filters when browsing custom maps
Added: Brush for planting trees
Added: Brush for removing trees
Modified: Texts
04/23/2018
Fixed: Newgame window size
Fixed: Copying artificial plants when generat new map
Fixed: Town (+industry) names when start custom map
Fixed: Number of towns displayed in right bottom corner
Fixed: Randomly spread buildings
Fixed: removing of roads by plant brush
Fixed: Multiple industries generated when start custom map
Removed: Autosaves from new custom map menu
Fixed: Tree brush hides forest model
04/27/2018
Added: Limit for custom map count
Fixed: generating on low/med/high presets
Modified: Hidden date in editor except month
Fixed: Crash when generate trees -> change map size
Modified: moved plants to landscape generator so it cooperate easily with brushes
Fixed: Industry start positions & names
Added: Basic FBX generator
Fixed: Generating editor trees followed by painting them
Fixed: Missing shadows
Modified: Town generating
Modified: New game window (custom map info is loaded only one on request)
Added: Input box now supports multiline
Added: Map description (wip)
Added: windows can have fixed width of right half (not only left one)
Fixed: Low/Med/High town count when generating in editor
Added: Remove whole town when main building removed
Fixed: Town/building icon altitude when modify heightmap
Modified: Town do not remove its building so often
Fixed: New era buildings positioning
Fixed: Missing shadows
Fixed: Advanced New game Params are applied also to custom maps
Added: Possibility to add custom map description (with images etc.)
Modified: Script for ruined church is now able to search for existing one instead of create new one (custom maps)
04/28/2018
Added: Sorting industry icons in build tool according to their start era
Added: Autowrap text in input box
Added: clip text into input box
Added: Scrollbar in Custom map description (new game window)
Modified: Increased custom maps limit to 512
Fixed: Crash in editor
Fixed: Reassign town when town it's is removed
05/03/2018
Added: Icons & Help for plant brushes, under/above water
Modified: Roads placed in editor belongs to towns
05/10/2018
Modified: Copy build media batch file
Fixed: Asznchronouse Undo list issue
Fixed: Memory overflow (reading uniform string from file
Fixed: Town growing
Fixed: Town captions
Fixed: loading of longer strings
Modified: Minimal resolution raised from 800600 to 1024?/?*720
Fixed: Column width in new game - custom maps - map info
Modified: Terrain tools buttons scaled up by 20px each to fit translated texts
Added: DbgTextClear() script function
Modified: Localized texts
05/12/2018
Added: Humidity brushes
Added: (WIP) Humidity after device lost restore
Fixed: Humidity paint brush
Added: New game -> Advanced -> back returns to previous tab
Modified: New texts version
05/14/2018
Fixed: Random spread of generated buildings
Fixed: Brushes remove bridges and tunnels
Fixed: Changing of map size in editor cause brushes to generate holes or other issues
Fixed: Vegetation checks suitable terrain after using brushes
Fixed: Using automatic humidity map generating and than humidity brushes
Fixed: Manual trees placing and than using tree brushes
Fixed: Shadow clipping to early in a distance
Modified: Shadow quality vs distance improved, improved shadow bias 10x
Added: Plant / Humidity tooltips
Modified: Humidity brushes and editor icon
05/15/2018
Fixed: using random tree and than tree brush
Fixed: Save/Load heightmap scale
Modified: New localized text version
Modified: Better shadow fading in a distance
Added: Mod with Elishka steam engine
05/16/2018
Modified: Date progress in editor turned off
Modified: removed not finished (locked eras) buildings from construction menu
Fixed: Not-growing towns
Fixed: Placing industry searched for closest towns also in non-existing towns
Fixed: in paused game, towns got number of passagners from surrounding builngs
Modified: latest translated texts version
Fixed: Humidity reset when used undo step
Fixed: Available industry buildings only in editor + quest buildings
Modified: Turned off time in editor
Wow, you have reached the end! Thanks a lot for your time.
Finishing editor after so many weeks was like releasing some stone I was rolling in front of me for a long time. I know it was even more difficult for you, since having so minimum insight into the development from outside is not fair for all of you who already bought the game and I will do my best to keep you involved next time, because only together we can make the best tycoon game ever ;)
Map Editor with first set of custom maps is finally released! These are main features you can use to support your creativity:
Load / save so called "Scenarios" (it means custom maps, in the future, these will come with custom scripts as well).
Support for loading / saving height map, vegetation or humidity maps - you can obtain heightmap of any world location via this site https://terrain.party/. Place heightmaps to /heightmap/ location inside the game directory.
Generate initial terrain, industries, towns, trees by a single click in the editor, so you can quicky modify already populated maps.
GPU accelerated brushes able to generate various noises, modificate terrain, add / remove trees of colorize grass as well as healing brush after loading noisy heightmap, brush able to draw rivers and more.
Manually place, rename and grow towns or you can draw roads and place buildings to design town manually.
Manually place industry buildings so the game will generate them on these locations.
You may place also infrastructure including rails, bridges, tunnels, stations to create specific initial conditions.
You can add textual description to your map so everyone can read this before starting new game on your map.
Easily shareable *.mss files with each maps (located in /scenarios/ inside game directory).
First set of hand made maps (6 handcrafted maps for now, some of them comes with initial infrastructure to support your business start).
7000+ real towns locations and sizes for automatic placement (you need to set proper latitude / longitude of area chosen).
Many fixes and improvements, optimizations.
New steam engine "Elishka" :)
I am looking forward to see what creative people like you can create with these tools! Please share with us your maps and best of them accompanied with your name can make it into the next build update ;)
It has been a loooong time, full of issues to solve, unclear plan estimates and I am so glad we can move further and finally release the Mashinky's map Editor!
Changelog is quite long, so I need to prepare it for you, but in few days, I will release editor update with these main changes:
Support for loading / saving height, vegetation or humidity maps
First set of hand made maps
7000+ real towns locations and size for automatic placement
Many fixes and improvements
New steam engine "Elishka"
It was not an easy task and I want to appologise to all of you for such delay. What started as a "hey, lets add possibility to load heightmap" to something rather complex requiring to rewrite some game parts (generating towns, industries, changing map size, dynamic ownership of map items etc.).
I've learned a lot and I will do my best to meantime ensure some content updates coming.
Full steam ahead!
I've also decided to focus on Mashinky and I will work on this game on full time starting next month! This should speed up the development radically. We can also switch back to content updates soon!
Thanks for all your patience, looking forward to see your creativity in the Editor and have a nice weekend!
Editor is close to be finished and we are working on initial maps that will be available together with editor release (for those of you who are not looking forward to spend hours creating your own world, there will be prepared maps to let you benefit from editor release even if you don't use editor at all).
Meantime, quite many things happened meantime I want to share with you!
Czech - Slovak game of 2017
Once a year, the Czech Republic celebrates the best Czech-Slovak game for the past year. The general public decides in the largest survey and the results were announced March 14th 2018 in Prague. Mashinky got a nomination and I arrived to this festive announcement with my graphic artist. And guess what? Mashinky won!!
Now Mashinky is officially the best Czech - Slovak game for 2017!
It is a huge honor to me and the team and it gives us even more energy to work on the game. Also I want to thank you all who voted for us!
Family upgrade
My daughter was born on March 17th! I know it doesn't mean too much for Mashinky community, but since for me it is quite life-changing and it is also reason I was few days offline, I want to share with you also this great news :) Now I am proud father of this young beautiful lady Eliška ;)
Development speed up
The last but not least update I have for you is something I cannot announce yet, but in 2 months, I also plan to boost Mashinky development speed a lot, so stay tuned ;)
Editor is close to be finished and we are working on initial maps that will be available together with editor release (for those of you who are not looking forward to spend hours creating your own world, there will be prepared maps to let you benefit from editor release even if you don't use editor at all).
Meantime, quite many things happened meantime I want to share with you!
Czech - Slovak game of 2017
Once a year, the Czech Republic celebrates the best Czech-Slovak game for the past year. The general public decides in the largest survey and the results were announced March 14th 2018 in Prague. Mashinky got a nomination and I arrived to this festive announcement with my graphic artist. And guess what? Mashinky won!!
Now Mashinky is officially the best Czech - Slovak game for 2017!
It is a huge honor to me and the team and it gives us even more energy to work on the game. Also I want to thank you all who voted for us!
Family upgrade
My daughter was born on March 17th! I know it doesn't mean too much for Mashinky community, but since for me it is quite life-changing and it is also reason I was few days offline, I want to share with you also this great news :) Now I am proud father of this young beautiful lady Eliška ;)
Development speed up
The last but not least update I have for you is something I cannot announce yet, but in 2 months, I also plan to boost Mashinky development speed a lot, so stay tuned ;)
When I started to work on the Mashinky editor, my plan was pretty simple: to allow you to import custom heightmap and place towns where you want...
One month later, I was implementing filters, real town placement and enlargement tool, GPU-accelerated brushes or designing how industry could appear on the map when it's place is meantime occupied by player's infrastructure.
So many features needed let go of the fantasy when creating custom maps. And still it just scratched the surface.
There are many features finished, some more features to finish, but today, I am going to start small series about brushes.
#1 - Flatten. It is able to copy height easily.
#2 - Geo Noise. With this tool you can easily add random landscape where needed.
When I started to work on the Mashinky editor, my plan was pretty simple: to allow you to import custom heightmap and place towns where you want...
One month later, I was implementing filters, real town placement and enlargement tool, GPU-accelerated brushes or designing how industry could appear on the map when it's place is meantime occupied by player's infrastructure.
So many features needed let go of the fantasy when creating custom maps. And still it just scratched the surface.
There are many features finished, some more features to finish, but today, I am going to start small series about brushes.
#1 - Flatten. It is able to copy height easily.
#2 - Geo Noise. With this tool you can easily add random landscape where needed.
It has been few busy weeks, not only because of work on editor, but also due to preparation of my attendance on a great event called PCGamer Weekender in London. Only 2 days and I will be sitting in a plane flying over this beautiful country with such a strong train history.
I am writing this not only to apologize you guys for less updates or news about the game, but also to invite you:
If you happen to attend PC Gamer Weekender in London 17-18 February, visit me on stands D33+34 and talk together about games and also play Mashinky ;)