It Has Been A While
Oh yes, it has been a while since last update. But it doesn't means development was stopped. Indeed there was period of stagnation, but not because of the lack of interest in the project. Presenting on the left updated graph image with latest progress, until 2018 March 01.
Keep in mind that I am only developer at this stage and work on the project as a hobby, in my own free time. Wish having it more tho.
Old Visual Programming Scrapped
So it can be observed, that visual programming is critical goal for this project with extreme emphasis. There was a lot work around this aspect. Firstly previous system was completely scrapped. I worked on previous system from scratch. I need to say, it came to the decent point, with drag and drop, and radial menu. But was far from being complete, with too much issues, spent time (1-2 months) and unsure about reliability.
Blockly & lua
Instead, I looked for alternative solution. It was not new to me, but was matter of the implementation. So I gave a try to Blokly system. It also visual based programming, however, developed by google. And is open source. Then only one thing left was to implement into the game. Image shows an example from dev version at blockly page. At the current, own blackly system is working with Unity3D and is producing lua script output saving to locally stored data files.
Yes lua (not LUA, or Lua) is the embedded interpreted scripting programming language, which can work on top of other application, if designed that way. Since one of major focus, is making game moddable, I have decided, that firstly I need make game as much data driven as possible. Lua as the result is the major scripting language, allowing in future both modders and player to design and modify behavior of game elements. So the option will be writing own scripts, using Blokly, or using resitting / shared by community scripts.
As of this stage, lua scripts can drive simple forces physics, loaded from SQLite DB, affecting traveling spacecraft.
SQLite was another tool of choice, for data driving philosophy design. Rather than storing config files in txt, or other files, having SQLite database, allows over the better control, how data is handled. Tables are designed in such way, that functions can be turned on and off, rather than permanently deleted. Great for testing, and historical storage.
Since SQLite is the file and different configs and save files will be stored in separate SQLite databases, in game folder, it means, they easily can be modified and replaced, when needed. However SQLite can not be viewed with .txt file, this is not obscuring usability outside the game, as there are plenty free software tools i.e. DB Browser for SQLite, to view and manipulate the content.
Debugging and issues now are stored also in SQLite error log. Therefore, issues can be easier to track and filtered. SQLite can bee also easily read by Python, if ever requires, to assist the project.
JSON data format completes requirements, for data driving design. Along with SQLite, it suites to store data, for effects, which can be later manipulated outside the game, and loaded back to game. For example importing particle system, which no more requires game recompiling, after each change. And in fact, anybody will be able to change color, emission etc. This is working now. Similar to light and more in future.
This was interesting part of project, to bring an implement GUI system, supporting HTML5, rather than internal GUI system. I wasn't satisfied with existing neither custom, nor available system on the asset store. I need flexibility to the game, so therefore, was decided, to use web based GUI system. Initial prototypes worked very well, opening path for future development. In fact Blockly interface is navigated, using embedded browser to Unity3D. Interestingly, it can be set, so it opens pages on 3D objects, when needed. Massive help and jump forward.
Displaying local and online content ingame. Superb ;)
Last Update: 2019-02-17 02:37:29
During this project putting high emphasis on optmisation from the beginning. And it will need some justification and explanations why doing so early ...
Last Update: 2018-08-25 01:00:00
Along with Unity 2018, new programming methodology has been introduced. This is ECS (Entity Component System). This brings potential massive performance improvements. However, this also requires, to change way of thinking, when programming.
Last Update: 2018-03-10 13:04:17
From many of available revenue schemes for a game, as the reward of developing, few is considered here.
Last Update: 2018-03-01 00:12:04
It has been a while since last update, so let give some news on development.