This week was pretty epic!
Sector Six has became top rated game of all time in GameMaker: Studio Steam Workshop, Sector Six was featured on GameJolt and it was pretty good week for Sector Six on Steam Greenlight. Besides that, I have began working on new tutorial. I have implemented new tools for making cutscenes, and made the third Machine! So, how is this new tutorial different than the two previous tutorials? First of all, it is going to be story based! Tutorial will begin in Aspil region, in the middle of the battle between Negati Armada and the Machine! Second, old tutorials forced player to go through spaceship building and ability upgrading without explaining much. Instead of locking everything and forcing player to do set tasks, new tutorial will allow player to do anything and will explain what player is exactly doing. For example, adding mortar weapon, explanation will appear saying that mortar weapons are used to increase power of nomad abilities. When player will empty or lose alloy container, player will be informed how to refill container or get new one. I will be able to add new explanations over time, without having to re-do tutorial every time new features are implemented. Lastly, new tutorial will take less time to complete than old tutorials. So, new tutorial's motto is more freedom and less confusion! New tutorial might take more than one more week to complete. Alongside new tutorial, next update should unlock Labyrinth's story mission and bring back swarmlings. I think it will be pretty cool! Until next week!
0 Comments
This time I got pretty good news!
Big things are going to happen to Sector Six soon! Since I am unable to get the money any other way, in order to keep electricity and finish Sector Six, I am going to start selling game as soon as possible. So, here's what's going to happen... Sector Six update. First I am going to release new version of Sector Six. This will happen very soon! New version features vastly improved combat system, new abilities, improved graphic, pause and key remapping system, epic new boss and more! Since I didn't had enough time to make them compatible with new combat system, new version will have no tutorial and story missions. And maybe some other problems. But all problems will be fixed ASAP. Sector Six on Mac and Linux. With update, I will upload additional Sector Six versions for Mac and Linux! Hopefully that will allow more people to enjoy Sector Six. Sector Six Kickstarter campaign. Kickstarter campaign may be my only chance to finish Sector Six! People who will donate, will earn awesome rewards, including Sector Six Steam key! Sector Six Greenlight. Sector Six is going to Steam Greenlight! Ever since I began developing Sector Six, my biggest goal was to get it into Steam store. Many people wanted for Sector Six to be uploaded to Steam Greenlight and this is finally going to happen. Support Sector Six! Soon I will need some serious help, so keep an eye out for updates, join Sector Six Steam group, spread the word and get ready for with Kickstarter and Steam Greenlight campaigns! Until next time! Bad news!
Due to bad financial situation of my family, I might have to get a job. For few months or longer. That means like two hours of Sector Six development per day max, which will postpone beta, Greenlight and basically everything. Theoretically I could start IndieGoGo campaign and push job away for few months. If I could get few months, I could prepare Sector Six for commercial releases. And with game being sold, maybe I would be able to avoid job. But I hate having to beg people for money, especially because I know my campaign would suck. So, if I'll get a job, I'll try to develop on my free time and start selling game as soon as possible. If I won't, I'll start IndieGoGo campaign and hope for the best. Continuing with bad news! I quit school. Well, it's actually good news, more time for everything. Except that now I might have to go to army, which would postpone Sector Six completely for like 9 months. Becoming a trained guy before world war 3.0 is not awesome either. Also, I'm still not done with the boss. Because I had to fix my computer again, because boss had nasty glitch I couldn't fix for some time, because making boss guardians takes so much time, because abilities for boss and guardians had to be remade several times, because... I know this sounds pretty bad. Especially after all those echoes saying that everything is going great. Things change creepily quickly. Anyway, armoured colony seeker is going to be best boss I have ever made. And that means it's going to be pretty good! This week I spent a lot of time working on second boss guardian, gatherer. Gatherer is pretty interesting enemy, it has a lot of armour, but most of it can be chipped away by destroying segments. So, uh, until next week, maybe I'll have better news next time! Armoured colony seeker is ALMOST completed! This week I have implemented most of seeker's attacks, animations, segments and guardians. In new boss missions player has to fight boss guardians before fighting the boss. Each boss has three unique guardians, that are not seen anywhere else in game and player has to defeat from five to fifteen of them to get to the boss. I hope this will make boss fights more interesting! So, this week I have made first of three armoured colony seeker guardians - sentinel! It is able to shield itself and uses attacks that are hard to avoid. This week was also polishing game. I fixed some problems, that were created by combat overhaul, did minor changes to interfaces, updated few ability animations and so on. Next week I'll finish boss mission and continue to work on new combat! Beta is getting closer and closer! Hang in there! This week I was working on the new boss!
It was very challenging! First, I had to fix evasive problem with enemy segments. Turns out enemy segments weren't scaling with level. Secondly, my idea of making armoured colony seeker have a lot of breakable segments didn't work. No matter how many segments I added, it didn't made boss fight fun enough. Then I decided to add just few segments and change how armoured colony seeker looks. Then I caught nasty virus! No, not computer virus. It took me out of development for two days. After I got back from hospital, the boss development has turned into painful code-test-scrap-repeat cycle. I have made new sprite for the armoured colony seeker and then began working on it's abilities and breakable segments. Segments kept getting in wrong positions, abilities kept being too punishing or not exciting and so on. But despite these problems, boss should be finished by the end of next week! Now, I feel a need to thank the awesome people, who play my game, read my echos and leave good comments about Sector Six! It really helps me to work! As long as I have so many cool people supporting my game, I can do anything! So, thank you all for support and until next week! PS.: Yes, the boss is called armoured colony seeker. Unfortunately, this week I haven't done much, because I didn't had my computer.
But my computer is back now and next week I'll be making new boss! Old bosses - invasion core, assault carrier and onslaught leader - were awkward and uninteresting to fight. Due to the limitations of old combat system, I was unable to improve them. But old combat system is gone, so now it's time for good bosses! New boss will be good, because:
Also, to reach new boss, you will have to get through many boss guardians - unique enemies that can only be fought in boss missions. This is the chance for me to built something, that will turn Sector Six a much better game! Hopefully it will be as epic as I imagine it now. Until next week! Sector Six can now be paused!
That's something that game needed for a long time. With key customization and pause systems in place, game engine is practically completed! That means boring updates are almost over! Finally I'll be able to work on the content updates. So, next week I plan to add new ways to leave the game, like exiting to main menu and then begin preparing game for the combat overhaul release! This is what I need to do: Implement new ways to exit game. Implement fusion abilities. Update tutorial. Fix issues with balance. Fix ether and armour bars. Fix enemy segment armour. Fix amplifiers and hard mode. Clean up interfaces. Add new boss. Add new abilities. Add new enemies. I'll be bringing this list back in every echo until it's completed and I can release new version. It should take a month or so to do that. When combat overhaul will be released, game will become beta, as all core features will be implemented. There's good news and bad news. The bad: After combat overhaul release I will no longer update game, because I will begin selling updated versions on Itch.io and hopefully on IndieGameStand or even Steam store. So, the newest game version will no longer be free. The good: Alpha game will stay free and the last update will add a lot of new content, like new abilities, new enemies, new achievements, epic boss and, of course, new combat. I will not stop supporting alpha version, I'll continue fixing bugs and balancing issues. I really hope Sector Six will sell well, because living off game development is my biggest dream right now. Until next week! This week was very good for Sector Six, because I have managed to implement key remapping or as I call it, control customization system, bring back ether to the game and began updating technology interface. I also ran few long tests and I was very happy to find out, that all those game systems are finally starting to work! It seems that my attempts to improve game by making parts rarer, preventing level from giving armour, limiting weapons, etc, were not waste of time. Anyway, when new abilities came out, they didn't required ether to use them. Well, evil laugh, now they do! Even better - ether doesn't regenerate anymore! Regeneration is a disgusting mechanic. It makes being idle in the game into something you might consider doing! That makes no sense, considering that the games are here mostly to fight boredom! Regeneration was extremely harmful to Sector Six, because hiding from enemies and waiting for armour, ether or alloy container charges to regenerate was very easy. In the past I have removed armour regeneration. Now I removed ether regeneration. In future alloy containers with regenerating charges will also disappear! Regeneration will be completely replaced with generation when you destroy enemy or demolish ruins. Or initial generation for ether and alloy container charges. With ether regeneration gone, all ether providing parts became much more useful, making spaceship building more fun than ever. Ether rework had huge impact on the gameplay, but it's minor change compared to the fact that Sector Six now has perfect controls! How? You can now go to settings and change movement, ability, dialogue and alloy container keys to almost any key on the keyboard! For those who use GameMaker: Studio and are interested in making key remapping in their games, here's how I did it: First, I had added bunch of buttons for every control in game. If, for example, you press container use button and then press T on keyboard, container use key will be remapped to T. When you click button, the variables mode_remap and selected_key are set. For example, if you click container use button, selected_key is set to 14. These variables are then used in the press any key event. /// Press < any key> event if mode_remap = true { if scr_check_key() = true { mode_remap = false; switch(selected_key) { case 1: movement_up = keyboard_lastkey; break; case 2: movement_down = keyboard_lastkey; break; case 3: movement_left = keyboard_lastkey; break; case 4: movement_right = keyboard_lastkey; break; case 5: ability_1 = keyboard_lastkey; break; case 6: ability_2 = keyboard_lastkey; break; case 7: ability_3 = keyboard_lastkey; break; case 8: ability_4 = keyboard_lastkey; break; case 9: ability_5 = keyboard_lastkey; break; case 10: ability_6 = keyboard_lastkey; break; case 11: ability_7 = keyboard_lastkey; break; case 12: ability_8 = keyboard_lastkey; break; case 13: ability_9 = keyboard_lastkey; break; case 14: container_key = keyboard_lastkey; break; case 15: dialogue_key = keyboard_lastkey; break; case 16: engine_key = keyboard_lastkey; break; } } } scr_check_key script is here to prevent people from remapping to keys like caps lock and screen capture. /// scr_check_key() var allow = false; switch(keyboard_lastkey) { case vk_left: allow = true; break; case vk_right: allow = true; break; case vk_up: allow = true; break; case vk_down: allow = true; break; case vk_enter: allow = true; break; case vk_space: allow = true; break; case vk_shift: allow = true; break; case vk_control: allow = true; break; case vk_alt: allow = true; break; case vk_backspace: allow = true; break; case vk_tab: allow = true; break; case vk_home: allow = true; break; case vk_end: allow = true; break; case vk_delete: allow = true; break; case vk_insert: allow = true; break; case vk_pageup: allow = true; break; case vk_pagedown: allow = true; break; case vk_f1: allow = true; break; case vk_f2: allow = true; break; case vk_f3: allow = true; break; case vk_f4: allow = true; break; case vk_f5: allow = true; break; case vk_f6: allow = true; break; case vk_f7: allow = true; break; case vk_f8: allow = true; break; case vk_f9: allow = true; break; case vk_f10: allow = true; break; case vk_f11: allow = true; break; case vk_f12: allow = true; break; case vk_numpad0: allow = true; break; case vk_numpad1: allow = true; break; case vk_numpad2: allow = true; break; case vk_numpad3: allow = true; break; case vk_numpad4: allow = true; break; case vk_numpad5: allow = true; break; case vk_numpad6: allow = true; break; case vk_numpad7: allow = true; break; case vk_numpad8: allow = true; break; case vk_numpad9: allow = true; break; case vk_multiply: allow = true; break; case vk_divide: allow = true; break; case vk_add: allow = true; break; case vk_subtract: allow = true; break; case vk_decimal: allow = true; break; case ord("1"): allow = true; break; case ord("2"): allow = true; break; case ord("3"): allow = true; break; case ord("4"): allow = true; break; case ord("5"): allow = true; break; case ord("6"): allow = true; break; case ord("7"): allow = true; break; case ord("8"): allow = true; break; case ord("9"): allow = true; break; case ord("0"): allow = true; break; case ord("Q"): allow = true; break; case ord("W"): allow = true; break; case ord("E"): allow = true; break; case ord("R"): allow = true; break; case ord("T"): allow = true; break; case ord("Y"): allow = true; break; case ord("U"): allow = true; break; case ord("I"): allow = true; break; case ord("O"): allow = true; break; case ord("P"): allow = true; break; case ord("A"): allow = true; break; case ord("S"): allow = true; break; case ord("D"): allow = true; break; case ord("F"): allow = true; break; case ord("G"): allow = true; break; case ord("H"): allow = true; break; case ord("J"): allow = true; break; case ord("K"): allow = true; break; case ord("L"): allow = true; break; case ord("Z"): allow = true; break; case ord("X"): allow = true; break; case ord("C"): allow = true; break; case ord("V"): allow = true; break; case ord("B"): allow = true; break; case ord("N"): allow = true; break; case ord("M"): allow = true; break; } return allow; So, that's basically it. Of course, you also need to make game respond to the key variables: if keyboard_check(movement_up) { x -= 1; } Instead of: if keyboard_check(vk_up) { x -= 1; } And the hardest part is probably to make the interface, but since every game has different interfaces, it's up to you. But here's something that might help you do that: /// scr_return_key_string(key) var key_string = ""; switch(argument0) { case vk_left: key_string = "Left"; break; case vk_right: key_string = "Right"; break; case vk_up: key_string = "Up"; break; case vk_down: key_string = "Down"; break; case vk_enter: key_string = "Enter"; break; case vk_space: key_string = "Space"; break; case vk_shift: key_string = "Shift"; break; case vk_control: key_string = "Ctrl"; break; case vk_alt: key_string = "Alt"; break; case vk_backspace: key_string = "Backspace"; break; case vk_tab: key_string = "Tab"; break; case vk_home: key_string = "Home"; break; case vk_end: key_string = "End"; break; case vk_delete: key_string = "Delete"; break; case vk_insert: key_string = "Insert"; break; case vk_pageup: key_string = "Page up"; break; case vk_pagedown: key_string = "Page down"; break; case vk_f1: key_string = "F1"; break; case vk_f2: key_string = "F2"; break; case vk_f3: key_string = "F3"; break; case vk_f4: key_string = "F4"; break; case vk_f5: key_string = "F5"; break; case vk_f6: key_string = "F6"; break; case vk_f7: key_string = "F7"; break; case vk_f8: key_string = "F8"; break; case vk_f9: key_string = "F9"; break; case vk_f10: key_string = "F10"; break; case vk_f11: key_string = "F11"; break; case vk_f12: key_string = "F12"; break; case vk_numpad0: key_string = "Numpad 0"; break; case vk_numpad1: key_string = "Numpad 1"; break; case vk_numpad2: key_string = "Numpad 2"; break; case vk_numpad3: key_string = "Numpad 3"; break; case vk_numpad4: key_string = "Numpad 4"; break; case vk_numpad5: key_string = "Numpad 5"; break; case vk_numpad6: key_string = "Numpad 6"; break; case vk_numpad7: key_string = "Numpad 7"; break; case vk_numpad8: key_string = "Numpad 8"; break; case vk_numpad9: key_string = "Numpad 9"; break; case vk_multiply: key_string = "Numpad *"; break; case vk_divide: key_string = "Numpad /"; break; case vk_add: key_string = "Numpad +"; break; case vk_subtract: key_string = "Numpad -"; break; case vk_decimal: key_string = "Numpad ."; break; case ord("1"): key_string = "1"; break; case ord("2"): key_string = "2"; break; case ord("3"): key_string = "3"; break; case ord("4"): key_string = "4"; break; case ord("5"): key_string = "5"; break; case ord("6"): key_string = "6"; break; case ord("7"): key_string = "7"; break; case ord("8"): key_string = "8"; break; case ord("9"): key_string = "9"; break; case ord("0"): key_string = "0"; break; case ord("Q"): key_string = "Q"; break; case ord("W"): key_string = "W"; break; case ord("E"): key_string = "E"; break; case ord("R"): key_string = "R"; break; case ord("T"): key_string = "T"; break; case ord("Y"): key_string = "Y"; break; case ord("U"): key_string = "U"; break; case ord("I"): key_string = "I"; break; case ord("O"): key_string = "O"; break; case ord("P"): key_string = "P"; break; case ord("A"): key_string = "A"; break; case ord("S"): key_string = "S"; break; case ord("D"): key_string = "D"; break; case ord("F"): key_string = "F"; break; case ord("G"): key_string = "G"; break; case ord("H"): key_string = "H"; break; case ord("J"): key_string = "J"; break; case ord("K"): key_string = "K"; break; case ord("L"): key_string = "L"; break; case ord("Z"): key_string = "Z"; break; case ord("X"): key_string = "X"; break; case ord("C"): key_string = "C"; break; case ord("V"): key_string = "V"; break; case ord("B"): key_string = "B"; break; case ord("N"): key_string = "N"; break; case ord("M"): key_string = "M"; break; } return key_string; It turns, for example, movement_up variable into "Left" string. You can use it like this: /// Draw event draw_text(x,y,scr_return_key_string(movement_up); This could be useful. So, until next week! I hope it will be as good as this one! PS.: <3 This week was rather quiet. Didn't got much time to work and even when I did, I couldn't work for long, because I was tired. Long story short, last school semester sucks.
Anyway, this week I have updated the way part stats are displayed on panel next to building field. Now it shows total weapon damage and amount of weapons equipped. The biggest change this week was implementation of weapon limit and engine requirement. This was very easy to add, so it wasn't big thing for me, but it should have huge impact on gameplay. Now attached weapon amount cannot be higher than half of part limit, else you will suffer 400% longer ability cooldown penalty. Also, you must have at least one engine equipped on your spaceship, or movement speed will be reduced to 50%. Lastly, I have re-implemented resurrection missions, eliminated old, elusive glitch and replaced veteran mine spam attack with more interesting move. Next week should be more interesting, as I will be trying to implement control customization! I'm sure many will like this feature. Until next time! This week I have added two new awesome abilities and began tweaking game difficulty. Since the new combat test release last Sunday, combat test version has been downloaded about 50 times! However, only few people have given me feedback about new combat system. This is what information I have received:
I have decided to make combat faster and by doing so, made combat much harder. Now even I have problems passing the introduction mission. Since I began to mess with the game difficulty, I have stumbled upon old problem. The picture above shows how game difficulty depends on the amount of the weapons you have on your spaceship. Red is too hard, green is too easy. Since player starts with two sockets, it's hard to pass the first mission. The weapon problem is very old, it's there since the beginning of the game. Game is very hard, if you don't have enough weapons, but it instantly becomes too easy, if you add more weapons to your spaceship. Also, there's another problem that comes with it. About 50% or more of parts received from the part safes aren't weapons, which means that they are pretty much useless. This vastly reduces fun of getting new parts. So, the solution is to limit how much weapons can be added to spaceship, to keep difficulty between too hard and too easy. My idea is to make ability cooldowns 100% longer, if your spaceship has more weapons, than non-weapon parts attached to it. For example, since at level 1 part limit is 7, you can only equip 3 weapons. If you equip another weapon, ability cooldown will be doubled. For those, who are skilled enough, that can fight with reduced amount of weapons without any problems, in future there will be modular difficulty system. It will replace current hard mode. When you will choose mission in map grid, you will be taken to mission overview interface. There you'll see detailed information about the mission, enemy types that will appear during the mission, lore about the region and other things. But the most important part of that interface will be difficulty modules. The more modules you enable, the harder game becomes. Here are the examples of difficulty modules:
And so on! Obviously, some of those might never appear in game. To make things even more interesting, there will be rewards! They will be based on amount of modules selected. For example, if you will enable all modules and to win, you'll receive Radiari circle! It will contain mythical/etalon grade parts and access to hidden Radiari region. As you probably have noticed, there are no screenshots in this echo. This is because my computer screen didn't turned on this morning, so I didn't took screenshots. I hope I'll get my screen back soon, because newest Sector Six version is stuck in computer without screen, so I can't work on it. But, because I couldn't work on Sector Six, I have managed to write this long and, hopefully, interesting echo. So, until next week! |
Archives
October 2016
Categories
All
|