Long time I have written anything on here, so time for a little status report!
The most important changes affected the effect system (which was completely recoded), the material system and galaxy generation.
Effects. Each device i.e. an engine in itself represents an Effect and consists of different smaller, incomplete effects. So the new effect system allows you to combine different effect parts to a complete device effect. It also requires you to install a minimum of required parts, i.e. a functional engine consists of combustion chamber, fuel pump, control device and a cooling system. You can also add an infinite amount of "none-effects" to each device which sometimes impact on the device performance. All other effect types are similarly handled.
Materials. The most important change on the material system is the introduction of material properties. These material properties are directly mapped to all existing effect properties. Thus, it is possible to influence an engine in its performance in a manner you intend (i.e. an engine made from aluminum is certainly not as powerful as one made from steel due to the higher melting point of steel).
Recoding effects and materials also indirectly required a graphics change, which is seen above. Each part in the editor is now always mapped to an effect due to the fact that each material now influences overall performance of a device or space ship. Beyond this it also gives a better performance than having many small parts. The resulting ships also happen to be larger. On the left: new 3D graphics, on the right: old 3D graphics.
Galaxy Generation. Yes, you hear that right: now it is possible to generate large galaxies with +1800 or even more star systems. Galaxy generation is astoundingly simple as it is image-based and at the moment completely random. Using the white pixels in the below images, star systems are created and placed at the correct position. This also enables you to create galaxies in any shape or density you want. Based upon this many more features can be implemented, such as colors indicating what objects are to generate at the specified location.
Unfortunately, the planets and stars are rarely displayed on screen due to a bug, and performance significantly drops with +1800 star systems in your RAM.
The full changelog:
- added improved effect classes
- materials are now having an influence on effects (example: aluminum is now the perfect material to create cooling systems, while magnesium has the best performance if used in batteries)
- implemented an image-based prototype for galaxy generation (featuring +1800 star systems)
- star systems and distribution of celestials are both read from external files
- added new material system:
# added recipes, chemical elements
# added advanced material combining methods
- added basics for crafting
- added ResourceSheets for celestials (future applications: production, randomizing material for trade sim, randomizing enemies & loot...)
- added a new filetype that enables you to edit core files easily
- added improved saving methods
- improved Registry functions
- added a new interface:
# improved modularity
# multiple interface colors
# window-like arrangement of complex UI containers
# improved compability for different data types
# accessing and editing data values of objects (necessary for advanced editors)
- added interface library
- added mount point editor
- added mount points
- added advanced crosshairs that change color depending on what target is aimed at (does not work as intended with targets in the sim yet, feature in progress)
- added 2nd generation input handling. Can be extended to support customizable keys and gamepad/joystick control- fully implemented new asset loader scheme
- added advanced debugging tools
- added debug functions for threaded parts of the program
- added improved music player (plays songs repeatedly now)
- added improved loading scheme for assets, 3rd generation