Jump to content
  • Advertisement
Sign in to follow this  
  • entries
    5
  • comment
    1
  • views
    365

About this blog

Game development is awesome. You probably think so as well, otherwise you wouldn't visit this site. But on the other hand, it can also be difficult. That is why i want to share my experiences as an amateur game developer. I have no relevant professional experience, i just love to mess around. That is exactly what you will get from this blog. Different games (i am currently working on four projects) and different topics (from graphics to AI). Hope you will enjoy it!

Entries in this blog

 

#5 - Testing the attributes

Since my last update, i have implemented most of the attributes in Cycling - The board game. Quick recap: the game is about getting to the finish line first. Each turn, each player rolls a dice (D6) and moves the amount of squares. The odds of the dice are rigged based on the player's strength (higher strength = better odds). Next to the dice roll the player can gain bonuses to move additional squares. These bonuses are based on their attributes (which can range from 1 - 20). Now that i have implemented them, i have to check if they add fun to the game. Fun is of course hard to measure, but what i am aiming for mostly is balance between the different elements. For example, if one attribute is much more important than others, the others are irrelevant. To test them, i left my computer running for a night and simulate over 600 different races with different AI players (with every time different attributes and strength). I now had a lot of data points to analyse with. I decided to use a multiple regression analysis, where i analysed the impact of the strength and all the different attributes on the outcome of the race. This led to the following results: R-squared:  0.43    Coefficient of different attributes Strength -4,59 Climbing -3,60 SoloRiding -3,06 GroupTechnique -3,04 Flair -1,57 Sprinting -0,93 Restoration -0,84 Starting Position -0,73 Determination -0,51 Composure -0,36 Luck 0,12 Conclusions This stuff really makes me feel like a nerd, which is nice 😉 The R squared means that more than half of the results are not explained by this model The fact that all attributes are negative is correct (the higher the attribute, the lower your total final time) The attribute luck has a different sign, which basically means that a lower attribute is better (although the coefficient is very small, so technically it means that it is not relevant) Strength is more important than all the different attributes Climbing, solo riding and group technique are most important Composure and determination hardly matter at all   I am somewhat happy with these outcomes, but find it difficult to determine my final goal here. I think it is not a good idea to have all attributes at (roughly) the same value, since then it won't matter which one you improve at all.    On the other hand, an extremely large difference between attributes, means that your strategy should be to simply focus on the best attributes, which is also technically not really fun.   For now, my next move will be to make the lowest three attributes somewhat more influential so that they matter more. When that is done, i am just going to continue playtesting manually and get a feeling for how the game is running. At that point i will also upload a new version, so i can (hopefully) get some feedback on the game itself.    In the meantime, please feel free to try out the game yourself (link) or even better, let me know what your ideas would be to further balance the game.   Thank you once again for reading!

Jaap85

Jaap85

#4 - The first attributes

After a rather busy week, i finally had some time left over to do some coding again. I decided to continue on the Attribute system in the Cycling Manager game (see earlier blog posts). After some work i have now added the following attributes: Climbing (gives a chance of a 1-2 bonus to add to a 1-6 diceroll when starting your turn on a hill or mountain) Soloriding (gives a chance of a 1-2 bonus to add to a 1-6 diceroll when starting your turn solo) Group Technique (gives a chance of a 1-2 bonus to add to a 1-6 diceroll when starting your turn in a group of 3 or more players) Sprinting (gives you an entirely new dice to throw when sprinting to the finish line) Restoration (gives you a better odd of restoring energy between races) Flair (gives you a chance to move an extra square when you move energy) So far, the code is reasonably manageable, however the results do not feel perfect yet. For some reason the bonuses can seem overpowered and i also feel that i have not yet struck a good balance between tactics and luck. I think the only solution is to add another part to the game where you can influence your attributes. Currently the attributes of all the players in the team are fixed, which means that you make the most important decision at the start of the game (which players do i choose) and then just see what happens (with minimal tactical influence in using or restoring energy). Stuff to think about! My next step will be to add the remaining attributes and then upload this version of the game. Hopefully i will receive some feedback and get a great new idea to continue with the game. Thank you for reading!   PS. If you are interested in the game, you can download it on gamejolt (link).

Jaap85

Jaap85

 

#3 - Implementing an attribute system

As mentioned in my earlier blog I have chosen to implement an attribute system in my game Cycling the board game. The goal in this game is to cross the finish line first. This is determined (basically) by rolling a dice (d6) each turn and moving the amount of squares. Each player has a slightly different dice, based on the player’s skill, where players with a higher skill have better dice (e.g. better odds to throw a high number). When the dice is rolled, bonuses to the dice roll are applied based on the player’s attributes and the game world. For example, if the player is on a mountain square and has a high value for attribute Climbing, he could get some bonus points this turn to add to his dice and move further. This is the first time I have implemented such a system and I am happy to hear any feedback from you how this could be done better. To implement this system, I took the following steps: Add a new enum AttributeTypes with a list of all (12) attributes Create a new Class “Attribute”.  This Class consists of an AttributeType (one of the twelve) and an int to store the value (1-20) for this attribute. Add a new Class “AttributeManager” and added an instance of this class to each player. This Class consists of a list of all Attributes for the player and contains functionality to check for bonuses based on the attributes and the game world. The system works pretty well, but somehow doesn’t feel right, maybe because it is too complex, maybe because it is just the first time I am doing this. I also wonder how this would be done in a more complex game like Football Manager for example.   Thank You for reading and please let me know your thoughts on the subject in the comments!   PS. I have not implemented the actual functionality to use the attributes to add bonus points to the dice, that will be the subject of my next blog probably.

Jaap85

Jaap85

 

#2 - From traits to attributes

Since the big yearly professional cycling race (Le Tour de France) is being held at this moment, I wanted to work on my own Cycling Game. The first version of this game was launched about three weeks ago (link), but it still didn't feel finished.   The main reason is that there was not too much difference in the players. All players had just one strength value (determining their race strength) and two different traits (like being better in the mountains or when riding solo).   I wanted to try and change this by removing the traits and the single attribute and adding 14 new attributes. As of right now i have added the attributes mentioned below to the game. They don't actually do anything, that is the topic for the next update.   Climbing, Composure, Condition, Descending, Determination, Flair, GroupTechnique, Luck, Restoration, SoloRiding, Sprinting, Stability, Strength, Tactics.   My next goal is to remove the traits (that is going to be a big change, since they are used almost everywhere in the code) and then start to add functionality to the different traits and see how the game will feel afterwards.   I will keep you posted!

Jaap85

Jaap85

 

#1 - Welcome!

Finally, the barebones first version of my personal blog on game development is online. I will post my entries both on this website and on my personal blog on Blogger (link).  Let's start with a little introduction about myself and my games, in the coming weeks I will try to post regularly on the subjects I am struggling with as I am improving the games I have made so far and as I think about new topics for new games. Enjoy!   About me My name is Jaap, I live in the Netherlands and I enjoy both programming and designing games. I started the latter when i was probably around 8 years old and (according to my parents) i spent considerate amounts of time trying to create my own games with pawns, marbles, dinky toys and little toy soldiers. Theoretically this means i have been a game developer for 25 years 😉 When i was 12 i started programming in GWBASIC. I really liked it a lot and have been doing it a lot (sometimes more and sometimes less of course). I have tinkered with different languages and IDE's to finally settle on the ones mentioned below. Besides programming i have a full time job, a beautiful wife, two kids and two dogs (german shepherds). When i am not behind a computer trying to program stuff, i love to play video games myself or to go outside to go hiking or running with my dogs.   Games I like (to create and to play) First of all, i really enjoy turnbased games. I love the ability to think about stuff and i hate losing because of a wrong buttonpress in the heat of the moment. Basically all the games i have built so far, and probably will build in the future are therefore turnbased. Besides computer games i really like sports a lot. Mostly football, cycling and running. This combined with the fact that i enjoy turnbased games is the reason why my favourite game of all time is the Football Manager series. It’s also for this reason that I started working on Cycling the board game and Football Manager Stories. Finally i love to build and manage stuff. I must have played each entry in the Civilization series for at least 100 hours or more. I also enjoyed older simulation/strategy games like Rollercoaster Tycoon, Settlers and Capitalism 2. These games inspired me to create the games Tycoon and Civilization Wars.   My progamming experience I do not have any formal education in programming but i do enjoy the technical side of programming. I mostly work in Visual Studio, programming in the Monogame framework in C#. Back in 2012 i participated in the AI Mooc, organized by Stanford and Google.    Why Black Wolf? Because i have an awesome black German Shepherd called Nero, who looks a lot like a wolf, I decided to make him my mascot for my game development.   My games So far, i have started development on four different games: Cycling - the board game Tycoon Civilization wars Football manager stories Please click on any of the links to find out more about them (links go to my personal website).   Thank you for reading!

Jaap85

Jaap85

Sign in to follow this  
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!