Blog 10: Tiles & Menus

5/30/2023

Welcome back to the Integration Hell development blog.

Sorry for the lack of blogs for the last few weeks. I did not have the time to work on IH enough to write an entire blog about what I did.

A lot of what I have done is mostly UI related things. (After many header rewrites to have the needed definitions)

Tile Animations - Just like the player, world tiles now have animations/states like the player. The parameters file now has parameters to describe how many cycles/states the tile has as well as how fast the animation should play. Below is a picture of such a tile. The new tile pictured is what will be the conveyer belts. The current image is a placeholder, but it works for testing. While the animations work, I have not programmed tile behavior yet.Β 


Conveyer tile on animation cycle 4 Full tile sheet of conveyer

I have given the game a pause menu. When the player presses the escape key, the following menu is created. Settings, Save, and Load do not have functionality now, but the menu knows when they were pressed. Quit closes the game, and resume closes the pause menu.

The player now has an inventory. When the player presses the 'Q' key, the player inventory menu comes up (pictured below). When the player hovers over an item, a translucent white rectangle covers the item to show it is being hovered over. While the menu is renderable and items are clickable, items cannot be moved around yet. The way I made the inventory menu was simpler than I thought it would be. The entire player inventory is a widget that can be added to the menu. This will make player inventory integration for machines later much easier.

Roadmap for the future. Since the Integration Hell is much closer to a game than and SDL demo, I have changed the naming for the versions of the game. There will be three sections of development: Pre-Alpha, Alpha, and Beta before release. The game is in Pre-Alpha now. Below will discuss what each section is for.

Pre-Alpha - Gameplay is not there yet. The bulk of this section is programming all of the gameplay pieces and linking them together. This includes things like making tile behaviors, making saving and loading work, adding the research tech-tree, etc. The game will move out of Pre-Alpha when nearly all of the gameplay elements are programmed. The only elements that may be omitted from completion would be the things I'm on the fence about including or are technically difficult to implement. However, the gameplay logic will be done and now the tile/items can be added to the game.

Alpha - Gameplay is there, although there will not be much. The bulk of this section is for adding gameplay elements like items, machines, and things for the tech-tree. Any gameplay features not implemented or completed yet will be completed in the Alpha versions.

Beta - The gameplay is nearly ready for release. The bulk of this section is polish the game needs. Gameplay will be extensively tested so things can be balanced and not boring or irritating. Hopefully things like textures and audio will be improved before release.

Release - The game is "done" and playable. However, things like bugs and quality of life updates will likely come out after release.

That is all I have for this week. Thanks for reading and I hope to see you in the next blog!

The Checklist:

Tasks:

𐄂 Give the game an icon

βœ”οΈ Program player inventory

βœ”οΈ Program items

𐄂 Make items in inventory moveable

𐄂 Program pollution/waste

𐄂 Add item system

𐄂 define tile behaviors