Landscaper at Work!

Landscaper at Work!

Hello folks!

As part of slowing down the pace of gameplay and integrating the management aspect of the game in Boss Golf, I’ve finalized the primary implementation of the AI for the landscaper as well as changed the system for laying down tiles to make him place them!

Until now, you’d plop down a tile, and it would immediately affect the environment. This would let you create a massive resort at a too quick a pace. There was no incentive for careful planning, and it wasn’t an action you could think twice before committing to.

All of that changes now with the Landscaper and its AI. The new implementation, which will be rolled out to the other building features in the game, delegates the act of changing the landscape to the AI, and works on a system of orders.

Players will now draw the areas like they did before; instead of immediately affecting the environment, an overlay is added and an order is created. The players can then view this order’s characteristics: price, time to finish, area etc. They can modify this overlay/order with the bulldozer tool, to trim things they ended up thinking twice over. (Editing of the height of the tiles is still free and can be performed at any time, instantly. Since this is a very vital part of finetuning your golf course, I thought it better to keep it that way)

Once they are happy, they can simply Approve the order, and the landscaper will get around to effecting it once he has the time to do so. Like in the animations below:

placing_zones
Player places zones for fairway and bunkers.
approving_orders
Doublechecking the orders, the player approves the work to be performed.
executing_them
The lonely landscaper hard at work. Having more of them will get things done faster! (At a cost!)

Pausing and Resuming has also been reworked to match the new gameplay style. Time now flows at a constant rate, and can be paused whenever you wish. You can’t make time pass by faster; later, however, you’ll be able to go on “holiday”, and the Resort will autosimulate and resolve the events of the day until you come back, or while you are managing another resort. The timescale for the day still needs some tweaking, but that is simple enough! (Also, really cool to pause the game as the AI takes an awesome shot, and just seeing the ball lying in the air, waiting for time to unfreeze!)

Oh! And you are also able to set the working hours for your resort. This will impact your running costs later, but right now it controls when the landscaper will be at work, as well as when the golfers are able to be spawned on your resort!

That’s all for today, folks! Next up is connecting the money (receiving from the AI and spending on building), and adding more management. Perhaps the goals would be a fun thing to have!

Stay tuned for more!

Boss Golf updated to Alpha 0.3!

Boss Golf updated to Alpha 0.3!

Hello golfers!

It’s finally here! Alpha has now been updated to 0.3, allowing you to do the following:

  • Have a wall surrounding your resort to keep out “undesirables”
  • A Clubhouse has been placed, from where AI golfers will now spawn
  • AI golfers will either roam around or attempt to play any hole that is open
  • They will accordingly queue by the Tee waiting patiently by their turn
  • And so will you! You can also play as the AI is playing the course, taking your turn on the queue!
  • A handful of other under the hood improvements
  • Saving and loading! No more starting from scratch every time you load the game!

That’s it for this version. Now you’ll have a more workable experience and you can see how the AI tackles your golf course. I may release a tweak later on to modify the AI a bit, like a 0.31 or 0.3.1 or 0.3a, not sure yet. But this should give you some ideas about how the AI will react.

A word of warning: If you do attempt to edit the course as the AI is playing, you may make their ball disappear! If that happens, just relaunch the game. Will work on a fix for this later.

Ditto for if the AI falls through the ground. Haven’t improved the dynamic collider yet, so depending on your machine performance, hijinx might ensue.

next_hole
A golfer waiting, another stepping up to the tee, and a third making his way to the other hole!

Now on to 0.4! The details of which I’ll be sharing later this upcoming week! But for a sneak peak, think Time Management!

That’s all for now folks, please enjoy.

If you haven’t signed up for the Alpha, you can do so here!

See you on the green!

Billy Golf is back!

Billy Golf is back!

Hello folks!

Billy Golf is now back in action! The character will now once again move to the ball, prepare himself, and take the shot. I’ve added a handful of new states to the state machine, to delegate the golf gameplay to the golfer. Now you will prepare the shot, and the little dude will move to the ball and execute it. Look at him go!

stepOne

step2

step3

Funnily, the first couple of times he approached the ball too close, and the ball ended up colliding with himself on the way to the hole haha. But that’s been fixed. For now. Can easily be unfixed too, perhaps for some easter eggs, such as an extremely clumsy golfer.

And some of the more eagle eyed among you may have noticed a couple of other characters hanging around the golf course. I’ve added a handful of AI golfers to make things seem more lively, and will be hooking them up to the state machine this week. Hopefully this weekend I’ll get alpha 0.2 done, so that you can play the game with better golf gameplay, and see little AI people milling about your course. Hopefully also can get some walls in to separate your owned land from the rest of the land too.

We’ll see!

Stay tuned for more and thanks for reading!

Player Controller has been implemented!

Player Controller has been implemented!

Hello folks!

Sorry for the lack of updates recently. Been swamped with stuff at my work, and had to fight off a nasty case of food poisoning. But now I’m better!

For today’s update, I’ve finished reimplementing the player controller for the little golfer in Boss Golf, and now it works much, much, much better. Plus it sticks to the surface! It’s the opposite of teflon!

Of course credit where it’s due, I’ve adapted Roystan Ross’ Super Character Controller which is simply awesome. Works like a treat. It was effortless to create the state machine and implement a “point and click” interface. As it is, the character will pretty much walk to where the mouse clicks. In a straight line. Further down the line I’ll make the pathfinding smarter, by utilizing the paths players will build across the course, which will make it avoid other things along the way. A* should suffice, made even easier since the whole game is in a grid.

I also have full control over the speed of the character, which can be changed on the fly. On top of this state machine, I’ll attach the AI controller I’ve been writing to handle the decisions that will affect the movement of the character, and change the state machine accordingly. Things are so much clearer in my mind now!

Now here’s some animations for you!

base_move

it_sticks

even_when_walking

That’s it for today, folks.

Soon this will be integrated into alpha 0.2, and you’ll be able to shoot and play with your character on your course. Stay tuned for more!  (And check out the closed alpha while you’re at it!)

Terrain Tools Update!

Terrain Tools Update!

Hello folks!

I’ve finished coding the improved terrain system and the actions. Now all that’s left is connecting it to the UI!

But first, I’ll give you a preview of what’s coming. First, you have the good old drag to place the decoration:

decor_tool

Select the tree type, drag the tiles and the trees will be placed. Each tile can support up to 4 decoration pieces. Adding anything after that will result in the decorations simply being shuffled around.

If you want to fix it up, I’ve added a trimming tool that currently removes the last placed decoration object from the tile:

prune_the_stuff

Later, I’ll make it so it actually aims at the decoration object you’re aiming at and removes that.

Then, for elevating the terrain, I’ve reworked the previous options to use the vertex directly. For altering the elevation directly, you can either click and drag (for fine-tuning), or simply click and hold (for painting). For each of them, you can choose between 1 vertexes, 4 vertexes (a tile), or 16 vertexes (the tile and the neighbours) as below:

drag_one

drag_two

drag_three

And for painting:

paint_one

paint_two

paint_three

And finally flattening:

flattener

As you may have noticed, the decorations nicely go up and down as the elevation is changed. This is part of the update to the decoration system, which makes it work much better than before.

So that’s what I’ve been working on this week! I’ll finish hooking it all up to the UI tomorrow, and perhaps release an updated version of the demo so you can try it out. And then go back to the AI implementation!

(Ah! Forgot to add: I’ll be turning off the water tile for now as it’ll need a deeper reworking. I’ll just replace it with a regular blue tile so that you can still plan on how the water would feel.)

Miles and Miles and Miles

Miles and Miles and Miles

Hello folks!

Quick update on the implementation of the new terrain for Boss Golf!

Look at this:

miles_and_miles

That, my friends, is a massive terrain composed of a 20×20 grid of chunks, each chunk containing 16×16 tiles. That’s roughly 102400 tiles. All much more easily manageable, and with better performance than before. Now I can actually make the terrain surrounding the golf courses so that you no longer can peek at the end of the world!

As explained before, this new system relies more on preprocessing the grid data, so that alterations to vertices and UVs are much more quickly resolved than before. No more loops inside loops inside loops!

Just finished implementing the UV mapping to it, as well as the mapping of surrounding tiles and vertices. No seams when you move vertices between chunks. Already have some plans for new terrain tools too, to give you more possibilities when editing your golf resort course!

Next up is connecting it to the existing controls, and changing how the decoration system works so that placement is handled better and performance is improved.

Stay tuned!