Boss Golf Alpha updated to 0.4!

Boss Golf Alpha updated to 0.4!

Hello folks!

It took a little longer than I expected, but the closed alpha for Boss Golf has been updated to 0.4!

alpha_04

Some of the changes included in this update:

  • Tile and decoration execution moved to the landscaper
  • Resort’s opening and closing time now matter
  • Bulldozer only affects planned zones (can’t remove decoration pieces yet)
  • Money and transaction recording system implemented
  • Spaced out the loading of the scene and added a loading screen
  • Decoration system reworked to allow for more freedom of placement
  • Order system revamped to work with decorations and tiles

Because of the array of changes in this version, your 0.3 save change won’t be compatible with this new release. It would take me a lot of precious time to create a save converter at this moment.

The changes in decoration are quite massive, though. The previous system will still be used for the scenario editor, where you just really wanna sketch out the level for your scenario. But this new one gives you a lot more control over placement, so that you can really customize things to your liking. If you have any request for tools or feedback, feel free to comment on our reddit or our discord!

So that’s it for 0.4. It drastically changed the flow of gameplay, slowing things down quite a bit, and implemented a host of systems that I’ll take full advantage of in development.

For 0.5, I’m going to focus on the AI again, giving them proper ways of evaluating/thinking a hole, more behaviors, more character generation, and a couple more things I wanna keep under wraps for now! Timing for 0.5 is early March.

Enjoy!

It’s a clubhouse!

It’s a clubhouse!

Hello folks!

Happy new year as well!

Today’s update is about the clubhouse, the first building available in Boss Golf!

its_a_clubhouse

The main function of the building is controlling AI access to the course. It knows which AI is currently playing, the capacity for people on the course (which will be tweakable later), and decides when to spawn a new player. In the screenshot above, you can see 3 AI golfers just loitering around the clubhouse, as their idling/golfing routines haven’t kicked in yet!

For now, the clubhouse is placed randomly, and cannot be moved/removed. Accordingly, the terrain where the clubhouse is placed cannot be raised/lowered. You’ll also be able to click on it as a shortcut for the information on your golf resort, which is useful for aspiring golf tycoons.

As the gameplay systems expand, you’ll be able to tweak membership, decide on prices, course opening hours, all sorts of little things through this main building, as well as expand it, change its appearance and whatnot.

For 0.3, I’m working on the saving system and on blending the player golf gameplay with the AI golf gameplay. Your character will have to queue up for the hole like any AI character does, and you’ll get a notification letting you know when your turn is up! With the save/loading, you’ll be able to continue working on your course as the alpha progresses too!

That’s all for now, folks! Hope you have a great new year!

Golfer AI Sketching: State Machines

Golfer AI Sketching: State Machines

Hello folks!

To break the silence today, I’ll talk about the sketching of the AI of the golfers in Boss Golf, something that I’ve been working on over the past week!

I have a great interest in AI, being an AI programmer professionally, so for Boss Golf I want to create some very interesting things with AI, to reinforce the living feeling of the NPCs, as well as give rise to the unpredictable events in the game.

To start off, I’ll describe the main backbone of the AI in Boss Golf: State Machines.

State Machines are basically a set of nodes that determine the current state of the AI (sleeping, idling etc), and how they transition into each other based on set instructions. How/when these transitions happen are decided by the programmer.

For Boss Golf, since gameplay is very segmented, state machines will be used to determine the basic state that the AI is in. Some of these states include, but are not limited to; teeing, putting, approaching, idling, waiting, interacting, resting, moving. The more expanded the state machine is, the more different and interesting behaviors we can get out of the AI.

For example: why separate the act of playing golf into three separate states? (Teeing, Approaching, Puttting) They could easily be condensed into one “playing” state since the actions that the AI will perform are very similar. (moving and hitting the ball)

The answer is that by adding this degree of separation to the behavior, we can have the AI interact and respond differently to events that happen at different points of play, in a more neat or organized way. If rain interrupts play during teeing off, it’ll have less impact on a golfer’s mentality than if he was putting; the stakes are different. Instead of having to keep track of how many strokes he has and how close he is to the hole, we can simply query the current state, and make the AI react accordingly.

And that’s just on one particular possible event. When you combine with other events, and add layers of actions and behaviors, you end up with a more interesting AI rather than one that simple goes around hitting the ball.

We can even add some variety to the transitions based on randomness or the attributes of the AI character. A golfer with poor health/lower stamina may have a bigger chance of switching to the rest state after a hole than a golfer in better health; a golfer with more aggressiveness maybhave a bigger chance of switching to a raging state after a failed easy shot than a calmer golfer.

And that’s the basics of it. I’ve sketched out some basic states that need to be in the game, and am in the process of implementing them. With state machines, we can also add new states at any point in time since they are self contained, so expanding the AI can be done quite easily.

Next time I’ll talk about another aspect of the AI that requires more difficult work to get it working correctly: Utility Functions.

That’s all for today folks!

Linux Demo Added!

Linux Demo Added!

Hello folks!

I’m happy to announce that the Boss Golf demo is now also available for Linux!

There’s version for both x86 and x86_64.

Download information, as always, available on our Demo page.

Any issues you find, don’t be afraid to contact us either using the contact form, or by visiting our subreddit.

Now, back to work!