Showing posts with label sim. Show all posts
Showing posts with label sim. Show all posts

Saturday, November 1, 2014

Lots of Optimizing

So the past week I've really been working on improving code across the board. I've re-written the unit movement code. This has stopped the space marines from sometimes randomly vanishing off into space when they collide with a partially closing door etc. I've included an update to my previous list of known issues from Alpha 1 and whether or not they've been fixed.

1. "Return to Game" button on Escape Menu crashes game.

2. Credits not always displaying.

3. Escape Menu covered by Station Walls

4. Various problems with Vacuum "spread".

5. Marines occasionally vanish to up left-hand corner.

6. Doors will get stuck if a unit blocks them on closing.

7. Marine shooting image occasionally faces the wrong direction.

8. Zombie Survival Version (Kickstarter Stretch-Goal)

The door issue should hopefully be fixed by today. As I've said in a previous post I'm also hoping to make the shooting AI work a little better. Now that I've fixed the movement AI the shooting shouldn't be too much of an issue. I'm also hoping to tweak the spawn rate of random events in the game to make it a much faster tempo.

Tuesday, October 28, 2014

Fully Re-written Vacuum Code

Well this weekend was a huge success. I've completely re-written the vacuum code for the game and it's now 100% functional again. It required a redesign of the space station and tossing hundreds of lines of code but I've got it all much, much, much more efficient. The code that handles vacuum on the station used to be hundreds of lines, it's now a few dozen. Also, instead of thousands going on tens of thousands of objects flooding the screen and performing collision checks there's now only about a dozen objects. This should drastically improve the performance speed when your station is falling apart. What does all this mean? Well re-writing and tweaking this code cost me a month. I think in the end it was hugely worth it though, as the game can now utilize it's primary mechanic without the rest of the game suffering. Going forward I'll be able to add additional features as opposed to tinkering with this primary component. In short, I'm hoping I can finally start adding tons of new content to the game.

Friday, October 24, 2014

Getting There

Rewriting the Vacuum code is proving tricky. While I was quickly able to get a new, much better "fill" for the vacuum, having it rescind has proven much more difficult. I'm devoting this entire weekend to working it out and making combat more prominent in the game. It's gonna be 48 hours of crunch time as I want to push out another update before October ends. Also working to incorporate some of the last backer oriented "events" although they won't be fully implemented until some of the more complex AI systems are involved.

Saturday, October 11, 2014

Updating the Vacuum Code

So for any of you who have played the first version of the Alpha you know that too much vacuum in the space station can really slow down the game. I've been working hard to overcome this and nearly have the entire vacuum system retooled. Rooms in the station are now much smaller and more modular. This should make combat much more interesting and allows for the game to much more easily handle a spreading vacuum. Previously the game was trying to calculate where the vacuum was spreading with thousands of calculations and then check for collisions. This resulting in tens of thousands or hundreds of thousands of calculations happening on top of all the typical game material. This new system reduces that load to a few hundred, more a thousand or two maximum, calculations occurring (and that's assuming you've vented all the air in your station). So everyone should see a drastic improvement in this aspect. This update also allows doors to function more easily and to re-air sections that were exposed but were then closed off from the location of the vacuum.

Saturday, October 4, 2014

Moving Forward

Hey everyone, just wanted to say I've been ironing out gameplay issues and hoping to have a great showing for Alpha002. September was unfortunately a very crazy month. Between a family bereavement, a wedding, law school, and coming down with a nasty cold I wasn't able to get nearly as much done as I intended for Alpha001. I've been programming the game on my MacBookPro since day one. While this worked great for the first portion of the game I eventually had to ditch the older GM4Mac that I was using in favor of the much faster and more updated GM:Studio. This required me to run Windows on my Mac, as the software isn't supported on Macs. This got me to where we were in September perfectly fine. However, when I went to export the game I learned that I wouldn't be able to export to Linux or Mac (ironically) from a Mac running Windows in a virtual machine. I took the next step to purchase a PC and begin developing on that. It's been a great transition for programming. Not only am I able to export to all my intended platforms shortly, but the software runs much more smoothly and I'm hoping development will be nearly twice as fast as it's been. I'm hoping to have some much more pronounced updates for the October release. I'm also hoping to release the Zombie Stretch goal, or the first iteration of it, in time for Halloween.

Monday, September 22, 2014

Updates to Version 001

Hi everyone, I sent the Kickstarter Backer copy of the first alpha. It's incredibly buggy but that's the nature of alphas. I just wanted to let everyone know that I've already correct two of the issues that people noticed, the game crashing when hitting the escape key and selecting return to game and an issue where the credits sometimes didn't show. Below is a list of known bugs or planned features for the next Alpha 002. You'll see them with a strikethrough if they've been finished for the next version. 1. "Return to Game" button on Escape Menu crashes game. 2. Credits not always displaying. 3. Escape Menu covered by Station Walls 4. Various problems with Vacuum "spread" - Moot, implementing new Vacuum system. 5. Marines occasionally vanish to up left-hand corner. 6. Doors will get stuck if a unit blocks them on closing. 7. Marine shooting image occasionally faces the wrong direction. 8. Zombie Survival Version (Kickstarter Stretch-Goal)

Sunday, August 31, 2014

Balancing

Good news. Today I've moved into balancing the alpha release. It involves me playing the game a lot (something that's already been happening). As I've said before, it's a pre-alpha. So it's far far far from complete and most things are far from finished or polished. I've been trying to get as many backer events and tiers into the game as possible but I'm planning on including most of those in a big push for the backer content as soon as everyone gets everything back to me as to what they want from their tier. Long story short, I'm trying to make the gameplay better given the level of content that's present. This is my dream project, so it'll constantly be getting tweaked for quite awhile.

Tuesday, August 19, 2014

Annoying Bugs

I've now spent the better part of a week squashing bugs in the game. Of particular note was a bug that didn't allow the player's marines to shoot at space pirates. This is really aggravating because as I try to work on balancing the gameplay it's hard to do when one of the most deadly aspects of the game can shoot at the player and the player can't return fire. I've also begun to get back to the stretch goal, a separate zombie survival game mode. I'm really hoping to include it in the initial alpha release on the 15th.

Thursday, August 7, 2014

Is this Door Open or Closed?

So one of the current issues is having the option for the player to create doors in the space station while simultaneously being able to open and close them. This allows for a lot of emergent gameplay and is the primary idea behind the game. Being creative with how the vacuum of space can destroy or save your space station is a lot of the fun. The primary issue is determining whether or not every door is open or closed and when the atmosphere within the station can be restored. The current solution I've been working on actually uses wherever a breach has occurred and sets an invisible marker at that spot. Then whenever the player tries to stop the breach, either by closing doors or repairing the wall a calculation is done between any sealed-off area and the breach marker. I use a typical a*algorithm calculation to determine if a clear path exists. This is the same method I use to calculate the paths of units whenever you move one in the game as well. It's all highly experimental right now, and far from perfect, but I'm hoping it'll work well enough. I've also toying with the refugees within the space station putting down their own beds.

Wednesday, August 6, 2014

Select What You Want

So one of the biggest problems with migrating from GM 8.1 to GM:Studio is the lack of built-in menus. GM 8.1 had a great feature that made drop down menus a piece of cake. Granted, this feature would only work on a Windows computer, so I wouldn't be able to totally rely on it anyway. Well, I've finally included drop down menus into Vacuum. Although they're not terribly complex it's something that I'm not accustomed to having to program. I've tried to implement a simple but attractive system. They're really necessary for in-game events and a few of the feature. Screen shots to come shortly.

Friday, August 1, 2014

A Little Help with the Heavy Lifting

As promised, here's an image from the game. These little mechs are what you'll need if you want to move shipping containers around and hopefully down the road I'll add additional things in the game that'll require the mech. I'm imagining it smashing pirates and holding open doors that would otherwise be closed.
I'm also very optimistic to get a build out to backers before September. It won't have all of the backer requests in it, but I've already incorporated a few of the backer suggestions, etc. into the game.

Thursday, July 31, 2014

Updates, Updates, Updates

Hello everyone, the past week has seen me busily working on Vacuum. This past weekend the GMC forums had a game jam competition. I know what you're thinking, "But Scott, a game jam means you're making a completely new game and wasting a weekend not working on Vacuum." This is true to an extent, but every game jam I enter into I take the theme and use that to work on some aspect of a major project I'm working on to truly iron out the kinks. I view it as a way to isolate a current feature that's a serious feature and devote a substantial period of time to it. Suffice to say the initial reviews of my game jam game don't seen too good thus far. However, that's great for Vacuum. I completely neglected play-testing my jam game for fun. Instead I was constantly tweaking AI and Construction aspects. Two things that are already being transferred from the jam game into Vacuum. Up until now I didn't really allow players an option for purchasing anything within Vacuum. This will all have changed by this weekend. The only question that remains is 1) Do I allow you to build the whole station? or 2)Do I allow you to take a random space station that you have to explore and build around what you randomly encounter? I'm currently trying both of these methods. We'll see which turns out better. More to come soon.

Friday, July 25, 2014

Back in the World

The past week has seen me cut-off from the internet after some issues with my ISP. Suffice to say I was paying a lot and getting a new service set up has been a long ordeal. Fear not, I'm back and the time without internet has allowed me to work on the game distraction free! I actually run GameMaker on a Macbook Pro running Windows 7 in Parallels, this gives me a huge range of options for graphics design and programming but can make it difficult to get quality videos and screenshots. I'm going to try and get a good number of them later this weekend so people can see how things are progressing. This week has seen me finally resolve the issue of having a decent background. Before the stars behind the space station where just white dots in the distance on a plain black background. We now have some really great backgrounds that are randomized every time you load up a game, leading to different designs, colors, and the formations of various nebula. A huge aesthetic improvement. I've also been toying around with including health bars for the units to make it easier to see which units are injured and which aren't. Not to mention some additional units to select from the UI and I've been trying to write some "zombie" code for the separate zombie survival version of the game. Tomorrow I'm hoping to play around with my idea for unit movement. Marines are currently setup to follow a very traditional RTS style movement system although I've been formulating a plot to try and spice that up a bit. We'll see how it works. I may end up releasing two different versions to see how people like it down the road (assuming I can code it to turn one off and one on easily enough). Look for some more in-game photos soon as well as more tidbits later this weekend!

Monday, July 21, 2014

All the Little Things

As I work on the game I realize just how many little considerations are needed when putting together a game. Usually after I implement something new to Vacuum I try to "play test" it to make sure it's all running the way I'd like. This makes development of individual things a little slower but it ensures higher quality for whatever I do have. Going about this I've gotten to the quite where I realized I really need to start making some decisions for the game such as do I offer it as a windowed game? Fullscreen? How should the menus operate? Should I include a tutorial or simply go the Minecraft route and throw people in? Let me know what you think, follow me on Twitter.

Saturday, July 19, 2014

Music

So Vacuum now has two music tracks. I haven't decided if one is going to be a "menu" track and the other in the game or if both will be game tracks. At any rate, here's the intro to one of the tracks for the game.

Friday, July 18, 2014

UPDATES!

Sorry for the lack of updates, it's not for lack of my work on Vacuum, I can assure you that. So since my last update we've had a successful Kickstarter! I've been hard at working trying to get as many features as possible into the game for the Kickstarter release for backers that will be hapeening ASAP but no later than September. After a bit of time for the Kickstarter backers to play the game and provide me suggestions I'll release the initial alpha to the public, probably sometime in October. I've been tweaking things for the space station, as well as adding asteroids as a random occurrence that strikes the space station and rip a hole inside. I'm currently experimenting with some other alternative ways to seal up the station and allow engineers to repair these broken holes. I've also been working on the Kickstarter Stretch goal that was reached, which allows for an alternative game move of zombie survival. The zombie sprites are currently being worked on, as are some others, so I hope to post those shortly. Until next time! -Scott

Monday, May 26, 2014

Spring in Your Step

So the past week has seen no actual developments with the game. Instead I've been going through the painstaking process of migrating the game from GM4Mac to GM:S. It's a slow process but it should pay dividends. Not only will it allow me to release the game for Linux but I'll also get a 2-3x speed increase in processing speed. This'll allow me to have even more units and larger levels in the game. So next week expect some new feature upgrades and stick with me, as I know it's boring hearing there have only been performance tweaks but it'll allow for lower end machines and now Linux to run the game as well.

Friday, May 16, 2014

Losing Oxygen

So today I finally refined the "Vacuum" that fills the ship when an event happens. As you can see in the below images, the older method wasn't very convincing that there was a ton of air being sucked out of the space station. I'm really happy with the change between these two systems and I'll be refining it a bit more but I'd say it's about 90% there now.

Old Breach

Old Vacuum on Make A Gif

make animated gifs like this at MakeAGif

New Breach

newvacuum on Make A Gif

make animated gifs like this at MakeAGif

Wednesday, May 14, 2014

Simulation

So the programming side of this has been a bit slower than usual and that's due largely to me reading up on AI simulation. Fear not, I'm currently working on implementing a huge bulk of the game AI. It's a huge aspect of how the crew on board the space station operate and I'm hoping that by the end of this weekend I'll have integrated how the crew behave and how the economic system in the game work. I've also been working on a few more simple aspects of Vacuum. Below you can see a shuttle arriving at one of the hangars and dropping off a refugee.

shuttle on Make A Gif

make animated gifs like this at MakeAGif

Thursday, May 8, 2014

Housekeeping

So today there wasn't anything too exciting going on with Vacuum. As the number of images and units continues to grow I've had to do some serious housekeeping. I spent two hours today just organizing everything into folders and trying to optimize code. While working on the zoning to create rooms I noticed the zoning itself was really slowing down gameplay. No worries now, I've not only optimized that specific code but gone through, line-by-line and optimized everything. The game is already running much more quickly, even with dozens of units on the screen at once. All this is before I'll be upgrading my software too! So I'm hoping for up to a few thousand units to be able to be represented at once.