Early Access Update #21 – Chests are here … No, really, they’re here

Update time, and this one’s a doozy. Get your tea, let’s get into it.

This week’s update sees v0.2b hit the beta branch and it brings with it a whole bunch of changes. Been pretty busy this week! Let’s get the full changelog posted and then I’ll run through it bit by bit.

Here’s the complete changelog:

  • Added chests
  • Major Sprite Updates (Redrawn)
    • Updated Wheat Sprite
    • Updated Dirt/Grass Sprite
    • Updated Backing Wall Sprite
    • Updated Bed Sprite
    • Updated Door Sprite
    • Added Pig Alternate Sprite
    • Added pickaxe cursor sprite
  • Minor Sprite Updates (Removed Black Outline)
    • Updated Torch Sprite
    • Updated Fire Sprite
    • Updated Kiln Sprite
    • Updated bench Sprite
  • Re-coded animal movement, they will now try to avoid water
  • Re-coded doors
  • Updated the following max stack value
    • Update default item stack from 20 to 40
    • Dirt Max Stack 20 > 60
    • Arrow Max Stack 40 > 80
    • Torch Max Stack 10 > 20
  • Fixed item drop, does not yet apply to all items
  • Fixed issues when planting trees and wheat
  • Fixed issue with bucket not emptying
  • Fixed lighting issue with the furnace
  • Fixed a bunch of little bugs

Lots of changes, most notably the fact that chests are finally here. Let’s take a look at that!

It feels anti-climactic after all the build-up, but it’s true, the legendary chests are in the game. Bit of backstory for those who are maybe newer to these updates, chests are the reasons Samphi needed a full item system re-write. It’s a pretty sweet moment to finally see them in the game.

Their operation is pretty standard, but just to clarify, chests and the items within them belong to the level, not the currently selected player. The chest and items within it will be shared between all characters that play in that level.

This update also sees a fair few art updates. I broke these down into 2 main categories, major and minor. A major update means I re-drew the sprite, and minor means I just altered it somehow. Instead of showing each individually and having pages of images, I created a scene that demonstrates them all in one go.

The animals in Samphi have always been pretty stupid. They’re still stupid, but hopefully a little less inclined to walk on the bottom of water. They’ve been re-coded so they should actively avoid water and deal with terrain better. The algorithm behind their movement and behavior is something that’s going to be constantly improved upon, so while it still isn’t perfect, it’s certainly a step in the right direction.

The following gif show an animal taking avoiding action from the water!

Pretty simple update, and one that I’m open to feedback on, but while testing all this update’s changes I came across a few item stack sizes that I felt needed updating.

The bulk of the update was to change the default stack size from 20 to 40. This effects most items. There were some individual updates also that were as follows:

  • Dirt Max Stack 20 > 60
  • Arrow Max Stack 40 > 80
  • Torch Max Stack 10 > 20

Samphi has always had the ability to drop items, but it’s always been iffy. Now that there is max item stack, and inventory space is at a premium, I spent some time on this feature. When holding an item, hold CTRL when holding an item to drop it.

Items dropped in this way will stay on the ground for 3 minutes and then disappear. They are not saved like the rest of the level, so if you drop an important item then exit it will be lost. If y’all want this behavior changing I can do that.

There’s a few things on the changelog that haven’t been covered, and that’s because they were just small issues that I found and fixed along the way. Here they are:

• Re-coded doors
• Fixed issues when planting trees and wheat
• Fixed issue with bucket not emptying
• Fixed lighting issue with the furnace
• Fixed a bunch of little bugs

Nothing major, but every bug fixed is a step forward. 🙂

Well, that’s interesting because I’m now free. Work on chests started back in April, and for the first time it’s done and out the way. What we work on now is up to us! Back in the earlier updates I posted a list of things I wanted to complete. We haven’t looked at it in a while, so here’s where we are with it:

  • Adding Chests
  • Adding Iron
  • Adding Sheers
  • Adding Wolf
  • Adding New Crop

Going by that list, the next thing I’ll be working on are wolves and a new crop. I also have some other little things planned, but these will be the main ones! Oh, I also have an update planned that will help solve crafting confusion. Certain items require a crafting bench to create, but Samphi has always sucked at making that clear so that will be tackled next.

Thanks all for sticking through these last weeks. Progress has been slow as the item system took all my attention, but that’s done and chests are in. Onwards and upwards. Very happy with progress and look forward to getting stuck into some fresh work.

See you next week all, have a fantastic weekend. 🙂 Ciao.

As always you can show your support and keep up to date with development by following me here:

Visit my websites
Greeny Games Website[www.greenygames.com]
Samphi Website[www.samphi-game.co.uk]

Follow me on Twitter
Greeny Games Twitter
Samphi Twitter

Early Access Update #19 – It’s all about farming

Update time guys and gals. Hope you have your tea ready, I do …

So it’s been a week since we moved to version 0.2x and things have gone pretty good so far. I’ve pushed out ~4 silent patches to fix issues, but I think it’s pretty stable! Quick update to show what I’m working on this week.

My usual release schedule is to push new builds to the beta branch, leave them there for a week to iron out any issues, then push to the stable branch. Since so much changed during the move to 0.2x however I’m going to leave it in the beta branch for another week.

I’ll take this opportunity to again stress that updating to 0.2x will mean you lose save data. I explained more about why this is in the last update, but just know I did everything I could to avoid it. Really sorry about that!

The cause of all this madness, chests are almost in the game. They work for the most part, just ironing out a few issues.

It’s about time too! Now that items have max stack sizes I find my inventory is always too full! I have a solution for that however!

So not many people may know this, I don’t recall mentioning it anywhere, but you can drop items. I don’t know how stable this feature is, I’m turning my attention to it this week for the first time in ages, but if you hold CTRL and release an item when dragging it you’ll drop it.

This should help stop inventories clogging up. I’m also looking to tweak the amount of items each stack can hold. There was a good suggestion last week to use a weight system, and I’m going to look at that, but for now if anyone has any concrete suggestions for an item then do let me know. 🙂

The focus of my next update is going to be farming. I think farming is going to play a big part in Samphi so it’s time to bulk it up a little. I have plans for new animals, crops, items, and enemies to overcome! For a quick start, I’ve created an alternate skin for the pig as I did with the sheep!

I’ve also got plans for potatoes, a scarecrow, crows and a wolf! More of these items will be shown as we get to them, but just know farming improvements are on the way.

The last thing I want to talk about is farming animals. There is an item in the game currently called a fence. It’s simply a fence post, and when you place a few in a row, they create a fenced area. If you then tether (right click an animal with rope selected) an animal, you can drag them to the pen. This system is really rough right now, and will possible cause crashes, so it’s also getting some TLC this coming week.

I really want people to be able to create large, sustainable worlds in Samphi, and as soon as that’s the case things like health and hunger will play a much great part of the game. Currently, there’s no penalty for going hungry, but soon you will have to build a farm, nurse animals, and generally develop a sustainable world.

Exciting things to come!

In one weeks’ time hopefully I’ll have more to show regarding farming! We’ll also get a new build pushed to the beta branch, and will move 0.2a to stable so we’re all ready on version 0.2x to move forward!

Thanks for reading this update, hope you all have a fantastic weekend! I’ll leave you with a quick tip:

Did you know you can save the game by pressing CTRL-S just like most programs. If you do something awesome and want to save the game just hit that combo. The game also auto-saves every 5 minutes, and saves on exit!

As always you can show your support and keep up to date with development by following me here:

Visit my websites
Greeny Games Website[www.greenygames.com]
Samphi Website[www.samphi-game.co.uk]

Follow me on Twitter
Greeny Games Twitter
Samphi Twitter

Early Access Update #15 – Let’s Get Technical

Update time friends.

Well, it’s been another solid week of engine stuff so unfortunately there’s really nothing to show. 🙁 Instead of not putting out an article, I figure instead why don’t I explain exactly what I’m taking so much time doing, and why I need to re-code the item system in Samphi.

If you’re not into looking behind the scenes, then this update won’t be for you I’m afraid. Feel free to pop back next week! For those interested, let’s get started.

The following changes are required of items, and are the reasons behind the re-write. I’ll address each in turn:

  • Ability to deal with multiple item stacks
  • Ability to save items in chests
  • Ability to load custom item names/descriptions
  • Moving items from string IDs to numeric IDs

The first problem we’ll look at is with item stacks. To accommodate chests, and other future plans, Samphi needs to be able to deal with multiple stacks of the same item. Currently, all item data is stored in a single list that looks something like this:

The amount of each item is tracked by the game, not the icons, so that means if you create two icons for the same item they can’t have independent amounts. For example, if you have one stack of apples in a chest, and another on your hot bar, each time you collect an apple they will both go up, and both show the same amount.

This is the biggest issue with items as this list system is heavily used in most areas of the game code. It was silly to set the game up like this in the first place, but if everyone knew everything right off-the-bat we’d all be professionals. What I’m currently doing is moving away from this main list and instead store quantities in each icon.

The second issue that needs addressing is changing the way the game saves/loads items. Currently all item data belongs to the player, and is stored in player data files. That means you can’t really store items in a chest. With the current system, if you created a chest in a world, then used that world with a new character, the items wouldn’t be in the chest. Not very useful.

To fix this, the game needs to save items that the player currently has equipt in the player data, and save items in chests to the world save file. This isn’t really a bad job, and shouldn’t take much time.

This one’s also not a big issue but goes along with the icon re-write. Currently, icons’ names and descriptions are hard coded. That means in the actual object itself in code I set these values myself. In order to support multiple languages freely, this value needs to be set externally.

I’ve moved items to loading their data from an external ‘.sam’ (my extension that’s functionally the same as .txt) file based on what language is currently selected. A system like this means it’s very easy to add more languages, and allows users to configure their own descriptions and names for items should you wish to do so. When the next update comes out there will be support for English, Italian, Turkish and Spanish. 🙂

This one is very programmy and won’t result in any changed functionality. Very simply, icons are currently distinguished by their name. So, I know the apple item is an apple because its name is ‘apple’. This isn’t ideal for a number of boring reasons, so I’m moving over to a numerical id, so I’ll know the apple icon is an apple because it will have an ID of 1.

Once all of these things has been done Samphi will have a MUCH more stable and flexible item system. We’ll be able to have multiple item stacks, chests, customizable names and descriptions etc. It sucks because it means that periods go where the game doesn’t seem to change, but hopefully this post illustrates some of things that are happening under the hood. 🙂

Next update there’ll hopefully be something to show from this boring engine work! Maybe get multiple item stacks running, then getting those other smaller jobs complete.

Either way, I’m making good progress with this work, so be it in the next update or the one after, I can see the end of tunnel and dev can get back to adding game content!

Hope you all have a great weekend, and if you have any questions drop me a comment!

As always you can show your support and keep up to date with development by following me here:

Visit my websites
Greeny Games Website[www.greenygames.com]
Samphi Website[www.samphi-game.co.uk]

Follow me on Twitter
Greeny Games Twitter
Samphi Twitter

Early Access Update #13 – Localization update, performance increases, and the C word

Hi friends, update time.

So last week’s update was a short one. In summary it read: ‘I’ve been working on chests, they’re just been difficult’. Unfortunately, the situation hasn’t changed much! In fact, if anything, it’s worse. Turns out the item system needs a good ol’ re-write.

Not to panic, let’s all just laugh it off …

In the last update I demonstrated that the latest problem with implementing chests was that Samphi needs to be able to deal with multiple item stacks in order for them to work correctly. Unfortunately, that’s currently not the case, and to implement that means a re-write of the item system.

Bit more info; All item info is currently stored in a single list, so while we can have two icons, they both use the same data values such as quantity; they’re not individual stacks which they need to be. There’s also an issue with saving and loading items. The current system is designed around working with a single instance of each item, and to enable that to load/save multiple of the same type also requires some work.

All of this is 100% doable, just it’s not something I couldn’t fit into this update, but rest assured I’m working on it! Over the next two weeks I’ll be taking the item system back to the ground and doing a full re-build. This will allow multiple item stacks, loading/saving of multiple items, and in turn will enable chests to work correctly.

Sorry it’s taking so long. That’s the last I’m going to talk about the C word. The next time it makes an appearance in an update will be when they make it into the game. Still, there’s lots to be excited about in this update!

v0.1e hit the beta branch today and it’s brought with it something very exciting! Samphi is made in Game Maker, and Game Maker has an export tool call the YYC. Without getting into too much boring detail, it’s basically a tool that makes the game run faster. For the first time ever Samphi is exported with it so we should see some speed increases.

According to GM, YYC can ” increase your games performance by a hundred-fold”. We won’t see a performance upgrade quite on that scale I don’t think, but do let me know if you notice the game being a bit nippier!

Along with the performance upgrade, I’ve also fixed a few bugs in this update, so here’s the full changelog:

  • Samphi is now compiled with Windows YYC, so we should see a speed increase! According to GM, YYC can ” increase your games performance by a hundred-fold”. Let me know how this goes.
  • Hopefully fixed a bug where music was playing twice in the menu. I say hopefully because I could never recreate it, but I put something in-place that should stop that ever happening.
  • Fixed a bug where feeding honeycomb to your dog would cause the game to crash.
  • Fixed a bug where small items disappear in water and the ground.

Getting Samphi translated into as many languages as possible has always been a goal of mine, and thankfully a number of great people from the community offered their help! I’ve spent a bit of time collecting together all of the text that is currently in the game and collated it into a Google docs sheet, so those wanting to offer their help can now do so!

I’ll post these instructions in the discussion also, but if you’re wanting to help translate Samphi, send me an email to greeny@greenygames.com. I’ll send you an invite to the appropriate Google doc. Hopefully over the next few versions we can start incorporating more language options. 🙂

The item rebuild will be most of my work unfortunately. I say unfortunately because I always feel these updates are boring. From my perspective it’s a huge update as part of the engine gets a re-write, but from the player’s perspective nothing changes! If I do my job correctly, you won’t know anything has changed!

Because of this I always end up trying to sneak in other work, such as the updates to the sheep so there’s something visibly different, but that takes time away from the core work that needs doing. Downside of being a one-man-team I guess.

Hope you’ve all had a great week and have an even better weekend. I wish there were flashier updates to show, but we’re going to have to put some time into engine work for a little while. 🙂

As always you can show your support and keep up to date with development by following me here:

Visit my websites
Greeny Games Website[www.greenygames.com]
Samphi Website[www.samphi-game.co.uk]

Follow me on Twitter
Greeny Games Twitter
Samphi Twitter

Early Access Update #12 – Ever Elusive Chests

Hi friends,

Happy Friday. Time for another update on Samphi. Think this is going to be the shortest yet! You know I’m working on chests, but despite best efforts they’re taking much longer that I’d like. This short update will just explore why.

Last week I said …

Originally posted by author:

So next week shouldn’t see a new build according to the schedule, they’re every 2 weeks, but it will! I’m so close to being done with chests that there’s no point in waiting 2 weeks, we’ll just get them out.

If only. Chests are proving to be a royal pain in the ass. Each time I solve one problem another crops up. The item system needs quite a large change to accommodate chests so unfortunately it won’t be this week as I’d hoped.

For example, what happens when a player has items in a chest them moves world. There’s no chest for them, so they can go to their inventory. What if their inventory is full though? No problem, we’ll leave them in the chests. That means data for items in chests need moving from the player to the world save file. That’s done.

Now what happens when an item is already in a chest and the user collects more of it? They’ll end up with two of the same item and Samphi isn’t currently built to accommodate that.

It’s things like these that I keep running into. Chests are coming, and they’re close, but we’re just not there yet.

Since they’re not available yet this gives a good opportunity for me to get some feedback on how I intend them to work. Here’s my current thinking:

  • Items placed in chests belong to the world, not the player
  • If you change world you won’t have the items. If a new character joins the existing world with a filled chest they can access those items.

This will work great and the last real hurdle is allowing multiple stacks of items. How does this sound? Is this how you’d expect them to behave?

I was recently made aware of a bug in the latest build, v0.1d, that crashed the game is custom textures were enabled. That’s been patched and that version is now in the stable branch.

Hopefully next week chests will actually see the light of day in v0.1e. That’s what I’ll be working on ‘till then. Sorry it’s taking so long, it’s a bit of a mess! It feels shitty to keep saying they’re coming soon and then never delivering, but issues keep cropping up out of nowhere. So I’ll leave it as hopefully!

Hope you all have a fantastic weekend!

As always you can show your support and keep up to date with development by following me here:

Visit my websites
Greeny Games Website[www.greenygames.com]
Samphi Website[www.samphi-game.co.uk]

Follow me on Twitter
Greeny Games Twitter
Samphi Twitter