Starchild Captain Log: 2021/06/04
The game restoration is now at 33%. Welcome space adventurer, lets chat after two months of silence..
Current progress status: 015.0% > 033.0%
I must apologize for the 2 month delay, but beyond being working at the game I was working at other aspects of it such as its site and other things which may become an additional income source. I only had time to really work in the game from the end of May to now, that corresponds to 1 week of progress. I could fully restore other scene of the game (and the necessary code from the base modules) called "game_setup"; and that together with the previously restored scene called "pre_game" sums up to 33% of the old game code restored to work at the modern game engine Panda3D. I found small bugs in the engine but I could workaround them, it is a well planned and powerful engine after all.
Starchild Panda3d (Restore 033.0 Linux 64-bit) (2021)
Starchild BGE (2016)
The game had 6 of those scenes before the game engine stabbed me in the back years ago, I know how much progress each scene represents by doing a simple calculation of 100% / 6 which results in around 16.6% for each complete scene. The scenes were:p>
- game_setup: The game initial configuration
- pre_game: The videos run before the game itself.
- main_menu: The game main menu
- intro: The game introduction video
- char_mod: The character creation scene
- editor: The game editor, which makes the scenes which the game will run.
I also was working at that moment at the scene "play" which would be the really playable part of the game, using the scenes produced by the editor; but the progress percentage was low before I paused the game years ago. For 1 week I worked in the game between the end of may and start of june, I learned more about how to use the Panda3D code and I also noticed some interesting features which are not needed now at the restoration phase but which may be useful in the future. I am getting very excited with Panda3D, something which is funny, as I thought which it would be very difficult years ago. It is not, just a little more complex. In the end I noticed which large chunks of the old gui system were too chained to the now defunct Blender Game Engine to be saved, that is why I deleted them and now I am coding what is needed using the Panda3D code, as it becomes necessary.
All I needed was to remember the logic of that code and do something similar in Panda3D or even do an upgrande of such a oncept. I upgraded a lot of code. For example, the code for the gui system of my game is now simpler, more efficient and powerful. When coding, the most important is not the code itself, but its concept, logic, planning. As the game will now have its content shared with the community, I will explain more of its coding from now on. The game is divided in modules, the "base" modules and the "scene" modules are the most important. The scene modules contain data needed for the game to build a scene, it has a interface with the "base" modules which are the following:
- Launcher: This module calls the game itself. By having a launcher, in the future I can create a pretty graphical launcher for the game where it can be configured and the game will be only for playing; instead of the game settings and the game itself being one single thing.
- Main: The main module, containing system code such as generic data and file handling.
- Graphics: Manages the 3D part of the game.
- Input: Manages the game input.
- Gui: Manages the game menus. It was a module of great complexity and importance, but I already restored its base code and it can produce and remove basic gui objects.
- Tasks: Create tasks for when the game needs a code running all the time, under a condition or running with a delay of some seconds.
There are other modules, but I will talk about them later. The game development phases are:
- Restoration: The restoration of the old code to work in Panda3D. It is made of the base code and the code of the 6 scenes. Most basic things from the base code were restored, along with 2 scenes. The process will become quicker as I restore the rest of the code.
- Desenvolvimento: Things related to what I was coding or planned to code when I paused the game years ago. It is made of the really playable part of the game which I was coding but did not managed to finish. After this is done, the game code will be complete.
- Conteúdo: For example: quests, clothing, weapons, itens and additional ships. They are not arts or codes necessary for the game, but without them the game would be far less interesting.
I will add a very interesting way of testing the audio, graphics and input of the game at the scene "game_Setup", and when I say "very interesting" I mean it, I do not usually say that. I am quite proud of the concept I came up with and will code in the next weeks. After that I will already restore the "main_menu" scene and will improve the "intro" scene.
I fixed a lot of stuff and improved the game site like I said I would. For example:
- I took out the site header because I notice which it occupied a valuable space and the user did not needed to see my logo at each page, just at the home page because there is already a copyright note at the bottom of each page.
- The issue where after visiting the settings page of the site and attempting to return to the previous page, and incorrect url would be passed to the return button and it would load a not existing page.
- Improvements to the site icons, and a change to the icons from the blog area to be smaller, showing which the projects area of my site is more important than the blog.
- More anchor links for a better navigation inside a page and a better division of content in categories.
- The stickeres now have a direct link for the download of packages targeted at the app signal, as I am using it at the moment; but if you want and have the knowledge you can do the download of zip files containing the stickers so you can create packages for your favorite chat app if it supports that. I know I said I was using telegram before and I may still return to it, but I only make stickers packs for the app I am using at the moment.
The site now uses only https, and although it works most of the time, if you are using the safari browser from apple you will probably see a "misdirect" error. If you update the page a couple of times it will work anyway. The problem comes from the hosting I use, "hostgator", it is not something I can solve. As most do not use the safari browser and the problem can be solved by updating the page a few times, I will leave it as is.
I do not see the need to work at the site again for a while, all which it needs now is additional content and that is not important.
There was this persona called "panda3dmastercoder" from the panda3d forum which talked about how he would like to do a "build" of the game by himself using github, as I currently am not making packages targeting windows and that is the plataform he uses. Although it is not something I currently support, as distributing the game has its benefits and disadvantages which must be carefully weightned, I decided to at least share the content I already feel comfortable sharing at the .zip packages I provided for download. I will give more information about this later. You can think "wow, what is wrong with this gal?" regarding me only providing packages for linux 64-bits for now, but it was calculated. By doing so I am restricting who can download the game packages, temporarly giving me a greater control over what I am sharing with the community. Eventually I will produce packages for other platforms such as windows like I said before.
The "technical problems with my laptop" in truth are concerning the fact which every year I test the 6 most popular linux distributions according to distrowatch, and that takes a lot of time as some have grave flaws while others are good only for development or only for the common user. In the end I remained in Fedora, and can also say two things: PopOS! was a very well made distribution, and Opensuse Leap and Tumbleweed were not as good as in the past. I also read something interesting: Which Fedora is the favorite linux distribution of Linux Torvalds. It is necessary, as I need to be sure I am still using the best distribution to develop my game while keeping some common user facilities.
My old wireless keyboard dided, and if the laptop I have did not had one embeded in it I would had lost a lot of time until getting a new one. The productivity was affected though, as the ergonomics of using a laptop keyboard while trying to keep the screen at the eye level is not that good. I want to buy a foldable japanese keyboard, and that will take some time until I get the necessary money.
I gave up selling my services as an artist and am now selling my own products with my art in them, such as vegan cosmetics and shirts, because this is more controlled. When you sell your services as an artist you do not know what the client will ask you, and can end up accepting something under a given price only to discover later which it was more or less work or which you cannot fulfill what was asked. Products on the other hand are abstract, who want buy them, who do not do not, simple; even if you offer a few customization options everything will still be under your full control. I work better with sure things than with uncertain ones.
That is why I updated my logo to reflect the range of services I will give, a mix of technology, art and femininity. Yes, I know, I already updated the logo of my project3 times, but those were logos concerning the game; now I have a logo for everything I will do and the game logo have to adapt to it. I no longer have a focus only in the game, but also in the other products I give. The new logo also have a deep meaning, which I will reveal only when it is registered wordwide as mine. People can steal it, but without its hidden meaning it is not as useful as a logo.
From now on there will be no complaints, as I already told you everthing which bothered me during the game development at past news articles. As now I am once more developing all the parts of this game including audio, the need to deal with sometimes flawed humans to get what I needed, a great source of stress, was eliminated and now I am "in heaven". Do not underestimate the power of stress to slow down your game development (and your life).
A very important lesson which I would like to share with you would be by means of the funny phrase "with each grain, the chicken fills its belly": As long as you do not stop what you set out to do, doing a bit every day, eventually you will manage to achieve it. The problem with the game was which paused it after that issue with the Blender Game Engine, but now I am working once more a bit every day at it and that means one day it will be completed. Althought at first I was depressed of having to restore 100% of the game code, now only 67% remains and that makes me happier. I wanted to work around 15 days each month in it, but depending of what happens each month I can work more or less in it.
I hope the project friends can help me shape it and which they can also share from my personal life, just do not be rude as I do not tolerate that.
In case you had liked this project, you can help it to happen by sharing the game indiedb page, panda3d page or my site in your social networks and doing mouth-to-mouth promotion (choose your favorite). Also, constructive criticism is welcome as always.
That is all folks, until the next news article!
© Yuko Arts, 2021