OSD600 Release 0.2 – Lucas Verbeke

I spent a lot of time trying to fix a bug in brave and it got to the point where I had given up and I was back to square one with no project to contribute to and not much time left to get my release done. That is when I found that I could contribute to a game that has given me hours of entertainment and that game was Space Station 13 or more specifically the vgstation13 version. A good introduction to SS13 can be found here but for those who are busy SS13 is a multiplayer sim like game where you and a group of other people fulfill roles to keep the station running or try and destroy it. I think project is a good fit for me because I am familiar with the games systems which can be somewhat complicated making it difficult for someone without prior knowledge to test it.

SS13 was made in Dream Maker and to work on it you must first install the Byond client that looks like this

If it looks like it is from 2003 that’s because it is and the Dream Maker editor is not any better but is the only way to edit and compile the code your code.

Now that we are familiar with the game and client lets get to building and fixing the code. To start off once you have cloned the repo you have to compile the game to make sure it works and on my modern PC it took 13 mins to compile it. Once it is compiled you can launch the local server that takes roughly 3-4 mins to initialize then you can test your changes. The thing is for every little tiny change you make you have to do this so its best to be very careful about the changes you make before going in to test them out or you will be loosing a lot of time. Also we need to make sure that we have the ability to test everything so we need to give ourselves admin powers. To do this we must make a byond account and edit the admin file to include our username followed by game master.

The bug itself was this one here that I think made for a good introduction to the code. The gist of it is that when the names of the item is in the microwave it doesn’t take into account that there is already an s at the end of the item name. First thing was to make sure I could actually reproduce the bug and that it hadn’t been fixed previously. To reproduce the bug I went to the admin panel spawned in a microwave and soybeans and this is the result I got.

It’s still here and it doesn’t make the game unplayable but it is something that gets on my nerves and it needs to be fixed.

So to fix it I did a search for the microwaver and found the microwave.dm file that contained the output message I was looking for. Next step was to find the file for the soybeans and any other items that ended with an S and add it to an exception list where I could manually set the names to have proper grammar and formatting. Dream Maker is strange to me it doesn’t use any sort of brackets for if statements instead opting to use tabs. I have historically been awful with my spacing so this was something I had to pay extra care to.

Here you can see it says 2 bunches of grapes if it were a single it would be 1 bunch.

I thought that this bug would of been harder to tackle but as it turned out lots of what was needed was in place it just needed someone to come and put all the pieces together. Most of my time spent on this one was getting the Dream Maker IDE set up and actually finding the file that I needed to edit as well as understanding the code was a bit of a challenge as before starting on this project I had never heard of Dream Maker. But I think it all worked out well and I am excited to take on a larger bug for my next release.

Leave a comment