Sunrider

Sunrider

As Captain Kayto Shields, embark on a galactic voyage of heroism and survival. With his home world destroyed and his nation conquered, the inexperienced Captain Shields, and his newly minted vessel, the Sunrider, are left as the only hope against a galactic evil intent on subjugating all sentient life. Together with his loyal First Officer, he undertakes to find allies across the stars to retake his home planet and restore peace to the galaxy.

Comments

Fun, but...

The good news:

Even though this game is only in beta, the storyline and artwork of this game are great (if not brilliant). You really do feel like you are inside a Manga or Anime when you are playing the main part of the game which uses the Ren'Py game engine for what it was designed to do. If you have the patience to get through the battle parts, you will really enjoy the story. However, be aware that some of the later parts of the story get a bit mature (artwork of a nude girl, some sexual dialogue, etc.)

The bad news:

The problems (and there are many) with the battle HMI and performance are most likely not fixable by the current developer. The website admits he has little programming experience and it shows. I am actually quite impressed that he got the battle GUI working as well as it does, but it has serious problems with the way user events are processed. Further, the battle GUI design needs to be reworked by an expert. The game board is too static, making some of the later battles really odd. However, the real problem is that the battle engine is built on top of Ren'Py which is built on top of the programming language Python. Python is a very hard language to optimize. Ren'Py was designed for interactive artwork and dialogue, not as the driver of a something like their battle engine. Only someone with many years of programming experience could get a game like this working correctly in Python. I would suggest they dump the current battle engine and rewrite that part in C or C++. Python is a very easy language to extend using C.

Suggestions for the user:

Ignore trying to win the battles and focus on the fun story. The reason the battle engine bogs down is that it can not handle updating all of the ship states in a battle in game time and the code does not use event hints to mask all of the unhandled events. (Ren'Py is actual causing this problem, but this is not an issue in most applications of the engine where it only has to run at the speed of human reading.) If you are patient and wait about 30 seconds after pushing every button icon in the battle GUI (including the ships), you can get through most of the early battles, but this approach stops working later in the game. You needs to add some cheats to get through these battles in less than a couple of hours.

One of the neat things about Python is it self-compiles. Since all of the source code comes with the game, it is very easy to change the way the battle engine works. Even if you have never programmed, do not worry. Their code is easy to follow and you can add cheats by just changing a few values in the .rpy files in the game directory. (For example, to change the number of rockets you can buy, you need to change 'sunrider.rockets < 2' on line 24 of the file 'store.rpy' to something like 'sunrider.rockets < 10' .) Again, any changes you make to a Python source file will get automatically compiled into the program when you start it. However, be sure to keep a copy of the original file and do not remove any whitespace in the file you are changing. Python is very picky about the way code is formatted and fixing Python compiler errors will require a bit of programming experience.

One way to speed things up is to first give yourself some extra money, and then, change the number and type of rockets the Sunrider can carry. This way, in the later battles, you can blow away about half of the enemy in the first round. This reduces the number of ships the engine has to process and makes getting through the battles less of a time sink. Just be aware that the developer tends to hard-code values so if something does not change, you may have not found all of the places he defines the same constant. So have some fun playing with the code, and then, enjoy their great storyline.

Something New

This game is great, especially the effort put into it, it's amazing that it's free. However, after playing for about an hour the buggy user interface became a massive problem. Not sure if they use some kind of queue for the events in the programming or something, but the clicks seem to either be delayed -- on short intervals or long ones. This makes the "turns" very slow and laggy, and sometimes when you attempt to do an action to someone on your team the action simply does not work, or you end up applying it to the wrong team-member because of the sluggish interface. Time to time it seems the Load Game or Save Game interface pops up randomly when I left click on my mouse while the cursor is near the middle of the screen. Some of the enemies' grid positions are a bit off, and you have to click near the head with the enemy's ryders, otherwise no action is applied.

The game is great in general, but the developers really need to improve the performance and fix these problems. Other then that, I would recommend this game to someone who likes SCI FI Anime-ish type of games.

This seems to apply on Linux systems, or atleast the Linux 3.13.0-32 kernel.