July 2022: Polish, the Entity Editor, and Gameplay

The end of summer is approaching! With how hot it’s been this year, maybe that’s a bit welcome for some. Our AC went out last month and we had to have it fixed - my computer was not having a pleasant time. The time is also coming for students to return to school - if any of you are still in school, enjoy your summer freedom while it lasts!

Anyway, welcome back! This month we’ve spent some time polishing Robot Farm as we begin to lay the roots for gameplay. I polished up the World Editor to make testing maps easier, and we’ve also added a new component to it called the “Entity Editor,” which is an exciting tool. I can’t wait to tell you guys more about it.

The Entity Editor

The Entity Editor is a mode in the World Editor that lets you edit the property of objects you place in the world. Additionally, it allows you to create “Markers” which are special entities that will allow you to activate lua code when the player walks into it.

They contain “Action Triggers,” which are objects attached to each Entity that allows you to configure interaction with. For the lamp, it’s an actual world prop, so it’s able to have action triggers that will activate/can be activated through interaction when you’re within its radius. The cube to its right is a “Marker,” which is an entity you can create and resize that will allow players to activate Lua code when they enter it.

Each one has special “lua flags” which will allow to configure the behavior of the Action Trigger and determine how the player interacts with it. For example, you can configure an Action Trigger to run its attached Lua code when you enter its space, or when the player is inside the space and uses the Interact button.

These tools are extremely powerful because they run the Lua code you have attached, and that Lua code will have access to a special “Robot Farm API” that lets you essentially do whatever you want with the game. So by interacting with the lamp, you can have it open a dialogue box, trigger a story event, spawn an object, or so on.

There’s also the ability to simply add Lua code to the Entity itself that doesn’t rely on an Action Trigger. So here you can see that you can add Lua code that is triggered when the object is initialized, or every update. This will be useful for the things such as adding various AIs, such as an NPCs daily schedule or their combat AI.

The Entity Editor is an extremely simple, yet powerful tool that will let us essentially make any scenario we want, and also give players the power to the same with whatever they want to make. The game will always reload the Lua files too on startup and in some cases, while the game is running.

World Editor polish

I’ve also spent the month polishing the World Editor and improving its usability and tools to make it easier for me to edit test maps. Notably, the Terrain Editor is a lot better and placing blocks is a lot more responsive now. For the Construct Editor, I’ve made a highlighting tool so that I can select multiple objects at once and move them all together.

Additionally, highlighting objects is going to allow me to add support for “Prefabs” eventually when they’re needed. So if you build a house out of various objects/parts, you can highlight the whole house, save it as a prefab, and then be able to paste that house in more than one place. This will be important for making towns efficiently.

Gameplay and our plan moving forward

Admittedly, there hasn’t quite been much work done on gameplay yet that’s really presentable. But we’re in the process of hooking up the Action Triggers/Lua code to the gameplay, and soon I’ll be starting on gameplay proper. We’ll need to also build some more 3D assets for testing as well, such as models need for creating houses and interacting with the world, as well as needed models for all of the farming aspects of gameplay.

The plan moving forward is to try and release a free demo of the game and potentially start a Patreon so that we can gather funds to continue building it. Either that, or trying to make a very early version to release on Steam Early Access. We’re still working out the logistics and we’ll probably try and get some feedback from some of you.

We’re definitely facing an issue of not quite having enough funds to move at a fast pace, so hopefully we can figure something out soon. For now, we’re going to work hard on making gameplay that we can showcase and hopefully sell people on the game. Thankfully, work on the World Editor is coming to a close for now and we’ll be able to get to the fun stuff.

What’s next?

We just finished some tools that will let us added proper previews to the World Editor menus for previewing objects (so you can see what an object looks like before selecting it). I’m going to go ahead and try and add that, and then I’m going to be finished entirely with the World Editor for now. I’ll be digging into gameplay from here.

As for the gameplay systems we’ll implement first, we want to try and add the basics of every system and then expand them as we go. The idea is that if we have all of the basics ready, we can begin releasing some cool demos and letting people give it a whirl. We also plan to try and make the World Editor available with every build, so you guys can have some fun possibly making your own levels to play around in too.

Lastly, I want to try and maybe make a YouTube video showing off the World Editor. So I’ll try and get to that if I have the time.

Wrapping up

That does it for this update! Things are going to get more and more exciting as we go. So be sure to keep checking in!

Thank you guys for reading, and have an excellent month!

♥ NOKORIWARE

Stay updated!

Robot Farm Discord Community

Robot Farm Twitter

NOKORIWARE YouTube

Check these out too:

Puppygames Twitter

LWJGL Website

Previous
Previous

August 2022: Patreon, Robot Farm, and We Shall Wake

Next
Next

June 2022: Next stop, gameplay! The World Editor is finally ready!