Over the past week I have been making random improvements to Scrapyard Racing! First I started with some user interface / heads up display stuff, but have yet to finish. My lack of artistic value is draining me. I then started playing with the best lap times database, and in-game display/interface. First I started with populating the database with a bunch of generated users with random personal best times. Now I have used those records to test the in-game display. Which I must say is coming along nicely, even if it isn’t yet complete.
In-game Best Laps / Records Display
I need to add some navigation buttons, but I assure you I’ve tested it with a few hotkeys at this time. There are three major additions until I can say the records are complete. First I need to actually add records from game when the player makes a new personal best. I also would like to see the ability to search for a friend by their user name to see their time / how much bragging rights you have over them… The final one is going to remain undisclosed, as I haven’t had a chance to make sure I can pull it off; but it would be a nice feature.
Besides the timing charts, I’ve been working on moving my website around to this new place, of awesome. I would like to make a video of me editing a track, as well as making a few tracks since I’ve only been testing on the one. I haven’t done much gameplay wise. The car is still a tad sluggish, and you still don’t need to use the brakes, but it is easier to drive compared to previous versions, and I think that is a pretty important part.
I may have failed to make my October Alpha goal, but I doubt I’ll fail to release this; the better question is when? I would love to see it released within 2010, likely near December. But I assure you, I have a long ways to go, and that is my dream time frame. I have extremely high doubts on hitting the target. Enjoy.
During development programmers often have to make a choice between spending time making an editor or just programming away. Often they choose a middle ground, where objects can be manipulated in a horrible fashion which can in the worst cases be counter-productive. After finding many of my projects go down this road I’ve decided to make a framework to quickly create an editing environment for designers of the game. This gives the benefits of an intuitive Win32 interface, while giving full power to the programmer.
Currently three areas can be controlled by the developer using this framework. The Menu Bar is setup quickly by the developer calling MenuBar_AddItem(). The developer can also enable, disable, check or uncheck the menu options as well as change the name if they decide to later. A callback passes the ID of the item when it is clicked, and thus should be handled. The Status Bar is a nice touch allowing the developer to set the status of the application. If something is loading, or time consuming this can be updated to show the end-user what is going on. Finally the Edit Area allows for edit controls to be added. Currently controls can be added for: bool, float, int, uint and string although I have plans to add custom controls. The developer calls EditArea_AddItem() for each item they want. If the selected object/type changes they just clear it and add again. All tracking/updating is automatically handled by the editor framework, although I want to add callbacks to this area.
In December 2008 I started a project to mimic a tire with deformable properties. Within a week or two the project had a deformable mesh, although this mesh was unstable. The project was put on hold due to career and life events until mid October 2009 where work began again.
The tire mesh is created procedurally, then a Point-Mass System is structured in a way that holds the tire together. This allows the contact patch to move separately but also get pulled back into the correct shape. During October many improvements were made including large optimizations. Removed several unnecessary springs, and placed the springs more optimally so that the tire behaved the same with fewer springs. This also allows the tire to have different resistances for lateral and longitudinal forces.
The lateral force is sideways, created when the tire is going around a tight turn and the longitudinal forces are when the throttle/brakes are applied, how the contact patch tends to hold position before bending back in shape. Top fuel dragster tires show longitudinal deformation well, see here. Check out the You-Tube video for more information.
Recently a lot of changes have started happening to my site, to make it cleaner, more professional and most importantly a place I can easily update. Because lets face it, without something easy, I just won’t do it.
Stay tuned for updates to pop-up as I add posts relating to current, previous and new projects.
Okay, so I did not quite get where I wanted to this October, but it would have been a challenge even if my free time would have been higher. Work related stuff ended up taking a lot of my time, for almost 10 days in a row I was unable to make much progress at all, then work started slowing down, but I had an opportunity for a programming test; which ultimately failed as I found out last night.
These are not excuses, as much as the truth of why I didn’t get where I wanted. I am actually quite far behind schedule now, although I am still holding high hopes that I can sell a copy by December 31st. I see more and more people are starting to become interested, as I released a video of the game in replay mode last week, and have had a few instant messages with congratulations and stuff.
Overall I still feel positive about the project, and even after a few weeks of “here and there” development I think things are coming together nicely. I still need to edit the physics of the car/world, and need work on the user interface of the game. One small piece of the gameplay portion exists before I start adding all the dressing and polish that will turn it from a ‘game’ into something playable.
Tonight I added a config file, so the player can change settings and they will remain stored for the next time they play. As soon as I finish writing this I will start working on resources for the car, so that tires can be depleted, fuel runs out over time and brakes heat up, performing worse under heavy use, although quickly cooling back off. Once I get that working I will need to add some more things to the track editor, and start making some tracks and content… We will see.
In other news I added music, for now it is just temporary although I am going to be getting in contact with a musician sometime (I hope).
Have a good time, and congratulations to all those in the community that finished their games in October!!!